## Spring 2018

Instructors:

• Instructor: Alina Oprea (alinao).
• TA: Sourabh Marathe

Class Schedule:

·       Monday and Thursday 11:45am-1:25pm

·       Location: Robinson 107

Office Hours:

·       Alina: Thursday, 4-6pm, ISEC 625

·       Sourabh: Tuesday, 2-3pm, ISEC 532

Class forum:  Piazza

Class description:

Cryptography provides the mathematical foundation and protocols for protecting information in today's electronic world. This class will cover the design and formal assessment of cryptographic primitives, including symmetric ciphers, hash functions, public-key encryption and digital signatures. We will also study how to use these primitives correctly and rigorously in real-world applications to achieve strong security guarantees. The course will include as case studies several emerging applications rooted in strong cryptographic foundations: cloud security, secure multi-party computation, and crypto-currencies.

Pre-requisites:

·       Discrete mathematics

·       Probability theory

·       Number theory

## Textbook

Jonathan Katz and Yehuda Lindell. Introduction to Modern Cryptography. Second Edition.

The grade will be based on:

-       Homework assignments – 25%

-       Programming projects – 20%

-       Midterm exam – 25%

-       Final exam – 25%

-       Class participation – 5%

Calendar (Tentative)

 Unit Week Date Topic Readings Introduction 1 Mon 01/08 Course outline (syllabus, grading, policies) Course overview and history of cryptography [PDF] [KL] Chapter 1 Perfect security Thu 01/11 Probability overview Perfectly secret cryptography [PDF] [KL] Chapter 2 2 Mon 01/15 Holiday: Martin Luther King Jr. School closed. Symmetric-key primitives Thu 01/18 Computational security Definition of secure encryption [PDF] [KL] Chapters 3.1 - 3.2 HW 1 out 3 Mon 01/22 Pseudorandom generators (PRG) Reduction proofs Construction of computationally secure encryption from PRG [PDF] [KL] Chapter 3.3 Thu 01/25 Stream ciphers: definition and constructions Attacks on protocol implementations [PDF] [KL] Chapters 6.1 4 Mon 01/29 Pseudorandom functions Relation with PRG Pseudorandom permutations [PDF] [KL] Chapter 3.5.1 HW 1 due Thu 02/01 Notions of security for encryption CPA secure encryption from PRF [PDF] [KL] Chapter 3.5.2 5 Mon 02/05 CPA secure encryption construction Block ciphers – DES and AES [PDF] [KL] Chapter 6.2 HW 2 out Thu 02/08 AES encryption Modes of operation for block ciphers. Attacks against CBC encryption [PDF] [KL] Chapters 6.2.5, 3.6 6 Mon 02/12 Padding-oracle attacks on CBC encryption Message Authentication Codes. CBC-MAC [PDF] [KL] Chapters 3.7, 4.1-4.4 Thu 02/15 MAC schemes. Authenticated encryption. [PDF] [KL] Chapters 4.5 HW 2 due Project 1 out 7 Mon 02/19 Holiday: President’s Day. School closed Thu 02/22 No class. Hash functions 8 Mon 02/26 Hash functions. [PDF] [KL] 5.1-5.4 Project 2 due Thu 03/01 Midterm exam Spring break Mon 03/05 No class Thu 03/08 No class Public-key cryptography 9 Mon 03/12 Birthday paradox HMAC Number theory basics.  [PDF] [KL] Chapter 8 HW 3 out Thu 03/15 Number theory review Miller-Rabin primality testing [PDF] 10 Mon 03/19 Key exchange (Diffie-Hellman, Needham-Schroeder). Public-key encryption. [PDF] [KL] Chapter 10 Thu 03/22 Trapdoor permutations. RSA encryption. Attacks against RSA. [PDF] [KL] Chapter 11.1,11.2, 11.5 HW 3 due on Fri 03/23 Project 2 out on Fri 03/23 11 Mon 03/26 Secure encryption based on trapdoor permutations. El-Gamal cryptosystem and CPA security proof. [PDF] [KL] Chapter 11.4 Applications Thu 03/29 Digital signatures RSA Full-Domain Hash  [PDF] [KL] Chapter 12 12 Mon 04/02 SSL/TLS Crypto currencies intro [PDF] Project 2 due HW 4 out Thu 04/05 Crypto currencies, cont. [PDF] 13 Mon 04/09 Crypto currencies [PDF] Thu 04/12 Review and prepare for final exam [PDF] HW 4 due Project 3 out 14 Mon 04/16 Holiday: Patriot’s Day. School closed. Mon 04/23 Final exam; Location TBD Time: 1-3pm Thu 04/26 Project 3 due

·       J. Bonneau et al. SoK: Research Perspectives and Challenges for Bitcoin and Cryptocurrencies

Books: