IMPORTANT NOTE: The following schedule represents a current best guess concerning actual due dates (and everything else), to give you a general idea of the pace and timing of the class. This schedule is likely to change as the quarter progresses.

Last modified on .


Skip directly to Week 1 | Week 2 | Week 3 | Week 4 | Week 5 | Week 6 | Week 7 | Week 8 | Week 9 | Week 10

DAY PREPARATION IN-CLASS TOPIC/ACTIVITY
Week 1
Monday
(M1)
Introduction / Syllabus

Looking Ahead:
• Homework Assignment 0 is due Wednesday. This assignment is to write a paragraph describing your math background. Include courses you've taken, topics you like/don't like, and your general attitude toward math. (Love it? Hate it? Somewhere in-between?) Submit this on Kit.
• Start Part 1 of The Woman Who Smashed Codes. We will have a book discussion on Friday.
Wednesday
(W1)
Due on Kit Before Class:
Homework Assignment 0

Reading & Discussion Questions:
Read through the following articles on the impact of crypto assets on the climate. Feel free to find additional sources to bring to the discussion.
Crypto Has a Climate Problem
How can Web 3.0 and cryptocurrency be a solution for climate change?
Revisiting Bitcoin's carbon footprint
Crypto Climate Accord
Continue reading Part 1 of The Woman Who Smashed Codes. We will have a book discussion on Friday.
In-class: The impact of crypto assets on Climate Change
Friday
(F1)
Reading & Discussion Questions:
Finish reading the chapters in Part 1 of "The Woman who Smashed Codes".
DQ: Take a look at the set of discussion questions before class. Think of 1 or 2 of your own questions to include.
Chapter 1 of Paar/Pelzel.
Read Ch. 1 of Nielson/Monson.
Book Discussion

New Material:
• Exploring Chapter 1 slides.
• Exploring modular arithmetic. Check out the lessons and exercises on Modular arithmetic at Khan Academy
 
Codebreaker Crossword Puzzle with a cipher and a secret message
 
You may watch "The Codebreaker" video (53 minutes) for free with access through our library.

Looking Ahead:
Week 1 Reflection is due before class on Monday of Week 2.
Homework 1 is now available and is due on Wednesday of Week 2.
DAY PREPARATION IN-CLASS TOPIC/ACTIVITY
Week 2
M2
Homework Assignment:
You should be working on Homework 1. It is due Wednesday of Week 2.

Reading & Discussion Questions:
Read the Handout - Section 1.1 from Mollin's An Introduction to Cryptography. (On Kit.)
DQ: I will ask students to present/describe the following historical ciphers. (These are described in the Mollin reading.)
• Spartan skytale
• Caesar substitution
• Alberti cipher disk
• Porta digraphic cipher
• Cardano grille
• Vigenere autokey cipher
DQ: I will also ask students to present solutions to the following exercises from the reading in Mollin:
• Exercise 1.1
• Exercise 1.3
• Exercise 1.5

Be sure to have read Chapter 1 of Paar/Pelzel and begin to read sections 2.1 and 2.2 of Paar/Pelzel. Start reading Ch.1 of Nielson/Monson.

Discussion Questions
Historical Cyphers

New Material:
We will work on reviewing/learning modular arithmetic.
W2
Due on Kit today:
Homework 1

Reading & Discussion Questions:
Read Ch.1 of Nielson/Monson.
You should have finished reading sections 2.1 and 2.2 of Paar/Pelzel.
DQ: Problems 1.5, 1.6, 1.7, 1.8, 1.9, 1.10 from Chapter 1 of the Paar book (the textbook).
Discussion Questions
Come with questions pertaining to HW 1.

In-class: DQ from Paar book We will explore some Python by taking a look at Listings 1-1, 1-2, 1-3, and 1-4 from Chapter 1 in "Practical Cryptography".
(Note: The source code for the programs in the book may be found in the repository accompanying the book: Practical Cryptography Repository)

Looking Ahead:
Start to work on Project 1. It is due Wednesday of 3rd week.
Work on Reflection of HW 1. It should be submitted on Kit after you have submitted HW 1.
F2
Due on Kit today:
Reflection of HW 1

