September 1: Introduction


  • Why should we care about network security?

  • Common misconceptions of network security

  • Examples of computer security issues and solutions

  • Overall structure of the course

  • Overview of labs and projects


  • Google’s Networking Class on Coursera. You can audit the class for free.

    • Watch all videos under “Week 1”, “Week 2”, “Week 3”, and “Week 4.

    • Optionally, watch all videos under “Week 5” and “Week 6”.

[Recording] [Slides]

September 8: How does the Internet work?


  • What happens when I visit ""?

  • How to capture and analyze packets with Wireshark and Pandas

  • Overview of protocols: IP, DHCP, ARP, DNS, TCP/UDP, HTTP, TLS


  • Google’s Networking Class on Coursera. You can audit the class for free.

    • Watch all videos under “Week 1”, “Week 2”, “Week 3”, and “Week 4.

    • Optionally, watch all videos under “Week 5” and “Week 6”.

  • Read the following chapters of the Computer Networks Textbook (5th Edition) by Larry Peterson et al.

    • Chapter 2.6 - Ethernet

    • Chapter 3 - Inter-networking

    • Chapter 4 - Internet routing

    • Chapter 5.1 and 5.2 - UDP and TCP

    • Chapter 9.1.2 - HTTP

    • Chapter 9.3.1 - DNS

  • Optionally, check out the following YouTube videos from Princeton’s Networking Class

    • Videos 26-32: IP

    • Videos 33-34: Routing, autonomous systems

    • Videos 85-89: DNS

    • Videos 146-151: HTTP

    • Videos 154-159: CDNs

[Recording] [Pcaps] [Slides] [Answers to the in-class ungraded quiz]

September 15: Local network security issues


  • In-class exam on networking basics (2:15 - 2:45 pm)

  • Scanning with nmap

  • ARP spoofing

  • DHCP starvation



September 22: Access to the local network


  • Scanning with nmap

  • ARP spoofing

    • Why does Bob flip back to the correct ARP table?

    • Does Bob know Alice is doing ARP spoofing?

    • Can Bob protect himself? DoH? VPN?

  • DHCP starvation

  • NAT



September 29: Beyond the local network


  • Lab 1 announced: How to analyze a large number of packets?

  • Final exam/project format.

  • Recap:

    • Racing against time: ARP spoofing

    • How VPN works

    • "Good" vs "bad" VPN

  • BGP + DNS

  • nmap, what is routable


[Recording] [Slides]

October 6: Cryptography


  • Lab 1 review

  • Guest lecture by Vijay Prakash

  • CIA

  • Historical cryptography & Kerckhoffs's principle of cryptography

  • Cryptographic setting

  • Modern cryptographic algorithms

  • Block cipher & Stream cipher

  • Symmetric and Asymmetric algorithms

  • DES

  • Diffie-Hellman

  • RSA

  • Digital signature

  • Hashes

  • Hash chaining

  • MAC


[Recording] [Slides]

October 20: TLS + PKI + Authentication


  • HTTPS: A primer on web security

  • PKI

  • Let's Encrypt, Certificate Transparency

  • Man-in-the-middling TLS connection


[Slides] [Mentimeter] [Recording (NYU Sign-in Needed)]

October 27: Web security and privacy


  • Certificate transparency, wrapping up

  • HTTP

  • Cookies

  • CSRF

  • XSS

  • Fingerprinting



  • [Project] Send Danny project groups and preliminary topics. Danny will provide feedback. Remember: You have a choice to EITHER do a project OR take the final exam, but not BOTH. You'll hear back by October 27 whether you are selected to do the project.

NYU Logins Required: [Zoom Recording] [Slides] [Mentimeter]

November 3: IoT security and privacy


  • Web privacy, continued

  • Smart TV privacy


NYU Logins Required: [Zoom recording] [Slide 1] [Slide 2] [Mentimeter]

November 10: Enterprise security


  • Guest Lecture by Brandon Sloane

  • Job Market: Are there jobs out there and how much do they pay?

  • Industry Challenges: Blockchain, AI, VR, Quantum Computing, Regulatory Requirements

  • Industry Trends: Passwordless Authentication (Fido/U2F/etc), ZeroTrust (micro-segmentation, continuous authentication)

  • Firewalls, IPtables, IDS, IPS


December 8: Project Presentation

This session will NOT be livestreamed.

All presentations will be in person. There will be six groups of presentations. Each group will give a ten-minute talk, followed by about five minutes of Q&A. We will spend about 100 minutes on the presentations. The remaining 50 minutes will be to wrap up the lecture on ransomware and other malware, and with concluding remarks.

Danny highly encourages everyone to attend in person and provide constructive feedback to individual groups. Extra credits will be awarded; please see this form.


  • Project presentations:

    • Project 3: “Ask app not to track” Is that a fraud?

    • Project 7: Data collected by 3rd party apps from Google Fit

    • Project 11: What happens in the public captive portal

    • Project 13: How do universities in China handle email security?

    • Project 17: Code scanning for vulnerabilities using LSTMs

    • Project 19: Disclosing IoT device traffic data without compromising privacy

  • Ransomware + Malware

  • Ethics: censhorship and malware takedown

  • Conclusion