CS-458: Introduction to Cryptography


Student Assignments:

Assignment Topic Publish Due
Assignment 1 Classical cryptography
  • Caesar’s cipher: Encryption, Decryption, Cryptanalysis
  • Vigenère’s cipher: Encryption, Decryption, Cryptanalysis
  • One-time pad: Encryption, Decryption, Cryptanalysis
18/10/2022 5/11/2022
Assignment 2 Symmetric cryptography
  • Basic functionality
  • ECB: Integrity issues
  • CBC: Padding
  • CTR: Reuse key and nonce
  • CBC vs CTR: Changes in ciphertext
  • CTR: Integrity issues
  • Time based randomness
15/11/2022 9/12/2022
Assignment 3 Public key cryptography
  • Plain RSA implementation
  • RSA deterministic outputs: Brute-forcing RSA
  • Chosen ciphertext attack
  • Common modulus attack
  • RSA with padding
  • RSA benchmark
  • Hash algorithm avalanche property
  • Brute-forcing hashed passwords
  • Hashing in Proof-of-Work schemes
23/12/2022 27/1/2023
CTF Cryptohack 28/1/2023 29/1/2023