https://github.com/mkst/cryptopals
my attempt to solve the cryptopals challenges
https://github.com/mkst/cryptopals
Last synced: 5 months ago
JSON representation
my attempt to solve the cryptopals challenges
- Host: GitHub
- URL: https://github.com/mkst/cryptopals
- Owner: mkst
- Created: 2016-09-15T21:14:06.000Z (over 9 years ago)
- Default Branch: master
- Last Pushed: 2016-10-02T09:06:18.000Z (over 9 years ago)
- Last Synced: 2025-01-23T04:13:17.264Z (over 1 year ago)
- Language: C++
- Size: 97.7 KB
- Stars: 0
- Watchers: 0
- Forks: 0
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
Awesome Lists containing this project
README
# cryptopals
My attempt to solve the cryptopals challenges...
**Set 1: Basics**
- [x] 01 Convert hex to base64
- [x] 02 Fixed XOR
- [x] 03 Single-byte XOR cipher
- [x] 04 Detect single-character XOR
- [x] 05 Implement repeating-key XOR
- [x] 06 Break repeating-key XOR
- [x] 07 AES in ECB mode
- [x] 08 Detect AES in ECB mode
**Set 2: Block crypto**
- [x] 09 Implement PKCS#7 padding
- [x] 10 Implement CBC mode
- [x] 11 An ECB/CBC detection oracle
- [x] 12 Byte-at-a-time ECB decryption (Simple)
- [x] 13 ECB cut-and-paste
- [x] 14 Byte-at-a-time ECB decryption (Harder)
- [x] 15 PKCS#7 padding validation
- [x] 16 CBC bitflipping attacks
**Set 3: Block & stream crypto**
- [x] 17 The CBC padding oracle
- [x] 18 Implement CTR, the stream cipher mode
- [ ] 19 Break fixed-nonce CTR mode using substitutions
- [x] 20 Break fixed-nonce CTR statistically
- [x] 21 Implement the MT19937 Mersenne Twister RNG
- [x] 22 Crack an MT19937 seed
- [ ] 23 Clone an MT19937 RNG from its output
- [ ] 24 Create the MT19937 stream cipher and break it
---
**Extra info**
Dependencies:
- libcrypto++ (https://www.cryptopp.com/)
- compiler with c++11 support