This expanded textbook, now in its second edition, is a practical yet in depth guide to cryptography and its principles and practices. Now featuring a new section on quantum resistant cryptography in addition to expanded and revised content throughout, the book continues to place cryptography in real-world security situations using the hands-on information contained throughout the chapters. Prolific author Dr. Chuck Easttom lays out essential math skills and fully explains how to implement cryptographic algorithms in today's data protection landscape. Readers learn and test out how to use ciphers and hashes, generate random keys, handle VPN and Wi-Fi security, and encrypt VoIP, Email, and Web communications. The book also covers cryptanalysis, steganography, and cryptographic backdoors and includes a description of quantum computing and its impact on cryptography. This book is meant for those without a strong mathematics background with only just enough math to understand the algorithms given. The book contains a slide presentation, questions and answers, and exercises throughout.- Presents new and updated coverage of cryptography including new content on quantum resistant cryptography;
- Covers the basic math needed for cryptography - number theory, discrete math, and algebra (abstract and linear);
- Includes a full suite of classroom materials including exercises, Q&A, and examples.
Author(s): William Easttom
Edition: 2
Publisher: Springer
Year: 2022
Language: English
Pages: 459
City: Cham
Introduction
Contents
About the Author
Abbreviations
Chapter 1: History of Cryptography to the 1800s
Introduction
In This Chapter We Will Cover the Following
Why Study Cryptography?
What Is Cryptography?
Substitution Ciphers
The Caesar Cipher
Mathematical Notation of the Caesar Cipher
Atbash Cipher
Affine Ciphers
ROT 13
Homophonic Substitution
The Great Cipher
Copiale Cipher
Polybius Cipher
Ancient Cryptography in Modern Wars
Null Cipher
Multi-alphabet Substitution
Tabula Recta
Vigenère
The Beaufort Cipher
Devices
Scytale Cipher
Alberti Cipher Disk
The Jefferson Disk
Phaistos Disc
Phryctoriae
Book Ciphers
Beale Ciphers
Dorabella Cipher
Babington Plot Ciphers
Transposition Ciphers
Reverse Order
Rail Fence Cipher
Geometric Shape Cipher
Columnar Cipher
Myskowski Variation
Combinations
D’Agapeyeff Cipher
Conclusions
Test Your Knowledge
References
Chapter 2: History of Cryptography from the 1800s
Introduction
In This Chapter We Will Cover the Following
Playfair
Two-Square Cipher
Four-Square Cipher
Hill Cipher
ADFGVX
Bifid
The Gronsfeld Cipher
The Vernam Cipher
Edgar Allan Poe
Cryptography Comes of Age
Enigma
Enigma Variations
Alan Turing
Kryha
SIGABA
Lorenz Cipher
Navajo Code Talkers
VIC Cipher
IFF Systems
The NSA: The Early Years
Conclusions
Test Your Knowledge
References
Chapter 3: Basic Information Theory
Introduction
In This Chapter We Will Cover
The Information Age
Claude Shannon
Theorem 1: Shannon’s Source Coding Theorem
Theorem 2: Noisy Channel Theorem
Concepts
Information Entropy
Quantifying Information
Confusion and Diffusion
Avalanche
Hamming Distance
Hamming Weight
Kerckhoffs’s Principle/Shannon’s Maxim
Information Diversity
Scientific and Mathematical Theories
What Is a Mathematical Theory?
The Scientific Process
A Scientific Theory
A Look at Successful Scientific Theories
Binary Math
Converting
Binary Operations
Binary AND
Binary OR
Binary XOR
Conclusions
Test Your Knowledge
References
Chapter 4: Essential Number Theory and Discrete Math
Introduction
In This Chapter We Will Cover
Number Systems
Natural Numbers
Integers
Rational Numbers
Irrational Numbers
Real Numbers
Complex Numbers
Transcendental Numbers
Prime Numbers
Finding Prime Numbers
Mersenne Prime
Fermat Prime
Eratosthenes Sieve
Other Sieves
Lucas-Lehmer Test
Relatively Prime
Important Operations
Divisibility Theorems
Summation
Logarithms
Natural Logarithm
Discrete Logarithm
Modulus Operations
Congruence
Congruence Classes
Famous Number Theorists and Their Contributions
Fibonacci
Fermat
Euler
Goldbach
Discrete Mathematics
Set Theory
Logic
Propositional Logic
Building Logical Constructs
Truth Tables
Combinatorics
Permutations
Conclusions
Test Your Knowledge
References
Chapter 5: Essential Algebra
Introduction
In This Chapter We Will Cover
Groups, Rings, and Fields
Groups
Abelian Group
Cyclic Group
Rings
Fields
Galois Fields
Diophantine Equations
Linear Algebra
Matrix Addition and Multiplication
Matrix Transposition
Submatrix
Identity Matrix
Determinants
Eigenvalues and Eigenvectors
Vector Spaces
Algorithms
Basic Algorithms
Sorting Algorithms
Quick Sort
Bubble Sort
Euclidean Algorithm
Designing Algorithms
Conclusions
Test Your Knowledge
References
Chapter 6: Feistel Networks
Introduction
Cryptographic Keys
Feistel Function
Unbalanced Feistel
Pseudo-Hadamard Transform
MDS Matrix
Lucifer
DES
3DES
s-box and p-box
DEAL
MacGuffin
GOST
Blowfish
Twofish
Skipjack
CAST
FEAL
MARS
TEA
XTEA
LOKI97
Camellia
ICE
Simon
IDEA
MISTY1
KASUMI
MAGENTA
Speck
Symmetric Methods
ECB
CBC
PCBC
CFB
Galois/Counter Mode
Conclusions
Test Your Knowledge
References
Chapter 7: Substitution-Permutation Networks
Introduction
In This Chapter We Will Cover
Replacing DES
AES
Rijndael Steps
Rijndael Outline
Initial Round
Rounds
Final Round
Rijndael s-box
Rijndael Key Schedule
The Operations
The Actual Key Schedule
Serpent
Serpent s-boxes
Serpent Key Schedule
The Serpent Algorithm
Square
SHARK
SAFER
The Round Function
Key Schedule
KHAZAD
NESSIE
Stream Ciphers
LFSR
RC4
RC4 Key Schedule Algorithm
FISH
PIKE
eSTREAM
SNOW
Rabbit
HC-128
MICKEY
A5
Phelix
Salsa20
One-Time Pad
Conclusions
Test Your Knowledge
References
Chapter 8: s-box Design
Introduction
Why Study s-box Design?
Critical to Block Ciphers
Designing Ciphers
Altering s-boxes
General Facts About s-boxes
Types of s-boxes
Design Considerations
Strict Avalanche Criterion
Balance
Bit Independence Criterion
Approaches to s-box Design
DES s-box
The Actual s-boxes for DES
The Rijndael s-box
The Irreducible Polynomial
Multiplicative Inverse
Affine Transformation
Generating the s-box
An Example
Changing the Rijndael s-box
s-box Variations
Key-Dependent s-boxes
Chaos-Driven s-boxes
Conclusions
Test Your Knowledge
References
Chapter 9: Cryptographic Hashes
Introduction
In This Chapter We Will Cover
What Is a Cryptographic Hash?
How Are Cryptographic Hashes Used?
Message Integrity
Password Storage
Forensic Integrity
Merkle-Damgard
Specific Algorithms
Checksums
Longitudinal Parity Check
Fletcher Checksum
MD5
SHA
SHA-1
SHA-2
SHA-3
RIPEMD
Tiger
HAVAL
NTLM
NTLM v1
NTLMv2
Whirlpool
Skein
FSB
GOST
BLAKE
Grøstl
SWIFFT
MAC and HMAC
Key Derivation Functions
Conclusions
Test Your Knowledge
References
Chapter 10: Asymmetric Algorithms
Introduction
In This Chapter We Will Cover the Following
What Is Asymmetric Cryptography?
Indistinguishability
RSA
RSA Example 1
RSA Example 2
Factoring RSA Keys
The Rabin Cryptosystem
Diffie–Hellman
ElGamal
MQV
YAK
Forward Secrecy
Optimal Asymmetric Encryption Padding
Cramer–Shoup
Applications
Key Exchange
Digital Signatures
Digital Signature Algorithm
Digital Certificates
SSL/TLS
Homomorphic Encryption
Conclusions
Test Your Knowledge
References
Chapter 11: Elliptic Curve Cryptography
Introduction
In This Chapter, We Will Cover the Following
General Overview
Basic Operations on Elliptic Curves
The Algorithm
ECC Variations
ECC Diffie-Hellman
ECC DSA
Conclusions
Test Your Knowledge
References
Chapter 12: Random Number Generators
Introduction
In This Chapter We Will Cover
What Makes a Good PRNG?
Desirable Properties of Pseudorandom Numbers
Tests of Randomness
1-D Test
Equidistribution
Runs Test
Test for Longest Run of 1s
Poker Test
Statistical Tests
Chi-Squared Test
Standards for PRNG
Specific Algorithms
Mid-Square
Linear Congruential Generator
Lagged Fibonacci Generators
Lehmer Algorithm
Mersenne Twister
Blum Blum Shub
Yarrow
Fortuna
DUAL_EC_DRBG
The Marsaglia CD ROM
Improving PRNGs
Shuffling
Cryptographic Hash
Conclusions
Test Your Knowledge
References
Chapter 13: SSL/TLS
Introduction
In This Chapter We Will Cover
Digital Signatures
Direct Signature
Arbitrated Digital Signature
Blind Signatures
Digital Certificates
X.509
Specific Types of X.509 Certificates
PGP
Alternate Certificate Types
Public Key Infrastructure X.509
SSL and TLS
History
The Handshake Step by Step
Handshake Initiation
Applications of SSL/TLS
OpenSSL
VoIP
Email
Web Servers
Apache Web Server
IIS
Conclusions
Test Your Knowledge
References
Chapter 14: Virtual Private Networks, Authentication, and Wireless Security
Introduction
In This Chapter We Will Cover
Concepts
Authentication
CHAP
EAP
LEAP
EAP-TLS
PEAP
EAP-POTP
Kerberos
SESAME
NTLM
PPTP
PPTP Authentication
PPTP Encryption
L2TP
IPSec
IKE Phase 1
Main Mode
Aggressive Mode
IKE Phase 2
VPN Gateways and Concentrators
SSL/TLS
Other Secure Communications
SSH
Wi-Fi Encryption
WEP
WPA
WPA2
WPA3
Conclusions
Test Your Knowledge
References
Chapter 15: Military Applications
Introduction
In This Chapter We Will Cover
NSA and Cryptography
Security Classifications
NSA Cryptographic Standards
Type 1 Products
HAIPE-IS
HAVE QUICK
SINCGARS
Type 2 Products
Fortezza Plus
Fishbowl
Type 3 and 4 Products
Suite A
SAVILLE
BATON
FIREFLY
Suite B
The Modern Role of the NSA
Secure Phones
US Cryptography Laws and Regulations
How Do Other Nations Handle Cryptography?
International Regulations and Agreements
COCOM and Wassenaar
Specific Governments
Cryptography and Malware
Weaponized Malware
Cyber Warfare
TOR
TOR Technical Details
Conclusions
Test Your Knowledge
References
Chapter 16: Steganography
Introduction
In This Chapter We Will Cover
What Is Steganography?
Historical Steganography
Methods and Tools
Classes of Steganography
Discrete Cosine Transform
Steganophony
Video Steganography
Tools
Quick Stego/QuickCrypto
InvisibleSecrets
MP3 Stego
OpenStego
DeepSound
Other Tools
Current Use of Steganography
Steganalysis
Distributed Steganography
Total Blocks and Block Order
Conclusions
Test Your Knowledge
References
Chapter 17: Cryptanalysis
Introduction
In This Chapter We Will Cover
Classic Methods
Frequency Analysis
Kasiski
Modern Methods
Linear Cryptanalysis
Differential Cryptanalysis
Higher-Order Differential Cryptanalysis
Truncated Differential Cryptanalysis
Impossible Differential Cryptanalysis
Integral Cryptanalysis
Mod-n Cryptanalysis
Asymmetric Cryptanalysis
General Rules for Cryptanalysis
Rainbow Tables
The Birthday Paradox
Other Methods
Other Passwords
Related Data
Spyware
Resources
Conclusions
Test Your Knowledge
References
Chapter 18: Cryptographic Backdoors
Introduction
In This Chapter We Will Cover
What Are Cryptographic Backdoors?
General Concepts
Output Indistinguishability
Confidentiality
Ability to Compromise the Backdoor
Specific Examples
Dual_EC_DRBG
Details
RSA Backdoor
Compromising a Hashing Algorithm
The Prevalence of Backdoors
Governmental Approach
Private Citizen/Group Approach
Countermeasures
Conclusions
Test Your Knowledge
References
Chapter 19: Quantum Computing and Cryptography
Introduction
What This Means for Cryptography
What Is a Quantum Computer?
Quantum Physics Basics
Physical Qubits
Possible Quantum-Resistant Cryptographic Algorithms
Conclusions
Test Your Knowledge
References
Chapter 20: Lattice-Based Cryptography
Introduction
Lattice-Based Mathematical Problems
Shortest Integer Problem
Shortest Vector Problem
Closest Vector Problem
Cryptographic Algorithms
NTRU
GGH
Peikert’s Ring
Solving Lattice Problems
Lenstra-Lenstra-Lovász (LLL)
Conclusions
Test Your Knowledge
References
Chapter 21: More Approaches to Quantum-Resistant Cryptography
Introduction
Multivariate Cryptography
Mathematics
Matsumoto-Imai
Hidden Field Equations
Multivariate Quadratic Digital Signature (MQDSS)
SFLASH
SWIFFT
Lamport Signature
Code-Based Cryptography
McEliece
Niederreiter Cryptosystem
Supersingular Isogeny Key Exchange
Elliptic Curves
SIDH
Conclusions
Test Your Knowledge
References
Index