"If privacy is outlawed, only outlaws will have privacy."
 Phil Zimmermann, creator of the Pretty Good Privacy (PGP) data encryption program.
 Phil Zimmermann, creator of the Pretty Good Privacy (PGP) data encryption program.
Course Topics 
This seminar will introduce students to cryptology – the science of making and breaking secret codes. Our overarching goal will be to explore some of the mathematical tools which underlie modern cryptography. In particular we will develop the ideas from number theory necessary to study the RSA cryptosystem.
Cryptography is, and always has been, an inherently political tool. We will therefore spend time discussing the historical development of cryptography and the moral obligations of its practitioners. 
Expected Background 
There are no prerequisites for this seminar and no prior background in mathematics or computer programming is expected.

Course Goals 
This course has no textbook, and there are virtually no lectures. The goal is to learn mathematics by doing mathematics rather than listening to a lecture with the prepackaged correct answer. More specifically, the point is not only to know what is true, but to discover why. Students will learn the material the way a research mathematician solves a problem: through experimentation, trial and error, discussion with their peers, and a lot of hard work. Consequently, each student will essentially write their own cryptology textbook over the course of the semester. Major goals of the course include developing the written and oral communication skills necessary to explain solutions, sharpening the students’ mathematical reasoning, and refining their problemsolving skills.

Course Structure 
On every Monday and Wednesday students will work in small groups on a worksheet based upon a mathematical or cryptological idea. Worksheets will include definitions, exercises, and mathematical statements (Lemmas and Theorems). As students solve each problem and come to understand why each mathematical statement is true, they will present their solutions to the class in a style similar to that of a mathematical research seminar. In particular, students will present their strategy for solving the problem; the final answer is rarely as important as the process used to discover that solution.
Most Fridays we will meet in the computer lab (K100 in the Science Center). Students will, in teams, experiment with various ideas from class, learn some basic programming, and, of course, crack codes. Each lab will consist of a series of problems to be submitted by each team at the end of class. 
Participation 
Much of the learning in the course occurs during classroom and lab work, so participation is extremely important. Students will be assessed on the effort put into group work, volunteering regularly to present solutions, and participation in discussion of other solutions. What is very important is that there will be no assessment of the correctness of students' ideas, only the level to which students are ontopic and engaged with the material. Mathematical missteps and attempts that don’t quite work out are often necessary in discovering a correct solution, and one student’s confusion usually leads everyone to a better understanding of the material.
Coming to class is extremely important in this course. Not only does skipping class affect the student’s class participation grade, it hurts the group with which the student is working. Thus the: Serial Absenteeism Clause. A student is allowed at most three unexcused absences from class. The instructor will decide what is an acceptable absence on a casebycase basis, and all absences due to illness require a physician's note or email from a class dean or the Office of Disability Services. For every unexcused absence beyond the third, the student’s final grade will be reduced by one letter grade. For example, a student with four unexcused absences and a final grade of A will receive a B, and a student with a final grade of A and five unexcused absences will receive a C. 
Homework 
A set of Supplementary Exercises will come with each new inclass worksheet. These will be due exactly one week after the completion of the worksheet. The purpose of these exercises is to keep the students engaged with the material outside of class.
Students are encouraged to collaborate with their peers and work in groups on all homework, but all submitted work must be the student's own. Students should report other students with whom they worked at the top of the assignment. Any copying is unacceptable, and will result in a zero for the entire assignment. Instead, after discussing the homework with your peers, you are expected to write up the solutions in your own words. Late homework will not be accepted, except in grave emergencies, and will count zero. 
Historical Presentation 
Every student in this seminar will give a brief presentation (~510 minutes) about a topic in the history of cryptography. More information about this project is available here. A presentation date sign up sheet is outside of my office (King 200).

Final Textbook 
Since there is no textbook for the course, students must keep a careful record of their inclass work. At the end of the course, students will turn in a ‘textbook’ consisting of their solutions to all problems from inclass worksheets. The only requirements are completeness, neatness, and organization. On the following dates, students will submit writeups of all worksheets (1) not submitted previously and (2) completed by the Wednesday prior to the due date:
September 19th, October 3rd, October 26th, November 14th. Each of the above blocks will count 5% toward the final textbook grade. The final project, which will include complete solutions to all worksheets (revised in accordance with previously received feedback), counts for the remaining 80%. Additional details concerning the final textbook will be forthcoming. 
Disabilities 
Any student with a documented disability is asked to notify their instructor and the Office of Disability Services (located in Peters G27/G28) so that accommodations may be made. For more information, see http://new.oberlin.edu/office/disabilityservices/index.dot.

Honor Code 
Oberlin requires that all students sign an Honor Code for all assignments. This pledge (which is to be written out on each assignment) states: “I affirm that I have adhered to the Honor Code in this assignment.” More information about the honor code can be found at the following website:
http://new.oberlin.edu/office/deanofstudents/honor/students.dot 
Course Feedback 
You are encouraged to provide me with constructive feedback about this course. If you feel that a certain aspect of the course is or is not working, please let me know so that I can do my best to address your concern.
