|Wed 13 Sep||Message integrity and pseudorandom functions|
|Mon 18 Sep||Randomness, pseudorandomness, and stream ciphers|
|Wed 20 Sep||Block ciphers|
|Mon 25 Sep||Guest lecture: Prof. Arvind Narayanan|
|Wed 27 Sep||Guest lecture: Prof. Nick Feamster||Assignment 1 due|
|Mon 2 Oct||Key exchange and key management|
|Wed 4 Oct||Public-key crypto|
|Mon 9 Oct||Authenticated encryption|
|Wed 11 Oct||Side channels||Assignment 2 due|
|Mon 16 Oct||Web architecture|
|Wed 18 Oct||Web security|
|Mon 23 Oct||Internet architecture||Assignment 3 due (date change)|
|Wed 25 Oct||Network security|
|Mon 6 Nov||Voting systems security|
|Wed 8 Nov||Control flow hijacking||Assignment 4 due (date change)|
|Mon 13 Nov||Malware|
|Wed 15 Nov||Memory safety|
|Mon 20 Nov||Physical security||Assignment 5 due|
|Mon 27 Nov||Information Flow and Multi-level Security|
|Wed 29 Nov||Big data and privacy|
|Mon 4 Dec||Human factors in security||Assignment 6 due|
|Wed 6 Dec||Economics of security|
|Mon 11 Dec||Quantum computing and security|
|Wed 13 Dec||TBA: students' choice|
|Fri 15 Dec||Assignment 7 due at 11:59pm|
Open notes, open homework
Submission policy. You must submit your solutions electronically via the Dropbox submission system. You will need to type your Princeton netID and password for authentication. Be sure to incude your name and login at the top of every file you submit. Also be sure to click the Check All Submitted Files button to make sure that you have submitted all of the required files and that they compile cleanly. If you do not follow these directions, you will lose a substantial number of points.
You can resubmit and unsubmit files as needed up until the submission deadline. However, once the submission deadline passes, you should not resubmit or unsubmit files: if you wish to submit an assignment late, be sure that your submission directory is empty from the deadline until you are ready to submit all of your files for that assignment. Any files that have been submitted at grading time will be graded as is.
Lateness policy. Assignment will be due at the beginning of class. Late homework will lose 10% of its value for every day of lateness. Assignment more than seven days late will not be accepted.
No homework extensions will be given except in extraordinary circumstances (such as documented illness), and then only if the official university procedures are followed.
Collaboration policy. Unless the assignment explicitly states otherwise, you may not collaborate with other students on the homework. (Of course, if it is a group assignment, you should collaborate within your group!) If you make use of outside sources, you should disclose that fact and cite the sources, as you would in any scholarly work.
Important note. Please do not publish solutions to programming assignments in a way that could compromise their utility as pedagogical tools. At Princeton, this is a violation of the basic rights, rules and responsibilities of members of the university community.