https://github.com/mayank-02/simplified-aes
Implementation of a simplified version of the AES algorithm
https://github.com/mayank-02/simplified-aes
advanced-encryption-standard cryptography educational python simplified-aes
Last synced: 5 months ago
JSON representation
Implementation of a simplified version of the AES algorithm
- Host: GitHub
- URL: https://github.com/mayank-02/simplified-aes
- Owner: mayank-02
- License: mit
- Created: 2020-12-08T10:21:48.000Z (over 4 years ago)
- Default Branch: main
- Last Pushed: 2024-07-15T06:13:48.000Z (10 months ago)
- Last Synced: 2024-07-15T07:36:32.671Z (10 months ago)
- Topics: advanced-encryption-standard, cryptography, educational, python, simplified-aes
- Language: Python
- Homepage:
- Size: 358 KB
- Stars: 8
- Watchers: 1
- Forks: 3
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# Simplified AES
Simplified AES (S-AES) is an educational tool designed to help students learn the structure of AES using smaller blocks and keys.
- Non-feistal block cipher
- Plaintext: 16 bit
- Key: 16 bit
- Ciphertext: 16 bit
![]()
SAES Structure
![]()
Key Expansion## Usage
Use the `SimplifiedAES` class in your program as follows.
For encryption:
```python
from saes import SimplifiedAESplaintext = 0b1101011100101000
key = 0b0100101011110101
ciphertext = SimplifiedAES(key).encrypt(plaintext) # 0b0010010011101100
```For decryption:
```python
from saes import SimplifiedAESciphertext = 0b0010010011101100
key = 0b0100101011110101
plaintext = SimplifiedAES(key).decrypt(ciphertext) # 0b1101011100101000
```## References
Check out `theory.pdf` for more information and worked out examples.
## Authors
[Mayank Jain](https://github.com/mayank-02)
## License
MIT