You are on page 1of 8

The language of cryptography

Alice’s Bob’s
K encryption K decryption
A
key B key

plaintext encryption ciphertext decryption plaintext


algorithm algorithm

symmetric key crypto: sender, receiver keys identical


public-key crypto: encryption key public, decryption key
secret (private)

8: Network Security 8-1


Symmetric key cryptography
substitution cipher: substituting one thing for another
 monoalphabetic cipher: substitute one letter for another

plaintext: abcdefghijklmnopqrstuvwxyz

ciphertext: mnbvcxzasdfghjklpoiuytrewq

E.g.: Plaintext: bob. i love you. alice


ciphertext: nkn. s gktc wky. mgsbc

Q: How hard to break this simple cipher?:


 brute force (how hard?)
 other?

8: Network Security 8-2


Symmetric key cryptography

KA-B KA-B

plaintext encryption ciphertext decryption plaintext


message, m algorithm algorithm
K (m)
A-B
m=K ( KA-B(m) )
A-B

symmetric key crypto: Bob and Alice share know same


(symmetric) key: K
A-B
 e.g., key is knowing substitution pattern in mono
alphabetic substitution cipher
 Q: how do Bob and Alice agree on key value?

8: Network Security 8-3


Symmetric key crypto: DES
DES: Data Encryption Standard
 US encryption standard [NIST 1993]
 56-bit symmetric key, 64-bit plaintext input
 How secure is DES?
DES Challenge: 56-bit-key-encrypted phrase
(“Strong cryptography makes the world a safer
place”) decrypted (brute force) in 4 months
 no known “backdoor” decryption approach
 making DES more secure:
 use three keys sequentially (3-DES) on each datum
 use cipher-block chaining

8: Network Security 8-4


Symmetric key
crypto: DES
DES operation
initial permutation
16 identical “rounds” of
function application,
each using different
48 bits of key
final permutation

8: Network Security 8-5


AES: Advanced Encryption Standard

 new (Nov. 2001) symmetric-key NIST


standard, replacing DES
 processes data in 128 bit blocks
 128, 192, or 256 bit keys
 brute force decryption (try each key)
taking 1 sec on DES, takes 149 trillion
years for AES

8: Network Security 8-6


Block Cipher
64-bit input

8bits 8bits 8bits 8bits 8bits 8bits 8bits 8bits


loop for
n rounds
T1 T2 T3 T4 T5 T6 T7 T8

8 bits 8 bits 8 bits 8 bits 8 bits 8 bits 8 bits 8 bits

 one pass
64-bit scrambler
through: one
input bit
affects eight 64-bit output

output bits
 multiple passes: each input bit afects all output bits
 block ciphers: DES, 3DES, AES

8: Network Security 8-7


Cipher Block Chaining
 cipher block: if input m(1) = “HTTP/1.1” c(1) = “k329aM02”
t=1 block
block repeated, will cipher
produce same cipher …
m(17) = “HTTP/1.1” c(17) = “k329aM02”
t=17 block
text: cipher
 cipher block chaining: XOR ith
input block, m(i), with previous
block of cipher text, c(i-1) m(i)
 c(0) transmitted to receiver in clear

+
 what happens in “HTTP/1.1” scenario
from above? c(i-1)

block
cipher

c(i)
8: Network Security 8-8

You might also like