Graduate course, University of Central Florida, Department of Computer Science, 2023
Developed and offered as part of the M.Sc. in Computer Security, covering foundations of applied cryptography and computer security. The course focuses on the rigor required for reasoning about properties of modern cryptographic protocols and primitives, and combines a lecture-based and a project-based approaches on modern cryptography and computer security. Topics covered include computational cryptography and security, pseudorandomness, CPA-security, CCA-security, message authentication codes and hash functions, pseudorandom permutations, cryptoanalysis, public key cryptography, public key encryption, and digital signatures. The second part of the course is focused on applied computer security, including transport security, network attacks and defenses, application security (bugs, shellcodes, viruses, spyware), web security (cookies, tracking, XSS, SQL injection, and defenses), advanced threats (including cyber warfare and APTs), and privacy enhancing technologies (TOR, OTR, GPG, anticensorship, social networks and privacy).