Math/CS 323. Cryptography

Fall 2025


Announcements

Announcements will appear here.
Course Description

An introduction to cryptology and cryptanalysis, the making of codes and the breaking of codes. History and basic concepts. Classical ciphers and attacks on classical ciphers. One-time Pad. Modern ciphers including DES, AES. Public key ciphers including RSA and Diffie-Hellman. Digital signatures. Additional topics may include Elliptic Curve systems, knapsack systems, and other cryptographic systems. Prerequisites: Mathematics 230 and Computer Science 212, or permission of the instructor. (Under the old GEC, this course meets the Natural Science & Mathematics requirement.)
Textbook

Cryptography by Simon Rubinstein-Salzedo.


Student Learning Outcomes

Main Goals:


Grading

The course grade will be based on:
Homework 10%,
Midterms 60% (20% each),
Final Exam 30%.


Homework

There will be written homework roughly every week. The homework will be posted on Moodle.


Exams

There will be three two-part midterms and one two-part final exam. The midterms will be split into a hand-written test and a computer-based exam outside of class. On the midterms and the final exam you must work on the problems on your own. No collaboration permitted in the exams.

The tentative dates for the exams:


Attendance

Students are expected to come to every lecture and every exam.

If the dates of the exams conflict with Lake Forest approved events, inform me as soon as possible.

Description of instructional time and expectations:

This course meets 3 times per week for 3 hours per week. The course carries 1.0 course credit (equivalent to four semester credit hours). Students are expected to devote a minimum of 12 hours of total work per week (in-class time plus out-of-class work) to this course.

Academic Honesty

Please read the College's information on Academic Honesty. If a student cheats in an exam, quiz or homework assignment, I will proceed with charging the student with the Academic Honesty Judicial Board. The usual (first) penalty is a 0 in the assignment on which the cheating occured plus some ethics lectures the student would take. The second penalty is usually suspension. For the online exams and homework assignments, copying code from any website is considered plagiarism (including using ChatGPT). I will ask all students to explain their code used on exams verbally to me by appointment. If the explanation for their code is unsatisfactory, the grade for that exam will be 0. My recommendation is to only turn in answers for questions on which there is code you can explain yourself.

Academic Resources, Protocols, and Policies

Click here: Academic Resources, Protocols, and Policies

Last modified on October 9, 2025.