cryptopals

Cryptopals Challenge Solutions w/Tutorials https://cryptopals.com/

blog posts with tutorial:

[X] Set 1, Challenge 1: Convert hex to base64 tutorial!

[X] Set 1, Challenge 2: Fixed XOR tutorial!

[X] Set 1, Challenge 3: Single-byte XOR cipher tutorial!

[X] Set 1, Challenge 4: Detect single-character XOR tutorial!

[X] Set 1, Challenge 5: Implement repeating-key XOR tutorial!

[X] Set 1, Challenge 6: Break repeating-key XOR tutorial!

[X] Set 1, Challenge 7: AES in ECB mode tutorial!

[X] Set 1, Challenge 8: Detect AES in ECB mode tutorial!

[X] Set 2, Challenge 9: Implement PKCS#7 padding tutorial!

[X] Set 2, Challenge 10: Implement CBC mode tutorial!

[X] Set 2, Challenge 11: An ECB/CBC detection oracle tutorial!

[X] Set 2, Challenge 12: Byte-at-a-time ECB decryption (Simple) tutorial!

[X] Set 2, Challenge 13: ECB cut-and-paste tutorial!

[X] Set 2, Challenge 14: Byte-at-a-time ECB decryption (Harder) tutorial!

[X] Set 2, Challenge 15: PKCS#7 padding validation tutorial!

[X] Set 2, Challenge 16: CBC bitflipping attacks tutorial!

[X] Set 3, Challenge 17: The CBC padding oracle tutorial!

[X] Set 3, Challenge 18: Implement CTR, the stream cipher mode tutorial!

[ ] Set 3, Challenge 19: Break fixed-nonce CTR mode using substitutions

[ ] Set 3, Challenge 20: Break fixed-nonce CTR statistically

[ ] Set 3, Challenge 21: Implement the MT19937 Mersenne Twister RNG

[ ] Set 3, Challenge 22: Crack an MT19937 seed

[ ] Set 3, Challenge 23: Clone an MT19937 RNG from its output

[ ] Set 3, Challenge 24: Create the MT19937 stream cipher and break it