This repository contains implementations and demonstrations of various cryptographic algorithms. It serves as a practical guide for a Cryptography. The lab plan covers a range of topics, from symmetric-key encryption to advanced attacks.
- S-DES Implementation
- Code for the Simplified Data Encryption Standard (S-DES).
- Usage instructions and example scenarios.
- Bruteforce Attack on S-DES
- Application of a bruteforce attack on S-DES.
- Explanation of the attack and countermeasures.
- Extended Euclidean Algorithm
- Implementation and application of the Extended Euclidean Algorithm.
- RSA Implementation
- Implementation of the RSA cryptographic algorithm, including key generation, encryption, and decryption examples.
- CCA2 Attack on RSA
- Demonstration of a Chosen Ciphertext Attack (CCA2) on RSA, along with discussions on preventive measures.
- Elgamal Algorithm for Encryption
- Implementation of the Elgamal Algorithm for encryption.
- Elgamal Algorithm for Digital Signature
- Implementation of the Elgamal Algorithm for digital signatures, including the verification process and security considerations.
- Pseudorandom Number Generation
- Implementation of a custom-designed pseudorandom number generation algorithm, accompanied by an explanation of design principles.
- Shamir Secret Sharing Scheme
- Implementation and usage of the Shamir Secret Sharing Scheme.
- Elgamal for Digital Signature
- Utilizing Elgamal for generating digital signatures, providing example use cases and discussing security considerations.
Clone the repository: git clone https://github.com/Dhriti143/Cryptography-Guide.git Follow the individual directories for specific implementations. Each directory contains code, explanations, and examples for the respective lab topic.
Contributions are welcome! If you find issues or have enhancements, please open an issue or create a pull request.
This project is licensed under the MIT License. See the LICENSE.md file for details.