Cryptography


CSE 365 - Fall 2023

Solve various cryptography challenges ranging from decoding base64 data to performing a simplified TLS handshake.


Lectures and Reading

04-Cryptography-F23.pptx

Recorded Lectures:

10/25/23 Cryptography Pt. 1":



10/30/23 Cryptography Pt. 2":



11/1/23 Cryptography Pt. 3":



11/6/23 Cryptography Pt. 4":



The excellent kanak (creator of pwn.college) has recorded lectures and slides from prior CSE 365 that might be useful:

Cryptography: Introduction



Cryptography: Symmetric Encryption



Cryptography: Key Exchange



Cryptography: Asymmetric Encryption



Cryptography: Hashing



Cryptography: Trust




Challenges

Decode base64-encoded data

Decrypt a secret encrypted with a one-time pad, assuming a securely transferred key

Decrypt a secret encrypted with a one-time pad, where the key is reused for arbitrary data

Decrypt a secret encrypted with AES using the ECB mode of operation

Decrypt a secret encrypted with AES-ECB, where arbitrary data is appended to the secret and the key is reused

Perform a Diffie-Hellman key exchange to establish a shared secret

Decrypt an RSA-encrypted secret using provided public and private keys

Decrypt an RSA-encrypted secret using the provided prime factors of n

Find a small hash collision using SHA256, considering only the first 2 bytes

Compute a small proof-of-work by appending response data to the challenge data, resulting in a SHA256 hash with 2 null-bytes

Complete an RSA challenge-response using provided public and private keys

Complete an RSA challenge-response by providing the public key

Sign a user certificate using a provided self-signed root certificate and root private key

Perform a simplified TLS handshake as the server, completing a Diffie-Hellman key exchange and establishing an encrypted channel to provide a user certificate and prove private key ownership


Ranking

This scoreboard reflects solves for challenges in this module after the module launched in this dojo.

Rank Hacker Badges Score