Optional, free 
CNIT 141: Cryptography for Computer NetworksFall 2021 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 818  Intro: Bitcoin & Cryptography
 
Wed 825  Quiz Ch 1 * Discussion 1 due*  1. Encryption
 
Wed 91  Quiz Ch 2 * Proj C 101 due * Discussion 2 due *  2. Randomness
 
Fri 93  Last Day to Add Classes  
Wed 98  Quiz Ch 3 Proj C 102 & C 103 due Discussion 3 due  3. Cryptographic Security
 
Wed 915  Quiz Ch 4 Proj C 105 due Discussion 4 due  4. Block Ciphers
 
Wed 922  Quiz Ch 5 Proj C 106 due Discussion 5 due  5. Stream Ciphers
 
Wed 929  No Quiz  Cryptocurrency Demos: C 351, C 352, H 532, and C 391
 
Wed 106  Quiz Ch 6 Proj C 201 due Discussion 6 due  6. Hash Functions
 
Wed 1013  Quiz Ch 7 Proj C 202 due Discussion 7 due  7. Keyed Hashing
 
 
Wed 1020  Quiz Ch 8 Proj C 401 due Discussion 8 due  8. Authenticated Encryption
 
Wed 1027  No Quiz  Cryptocurrency Demos: C 353, C 354, C 355, and C 303
 
Wed 113  Quiz Ch 9 Proj C 402 due Discussion 9 due  9. Hard Problems
 
Wed 1110  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 1117  No Quiz No Proj due 
 
Wed 1124  Quiz Ch 11 Proj C 501 & 502 due Discussion 11 due 
 
Wed 121  Quiz Ch 12 Proj C 503 due Discussion 12 due  12. Elliptic Curves Demo: C 525
 
Wed 128  Quiz Ch 13 (extra credit) Proj C 504 due All Extra Credit Proj due  Last class: 13. TLS
 
Fri 1210  Fri 1217 10:59 pm 
Final Exam available online throughout the week. You can only take it once.  
* Nothing is considered late until 98 
Lecture Slides  

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