Skip to content

Solutions to the Matasano cryptography challenges, including stream, block, number-theoretic ciphers, and hashing

Notifications You must be signed in to change notification settings

anneouyang/cryptopals

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 
 
 
 
 

Repository files navigation

Cryptopals

Solutions to the Matasano Cryptography Challenges

Set 1: Basics

  1. Convert hex to base64
  2. Fixed XOR
  3. Single-byte XOR cipher
  4. Detect single-character XOR
  5. Implement repeating-key XOR
  6. Break repeating-key XOR
  7. AES in ECB mode
  8. Detect AES in ECB mode

Set 2: Block Crypto

  1. Implement PKCS#7 padding
  2. Implement CBC mode
  3. An ECB/CBC detection oracle
  4. Byte-at-a-time ECB decryption (Simple)
  5. ECB cut-and-paste
  6. [Byte-at-a-time ECB decryption (Harder)]
  7. PKCS#7 padding validation
  8. [CBC bitflipping attacks]

Set 3: Block & Stream Crypto

  1. [The CBC padding oracle]
  2. [Implement CTR, the stream cipher mode]
  3. [Break fixed-nonce CTR mode using substitutions]
  4. [Break fixed-nonce CTR statistically]
  5. Implement the MT19937 Mersenne Twister RNG
  6. Crack an MT19937 seed
  7. Clone an MT19937 RNG from its output
  8. [Create the MT19937 stream cipher and break it]

About

Solutions to the Matasano cryptography challenges, including stream, block, number-theoretic ciphers, and hashing

Topics

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages