Cryptography
xplo17sI. Fundamentals
Chapter 1 : Encryption
- Introduces the notion of secure encryption, from weak pen-and-paper ciphers to strong, randomized encryption.
Chapter 2 : Randomness
- Describes how a pseudorandom generator works, what it takes for one to be secure, and how to use one securely.
Chapter 3 : Cryptographic Security
- Discusses theoretical and practical notions of security, and compares provable security with probable security.
II. Symmetric Crypto
Chapter 4 : Block Ciphers
- Deals with ciphers that process messages block per block, focusing on the most famous one, the Advanced Encryption Standard (AES).
Chapter 5 : Stream Ciphers
- Presents ciphers that produce a stream of random-looking bits that are XORed with messages to be encrypted.
Chapter 6 : Hash Functions
- Is about the only algorithms that don’t work with a secret key, which turn out to be the most ubiquitous crypto building blocks.
Chapter 7 : Keyed Hashing
- Explains what happens if you combine a hash function with a secret key, and how this serves to authenticate messages.
Chapter 8 : Authenticated Encryption
- Shows how some algorithms can both encrypt and authenticate a message with examples, such as the standard AES-GCM.
III. Asymmetric Crypto
Chapter 9 : Hard Problems
- Lays out the fundamental concepts behind public-key encryption, using notions from computational complexity.
Chapter 10 : RSA
- Leverages the factoring problem in order to build secure encryption and signature schemes with a simple arithmetic operation.
Chapter 11 : Diffie–Hellman
- Extends asymmetric cryptography to the notion of key agreement, wherein two parties establish a secret value using only non-secret values.
Chapter 12 : Elliptic Curves
- Provides a gentle introduction to elliptic curve cryptography, which is the fastest kind of asymmetric cryptography.
IV. Applications
Chapter 13 : TLS
- Focuses on Transport Layer Security (TLS), arguably the most important protocol in network security.
Chapter 14 : Quantum and Post-Quantum
- Concludes with a note of science fiction by covering the concepts of quantum computing and a new kind of cryptography.
Intro
- Encryption is the principal application of cryptography; it makes data incomprehensible in order to ensure its confidentiality.
- Encryption uses an algorithm called a cipher and a secret value called the key;
- In symmetric encryption, the key used to decrypt is the same as the key used to encrypt.
- Asymmetric encryption, or public-key encryption, in which the key used to decrypt is different from the key used to encrypt
- When we’re encrypting a message, plaintext refers to the unencrypted message and ciphertext to the encrypted message.
- A cipher is therefore composed of two functions: encryption turns a plaintext into a ciphertext, and decryption turns a ciphertext back into a plaintext.
- But we’ll often say “cipher” when we actually mean “encryption.”
- d
- d