Skip to content

Latest commit

 

History

History
132 lines (96 loc) · 4.74 KB

File metadata and controls

132 lines (96 loc) · 4.74 KB

Cryptography Algorithms Implementation 🔐

Crypto Project Banner

🔑 Cryptography Algorithms Implementation 🚀

Internship Project for Codec Technologies
Learn, implement, and test core cryptography algorithms in Python! ⚡
Covers AES, RSA, and Hashing (MD5, SHA-256, SHA-512) with examples & tests.
Tech Stack: Python, PyCryptodome, Pytest


🧠 Introduction

Developed as part of my internship with Codec Technologies, this project provides hands-on implementations of cryptography algorithms.
It demonstrates encryption, decryption, and hashing with a simple Python structure. Includes ready-to-use examples, unit tests, and clean documentation.


📦 Features

  • 🔒 AES (Symmetric Encryption) – Encrypt & decrypt using a secret key
  • 🔑 RSA (Asymmetric Encryption) – Public/private key pair encryption & digital signature
  • 🧾 Hashing – Generate secure hashes (MD5, SHA-256, SHA-512)
  • 🧪 Unit Tests – Verify correctness of algorithms
  • 📂 Examples Included – Easy-to-run demo scripts
  • 📝 Well-Structured Project – Clean and modular codebase

🛠️ Technologies Used

Python PyCryptodome Pytest


🚀 How to Run the Project?

✅ Prerequisites:

  • Python 3.8+
  • Virtual environment (recommended)

🛠️ Setup:

# Clone and setup
git clone https://github.com/CodeWithTanim/Cryptography-Algorithms-Implementation.git
cd Cryptography-Algorithms-Implementation

# Install dependencies
pip install -r requirements.txt

# Run example scripts
python -m examples.demo_aes
python -m examples.demo_rsa
python -m examples.demo_hashing

🗂️ Project Structure

Cryptography-Algorithms-Implementation/
│
├── src/
│   ├── symmetric/
│   │   └── aes_encryption.py       ← AES implementation
│   ├── asymmetric/
│   │   └── rsa_encryption.py       ← RSA implementation
│   └── hashing/
│       └── hashing_algorithms.py   ← Hashing functions
│
├── examples/
│   ├── demo_aes.py                 ← AES demo script
│   ├── demo_rsa.py                 ← RSA demo script
│   └── demo_hashing.py             ← Hashing demo script
│
├── tests/                          ← Unit tests
├── requirements.txt                ← Dependencies
└── README.md

🌟 Key Learnings (Internship)

  • Understood symmetric vs asymmetric cryptography

  • Implemented AES and RSA in Python

  • Worked with hashing algorithms for secure storage

  • Learned modular coding with src/ and tests/ structure

  • Improved debugging and testing skills with Pytest


✍️ Developer

MD SAMIUR RAHMAN TANIM Intern at Codec Technologies
🔗 GitHub | LinkedIn


📜 Acknowledgments

  • Thanks to Codec Technologies for the internship opportunity

  • PyCryptodome developers for cryptography library

  • Python & open-source community for amazing resources


🤝 Contribute

Pull requests are welcome! If you find bugs, improvements, or want to add more algorithms (like DES, Blowfish, ECC), feel free to fork and submit a PR.


📡 Connect With Me:

Facebook Instagram YouTube