teaching
Introduction to Data Structure and Algorithms
Cybersecurity
Syllabus
Topic 1 (4 hours):
High-level idea of the course
Basics of computer security: CIA and AAA principles,
Basic high-level idea of the course; cryptographic concepts: encryption, digital signature, simple attacks on cryptosystems, digital certificates;
Implementation and Usability Issues: passwords, vulnerabilities from programming errors; computer forensics.
Topic 2 (8 hours): Operating System Security:
Basics OS concepts, process security;
Memory and file system security;
Application program security,
Buffer overflow.
Topic 3 (3 hours):
Malware: insider attacks;
computer viruses; malware attacks:
Trojan horse, rootkits, botnets, etc; P
rivacy-invasive software,
Countermeasures
Topic 4 (9 hours): NetworkSecurity:
Basics of computer networks;
Link-layer and ARP spoofing;
Network layer and IP spoofing, packet sniffing;
Transport layer and session hijacking, SYN flooding, port knocking; denial of service attack;
Application level; firewalls, tunnels, SSH, telnet, IPSec, VPN, intrusion detection system, DNS caching.
Topic 5 (8 hours): Cryptography:
Symmetric key cryptography: mode of operation, MAC;
Asymmetric key cryptography: basic number theory and RSA; signature schemes; hash functions.
Topic 6 (8 hours): Differential privacy:
Privacy methods used in Apple iOS
Google’s next word prediction and learning algorithms.
Google and Apple’s Exposure notification system for Contact tracing
Suggested Books
Module 1 to 4: “Introduction to computer security."
Module 5: Selected chapters from “Cryptography: Theory and Practice"
Module 6: First three chapters and Appendix B of the book: “The Algorithmic Foundations of Differential Privacy"