MCS 425: Codes and Cryptography (Fall 2020)
- Lectures: Mon-Wed-Fri 12:00-12:50pm
- Instructor: Yu Cheng
- Email: email@example.com
- Office Hours: Mon 11am-noon and by appointment.
- Grader: William Vickery (firstname.lastname@example.org). Office Hours: Tue 2-3pm.
- Textbook (Required): Introduction to Cryptography with Coding Theory, Second Edition, Wade Trappe and Lawrence Washington
- Fun Reading: Introduction to Modern Cryptography, Second Edition, Jonathan Katz and Yehuda Lindell
(Homeworks and their due dates will be posted here.)
- Project guidelines.
- Important dates:
- Oct 9: Decide on teams and topics.
- Nov 18 - Dec 2: Presentations.
- Dec 6: Project due.
- Week 1-2 (Aug 24), Classical Ciphers:
- Introduction to the Course
- Possible Attacks (Section 1.1.1), Shift Ciphers (Section 2.1) (Lecture 2)
- Affine Ciphers (Section 2.2) (Lecture 3)
- Vigenère Cipher (Section 2.3) (Lecture 4, Lecture 5)
- Demo for Using/Attacking Classical Ciphers (Lecture 6).
- Week 3-4 (Sep 7), Number Theory:
- Basic Number Theory (Section 3.1) (Lecture 7)
- Extended Euclidean Algorithm (Section 3.2) (Lecture 8)
- Modular Arithmetic (Section 3.3) (Lecture 9)
- Chinese Remainder Theorem (Section 3.4) (Lecture 10)
- Modular Exponentiation (Section 3.5) (Lecture 11)
- Euler’s Theorem (Section 3.6) (Lecture 12)
- Week 5-6 (Sep 21), Public Key Encryption I:
- Week 7-8 (Oct 5), Public Key Encryption II:
* Midterm Exam: Oct 5th (Mon), 12:00pm - 12:50pm.
- Discrete Logarithms (Section 7.1) (Lecture 19)
- Computing Discrete Logs (Section 7.2) (Lecture 20)
- Diffie-Hellman Key Exchange (Section 7.4), Bit Commitment (Section 7.3) (Lecture 21)
- ElGamal Encryption (Section 7.5) (Lecture 22)
- Week 9 (Oct 19), Hash Functions and Digital Signatures:
- Hash Functions (Section 8.1) (Lecture 23)
- Birthday Attacks (Section 8.4) (Lecture 24)
- RSA Signatures (Section 9.1), EIGamal Signatures (Section 9.2) (Lecture 25)
- Hashing and Signing (Section 9.3), Birthday Attacks on Signatures (Section 9.4) (Lecture 26)
- Week 10 (Oct 26), Security Protocols:
- Man-in-the-Middle Attack (Section 10.1), Public Key Infrastructures (Section 10.4) (Lecture 27)
- Secret Splitting (Section 12.1), Threshold Schemes (Section 12.2) (Lecture 28)
- Week 11 (Nov 2), Information Theory:
- Week 12-13 (Nov 9), Error Correcting Codes:
- Week 14-15 (Nov 23), Project Presentations:
* Final Exam: Dec 8th (Tue), 8:30am - 10am.
- Project Presentations (Lecture 37-42)
- Final Exam Review, An Example of Two-Party Computation (Lecture 43)
- Homeworks (30%): We will have 5-7 homeworks. You are encouraged to discuss with other students, but you must acknowledge who you worked with and you must write up your solutions independently. Late homeworks are not accepted in general (exceptions with good reasons may be requested in advance).
- Midterm (20%): Oct 5th (Mon), 12:00pm - 12:50pm.
- Final (30%): Dec 8th (Tue), 8:30am - 10am.
- Course project (20%): Explore in depth a topic that we did not cover in class. Write a project report and prepare a presentation.
Concerning disabled students, the University of Illinois at Chicago is committed to maintaining a barrier-free environment so that individuals with disabilities can fully access programs, courses, services, and activities at UIC. Students with disabilities who require accommodations for full access and participation in UIC Programs must be registered with the Disability Resource Center (DRC). Please contact DRC at (312) 413-2183 (voice) or (312) 413-0123 (TDD).
Students who wish to observe their religious holidays shall notify the faculty member by the tenth day of the semester of the date when they will be absent unless the religious holiday is observed on or before the tenth day of the semester. In such cases, the students shall notify the faculty member at least five days in advance of the date when he/she will be absent. The faculty member shall make every reasonable effort to honor the request.