Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/lablnet/cryptographic_algorithms

My own implementation of the Cryptographic Algorithms in Python.
https://github.com/lablnet/cryptographic_algorithms

algorithms cryptography python

Last synced: about 1 month ago
JSON representation

My own implementation of the Cryptographic Algorithms in Python.

Awesome Lists containing this project

README

        

| ⚠️ Disclaimer |
|:-----------------------------------------------------------------------------|
| 1. **Do not use this for production but only for undertstading the algorithms.**
2. Use this at your own risk, but do not for illegal purposes.
3. Only use Crypto primitive algorithms for cryptographic purpose.|

# Cryptographic Algorithms.

My own implementation of the [Cryptographic Algorithms](https://en.wikipedia.org/wiki/Cryptographic_algorithm) in Python.

I have implemented the following algorithms:
- [x] [Substitution Cipher](./algorithms/classical/simpleEncytption.py)
- [x] [Stream Cipher](./algorithms/stream_cipher/streamCipher.py)
- [x] [Affine Cipher](./algorithms/classical/AffineCipher.py).
- [x] [Shift Cipher](./algorithms/classical/ShiftCipher.py)
- [x] [DES](./algorithms/block_cipher/DES.py)
- [x] [3DES](./algorithms/block_cipher/3DES.py)
- [x] [DESX](./algorithms/block_cipher/DESX.py)
- [ ] [AES](https://en.wikipedia.org/wiki/Advanced_Encryption_Standard)
- [x] Block Cipher Modes
- [x] [ECB (Electronic Code Book)](./algorithms/block_cipher/ECB.py)
- [x] [CBC (Cipher Block Chaining)](./algorithms/block_cipher/CBC.py)
- [x] [OFB (Output Feedback Mode)](./algorithms/block_cipher/OFB.py)
- [x] [CTR (Counter Mode)](./algorithms/block_cipher/CTR.py)
- [ ] Public Key Encryption.
- [x] [RSA](./algorithms/public_key/RSA.py)
- [x] [RSA-CRT](./algorithms/public_key/RSA_CRT.py)
- [x] [Diffie-Hellman](./algorithms/public_key/diffie_hellman.py)

I am following these Courses to learn more about the algorithms:
1. [Cryptography 1](https://www.coursera.org/learn/crypto)
2. [introduction to cryptography by christof paar](https://www.amazon.com/Understanding-Cryptography-Textbook-Students-Practitioners/dp/3642446493)

## LICENSE
[MIT](https://opensource.org/licenses/MIT)

## Contribution
You're welcome to contribute to this project.
You should follow contribution guideline [Contribution guideline](https://github.com/lablnet/cryptographic_algorithms/blob/main/CONTRIBUTING.md)