Stanford University - Cryptography I
- Offered byCoursera
Cryptography I at Coursera Overview
Duration | 23 hours |
Start from | Start Now |
Total fee | Free |
Mode of learning | Online |
Official Website | Explore Free Course |
Credential | Certificate |
Cryptography I at Coursera Highlights
- Shareable Certificate Earn a Certificate upon completion
- 100% online Start instantly and learn at your own schedule.
- Flexible deadlines Reset deadlines in accordance to your schedule.
- Approx. 23 hours to complete
- English Subtitles: Arabic, French, Portuguese (European), Italian, Vietnamese, German, Russian, English, Spanish
Cryptography I at Coursera Course details
- Cryptography is an indispensable tool for protecting information in computer systems. In this course you will learn the inner workings of cryptographic systems and how to correctly use them in real-world applications. The course begins with a detailed discussion of how two parties who have a shared secret key can communicate securely when a powerful adversary eavesdrops and tampers with traffic. We will examine many deployed protocols and analyze mistakes in existing systems. The second half of the course discusses public-key techniques that let two parties generate a shared secret key. Throughout the course participants will be exposed to many exciting open problems in the field and work on fun (optional) programming projects. In a second course (Crypto II) we will cover more advanced cryptographic tasks such as zero-knowledge, privacy mechanisms, and other forms of encryption.
Cryptography I at Coursera Curriculum
Course overview and stream ciphers
Course Overview
What is Cryptography?
History of Cryptography
Discrete Probability (Crash Course)
Discrete Probability (Crash Course, Cont.)
Information Theoretic Security and The One Time Pad
Stream Ciphers and Pseudo Random Generators
Attacks on Stream Ciphers and The One Time Pad
Real-World Stream Ciphers
PRG Security Definitions
Semantic Security
Stream Ciphers are Semantically Secure [optional]
Lecture slides for all six weeks
Course overview and additional reading resources
Week 1 - Problem Set
Week 1 - Programming Assignment [optional]
Block Ciphers
What are Block Ciphers?
The Data Encryption Standard
Exhaustive Search Attacks
More Attacks on Block Ciphers
The AES Block Cipher
Block Ciphers From PRGs
Review: PRPs and PRFs
Modes of Operation: One Time Key
Security for Many-Time Key (CPA security)
Modes of Operation: Many Time Key (CBC)
Modes of Operation: Many Time Key (CTR)
Week 2 - Problem Set
Week 2 - Programming Assignment [Optional]
Message Integrity
Message Authentication Codes
MACs Based On PRFs
CBC-MAC and NMAC
MAC Padding
PMAC and the Carter-Wegman MAC
Introduction
Generic Birthday Attack
The Merkle-Damgard Paradigm
Constructing Compression Functions
HMAC
Timing attacks on MAC verification
Week 3 - Problem Set
Week 3 - Programming Assignment [Optional]
Authenticated Encryption
Active Attacks on CPA-Secure Encryption
Definitions
Chosen Ciphertext Attacks
Constructions From Ciphers and MACs
Case Study: TLS 1.2
CBC Padding Attacks
Attacking Non-Atomic Decryption
Key Derivation
Deterministic Encryption
Deterministic Encryption: SIV and Wide PRP
Tweakable Encryption
Format Preserving Encryption
Week 4 - Problem Set
Week 4 - Programming Project [Optional]
Basic Key Exchange
Trusted 3rd Parties
Merkle Puzzles
The Diffie-Hellman Protocol
Public-Key Encryption
Notation
Fermat and Euler
Modular e'th Roots
Arithmetic algorithms
Intractable Problems
More background on number theory
Week 5 - Problem Set
Week 5 - Programming Assignment [Optional]
Public-Key Encryption
Definitions and Security
Constructions
The RSA Trapdoor Permutation
PKCS 1
Is RSA a One-Way Function?
RSA in Practice
The ElGamal Public-key System
ElGamal Security
ElGamal Variants With Better Security
A Unifying Theme
Farewell (For Now)
Week 6 - Problem Set
Week 6 - Programming Assignment [Optional]
Final exam
Final Exam
Cryptography I at Coursera Admission Process
Important Dates
Other courses offered by Coursera
Student Forum
Useful Links
Know more about Coursera
Know more about Programs
- Engineering
- Instrumentation Technology
- Food Technology
- Aeronautical Engineering
- Artificial Intelligence and Machine Learning
- Metallurgical Engineering
- MTech in Computer Science Engineering
- VLSI Design
- Petroleum Engineering
- Aerospace Engineering
- BTech in Biotechnology Engineering
- Pharmaceutical engineering
- Silk Technology
- Microelectronics
- Agriculture & Farm Engineering