CS 355 Class


These files are for the use of students in CS 355 Fall, 2019, at Purdue University

Instructor: Samuel S. Wagstaff, Jr.

Phone: 49-46022; E-mail: ssw@cs.purdue.edu

Syllabus for CS 355.

In the event of a major campus emergency such as a tornado or flu epidemic, course requirements, deadlines and grading percentages are subject to changes that may be necessitated by a revised semester calendar or other circumstances beyond the instructor's control. Any such changes will be recorded on this web page.

Prerequisites: CS 251 and MA 351 (or equivalents).

The real prerequisites for CS 355.

Texts: (Don't buy any books until the first class meeting.)

Required:

Introduction to Cryptography with Coding Theory, second edition, W. Trappe and L. C. Washington, Prentice Hall, 0-13-186239-1

The overall course policies are the same as Spaf's.

Location and Time: MEB 1061, TuTh 10:30-11:45 AM.

Office: REC 219; Office hours: Tuesday, Thursday 1:30-2:30 PM.

Grading: Homework: 20%; Midterm exam 20%; Projects 20%; Final exam 40%.

Teaching Assistants:
Hamidreza Amini khorasgani, Email: haminikh@purdue.edu .
Haoyu Song, Email: song522@purdue.edu .

Office hours of Teaching Assistants:
Hamid: Mondays 9:30-10:30 AM in HAAS G50.
Haoyu: Tuesday 3-5 PM in HAAS G50 (but not November 26).

Join CERIAS (in REC 217).

Day-by-day list of topics covered.

slides from an old lecture.

Basic probability.

Remainders, arithmetic, divisibility, gcd, primes.

Formal proof that Euclidean algorithm works.

primes, congruences, Caesar cipher.

Encryption algorithms: transposition, substitution.

More substitution ciphers, product ciphers and DES.

AES.

Congruences for fun and profit.

Block, stream ciphers, LFSRs, meet-in-the-middle attacks.

Examples of the Extended Euclidean Algorithm and the Chinese Remainder Theorem

More about DES.

More about AES in comics.

Fermat, Euler, fast exponentiation, finding large primes. Diffie-Hellman key exchange, discrete logs, RSA, RSA signatures, Discrete logs, Shanks' giant-step-baby-step.

mea: DH, DLP, PH.

Diffie-Hellman key exchange, discrete logs, P-H, RSA, ElGamal, Massey-Omura ciphers, RSA signatures, ElGamal public-key cryptosystem, Mental poker and quadratic residues.

Chinese remainder theorem (simple version), Solving quadratic congruences, Oblivious transfer and Zero-knowledge proofs.

Chinese remainder theorem, Solving quadratic congruences, Oblivious transfer and Zero-knowledge proofs.

mea: OT, ZKP.

mea: OT, ZKP.

MACs and Hash functions.

More about hash functions.

Example of a letter with many variations.

Threshold schemes, Digital Signature Standard and Subliminal Channels.

Key exchange algorithms.

mea: Key exchange algorithms.

PGP and Kerberos.

Construction of large primes and simple factoring.

Random number generation.

Security of RSA keys.

Signing contracts by e-mail.

Digital cash.

mea: Digital cash. MEA version 1

mea: Digital cash. MEA version 2

More about Digital cash.

Electronic voting.

Finding big primes.

Factoring.

Transporting AES keys by RSA.

Millionaire's problem.

All regrading of homework, midterm exams and projects must be done within two weeks after the work is returned to the class.

Solution to homework and a summary of your grades on the midterm. Also a sample midterm exam. (Works only from domain .purdue.edu .)

Please use a word processor like Latex to format your homework solution.

Homework # 1, due 11:59 PM Tuesday, September 10, 2019, to Gradescope. Text of the questions.

Project 1, due Tuesday, September 17, 2019, 11:59 PM, to Vocareum. After you get stuck, click here for help.
Go to Blackboard to see the link to Project 1 in Vocareum.
Remember to write a \newline at the end of your output.

If your project program fails all Vocareum test cases but works fine with your own test cases that you can see, then visit a teaching assistant during office hours or make an appointment to see a TA. They can help you determine why Vocareum dislikes your code.

Homework # 2, due Tuesday, September 24, 2019, 11:59 PM, to Gradescope. Text of the questions.

Homework # 3, due Tuesday, October 1, 2019, 11:59 PM, to Gradescope. Text of the questions.

Project 2, due Thursday, October 3, 2019, 11:59 PM, to Vocareum.
Go to Blackboard to see the link to Project 2 in Vocareum.

Mid-Term Exam, Thursday, October 10, 2019, 10:30 -- 11:20 AM in room MATH 175. (NOTE DIFFERENT ROOM FOR EXAM!) Do not bring cell phones, computers, or any other device that communicates to the exam. Exam is closed book and closed notes.

The exam has 18 True-False and 16 Multiple-Choice questions. There is no penalty for guessing, so answer all questions.

Homework # 4, due Tuesday, October 15, 2019, 11:00 PM, to Gradescope. Text of the questions.

Project 3, due Tuesday, October 22, 2019, 11:59 PM, to Vocareum.
Go to Blackboard to see the link to Project 3 in Vocareum.

Homework # 5, due Thursday, October 24, 2019, 11:00 PM, to Gradescope. Text of the questions.

Homework # 6, due Thursday, October 31, 2019, 11:00 PM, to Gradescope. Text of the questions.

Homework # 7, due Thursday, November 7, 2019, 11:59 PM, to Gradescope. Text of the questions.

Project 4, due Thursday, November 14, 2019, 11:59 PM, to Vocareum. Go to Blackboard to see the link to Project 4 in Vocareum. Please click on "part 1" on the top left corner before submitting your project. Otherwise you will get a message that you can only submit once.

Homework # 8, due Thursday, November 21, 2019, 11:59 PM, to Gradescope. Text of the questions.

Final Exam, Friday, December 13, 2019, 3:30-5:30 PM, Room EE 170. Do not bring cell phones, laptop computers, or any other device that communicates to the exam.

The exam has only True-False and Multiple-Choice questions.

Rijndael, the new AES.

Caesar cipher, CRT.

Large primes via Pocklington-Lehmer.

Euler's Criterion, Legendre symbol.

Quadratic congruences, Oblivious transfer, Zero-knowledge proofs.

Hash and other one-way functions.

MD5 and SHA.

A letter with many variations.

The Birthday paradox.

Threshold schemes.

More about threshold schemes.

Digital Signature Standard.

Subliminal channels; the one in DSA.

Elliptic curves.

Some old slides you might enjoy.

Information theory: Definition of entropy.

Information theory: Rate, perfect secrecy.

Key equivocation, unicity distance.

Synchronous and self-synchronous stream ciphers, CBC.

Congruences: CSR, XEuclid, multiplicative inverses.


Send e-mail to Sam Wagstaff


(This page last modified November 27, 2019)