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

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

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