Optional, free 
CNIT 141: Cryptography for Computer NetworksFall 2022 Sam BowneSchedule · Lectures · Projects · Links · Home Page

Optional, free 

Course JustificationIndividuals, companies, and governments all have private data on their computer systems that must be protected. However, the encryption techniques required to protect them are difficult to apply, and often fail in practice. There is a serious shortage of information technology professionals who are qualified to install, repair, and maintain cryptographic security measures. This class helps students prepare to meet those needs. Catalog DescriptionMathematical underpinnings and practical applications of modern cryptographic systems, including the Advanced Encryption Standard (AES), the Secure Hash Algorithms (SHA), and RivestShamirAdleman (RSA). The class focuses on practical applications: selecting, implementing, testing, and maintaining systems to protect data on modern computer networks. Student Learning OutcomesUpon successful completion of this course, the student will be able to: Textbooks"Serious Cryptography: A Practical Introduction to Modern Encryption", by JeanPhilippe Aumasson, No Starch Press (November 6, 2017), ISBN10: 1593278268 ISBN13: 9781593278267 QuizzesThe quizzes are multiplechoice, online, and openbook. However, you may not ask other people to help you during the quizzes. You will need to study the textbook chapter before the lecture covering it, and take the quiz before that class. Each quiz is due 30 min. before class. Each quiz has 5 questions, you have ten minutes to take it, and you can make two attempts. If you take the quiz twice, the higher score counts. Discussion BoardEach CCSF student must contribute to the Discussion Board in Canvas. There are dates listed in the schedule with Discussion assignment due. 
Schedule (may be revised)  

Date  Quiz & Proj Due  Topic  
Wed 817  Intro: Bitcoin & Cryptography
 
Wed 824  Quiz Ch 1 * Discussion 1 due*  1. Encryption
 
Wed 831  Quiz Ch 2 * Proj C 101 due * Discussion 2 due *  2. Randomness
 
Fri 92  Last Day to Add Classes  
Wed 97  Quiz Ch 3 * Proj C 102 & C 103 due * Discussion 3 due *  3. Cryptographic Security
 
Wed 914  Quiz Ch 4 Proj C 105 due Discussion 4 due  4. Block Ciphers
 
Wed 921  Quiz Ch 5 Proj C 106 due Discussion 5 due  5. Stream Ciphers
 
Wed 928  No Quiz  Cryptocurrency Project Demos
 
Wed 105  Quiz Ch 6 Proj C 201 due Discussion 6 due  6. Hash Functions  
Wed 1012  Quiz Ch 7 Proj C 202 due Discussion 7 due  7. Keyed Hashing  
Wed 1019  Quiz Ch 8 Proj C 401 due Discussion 8 due  8. Authenticated Encryption  
Wed 1026  No Quiz  Cryptocurrency Demos: C 353, C 354, C 355, and C 303  
Wed 112  Quiz Ch 9 Proj C 402 due Discussion 9 due  9. Hard Problems  
Wed 119  Quiz Ch 10 Proj C 403 due Discussion 10 due  10. RSA (lecture video from last year) Demos: C 503 & C 504 & C 203  
Wed 1116  No Quiz No Proj due  Guest Speaker TBA  
Wed 1123  Quiz Ch 11 Proj C 501 & 502 due Discussion 11 due 
 
Wed 1130  Quiz Ch 12 Proj C 503 due Discussion 12 due  12. Elliptic Curves Demo: C 525  
Wed 127  Quiz Ch 13 (extra credit) Proj C 504 due All Extra Credit Proj due  Last class: 13. TLS  
Tue 1213 through Tue 1220  Final Exam available online throughout the week. You can only take it once.  
All quizzes due 30 min. before class * No late penalty until 914 
Lecture Slides  

Grading Policy
Bitcoin and Blockchains
· Keynote
· PDF
Beyond the doomsday economics of
2. Randomness
· Keynote
· PDF
