Foundations of Cryptography
CSCI66201, Fall 2020
Instructor
building 70, room 3657,
(585) 4755193
spr@cs.rit.edu,
https://www.cs.rit.edu/~spr
office hours:
TWR 6:30pm7:30pm
via
zoom, or email spr@cs.rit.edu anytime
Lectures
Monday/Wednesday, 5:00pm6:15pm, room 702590,
ABS delivery mode, zoom
S1 group has inperson classes on Mondays, and participates in class remotely on Wednesdays.
S2 group has inperson classes on Wednesdays, and participates in class remotely on Mondays.
General Course Documents
Syllabus, outcomes, general course documents, policies, sample schedule:
college syllabus,
general schedule,
special COVID19 addendum.
This page gives the current offering's contents, further links and schedule.
Books and Other Reading
 Christof Paar and Jan Pelzl,
Understanding Cryptography, SpringerLink, 2010
(required textbook).
Your
textbook website includes the textbook, textbookassociated
slides and videos of lectures. For additional slides
used in this course see links below in Online Resources.
 Douglas R. Stinson and Maura B. Paterson,
Cryptography: Theory and Practice, CRC Press,
fourth edition 2019.
 Wade Trappe and Lawrence C. Washington,
Introduction to Cryptography with Coding Theory,
Prentice Hall 2002, 2006.
 A. J. Menezes, P. C. van Oorschot and S. A. Vanstone,
CRC Handbook of Applied Cryptography, CRC Press 1996/2001 (great addition
to your bookshelf).

Niels Ferguson, Bruce Schneier and Tadayoshi Kohno,
Cryptography Engineering, John Wiley & Sons 2010
(complementary reading.)

William Stallings,
Cryptography and Network Security. Principles and Practice,
Prentice Hall, fifth edition 2011 (popular textbook elsewhere.)
 Bruce Schneier,
Applied Cryptography, John Wiley & Sons 1994 (popular textbook elsewhere.)
 Paul Garrett,
Making, Breaking Codes. An Introduction to Cryptology,
Prentice Hall 2001.
 Richard A. Mollin,
An Introduction to Cryptography,
Chapman & Hall/CRC 2001.
 Simon Singh, The Code Book, the evolution of secrecy from Mary,
Queen of Scots, to quantum cryptography, Doubleday 1999.
 Cryptogram,
electronic newsletter.
 Journal articles.
Prerequisites
General knowledge of programming.
Background in combinatorics and discrete mathematics.
(CSCI661 and (CSCI603 or CSCI605, with B or better in all courses))
or equivalent or permission of instructor. Students who complete CSCI462
may not take CSCI662 for credit.
Evaluation
 05% class participation
 45% homeworks
 20% midterm exam, Monday, October 5, online
 30% final exam, Monday, December 7, online, starts at 7pm
Contents
The course is devoted to the review of basic cryptographic
algorithms, their implementations and usage. Classical encryption
techniques and those of DiffieHellman and RivestShamirAdleman will be
seen in depth, and an overview of several others will be presented,
especially those denominated as publickey cryptosystems. The symmetric
systems DES and AES, and others, will be studied.
The course also presents digital signatures, hash functions,
authentication schemes and some interactive proof protocols.
The specific topics will include:

Introduction, need of security. History.

Substitution and monoalphabetic ciphers.

Vigenere cipher, coincidence index.

A touch of number theoretical algorithms.

Private key cryptography.

Data Encryption Standard  DES.

Rijndael, Advanced Encryption Standard  AES.

Secure hashing algorithms  SHAfamily, NIST competition.

Public key cryptography. Oneway functions.

RivestShamirAdleman cryptosystem  RSA. RSAxxx challenge.

Overview of ElGamal cryptosystem, discrete logarithms, digital signatures.
Main Online Resources

Your
textbook website, or
even better.

Many video lectures by the textbook's authors.

Some
video lectures by
Professor Monika Polak.

Done So Far
8/19. Course logistics, my homepage, this page, homeworks page. Group S2 seats.
8/24. Finish course logistics. Group S1 seats. Texbook chapter 1, slides 110.
8/26. Finish textbook slides for chapter 1.
8/31. Cryptography overview
from spr's angle, slides 114.
9/02. Slides 1418 of the above. Textbook slides 114 for chapter 2.
9/07. Finished textbook slides for chapter 2.
Little more on
PRNGs from Stinson and CRC Handbook.
9/09. Finished the above. Textbook slides 112 for chapter 3.
9/14. Finished textbook slides for chapter 3.
9/16.
Slide 28 chapter 3. Breaking 2DES. More on
DES. Slides 18 for chapter 4.
9/21. Finished textbook slides for chapter 4. Begin fields.
9/23. GF(4), Z_{n}[x],
fields, GF(8), GF(256) in AES.
9/28. More on finite fields,
all fields.
Modes of operation slides 120.
9/30. Finished chapter 5.
MK3 with large Sboxes
(pdf 
slides.pdf).
10/5. Midterm exam.
10/7. Learn Spanish on
AES animation, and about Galois with
AES cartoons.
10/12. Hints on midterm. Chapter 6 slides 118.
10/14. Hints on midterm. Chapter 6 slides 1824.
10/19. Euclid algorithm (EA), EEA, Euler function. Finish chapter 6.
10/21. Euler, Fermat and Lagrange theorems, order of elements,
examples.
10/26.
More on generators.
Square/multiply, recursive gcd, some RSA
slides. Chapter 7 slides 115.
10/28.
CRT. Almost finish chapter 7.
11/2.
OAEP, attacks, primes. Finish chapter 7.
11/4.
Primes, MillerRabin probabilistic primality test,
AKS.
11/9.
DLbased protocols, DH, DHKE, chapter 8.
11/11.
DSA, EC, ECDSA and bitcoin,
bitsign.pdf slides 116.
Textbook chapters 9 and 10.
11/16.
Remaining bitcoin signature slides 1736.
11/18. Hashing, chapter 11.
11/23. More hashing,
from MD5 to sha3.pdf (look closely at slides 1820),
SHA3 finalists.

To Do.
Some of the following slides, beyond the textbook, will
be used in the course. It will be pointed in this place which were
used and when as we go:
overview,
modtabs.txt,
expgcd.pdf,
prng.pdf,
desplus.pdf,
gf.pdf,
MK3 with large Sboxes (
pdf 
slides.pdf),
gen2251.pdf,
crt.pdf,
primes.pdf,
AKS.pdf,
oaep.pdf,
cts.jpg,
rho.pdf,
from MD5 to sha3.pdf (look closely at slides 1820),
SHA3 finalists,
signatures in bitcoin bitsign.pdf,
knap.pdf.
Other Online Resources

Some lectures by Scott Aaronson on
Quantum Computing Since Democritus, in particular
Lecture 8: Crypto.

PostQuantum Cryptography Program, NIST
report 8309, July,
CCC white paper, November 2020.

Common encryption types explained on CompariTech

RSA Laboratories
 The SHA3 Zoo

Combinatorial Computing and Cryptography
in Gdańsk, November 2226, 2010
 Links at
Cryptography Research, Inc.

TimeAI.
Cryptogram 9/2019:
Their claims are nonsensical. Run away. Run, far, far, away.