Mathematical Cryptography (SP24)
Course Info:
- Lectures: Monday, Wednesday, Friday, block 2 (2:10 p.m. - 3:15 p.m.)
- x-period: Thursday, block 2X (1:20 - 2:10 p.m.)
- Dates: 25 March 2024 - 29 May 2024
- Room: 105 Kemeny Hall
- Instructor: John Voight
- Office: 341 Kemeny Hall
- E-mail: jvoight@gmail.com
- Office hours:
- Mondays, 5:00 - 6:00 (with JV, Kemeny 343)
- Tuesdays, 7:00 - 8:00 (with Luke, Kemeny 220)
- Wednesdays, 6:00 - 7:00 (with JV, Kemeny 343)
- or please make an appointment by email!
- Course Web Page: https://canvas.dartmouth.edu/courses/65458
- Prerequisites: Math 71, or Math 25 and 31, or instructor permission. If you are unsure about your preparation, please talk to the instructor! See also Homework 0.
- Required Text: none.
- Recommended Texts:
- (HPS) Jeffrey Hoffstein, Jill Pipher, and Joseph H. Silverman, An Introduction to Mathematical Cryptography, 2nd ed., 2014.
- (RS) Simon Rubinstein-Salzedo, Cryptography, 1st ed., 2018.
- (S) Simon Singh, The Code Book: The Science of Secrecy from Ancient Egypt to Quantum Cryptography, 2000.
- Grading: Grade will be based on weekly homework (50%) and a takehome final cipher challenge (50%).
ORC Description:
Cryptography is the science of secure communication over an insecure channel. This course focuses on understanding how mathematics is used in the design of modern cryptosystems, including both theoretical and algorithmic aspects. Specific topics will vary, but may include: substitution ciphers and statistical inference, the Enigma machine and permutation groups, Diffie-Hellman key exchange and discrete logarithms, RSA and integer factorization, AES and finite fields, elliptic curve cryptography, homomorphic encryption and lattices, and quantum cryptography.
Course Description:
We live an information age, with technology increasingly integrated into our daily lives. As a result, the security of our information is of the utmost concern, even as the interconnectedness of the Internet makes our data more vulnerable to attack. The ability to encrypt secrets and to conduct a trusted exchange of digital information, once a subject of interest primarily to governments and the military, is now a matter of necessity for us all.
At the end of the day, the foundation of modern cryptography relies upon the difficulty of solving certain mathematical problems; this course is intended to address them from both a mathematical and algorithmic point of view. We will cover some subset of the following topics: conventional encryption techniques, the Hill cipher, DES and SDES, RSA, the Rijndael cipher, discrete logarithms and the Diffie-Hellman key exchange, and elliptic curve cryptography.
All mathematical objects will be defined, so the essential prerequisite is familiarity with abstract algebra and a healthy mathematical and computational appetite. Some experience with number theory would also be helpful. We will also be writing some simple computer programs in Python.
Learning Outcomes:
By the end of this course, you should be able to:
- Understand how mathematics is used in modern cryptography;
- Solve mathematical problems: utilize abstraction and think creatively; and
- Use algorithms to solve computational problems.
Additional Pages:
- Academic Honor Principle
- Expectations
- Homework
- Student Accessibility Needs
- Mental Health
- Religious Observances
- Additional Support for your Learning
Course Summary:
Date | Details | Due |
---|---|---|