Assignments are listed here chronologically by due date. New assignments will tend to be at the bottom of the page.
Jump directly to Week 1 | Week 2 | Week 3 | Week 4 | Week 5 | Week 6 | Week 7 | Week 8 | Week 9 | Week 10
Week 1: Wednesday
- Homework Assignment for Wednesday of First Week:
- 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.
- Reading Assignment for Wednesday of First Week:
- Read the Handout - Section 1.1 from Mollin's An Introduction to Cryptography. (On Kit.)
- Chapter 1 of Paar/Pelzel.
- Looking ahead - you should be finished reading the first half of The Woman Who Smashed Codes by Friday, when we will be having a book discussion.
- Discussion Questions for Wednesday of First Week:
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
I will ask students to present solutions to the following exercises from the reading in Mollin:- Exercise 1.1
- Exercise 1.3
- Exercise 1.5
- New material for Wednesday of First Week:
- Exploring Chapter 1 slides.
- Exploring Python and Caesar ciphers.
- Homework 1 is now available and is due on Wednesday of Week 2.
Week 1: Friday
- Homework for Friday of First Week:
- TBD
- Reading Assignment for Friday of First Week:
- Finish reading the chapters in Part 1 of "The Woman who Smashed Codes".
- Read Ch. 1 of Nielson/Monson.
- Begin reading sections 2.1 and 2.2 of Paar/Pelzel.
- Discussion Questions for Friday of First Week:
- Problems 1.5, 1.6, 1.7, 1.8, 1.9, 1.10 from Chapter 1 of the Paar book (the textbook). NOTE: These are getting moved to Wednesday of Week 2!
- Take a look at the document on Teams (under the Files tab) of possible discussion questions for Part 1 of "The Woman who Smashed Codes". Please add 1 or 2 of your own questions to be included in discussion.
- After the book discussion, 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".
- New material for Friday of First Week:
- Continue working on Homework 1. It is due on Kit Wednesday of 2nd Week.
- Project 1 will be available soon.
Week 2: Monday
- Homework Problems for Monday of Second Week:
- You should be working on Homework 1. It is
due Wednesday of Week 2.
- Reading Assignment for Monday of Second Week:
- You should have finished reading sections 2.1 and 2.2 of Paar and Ch.1 of Nielson/Monson.
- Discussion Questions and New Material for Monday of Second Week:
- Guest lecture by candidate for new CS faculty position.
- DQs TBD.
- Chapter 2 slides.
Week 2: Wednesday
- Homework Problems for Wednesday of Second Week:
- Homework 1 is due on Kit today.
- Start to work on Project 1. It is due Friday of 3rd week.
- Reading Assignment for Wednesday of Second Week:
- No
new reading.
- Discussion Questions for Wednesday of Second Week:
- Problems 1.5, 1.6, 1.7, 1.8, 1.9, 1.10 from Chapter 1 of the Paar book (the textbook).
- Come with questions pertaining to HW 1.
Week 2: Friday
- Homework Problems for Friday of Second Week:
- Work on Reflection of HW 1. It should be submitted on Kit after you have submitted HW 1.
- Reading Assignment for Friday of Second Week:
- Be sure to have read Sections 2.1 and 2.2 of Paar.
- Begin reading Sections 3.1 - 3.3 of Paar.
- Continue reading "The Woman who Smashed Codes".
- Discussion Questions & New Material for Friday of Second Week:
- No new discussion questions.
- Chapter 2 slides (stop at LFSRs).
- DES Slides.
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 key0111111101
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 be00010011
.
- Using SDES, decrypt the string
- 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:
- DES Slides
- Start to work on Homework #2.
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.
- 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:
- Homework #2 is due today.
- 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:
- Block cipher modes of operation. Chapter 5 slides.
-
Documentation on
cryptography
library in Python. - Link to source code from "Practical Cryptography".
Week 5: Monday
- New Material for Monday of Fifth Week:
- Work on the AES Programming Exercises
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:
- 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:
- Chapter 7 Slides
- Begin to work on Homework #3. It is due Wednesday of Week 7.
- Homework Assignment for Friday of Sixth Week:
- Project 2 is due Monday.
- 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:
- Homework #3 is due on Wednesday.
- Project 2 is due.
- Reading Assignment for Monday of Seventh Week:
- Read Sections 8.1 - 8.4 of Paar.
- New Material for Monday of Seventh Week:
- Homework Assignment for Wednesday of Seventh Week:
- Homework #3 is due on Kit today.
- 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:
- Problems 10.4, 10.5, 10.7, 10.14 part 1 from Paar. (Submit as group work at end of class)
Check out this discussion related to Problem 10.7: How does an attack on a digital signature work? - Chapter 11 Slides
- Problems 10.4, 10.5, 10.7, 10.14 part 1 from Paar. (Submit as group work at end of class)
Week 8: Friday
- Homework Assignment for Friday of Eighth Week:
- If you missed the MAA Distinguished Lecture "Encryption
Methods: Past, Present, and Future" by Alexander Diaz-Lopez on
Wednesday evening, you can watch it here on YouTube: Encryption
Methods Lecture
(Optional, but can help if your attendance/participation has been lagging): Submit a reflection of the lecture on Kit. Video Presentation Reflection Template - Start on HW #3 Assessment and Reflection
- If you missed the MAA Distinguished Lecture "Encryption
Methods: Past, Present, and Future" by Alexander Diaz-Lopez on
Wednesday evening, you can watch it here on YouTube: Encryption
Methods Lecture
- 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:
- You should start working on the Final
Project.
- Chapter 11 Slides
- Work on Exercises 11.2 and 11.3 (1, 2, 3, 8) of Paar.
- You should start working on the Final
Project.
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:
- Chapter 12 Slides
- Work on Projects
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:
- Don't forget to do HW #3
Assessment and Reflection after you submit HW #3.
- 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.