Reading & Discussion Questions:
Be sure to have read Sections 2.1 and 2.2 of Paar.
Looking ahead: Begin reading Sections 3.1 - 3.3 of Paar.
Continue reading "The Woman who Smashed Codes".
New Material:
Exploring Python (as listed on W2)
DAY PREPARATION IN-CLASS TOPIC/ACTIVITY
Week 3
M3
Due Before Monday:
Reflection of HW 1

Reading & Discussion Questions:
Be sure to have read the sections listed for F2.
New Material:
Chapter 2 Slides (Stop as LFSRs).

Work through some One-time pad exercises from the book "The Joy of Cryptography"
W3
Reading & Discussion Questions:
Read the chapter on S-DES that can be found on Kit
New Material/In-class activity:
We will work through the following example of encryption with SDES: SDES Example.

Follow-up exercise: Using SDES, decrypt the string 10100010 using the key 0111111101 by hand. Show intermediate results after each function (IP, FK, SW, FK, IP-1). Then decode the first 4 bits of the plaintext to a letter and the second 4 bits of the plaintext to another letter where we encode A through P in base 2 (i.e., A = 0000, B = 0001, ..., P = 1111). (Hint: As a midway check, after the application of SW, the string should be 00010011.
F3
Due on Kit today:
Project 1

Reading & Discussion Questions:
Read Sections 3.1-3.3 of Paar

Finish reading Part II of "Woman who Smashed Codes" by Monday.
New Material:
Go over Follow-up exercise from W3

DES Slides
Start to work on Homework #2. (Due F4)
DAY PREPARATION IN-CLASS TOPIC/ACTIVITY
Week 4
M4
Reading & Discussion Questions:
Make sure you've finished Part II of "Woman who Smashed Codes"
Take a look at the book DQs (some are repeated from F1). Think about additional points you'd like to discuss.
New Material/Discussion:
Book Discussion

Work on the DES Exercises (distributed in class) for discussion on Wednesday.

Work on HW 2
W4
Reading & Discussion Questions:
Read Sections 4.1, 4.2, 4.6, and 4.7 in Paar.

Begin reading Chapter 3 in Nielson (Python book)
New Material:
Discussion/Intro to AES. AES slides.
F4
Due on Kit today:
HW #2

Reading:
Read Chapter 5 of Paar (Note: this is different from what was said in class/change of plans)

Continue reading Chapter 3 of Nielson, up to p. 75.

Work on finishing "The Woman who Smashed Codes" book by next Friday.
New Material:
Discussion of block cipher modes of operation. Chapter 5 slides.
DAY PREPARATION IN-CLASS TOPIC/ACTIVITY
Week 5
M5
Reading:
Chapter 3 in Nielson, up to p. 75.

Documentation on cryptography library in Python.

Work on finishing reading "Woman who Smashed Codes"
New Material/In-class Activity
AES Programming Exercises
W5
F5
DAY PREPARATION IN-CLASS TOPIC/ACTIVITY
Week 6
M6
W6
F6
Reading:
DAY PREPARATION IN-CLASS TOPIC/ACTIVITY
Week 7
M7
Due Before Monday:

W7
F7
DAY PREPARATION IN-CLASS TOPIC/ACTIVITY
Week 8
M8
W8
F8
Reading:
DAY PREPARATION IN-CLASS TOPIC/ACTIVITY
Week 9
M9
Due Before Monday:

W9
F9
DAY PREPARATION IN-CLASS TOPIC/ACTIVITY
Week 10
M10
W10
F10
Reading:
Exam Week
Complete your final reflection and submit on Kit before end of day Monday, June 10.

Week 3: Monday

    MLK Day - No class

Week 3: Wednesday

  • Reading Assignment for Wednesday of Third Week:
    • Read the Section on S-DES that is on Kit.

  • Discussion Questions for Wednesday of Third Week:
      We will work through the following example of encryption with SDES: SDES Example.

Week 3: Friday

  • Project 1 is due.
  • Homework Assignment DUE Friday of Third Week: (NOTE: For Winter 2022, we worked on this assignment in class on Wednesday. There is nothing to turn it. The 1:20 section should finish their encryption and be ready to check answers at the beginning of class.)
    • Using SDES, decrypt the string 10100010 using the key 0111111101 by hand. Show intermdiate results after each function (IP, FK, SW, FK, IP-1). Then decode the first 4 bits of the plaintext to a letter and the second 4 bits of the plaintext to another letter where we encode A through P in base 2 (i.e., A = 0000, B = 0001, ..., P = 1111). (Hint: As a midway check, after the application of SW, the string should be 00010011.

  • Reading Assignment for Friday of Third Week:
    • Continue/finish reading Chapter 3 of Paar.
    • Work on finishing "Woman Who Smashed Codes" by Monday.

  • Discussion Questions for Friday of Third Week:

  • New material for Friday of Third Week:

Week 4: Monday

  • Reading assignment for Monday of Fourth Week:
    • Finish reading "Woman Who Smashed Codes".

  • Discussion Questions and New Material for Monday of Fourth Week:
    • Look for document on Teams with more discussion questions and add your own.
Week 4: Wednesday

  • Reading Assignment for Wednesday of Fourth Week:
    • Read Sections 4.1, 4.2, 4.6, 4.7 in Paar.
    • Begin reading Chapter 3 in Nielson.

  • Discussion Questions and New Material for Wednesday of Fourth Week:
    • Discussion/Intro to AES. AES slides.
    • Small group discussion of Sections 4.4 and 4.5.
    • You should be working on Homework #2, due Friday of 4th Week.

Week 4: Friday

  • Homework Problems for Friday of Fourth Week:

  • Reading Assignment for Friday of Fourth Week:
    • Read Section 5.1 from Paar.
    • Continue reading Chapter 3 of Nielson, up to about page 75.

  • Discussion Questions and New Material for Friday of Fourth Week:

Week 5: Monday

Week 5: Wednesday

  • Reading Assignment for Wednesday of Fifth Week:
    • Finish Chapters 1 and 2 of Crypto

  • Discussion Questions and New Material for Wednesday of Fifth Week:
    • Small group discussion of chapters 1 and 2 of Crypto
    • You may start on Project #2.

Week 5: Friday

    Mid-quarter break: No Class

Week 6: Monday

  • Homework Assignment for Monday of Sixth Week:
      You should be working on Project #2. It is due Monday of Seventh Week.

  • Reading Assignment for Monday of Sixth Week:
    • Read Chapter 6 of Paar.

  • Discussion questions & new material for Monday of Sixth Week:
Week 6: Wednesday

  • Homework for Wednesday of Sixth Week:
    • Programming Project #2 is due next Monday.

  • Reading Assignment for Wednesday of Sixth Week:
    • Read Chapter 7 of Paar.

  • Discussion Questions and New Material for Wednesday of Sixth Week:
Week 6: Friday

  • Homework Assignment for Friday of Sixth Week:

  • Reading Assignment for Friday of Sixth Week:
    • Finish reading Chapter 7 of Paar.

  • Discussion Questions and New Material for Friday of Sixth Week:
    • How do we use RSA in practice? Take a look at these examples: RSA Algorithm

Week 7: Monday

  • Homework Assignment for Monday of Seventh Week:

  • Reading Assignment for Monday of Seventh Week:
    • Read Sections 8.1 - 8.4 of Paar.

  • New Material for Monday of Seventh Week:

Week 7: Wednesday

  • Homework Assignment for Wednesday of Seventh Week:

  • Reading Assignment for Wednesday of Seventh Week:
    • Read Chapter 4, up to p. 138 in Nielson.

  • Discussion Questions and New Material for Wednesday of Seventh Week:
    • Create a new program for Listing 4-4 in Nielson. Work on Exercise 4.1. Post your public key on Teams, along with an encrypted message for the person who posted their key right before you. Decrypt and post a reply for the person who encrypted a message for you.
    • Submit your answers to Exercises 4.2 and 4.3 on Kit. (This may be submitted in groups.)
    • Work on Exercise 4.4. Continue to Exercises 4.5 and 4.6 if interested.
    • Take a look at Exercises 4.7 (similar to HW problem 7.12), 4.8, and 4.9.

Week 7: Friday

  • Reading Assignment for Friday of Seventh Week:
    • Finish reading sections "public key", "prime time", and "selling crypto" from the "Crypto" book.

  • Discussion Questions and New Material for Friday of Seventh Week:
    • Discuss the three sections of "Crypto" listed above.

Week 8: Monday

  • Reading Assignment for Monday of Eighth Week:
    • Read Sections 10.1, 10.2, 10.4, 10.6, 10.7 in Paar.

  • Discussion Questions and New Material for Monday of Eighth Week:
    • Problem 8.5 Part 3 from Paar.
    • Problem 8.7 from Paar.
    • Exercises 4.2 and 4.3 from "Practical Cryptography".
    • Chapter 10 Slides

Week 8: Wednesday

  • Reading Assignment for Wednesday of Eighth Week:
    • Read Chapter 11 of Paar.

  • Discussion Questions and New Material for Wednesday of Eighth Week:

Week 8: Friday

  • Homework Assignment for Friday of Eighth Week:

  • Reading Assignment for Friday of Eighth Week:
    • Make sure you've finished reading Chapter 11 of Paar.

  • Discussion Questions and New Material for Friday of Eighth Week:
    • Chapter 11 Slides
    • Finish Wednesday's problems from Chapter 10 and submit on Kit.
    • Look at each of the four scenarios in the following file: Security Scenarios. Determine which of the following is being used in each scenario: symmetric encryption, public-key encryption, confidentiality, authentication, signature.
    • Start on Exercises 11.2 and 11.3 (1, 2, 3, 8) from Paar.
    • Exam 2 will be sent out today and should be submitted on Kit by Wednesday of Week 9.

Week 9: Monday

  • Reading Assignment for Monday of Ninth Week:
    • Read Chapter 11 of Paar.

  • Discussion Questions and New Material for Monday of Ninth Week:

Week 9: Wednesday

  • Reading Assignment for Wednesday of Ninth Week:
    • Read Chapter 2 of Nielson. This is a nice follow-up to our discussion of hash functions from Monday.
    • Read the Digital Signature section (pp. 183-191) of Nielson.
    • Read pp. 213-218 of Chapter 6 of Nielson on Combining Asymmetric and Symmetric Algorithms.

  • Discussion Questions for Wednesday of Ninth Week:
    • Go over Exercise 11.3 from Paar (from Wednesday)
    • Discuss digital signatures and combining symmetric and asymmetric algorithms (from Nielson reading) and their application to the final project.

Week 9: Friday

  • Reading Assignment for Friday of Ninth Week:
    • Read Chapter 12 in Paar.

  • Discussion Questions and New Material for Friday of Ninth Week:

Week 10: Monday

  • Homework Assignment for Monday of Tenth Week
      Add a link to an article related to cryptography to the document on Teams. Be sure to put your name next to the link you add. If you see that someone else has posted the same link, you must post something different.
  • Reading Assignment for Monday of Tenth Week
    • Finish Reading "Crypto"
  • Discussion Questions for Monday of Tenth Week
    • Final "Crypto" discussion. Your groups should come up with several points you want to discuss. Submit group discussion summaries on Kit.

Week 10: Wednesday

  • Homework for Wednesday of Tenth Week:
  • Group discussions of current articles related to Cryptography.
    Submit an INDIVIDUAL reflection on one of the articles on Kit. Use the following ideas as a prompt for your reflection:
    • Give a (short) summary of what the article was about - describe 3-4 of the main ideas.
    • Tell what you learned from the article.
    • Tell what piqued your interest in the article - what do you want to know more about?
    • What do you wish the article mentioned that it didn't?

Week 10: Friday

    Wrap up. Do evaluations. Work on Projects.

    Complete your final reflection and submit on Kit before end of day Tuesday, March 15.