Skip to content

Latest commit

 

History

History
61 lines (51 loc) · 2.58 KB

README.md

File metadata and controls

61 lines (51 loc) · 2.58 KB

Cryptopals

Solutions to some of the Matasano Crypto Challenges found at cryptopals.com

learn programming in C/python, and my first crack at GIT and GitHub.

##Set 1: Basics

Challenge Progress
1: Set 1 challenges are complete

|

##Set 2: Block crypto

Challenge Progress
9: Implement PKCS#7 padding Complete
10:Implement CBC moode Complete
11: An ECB/CBC detection oracle Complete
12: Byte-at-a-time ECB decryption (simple) Complete
13: ECB cut-and-paste complete
14: Byte-at-a-time ECB decryption (Harder) complete
15: PKCS#7 padding validation complete
16: CBC bitflipping attacks complete

##Set 3: Block & stream crypto

Challenge Progress
17: The CBC padding oracle Complete
18: Implement CTR, the stream cipher mode
19: Break fixed-nonce CTR mode using substitutions
20: Break fixed-nonce CTR statistically
21: Implement the MT19937 Mersenne Twister RNG
22: Crack an MT19937 seed
23: Clone an MT19937 RNG from its output
24: Create the MT19937 stream cipher and break it

##Set 4: Stream crypto and randomness

Challenge Progress
25: Break "random access read/write" AES CTR
26: CTR bitflipping
27: Recover the key from CBC with IV=Key
28: Implement a SHA-1 keyed MAC
29: Break a SHA-1 keyed MAC using length extension
30: Break an MD4 keyed MAC using length extension
32: Break HMAC-SHA1 with a slightly less artificial timing leak

##Set 5: Diffie-Hellman and friends

Challenge Progress
33: Implement Diffie-Hellman
34: Implement a MITM key-fixing attack on Diffie-Hellman with parameter injection
35: Implement DH with negotiated groups, and break with malicious "g" parameters
36: Implement Secure Remote Password (SRP)
37: Break SRP with a zero key
38: Offline dictionary attack on simplified SRP
39: Implement RSA
40: Implement an E=3 RSA Broadcast attack