Math 202 Cryptography, Fall 2022

This page uses MathJax to display mathematical notation, so please let me know if any part isn't clear.

All section numbers refer to Understanding Cryptography: A Textbook for Students and Practitioners by Paar & Pelzl.

There are a few other resources that you might find useful for reference, including

- The textbook website
- Christof Paar's YouTube channel of lectures for the text

Be sure to check back, because this page will be updated often during the semester.

Modular arithmetic

Encoding messages as numeric variables

- Chapter 1: pp 1 - 23, although you can demphasize Section 1.4.2 Integer Rings

- Week 1: Overview - Echo360 video, link in onCourse
- Week 1: Modular Arithmetic - Echo360 video, link in onCourse

No questions to submit for the first week.

If you didn't see this before Tuesday's class, be sure to complete before Thursday, and remember to fill out the Background Questionnaire linked from onCourse.

Introduction to AES

- Chapter 2: through Section 2.2.2 The One-Time Pad, pp 29 - 38
- Chapter 3: Section 3.1, pp 55 - 58, and Section 3.8 & 3.9, pp 81 - 82
- Chapter 4: Sections 4.1 - 4.2, pp 87 - 90 (Be sure to look at Figure 4.2 on pg 91, too)

- Week 2: Encoding messages as numeric values - Echo360 video, link in onCourse
- Week 2: A few notes on stream ciphers - Echo360 video, link in onCourse
- Week 2: Note on the size of the key space - Echo360 video, link in onCourse
- AES explained as an interactive HTML5 animation

- Encrypt the plaintext x = 1101 using a stream cipher with key stream s = 0111.
- Why are one-time pads unconditionally secure?
- Does an affine cipher perfom confusion? Why or why not?
- What is the purpose of diffusion in encryption algorithm?
- Have you and your partner met to discuss the Problem Set? How much progress have you made?

- Chapter 4: skim Sections 4.3 - 4.5, pp 90 - 115. Don't get boggged down in too many of the details in these Sections. We'll hit the high points we need in class.
- Chapter 4: Sections 4.6 - 4. 8, pp 115 - 117

- For general background, History/Intro to AES by Christof Paar
- AES explained as an interactive HTML5 animation
- Week 3: Introduction to AES and finite fields - Echo360 video, link in onCourse

- Let f(x)=x
^{ 2 }+ x + 1 and g(x)=x+1 be polynomials in ℤ_{2}[x]. What is f(x) ∙ g(x) ? - In which layer(s) of AES does confusion occur? Why?
- Why does diffusion occur in the ShiftRows sublayer of AES?
- Have you and your partner met to discuss the Problem Set? How much progress have you made?

RSA

- Chapter 6: Sections 6.1-6.2, pp 149 - 157
- Chapter 7: Sections 7.1-7.3, pp 173 - 179

- Asymmetric encryption - Simply explained gives a nice introductory motivation
- How RSA works by F5 DevCentral

Note that what they call the "totient of n" is what we've called the Euler phi function \( \phi(n) \).

- Is nonrepudiation possible with a symmetric cipher? Explain.
- Give a real-world example where nonrepudiation is desirable.
- What is the hard math problem underlying the security of RSA?
- Have you and your partner met to discuss the Problem Set? How much progress have you made?

- Chapter 7: Section 7.4, pp 179 - 182

- Extended Euclidean Algorithm Example by John Bowers (I like this better than the text's explanation)

No questions to submit this week since you shoud be prepping for Exam 1.

Hash functions

- Mathematicians Will Never Stop Proving the Prime Number Theorem from Quanta Magazine
- Chapter 10: Sections 10.1-10.2, pp 259 - 270
- Chapter 11: Section 11.1, pp 293 - 296, and the list of Properties of Hash Functions in the box at the end of Section 11.2, pg 303

- Introduction to Digital Signatures
by Jeff Suzuki

The process of RSA signatures is very clear, but one slightly weird thing in the video is that it has Bob specifying the message that Alice signs, rather than Alice signing a message that they want to send to Bob.

- Based on the Prime Number Theorem, approximately how many primes are less than 2
^{1024}? - What is the purpose of a digital signature?
- Suppose Alice and Bob want to exchange an AES key to use for a secure conversation.
- If Alice generates the AES key, whose RSA credentials will they use to encrypt the key to send to Bob?
- If Alice wants to sign the message containing the encrypted key, whose RSA credentials will they use to sign the message?

No class meetings this week due to Fall Break and MAP Day.

- Chapter 8: Section 8.1, pp 205 - 208

- Public key cryptography - Diffie-Hellman Key Exchange by Art of the Problem
- Hashing Algorithms and Security by Computerphile

- What's an advantage of Diffie-Hellman key exchange over using RSA to exchange a key for AES?
- Suppose Alice and Bob agree on values \(p=37\) and \( \alpha=5 \) for Diffie-Hellman.
- If Alice picks a private key of a=9, what will be their public key A?
- If Bob picks a private key of b=14, what will be their public key B?
- What will be the shared key?

- Have you and your partner met to discuss the Problem Set? How much progress have you made?

- Chapter 8: Skim Section 8.2, pp 208 - 216. There's a lot here, so don't get too bogged down. We'll talk about the major results we need during class.

- Solve the discrete log problem \( 3^x \equiv 26 \mod 31 \)
- What is ord(26) in \( \mathbb{Z}_{31}^* \)?
- Could you use your answer to #1 to figure out the answer to #2? Hint: Review last week's in-class work.
- Have you and your partner met to discuss the Problem Set? How much progress have you made?

- Chapter 10: Section 10.4, pp. 277 - 282

- Week 10: The Digital Signature Algorithm - Echo360 video, link in onCourse

- What is the hard math problem underlying the Digital Signature Algorithm? Where does this problem appear?
- What are the possible lengths of the message x that can be securely signed by DSA?
- What is the purpose of the ephemeral key k
_{E}used in DSA? - The text suggests using SHA-1 for the hash in DSA. Do a little research. Is this hash function still recommended?
- Have you and your partner met to discuss the Problem Set? How much progress have you made?

Implications of Quantum Computing

- Chapter 13: Section 13.3, pp 342 - 350
- What Makes Quantum Computing So Hard to Explain? from Quanta Magazine
- Post-quantum encryption contender is taken out by single-core PC and 1 hour from Arstechnica

No questions to submit this week since you shoud be prepping for Exam 2.