0% found this document useful (0 votes)
11 views40 pages

Overview of Classical Cryptography

Uploaded by

tetije5078
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd
0% found this document useful (0 votes)
11 views40 pages

Overview of Classical Cryptography

Uploaded by

tetije5078
Copyright
© © All Rights Reserved
We take content rights seriously. If you suspect this is your content, claim it here.
Available Formats
Download as PDF, TXT or read online on Scribd

Classical Cryptography

Thierry Sans
Example and definitions
of a cryptosystem
Caesar Cipher - the oldest cryptosystem

A shift cipher – attributed to Julius Caesar (100-44 BC)


MEET ME AFTER THE TOGA PARTY
PHHW PH DIWHU WKH WRJD SDUWB

Shift the alphabet 3 places further down and substitute letters


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
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
Communication over an insecure medium
Threat 1 - Interception

๏ Interception : an attacker can read messages


Threat 2 - Modification

๏ Modification : an attacker can modify messages


Threat 3 - Fabrication

๏ Fabrication : an attacker can inject messages


Threat 4 - Interruption

๏ Interruption : an attacker can block messages


Confidentiality and Integrity of communications

➡ Implement a virtual trusted channel


over an insecure medium
Definitions

Plaintext
The message in its clear form (the original message)

Ciphertext
The message in its ciphered form (the encrypted message)

Encryption
Transform a plaintext into ciphertext

Decryption
Transform a ciphertext into a plaintext
Definitions

Cryptographic algorithm
The method to do encryption and decryption

Cryptographic key
An input variable used by the algorithm for the transformation

N-bit security entropy (a.k.a. the key space)


The number of bits necessary to encode the number of
possible keys (could be different than the key length)
Representing data as numbers

Cryptographic algorithms are mathematical operations

➡ messages and keys must be represented as numbers


for instance : ASCII encoding
Back to Caesar Cipher

Algorithm : shift the alphabet of a certain number of positions


Key : the number of positions to shift
Key space : 25 possible rotations ( ~ 5 bits security )
Encoding :
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
0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25

Encrypting and decrypting one character is obtained as follows:


c = E(k,p) = (p + k) mod 26
p = D(k,c) = (c – k) mod 26
The big picture

encryption decryption

E D

plaintext ciphertext plaintext

key key
Breaking the cipher
The Kerckhoffs' principle (1883)

“The enemy knows the system” - the security of a communication


should not rely on the fact that the algorithms are secrets

➡ A cryptosystem should be secure even if everything about the


system, except the key, is public knowledge

No security by obscurity
Breaking the cipher - the attacker's model

• Exhaustive Search (a.k.a brute force)


Try all possible n keys (in average it takes n/2 tries)

• Ciphertext only
You know one or several random ciphertexts

• Known plaintext
You know one or several pairs of random plaintext and their corresponding ciphertexts

• Chosen plaintext
You know one or several pairs of chosen plaintext and their corresponding ciphertexts

• Chosen ciphertext
You know one or several pairs of plaintext and their corresponding chosen ciphertexts

➡ A good crypto system resists all attacks


Breaking Caesar cipher

Exhaustive search Yes

ciphertext only Statistical Analysis

known plaintext Look at the first letter and get the shift

chosen plaintext Choose “A” and get the shift

chosen ciphertext Choose “A” and get the shift


Statistical Cryptanalysis

➡ Monoalphabetic ciphers do not change the relative


frequency of letters in a message
Evolution of cryptosystems
A brief history of cryptography

Substitution ciphers
~ 2000 years ago
(a.k.a mono alphabetic ciphers)

few centuries later Transposition ciphers

Renaissance Polyalphabetic ciphers

1844 Mechanization

1976 Public key cryptography


Substitution ciphers
(a.k.a mono alphabetic ciphers)

➡ Improvement over Caesar cipher


Algorithm : allow an arbitrary permutation of the alphabet
Key : set of substitutions
Key space : 26! possible substitutions ( 4x1026 ~ 89 bits)

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
D K V Q F I B J W P E S C X H T M Y A U O L R G Z N

if we wish to replace letters


WI RF RWAJ UH YFTSDVF SFUUFYA
Breaking substitution ciphers

Exhaustive search Doable with a computer

ciphertext only Statistical analysis

known plaintext Match letters together

chosen plaintext Choose ABCDE … and match letters

chosen ciphertext Choose ABCDE … and match letters


Polyalphabetic ciphers (a.k.a Renaissance Cipher)

➡ Vigenere cipher
Algorithm : combine the message and the key
Key : a word
Key space : the length of the word

wearediscoveredsaveyourself
+ deceptivedeceptivedeceptive (mod 26)
ZICVTWQNGRZGVTWAVZHCQYGLMGJ

Advantage : Encryption of a letter is context dependent


Breaking Polyalphabetic Ciphers

exhaustive search Small key length only

Statistical analysis for small key length and


ciphertext only
significant amount of ciphertext

known plaintext Subtract plaintext from ciphertext

chosen plaintext Choose AAAAA … and match letters

chosen ciphertext Choose AAAAA … and match letters


OTP - One Time Pad

➡ Improvement over Vigenere cipher


Algorithm : combine the message and the key
Key : an infinite random string
Key space : infinite

whatanicedaytoday
⊕ yksuftgoarfwpfwel
ZZZJUCLUDTUNNWGQS

Advantage : this is the perfect cipher !


Disadvantage : hard to use in practice, how to transmit the key ?
The impossibility of breaking OTP

The ciphertext bears no statistical relationship to the plaintext


➡ No statistical analysis

For any plaintext and ciphertext, there exists a key mapping


one to the other, and all keys are equally probable
➡ A ciphertext can be decrypted to any plaintext of the same
length
Transposition Cipher

Algorithm : switch letters around a permutation


Key : a set of permutation
Key space : the set of permutations

helloworld
LOLHERDLWO
Breaking Transposition ciphers

brute force Small key length only

ciphertext only Hard for large permutations

known plaintext Match letters together

chosen plaintext Choose ABCDE … and match letters

chosen ciphertext Choose ABCDE … and match letters


The seeds of modern cryptography

1. Diffusion
Mix-up symbols
Transposition Cipher

2. Confusion
Replace a symbol with another
Polyaphabetic Cipher

3. Randomization
Repeated encryption of the same text are different
OTP
Mechanization
Mechanization

1844 Invention of the telegraph

World War II
1939
The Enigma Machine
The cryptography toolbox
Cryptography is not just a about confidentiality

Integrity
digital signatures, hash functions

Non-repudiation
contract-signing

Anonymity
electronic cash, electronic voting

Availability
The crypto toolbox

• Symmetric cryptography schemes

• Asymmetric cryptography schemes

• Message digests

• Digital signatures

• Certificates
Symmetric encryption

➡ The same key is used for encryption and decryption

E D

symmetric key symmetric key


Asymmetric encryption
a.k.a Public Key Cryptography

➡ The public key for encryption


➡ The private key for decryption

E D

public key private key


Message digests

Message digests are meant for creating fingerprints of


messages
• Un-keyed message digest : hashes, checksum
• Keyed message digests : MACs
Digital Signature

➡ The private key for encryption


➡ The public key for decryption

E D

private key public key


Certificates - Public Key Infrastructure

Certificates are meant for verifying someone’s identity


• Binding between a public key and an owner
• Certified by a certification authority

You might also like