14 Cryptography
14 Cryptography
Introduction to Cryptography
Paul Krzyzanowski
[email protected]
[email protected]
Except as otherwise noted, the content of this presentation is licensed under the Creative Commons
Attribution 2.5 License.
Page 1
Ngywioggazhon Pystemp
Auesfnsicutiwf & Moiiunocaiwn
Piqtoaoyp
Page 2
Cryptographic Systems
Authentication & Communication
Protocols
Page 3
cryptography
hidden writing
Page 4
cryptology
hidden speaking
Page 5
Cryptography Security
Page 6
Terms
encryption, E(M)
decryption: M=D(C)
Page 7
Terms: types of ciphers
restricted cipher
symmetric algorithm
Page 8
Restricted cipher
Secret algorithm
Leaking
Reverse engineering
HD DVD (Dec 2006) and Blu-Ray (Jan 2007)
RC4
All digital cellular encryption algorithms
DVD and DIVX video compression
Firewire
Enigma cipher machine
Every NATO and Warsaw Pact algorithm during Cold War
Page 9
The key
Source: en.wikipedia.org/wiki/Pin_tumbler_lock
Page 11
The key
Source: en.wikipedia.org/wiki/Pin_tumbler_lock
Page 12
The key
We understand how it
works:
Strengths
Weaknesses
Based on this
understanding, we can
assess how much to trust
the key & lock.
Source: en.wikipedia.org/wiki/Pin_tumbler_lock
Page 13
Symmetric algorithm
Secret key
C = EK(M )
M = DK(C )
Page 14
Public key algorithm
C1 = Epublic(M )
M = Dprivate(C1 )
also:
C2 = Eprivate(M )
M = Dpublic(C2 )
Page 15
McCarthys puzzle (1958)
Page 16
McCarthys puzzle
Challenge
How can a guard authenticate a person without
knowing the password?
Page 17
Solution to McCarthys puzzle
Example function:
Middle squares
Take a 100-digit number (A), and square it
Let B = middle 100 digits of 200-digit result
Page 18
One-way functions
Examples:
Factoring:
pq = N EASY
find p,q given N DIFFICULT
Discrete Log:
ab mod c = N EASY
find b given a, c, N DIFFICULT
Page 19
McCarthys puzzle example
Page 20
More terms
one-way function
Rabin, 1958: McCarthys problem
middle squares, exponentiation,
[one-way] hash function
message digest, fingerprint, cryptographic
checksum, integrity check
encrypted hash
message authentication code
only possessor of key can validate message
Page 21
More terms
Stream cipher
Encrypt a message a character at a time
Block cipher
Encrypt a message a chunk at a time
Page 22
Yet another term
Digital Signature
Authenticate, not encrypt message
Use pair of keys (private, public)
Owner encrypts message with private key
Sender validates by decrypting with public key
Generally use hash(message).
Page 23
Cryptography: what is it good for?
Authentication
determine origin of message
Integrity
verify that message has not been modified
Nonrepudiation
sender should not be able to falsely deny that a
message was sent
Confidentiality
others cannot read contents of the message
Page 24
Cryptographic toolbox
Symmetric encryption
Public key encryption
One-way hash functions
Random number generators
Page 25
Classic Cryptosystems
Page 26
Substitution Ciphers
Page 27
Csar cipher
Page 28
Csar cipher
A B C D E F G H I J K L M N O P Q R S T U VWX Y Z
A B C D E F G H I J K L M N O P Q R S T U VWX Y Z
Page 29
Csar cipher
A B C D E F G H I J K L M N O P Q R S T U VWX Y Z
U VWX Y Z A B C D E F G H I J K L M N O P Q R S T
shift alphabet by n (6)
Page 30
Csar cipher
A B C D E F G H I J K L M N O P Q R S T U VWX Y Z
U VWX Y Z A B C D E F G H I J K L M N O P Q R S T
Page 31
Csar cipher
A B C D E F G H I J K L M N O P Q R S T U VWX Y Z
U VWX Y Z A B C D E F G H I J K L M N O P Q R S T
Page 32
Csar cipher
A B C D E F G H I J K L M N O P Q R S T U VWX Y Z
U VWX Y Z A B C D E F G H I J K L M N O P Q R S T
GS
Page 33
Csar cipher
A B C D E F G H I J K L M N O P Q R S T U VWX Y Z
U VWX Y Z A B C D E F G H I J K L M N O P Q R S T
GSW
Page 34
Csar cipher
A B C D E F G H I J K L M N O P Q R S T U VWX Y Z
U VWX Y Z A B C D E F G H I J K L M N O P Q R S T
GSWU
Page 35
Csar cipher
A B C D E F G H I J K L M N O P Q R S T U VWX Y Z
U VWX Y Z A B C D E F G H I J K L M N O P Q R S T
GSWUN
Page 36
Csar cipher
A B C D E F G H I J K L M N O P Q R S T U VWX Y Z
U VWX Y Z A B C D E F G H I J K L M N O P Q R S T
GSWUNB
Page 37
Csar cipher
A B C D E F G H I J K L M N O P Q R S T U VWX Y Z
U VWX Y Z A B C D E F G H I J K L M N O P Q R S T
GSWUNBU
Page 38
Csar cipher
A B C D E F G H I J K L M N O P Q R S T U VWX Y Z
U VWX Y Z A B C D E F G H I J K L M N O P Q R S T
GSWUNBUM
Page 39
Csar cipher
A B C D E F G H I J K L M N O P Q R S T U VWX Y Z
U VWX Y Z A B C D E F G H I J K L M N O P Q R S T
GSWUNBUMZ
Page 40
Csar cipher
A B C D E F G H I J K L M N O P Q R S T U VWX Y Z
U VWX Y Z A B C D E F G H I J K L M N O P Q R S T
GSWUNBUMZF
Page 41
Csar cipher
A B C D E F G H I J K L M N O P Q R S T U VWX Y Z
U VWX Y Z A B C D E F G H I J K L M N O P Q R S T
GSWUNBUMZFY
Page 42
Csar cipher
A B C D E F G H I J K L M N O P Q R S T U VWX Y Z
U VWX Y Z A B C D E F G H I J K L M N O P Q R S T
GSWUNBUMZFYU
Page 43
Csar cipher
A B C D E F G H I J K L M N O P Q R S T U VWX Y Z
U VWX Y Z A B C D E F G H I J K L M N O P Q R S T
GSWUNBMUFZYUM
Page 44
Csar cipher
A B C D E F G H I J K L M N O P Q R S T U VWX Y Z
U VWX Y Z A B C D E F G H I J K L M N O P Q R S T
GSWUNBMUFZYUM
Convey one piece of information for decryption:
shift value
Page 45
Ancient Hebrew variant (ATBASH)
A B C D E F G H I J K L M N O P Q R S T U VWX Y Z
Z Y XWV U T S R Q P O NM L K J I H G F E D C B A
NBXZGSZHUOVZH
c. 600 BC
No information (key) needs to be conveyed!
Page 46
Substitution cipher
A B C D E F G H I J K L M N O P Q R S T U VWX Y Z
M P S R L Q E A J T N C I F Z WO Y B X G K U D V H
IVSMXAMBQCLMB
General case: arbitrary mapping
both sides must have substitution alphabet
Page 47
Substitution cipher
Easy to decode:
vulnerable to frequency analysis
e 12.300% e 11.797%
o 7.282% o 8.299%
d 4.015% d 3.943%
b 1.773% b 1.634%
x 0.108% x 0.140%
Page 48
Statistical Analysis
Letter frequencies
E: 12%
A, H, I, N, O, R, S, T: 6 9%
D, L: 4%
B, C, F, G, M, P, U, W, Y: 1.5 2.8%
J, K, Q, V, X, Z: < 1%
Common digrams:
TH, HE, IN, ER, AN, RE,
Common trigrams
THE, ING, AND, HER, ERE,
Page 49
Polyalphabetic ciphers
Designed to thwart frequency analysis techniques
different ciphertext symbols can represent the
same plaintext symbol
1 many relationship between
letter and substitute
Leon Battista Alberti: 1466: invented key
two disks J
line up predetermined letter on A
inner disk with outer disk
plaintext on inner ciphertext on
outer
after n symbols, the disk is rotated to
a new alignment encrypt: AJ
decrypt: J A
Page 50
Vigenre polyalphabetic cipher
Page 51
Vigenre polyalphabetic cipher
plaintext letter
A B C D E F G H I J K L MNO P Q R S T
A B C D E F G H I J K L MNO P Q R S T
B C D E F G H I J K L MNO P Q R S T U
C D E F G H I J K L MNO P Q R S T U V
D E F G H I J K L MN O P Q R S T U VW
keytext E F G H I J K L M N O P Q R S T U V W X
letter F G H I J K L M N O P Q R S T U VWX Y
ciphertext letter
Page 52
Vigenre polyalphabetic cipher
A B C D E F G H I J K L M N O P Q R S T U VWX Y Z
B C D E F G H I J K L M N O P Q R S T U VWX Y Z A
C D E F G H I J K L M N O P Q R S T U VWX Y Z A B
D E F G H I J K L M N O P Q R S T U VWX Y Z A B C
E F G H I J K L M N O P Q R S T U VWX Y Z A B C D
F G H I J K L M N O P Q R S T U VWX Y Z A B C D E
G H I J K L M N O P Q R S T U VWX Y Z A B C D E F
H I J K L M N O P Q R S T U VWX Y Z A B C D E F G
Page 53
Vigenre polyalphabetic cipher
A B C D E F G H I J K L M N O P Q R S T U VWX Y Z
B C D E F G H I J K L M N O P Q R S T U VWX Y Z A
C D E F G H I J K L M N O P Q R S T U VWX Y Z A B
D E F G H I J K L M N O P Q R S T U VWX Y Z A B C
E F G H I J K L M N O P Q R S T U VWX Y Z A B C D
F G H I J K L M N O P Q R S T U VWX Y Z A B C D E
G H I J K L M N O P Q R S T U VWX Y Z A B C D E F
H I J K L M N O P Q R S T U VWX Y Z A B C D E F G
Page 54
Vigenre polyalphabetic cipher
A B C D E F G H I J K L M N O P Q R S T U VWX Y Z
B C D E F G H I J K L M N O P Q R S T U VWX Y Z A
C D E F G H I J K L M N O P Q R S T U VWX Y Z A B
D E F G H I J K L M N O P Q R S T U VWX Y Z A B C
E F G H I J K L M N O P Q R S T U VWX Y Z A B C D
F G H I J K L M N O P Q R S T U VWX Y Z A B C D E
G H I J K L M N O P Q R S T U VWX Y Z A B C D E F
H I J K L M N O P Q R S T U VWX Y Z A B C D E F G
Page 55
Vigenre polyalphabetic cipher
A B C D E F G H I J K L M N O P Q R S T U VWX Y Z
B C D E F G H I J K L M N O P Q R S T U VWX Y Z A
C D E F G H I J K L M N O P Q R S T U VWX Y Z A B
D E F G H I J K L M N O P Q R S T U VWX Y Z A B C
E F G H I J K L M N O P Q R S T U VWX Y Z A B C D
F G H I J K L M N O P Q R S T U VWX Y Z A B C D E
G H I J K L M N O P Q R S T U VWX Y Z A B C D E F
H I J K L M N O P Q R S T U VWX Y Z A B C D E F G
Page 56
Vigenre polyalphabetic cipher
A B C D E F G H I J K L M N O P Q R S T U VWX Y Z
B C D E F G H I J K L M N O P Q R S T U VWX Y Z A
C D E F G H I J K L M N O P Q R S T U VWX Y Z A B
D E F G H I J K L M N O P Q R S T U VWX Y Z A B C
E F G H I J K L M N O P Q R S T U VWX Y Z A B C D
F G H I J K L M N O P Q R S T U VWX Y Z A B C D E
G H I J K L M N O P Q R S T U VWX Y Z A B C D E F
H I J K L M N O P Q R S T U VWX Y Z A B C D E F G
Page 57
Vigenre polyalphabetic cipher
A B C D E F G H I J K L M N O P Q R S T U VWX Y Z
B C D E F G H I J K L M N O P Q R S T U VWX Y Z A
C D E F G H I J K L M N O P Q R S T U VWX Y Z A B
D E F G H I J K L M N O P Q R S T U VWX Y Z A B C
E F G H I J K L M N O P Q R S T U VWX Y Z A B C D
F G H I J K L M N O P Q R S T U VWX Y Z A B C D E
G H I J K L M N O P Q R S T U VWX Y Z A B C D E F
H I J K L M N O P Q R S T U VWX Y Z A B C D E F G
Page 58
Vigenre polyalphabetic cipher
A B C D E F G H I J K L M N O P Q R S T U VWX Y Z
B C D E F G H I J K L M N O P Q R S T U VWX Y Z A
C D E F G H I J K L M N O P Q R S T U VWX Y Z A B
D E F G H I J K L M N O P Q R S T U VWX Y Z A B C
E F G H I J K L M N O P Q R S T U VWX Y Z A B C D
F G H I J K L M N O P Q R S T U VWX Y Z A B C D E
G H I J K L M N O P Q R S T U VWX Y Z A B C D E F
H I J K L M N O P Q R S T U VWX Y Z A B C D E F G
Page 59
Vigenre polyalphabetic cipher
A B C D E F G H I J K L M N O P Q R S T U VWX Y Z
B C D E F G H I J K L M N O P Q R S T U VWX Y Z A
C D E F G H I J K L M N O P Q R S T U VWX Y Z A B
D E F G H I J K L M N O P Q R S T U VWX Y Z A B C
E F G H I J K L M N O P Q R S T U VWX Y Z A B C D
F G H I J K L M N O P Q R S T U VWX Y Z A B C D E
G H I J K L M N O P Q R S T U VWX Y Z A B C D E F
H I J K L M N O P Q R S T U VWX Y Z A B C D E F G
Page 60
Vigenre polyalphabetic cipher
A B C D E F G H I J K L M N O P Q R S T U VWX Y Z
B C D E F G H I J K L M N O P Q R S T U VWX Y Z A
C D E F G H I J K L M N O P Q R S T U VWX Y Z A B
D E F G H I J K L M N O P Q R S T U VWX Y Z A B C
E F G H I J K L M N O P Q R S T U VWX Y Z A B C D
F G H I J K L M N O P Q R S T U VWX Y Z A B C D E
G H I J K L M N O P Q R S T U VWX Y Z A B C D E F
H I J K L M N O P Q R S T U VWX Y Z A B C D E F G
Page 61
Vigenre polyalphabetic cipher
A B C D E F G H I J K L M N O P Q R S T U VWX Y Z
B C D E F G H I J K L M N O P Q R S T U VWX Y Z A
C D E F G H I J K L M N O P Q R S T U VWX Y Z A B
D E F G H I J K L M N O P Q R S T U VWX Y Z A B C
E F G H I J K L M N O P Q R S T U VWX Y Z A B C D
F G H I J K L M N O P Q R S T U VWX Y Z A B C D E
G H I J K L M N O P Q R S T U VWX Y Z A B C D E F
H I J K L M N O P Q R S T U VWX Y Z A B C D E F G
Page 62
Vigenre polyalphabetic cipher
A B C D E F G H I J K L M N O P Q R S T U VWX Y Z
B C D E F G H I J K L M N O P Q R S T U VWX Y Z A
C D E F G H I J K L M N O P Q R S T U VWX Y Z A B
D E F G H I J K L M N O P Q R S T U VWX Y Z A B C
E F G H I J K L M N O P Q R S T U VWX Y Z A B C D
F G H I J K L M N O P Q R S T U VWX Y Z A B C D E
G H I J K L M N O P Q R S T U VWX Y Z A B C D E F
H I J K L M N O P Q R S T U VWX Y Z A B C D E F G
Page 63
Vigenre polyalphabetic cipher
A B C D E F G H I J K L M N O P Q R S T U VWX Y Z
B C D E F G H I J K L M N O P Q R S T U VWX Y Z A
C D E F G H I J K L M N O P Q R S T U VWX Y Z A B
D E F G H I J K L M N O P Q R S T U VWX Y Z A B C
E F G H I J K L M N O P Q R S T U VWX Y Z A B C D
F G H I J K L M N O P Q R S T U VWX Y Z A B C D E
G H I J K L M N O P Q R S T U VWX Y Z A B C D E F
H I J K L M N O P Q R S T U VWX Y Z A B C D E F G
Page 64
Vigenre polyalphabetic cipher
A B C D E F G H I J K L M N O P Q R S T U VWX Y Z
B C D E F G H I J K L M N O P Q R S T U VWX Y Z A
C D E F G H I J K L M N O P Q R S T U VWX Y Z A B
D E F G H I J K L M N O P Q R S T U VWX Y Z A B C
E F G H I J K L M N O P Q R S T U VWX Y Z A B C D
F G H I J K L M N O P Q R S T U VWX Y Z A B C D E
G H I J K L M N O P Q R S T U VWX Y Z A B C D E F
H I J K L M N O P Q R S T U VWX Y Z A B C D E F G
Page 65
Vigenre polyalphabetic cipher
http://rz1.razorpoint.com/index.html
Page 66
Transposition Ciphers
Page 67
Transposition ciphers
Page 68
Transposition ciphers: staff cipher
MYCATHASFLEAS
MHE
M
H
E
Page 69
Transposition ciphers: staff cipher
MYCATHASFLEAS
MHE YAA
Y
A
A
Page 70
Transposition ciphers: staff cipher
MYCATHASFLEAS
C
S
S
Page 71
Transposition ciphers: staff cipher
MYCATHASFLEAS
A
F Pad out the text. This is a
x block cipher versus a
stream cipher
Page 72
Transposition ciphers: staff cipher
MYCATHASFLEAS
T
L
y
Page 73
Transposition cipher
M Y C A
T H A S
MYCATHASFLEAS
F L E A
S x y z
Page 74
Transposition cipher
M Y C A
T H A S
MYCATHASFLEAS MTFS
F L E A
S x y z
Page 75
Transposition cipher
M Y C A
T H A S
MYCATHASFLEAS MTFSYHLx
F L E A
S x y z
Page 76
Transposition cipher
M Y C A
T H A S
MYCATHASFLEAS MTFSYHLxCAEy
F L E A
S x y z
Page 77
Transposition cipher
M Y C A
T H A S
MYCATHASFLEAS MTFSYHLxCAEyASAz
F L E A
S x y z
Page 78
Transposition cipher with key
Key: 3 1 4 2
M Y C A
MYCATHASFLEAS T H A S
F L E A
S x y z
Page 79
Transposition cipher with key
Key: 3 1 4 2
M Y C A
MYCATHASFLEAS T H A S YHLx
F L E A
S x y z
YHLx
Page 80
Transposition cipher with key
Key: 3 1 4 2
M Y C A
MYCATHASFLEAS T H A S YHLxASAz
F L E A
S x y z
ASAz
Page 81
Transposition cipher with key
Key: 3 1 4 2
M Y C A
MYCATHASFLEAS T H A S YHLxASAzMTFS
F L E A
S x y z
MTFS
Page 82
Transposition cipher with key
Key: 3 1 4 2
M Y C A
MYCATHASFLEAS T H A S YHLxASAzMTFSCAEy
F L E A
S x y z
CAEy
Page 83
Transposition cipher with key
Key: 3 1 4 2
M Y C A
MYCATHASFLEAS T H A S YHLxASAzMTFSCAEY
F L E A
S x y z
Page 84
Combined ciphers
Page 85
Electro-mechanical
cryptographic engines
Page 86
Rotor machines
Page 87
Rotor machines
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
Page 88
Single cylinder rotor machine
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
G V I L C M B Q F K D O S P Z H R E U Z N X A T W J
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
rotate
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
K H W J M D N C R G L E P T Q Z I S F V A O Y B U X
Page 89
Single cylinder rotor machine
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
Page 90
Single cylinder rotor machine
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
SU
Page 91
Single cylinder rotor machine
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
SUI
Page 92
Single cylinder rotor machine
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
SUIU
Page 93
Single cylinder rotor machine
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
SUIUV
Page 94
Single cylinder rotor machine
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
SUIUVA
Page 95
Single cylinder rotor machine
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
SUIUVAY
Page 96
Single cylinder rotor machine
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
SUIUVAYO
Page 97
Single cylinder rotor machine
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
SUIUVAYOI
Page 98
Single cylinder rotor machine
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
SUIUVAYOIN
Page 99
Single cylinder rotor machine
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
SUIUVAYOINK
Page 100
Single cylinder rotor machine
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
SUIUVAYOINKB
Page 101
Single cylinder rotor machine
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
A B C D E F G H I J K L M N O P Q R S T U V W X Y Z
SUIUVAYOINKBY
Page 102
Multi-cylinder rotor machines
Page 103
Enigma
Page 104
Enigma
Rotors
Reflector
Plugboard
Glowlamps
(results)
Keyboard
(input)
Page 105
One-time pads
Page 106
One-time pads
Page 107
One-time pads
Page 108
One-time pads
Page 109
One-time pads
Page 110
Digression: random numbers
anyone who considers arithmetical methods of
producing random digits is, of course, in a state of
sin
John vonNeumann
Pseudo-random generators
Linear feedback shift registers
Multiplicative lagged Fibonacci generators
Linear congruential generator
Page 111
Computer Cryptography
Page 112
DES
Page 113
DES
64 bit plaintext block
48-bit subkey
permuted from key
initial permutation, IP
f
K1
16 rounds
L1= R0 R1 = L0 f(R0, K1)
f
K16
R16 = L15 f(R15, K16) L16 = R15
48 bits 48 bits
S S S S S S S S
New DATA:
DATA: left 32 bits
right 32 bits
Page 115
DES: S-boxes
Page 116
Is DES secure?
Late 1990s:
DES cracker machines built to crack DES keys in a few hours
DES Deep Crack: 90 billion keys/second
Distributed.net: test 250 billion keys/second
Page 117
The power of 2
Page 118
Increasing The Key
EK(P) = EK2(EK1(P))
Page 119
Double DES
Page 120
Triple DES
Page 121
Triple DES
Triple DES:
C = EK1(DK2(EK1(P)))
Page 122
Popular symmetric algorithms
Page 123
AES
From NIST:
Assuming that one could build a machine that could
recover a DES key in a second (i.e., try 256 keys per
second), then it would take that machine
approximately 149 trillion years to crack a 128-bit
AES key. To put that into perspective, the universe
is believed to be less than 20 billion years old.
http://csrc.nist.gov/encryption/aes/
Page 124
The end.
Page 125