Cryptography Mini Project
Objective
The goal of this project is to understand how a real cryptographic algorithm works by studying its mathematical foundation, implementing it in code, evaluating its security, and demonstrating possible attacks.
Project Requirements
1. Choose ONE Cryptographic Algorithm
Each student (or group) must select ONE algorithm from categories such as:
– Symmetric Encryption (AES, DES)
– Public-Key Encryption (RSA, ElGamal)
– Hash Functions (SHA-256, MD5)
– Digital Signatures (DSA, ECDSA)
– Key Exchange (DiffieHellman)
– Lightweight Cryptography (ECC)
2. Prepare a Presentation (Minimum 20 Slides)
Your presentation must include:
– Introduction and real-life applications
– Mathematical background
– Step-by-step algorithm explanation
– System design and implementation details
– Security analysis
– Attack analysis (theoretical and practical)
– Results and discussion
– References
3. Implementation (Mandatory)
You must implement the algorithm using Python, Java, or C++. Do NOT rely entirely on built-in cryptographic libraries. Basic math libraries are allowed.
4. Program Must Demonstrate
– Key generation
– Encryption and decryption
– Correct output
– Intermediate steps
– User input handling
– Execution time measurement
5. Practical Attack Demonstration
You must simulate at least one attack such as:
– Brute force attack (small key size demonstration)
– Mathematical attack (e.g., factorization for RSA)
– Dictionary attack simulation
– Man-in-the-Middle (conceptual demonstration)
– Hash collision example (toy model)
6. Security Report (58 Pages)
The report must include:
1. Algorithm description
2. Implementation details
3. Experimental results
4. Attack explanation
5. Why the attack works
6. Defense mechanisms
7. Conclusion
Submission
Students must submit:
– Source Code
– Presentation Slides
– Written Report (PDF)
– Output Screenshots
– Demo (Live or Recorded)
Bonus (Optional)
Extra credit may be awarded for:
– Comparing two algorithms
– Adding a GUI
– Performance optimization
– Simulating a real secure protocol
Leave a Reply
You must be logged in to post a comment.