Cryptography


CSE 365 - Spring 2023

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


Lectures and Reading


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


Module Ranking

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

Rank Hacker Badges Score