Math 75 Applied Topics in Number Theory and Algebra: Mathematics of Cryptography

Term: Spring 2020

Enigma machine
Lecture 01 (31260)
Inst : Prof. Asher Auel
asher * auel AT dartmouth * edu
Time : Mon Wed Fri 11:30 am - 12:35 pm
X-hour Tue 12:15 - 1:05 pm
Loct : Remote
Office : Remote
Phone : No office phone!
Office
hours:
TBA
Text : Cryptography
Simon Rubinstein-Salzedo
Springer.

The Code Book
Simon Singh
Anchor Books, 1999.
 Course syllabus and homework schedule.

Description of course: Since the beginning of human communication, there has been a need to send secret messages. In the past, this was primarily reserved for securing trade secrets and sending tactical communiqués during war time. However, now that we are conducting the majority of our daily communications and transactions on-line, the security of our information is a matter of broader public concern. The ability to encrypt messages and to conduct a trusted exchange of digital information, once the primarly interest of governments and the military, is now a matter of necessity for everyone.

Essentially, the foundations of modern cryptography rely on the difficulty of solving certain math problems. In this course, we will address these from both a mathematical and algorithmic point of view. We will cover a subset of the following topics: conventional encryption techniques and ciphers, the Hill cipher, DES and SDES, RSA, the Rijndael cipher, discrete logarithms and the Diffie-Hellman key exchange, and elliptic curve cryptography.

Expected background: The essential prerequisite is familiarity with abstract algebra and/or linear algebra and number theory, as well as 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. Prerequisite courses at Dartmouth are Math 71, or Math 25 and 31, or Math 24 and 31, or instructor permission.

Homework 50%
Reading responses 10%
Final take home cipher challenge 40%
Grades: Your final grade will be based on weekly homework, weekly reading responses, and a final cipher challenge. However, the course will be graded credit/no credit (CT/NC), as per college regulations during this unprecedented situation.
Group work, honestly: Working with other people (even remotely) on mathematics is highly encouraged and fun. You may work with anyone (e.g., other students in the course, not in the course, tutors, ...) on your homework problems. If done right, you'll learn the material better and more efficiently working in groups. The golden rule is:
Work with anyone on solving your homework problems,
but write up your final draft by yourself.
Writing up the final draft is as important a process as figuring out the problems on scratch paper with your friends, see the guidelines below. If you work with people on a particular assignment, you must list your collaborators on the top of the first page. This makes the process fun, transparent, and honest. Mathematical writing is very idiosyncratic; if your proofs are copied, it is easy to tell. You will not learn (nor adhere to the Honor Principle) by copying solutions from others or from the internet.

Additional notes

X-hour: The X-hour will usually consist of office hours. On the occasional week, the X-hour will serve another purpose (e.g., extra or make-up lecture time) and I'll announce it in advance.

Homework: Weekly homework will be due at the beginning of class each Friday. Each assignment will be posted on the syllabus page the week before it's due.

You might consider taking the opportunity to learn LaTeX. Otherwise, you can write out your solutions, neatly and straight across the page, on clean paper, with nice margins, scan them, and upload them.

Exams: There will be a take home cipher challenge at the end of the course.





Homework guidelines: Generally, a homework problem in any math course will consist of two parts: the creative part and the write-up.

  • The creative part: This is when you "solve" the problem. You stare at it, poke at it, and work on it until you understand what's being asked, and then try different ideas until you find something that works. This part is fun to do with your friends; you can do it on the back of a napkin. If you're having trouble, even in understanding what the problem's asking, use the resources available to you: my office hours, teaching assistants' office hours, weekly tutoring sessions, etc. Ask for help as early as you can! This part should all be done on "scratch paper."

  • The write-up: Now that everything about the problem is clear in your mind, you go off by yourself and write up a coherent, succinct, and nicely written solution on clean sheets of paper. Consider this your final draft, just as in any other course. This part you should definitely NOT do with your friends.