Some Lecture and Lab Notes

This page contains some highlights from the lecture and lab notes I’ve made for students in the past. Feel free to email me for more information on any of these.

NETWORK SECURITY

Cryptography Review

These notes are a quick list of cryptography definitions that we use in our network security class.
(Taken mostly from ‘Introduction to Modern Cryptography’ by Jonathan Katz and Yehuda Lindell)

A handwritten note on symmetric key encryption, detailing the definitions and algorithms involved. The note explains the key generation (Gen), encryption (Enc), and decryption (Dec) processes, emphasizing correctness with the equation Dec_k(Enc_k(m)) = m. It includes a highlighted section on Kerckhoff's Principle, stating that the details of the encryption scheme are not secret, only the key is. Another highlighted section on security mentions that a ciphertext should leak nothing about the plaintext that the attacker doesn't already know.
A handwritten note on Denial of Service (DoS) attacks, illustrated with a drawing of a large number of people standing in line in front of a door. The note categorizes DoS attacks into three types: 'Target Connectivity' such at BGP hijacks, 'Volume Attacks' which swamp the victim with a deluge of network traffic such as UDP spoofing, and 'Protocol Attacks' which commandeer the victim's processing capacity, eating up resources of critical network devices, such as SYN flooding.

NETWORK SECURITY

Denial of Service

NETWORK SECURITY

Protecting Metadata 1: Mixnets

A handwritten note explaining Mixnets and Tor. The Mixnets section illustrates a process where encrypted messages (depicted as envelopes) pass through a series of mix servers (Mix 1, Mix 2, Mix 3). Each server removes a layer of encryption to discover the recipient and the encrypted message for that recipient. The diagram shows messages being transformed as they move through the mix network to the secret contact. The Tor section shows a client establishing a TLS connection through a series of nodes, each adding another layer of TLS encryption before reaching the server, illustrating how Tor provides anonymity.
A handwritten note explaining the concept of onion routing, with layers of encryption shaded to resemble layers of an onion. The diagram illustrates a process where the client sends encrypted data to a series of relays (R1, R2). Each relay decrypts a layer of encryption to reveal the next destination and further encrypted data. The client sends an encrypted message with the identifier of the circuit to R1, which then processes and sends the partially decrypted message to R2. The steps are shown where R1 looks up c1 to get k1 and c2, and then decrypts using k1, revealing the next layer of encrypted data (Enc_k2(cell)).

NETWORK SECURITY

Protecting Metadata 2: Tor

NETWORK SECURITY

The Signal Architecture

I have extensive notes from the lectures I’ve taught on secure messaging and the Signal architecture. (Which makes it unclear what exactly to link here for download.)

Email me if you’d like my notes or if you’d like to talk about teaching lectures on this protocol and the concepts behind it! 🙂

A handwritten note discussing the importance of forward secrecy for secure messaging. The note includes a question and answer format:

Q: Why do we even want forward secrecy for secure messaging?
A: To make deletion meaningful. If you don't have forward secrecy, you could have a case where both parties delete the plaintext messages and yet an attacker learns them. If you don't understand this, please take some time to understand the meaning of forward secrecy.

A highlighted note states: 'When we say a party is compromised, we mean that the attacker has access to the party's full state. If you are compromised, the attacker knows everything your device knows, e.g., all stored keying material.' A final reminder emphasizes: 'REMEMBER that the attacker sees all the communication between parties.'