Distributed Systems Introduction to Cryptography Paul Krzyzanowski - - PowerPoint PPT Presentation

distributed systems
SMART_READER_LITE
LIVE PREVIEW

Distributed Systems Introduction to Cryptography Paul Krzyzanowski - - PowerPoint PPT Presentation

Distributed Systems Introduction to Cryptography Paul Krzyzanowski pxk@cs.rutgers.edu Except as otherwise noted, the content of this presentation is licensed under the Creative Commons Attribution 2.5 License. Page 1 Page 1 Ngywioggazhon


slide-1
SLIDE 1

Page 1 Page 1

Introduction to Cryptography

Paul Krzyzanowski pxk@cs.rutgers.edu

Distributed Systems

Except as otherwise noted, the content of this presentation is licensed under the Creative Commons Attribution 2.5 License.

slide-2
SLIDE 2

Page 2 Page 2

Ngywioggazhon Pystemp

Auesfnsicutiwf & Moiiunocaiwn Piqtoaoyp

slide-3
SLIDE 3

Page 3 Page 3

Cryptographic Systems

Authentication & Communication Protocols

slide-4
SLIDE 4

Page 4

cryptography κρυπός hidden γραφία writing

A secret manner of writing, … Generally, the art of writing or solving ciphers. — Oxford English Dictionary

slide-5
SLIDE 5

Page 5

cryptology κρυπός hidden λογια speaking

1967 D. Kahn, Codebreakers p. xvi, Cryptology is the science that embraces cryptography and cryptanalysis, but the term ‘cryptology’ sometimes loosely designates the entire dual field of both rendering signals secure and extracting information from them. — Oxford English Dictionary

slide-6
SLIDE 6

Page 6

Cryptography  Security

Cryptography may be a component of a secure system Adding cryptography may not make a system secure

slide-7
SLIDE 7

Page 7

Terms

Plaintext (cleartext), message M encryption, E(M) produces ciphertext, C=E(M) decryption: M=D(C) Cryptographic algorithm, cipher

slide-8
SLIDE 8

Page 8

Terms: types of ciphers

  • restricted cipher
  • symmetric algorithm
  • public key algorithm
slide-9
SLIDE 9

Page 9

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

slide-10
SLIDE 10

Page 10

The key

BTW, the above is a bump key. See http://en.wikipedia.org/wiki/Lock_bumping.

slide-11
SLIDE 11

Page 11

The key

Source: en.wikipedia.org/wiki/Pin_tumbler_lock

slide-12
SLIDE 12

Page 12

The key

Source: en.wikipedia.org/wiki/Pin_tumbler_lock

slide-13
SLIDE 13

Page 13

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

slide-14
SLIDE 14

Page 14

Symmetric algorithm Secret key C = EK(M ) M = DK(C )

slide-15
SLIDE 15

Page 15

Public key algorithm Public and private keys

C1 = Epublic(M ) M = Dprivate(C1 )

also:

C2 = Eprivate(M ) M = Dpublic(C2 )

slide-16
SLIDE 16

Page 16

McCarthy’s puzzle (1958)

The setting:

  • Two countries are at war
  • One country sends spies to the other country
  • To return safely, spies must give the border

guards a password

  • Spies can be trusted
  • Guards chat – information given to them may

leak

slide-17
SLIDE 17

Page 17

McCarthy’s puzzle

Challenge

How can a guard authenticate a person without knowing the password? Enemies cannot use the guard’s knowledge to introduce their own spies

slide-18
SLIDE 18

Page 18

Solution to McCarthy’s puzzle

Michael Rabin, 1958 Use one-way function, B = f (A) – Guards get B …

  • Enemy cannot compute A

– Spies give A, guards compute f(A)

  • If the result is B, the password is correct.

Example function:

Middle squares

  • Take a 100-digit number (A), and square it
  • Let B = middle 100 digits of 200-digit result
slide-19
SLIDE 19

Page 19

One-way functions

  • Easy to compute in one direction
  • Difficult to compute in the other

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

slide-20
SLIDE 20

Page 20

McCarthy’s puzzle example

Example with an 18 digit number A = 289407349786637777 A2 = 83756614110525308948445338203501729 Middle square, B = 110525308948445338 Given A, it is easy to compute B Given B, it is extremely hard to compute A

110525308948445338

slide-21
SLIDE 21

Page 21

More terms

  • one-way function

– Rabin, 1958: McCarthy’s 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

slide-22
SLIDE 22

Page 22

More terms

  • Stream cipher

– Encrypt a message a character at a time

  • Block cipher

– Encrypt a message a chunk at a time

slide-23
SLIDE 23

Page 23

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).

slide-24
SLIDE 24

Page 24

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

slide-25
SLIDE 25

Page 25

Cryptographic toolbox

  • Symmetric encryption
  • Public key encryption
  • One-way hash functions
  • Random number generators
slide-26
SLIDE 26

Page 26 Page 26

Classic Cryptosystems

slide-27
SLIDE 27

Page 27 Page 27

Substitution Ciphers

slide-28
SLIDE 28

Page 28

Cæsar cipher

Earliest documented military use of cryptography

– Julius Caesar c. 60 BC – shift cipher: simple variant of a substitution cipher – each letter replaced by one n positions away modulo alphabet size n = shift value = key

Similar scheme used in India

– early Indians also used substitutions based on phonetics similar to pig latin

Last seen as ROT13 on Usenet to keep the reader from seeing offensive messages unwillingly

slide-29
SLIDE 29

Page 29

Cæsar 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

slide-30
SLIDE 30

Page 30

Cæsar 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)

slide-31
SLIDE 31

Page 31

Cæsar 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 MY CAT HAS FLEAS

slide-32
SLIDE 32

Page 32

Cæsar 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 MY CAT HAS FLEAS G

slide-33
SLIDE 33

Page 33

Cæsar 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 MY CAT HAS FLEAS GS

slide-34
SLIDE 34

Page 34

Cæsar 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 MY CAT HAS FLEAS GSW

slide-35
SLIDE 35

Page 35

Cæsar 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 MY CAT HAS FLEAS GSWU

slide-36
SLIDE 36

Page 36

Cæsar 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 MY CAT HAS FLEAS GSWUN

slide-37
SLIDE 37

Page 37

Cæsar 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 MY CAT HAS FLEAS GSWUNB

slide-38
SLIDE 38

Page 38

Cæsar 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 MY CAT HAS FLEAS GSWUNBU

slide-39
SLIDE 39

Page 39

Cæsar 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 MY CAT HAS FLEAS GSWUNBUM

slide-40
SLIDE 40

Page 40

Cæsar 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 MY CAT HAS FLEAS GSWUNBUMZ

slide-41
SLIDE 41

Page 41

Cæsar 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 MY CAT HAS FLEAS GSWUNBUMZF

slide-42
SLIDE 42

Page 42

Cæsar 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 MY CAT HAS FLEAS GSWUNBUMZFY

slide-43
SLIDE 43

Page 43

Cæsar 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 MY CAT HAS FLEAS GSWUNBUMZFYU

slide-44
SLIDE 44

Page 44

Cæsar 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 MY CAT HAS FLEAS GSWUNBMUFZYUM

slide-45
SLIDE 45

Page 45

Cæsar cipher

  • Convey one piece of information for decryption:

shift value

  • trivially easy to crack (26 possibilities for a 26

character alphabet) 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 MY CAT HAS FLEAS GSWUNBMUFZYUM

slide-46
SLIDE 46

Page 46

Ancient Hebrew variant (ATBASH)

  • c. 600 BC
  • No information (key) needs to be conveyed!

A B C D E F G H I J K L M N O P Q R S T U VWX Y Z T S R Q P O N M L K J I H G F E D C B A Z Y XWV U MY CAT HAS FLEAS NBXZGSZHUOVZH

slide-47
SLIDE 47

Page 47

Substitution cipher

  • General case: arbitrary mapping
  • both sides must have substitution alphabet

A B C D E F G H I J K L M N O P Q R S T U VWX Y Z E A J T N C I F ZWO Y B X G K U D V H M P S R L Q MY CAT HAS FLEAS IVSMXAMBQCLMB

slide-48
SLIDE 48

Page 48

Substitution cipher

Easy to decode:

– vulnerable to frequency analysis Moby Dick Shakespeare

(1.2M chars) (55.8M chars)

e 12.300% e 11.797%

  • 7.282%
  • 8.299%

d 4.015% d 3.943% b 1.773% b 1.634% x 0.108% x 0.140%

slide-49
SLIDE 49

Page 49

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, …

slide-50
SLIDE 50

Page 50

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 – line up predetermined letter on inner disk with outer disk – plaintext on inner  ciphertext on

  • uter

– after n symbols, the disk is rotated to a new alignment A J encrypt: AJ decrypt: J A

slide-51
SLIDE 51

Page 51

slide-52
SLIDE 52

Page 52

Vigenère polyalphabetic cipher

  • Blaise de Vigenère, court of Henry III of France, 1518
  • Use table and key word to encipher a message
  • repeat keyword over text: (e.g. key=FACE)

FA CEF ACE FACEF .... MY CAT HAS FLEAS

  • encrypt: find intersection:

row = keyword letter column = plaintext letter

  • decrypt: column = keyword letter, search for

intersection = ciphertext letter

  • message is encrypted with as many substitution ciphers

as there are letters in the keyword

slide-53
SLIDE 53

Page 53

Vigenère polyalphabetic cipher

A B C D E F G H I J K L M N O P Q R S T A B C D E F G H I J K L M N O P Q R S T B C D E F G H I J K L M N O P Q R S T U C D E F G H I J K L M N O P Q R S T U V D E F G H I J K L M N O P Q R S T U VW E F G H I J K L M N O P Q R S T U VWX F G H I J K L M N O P Q R S T U VWX Y plaintext letter keytext letter ciphertext letter

slide-54
SLIDE 54

Page 54

Vigenère 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 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 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 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 A B C D E F G H I J K L M N O P Q R S T U VWX Y Z FA CEF ACE FACEF MY CAT HAS FLEAS R

slide-55
SLIDE 55

Page 55

Vigenère 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 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 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 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 A B C D E F G H I J K L M N O P Q R S T U VWX Y Z FA CEF ACE FACEF MY CAT HAS FLEAS RY

slide-56
SLIDE 56

Page 56

Vigenère 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 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 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 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 A B C D E F G H I J K L M N O P Q R S T U VWX Y Z FA CEF ACE FACEF MY CAT HAS FLEAS RY E

slide-57
SLIDE 57

Page 57

Vigenère 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 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 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 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 A B C D E F G H I J K L M N O P Q R S T U VWX Y Z FA CEF ACE FACEF MY CAT HAS FLEAS RY EE

slide-58
SLIDE 58

Page 58

Vigenère 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 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 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 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 A B C D E F G H I J K L M N O P Q R S T U VWX Y Z FA CEF ACE FACEF MY CAT HAS FLEAS RY EEY

slide-59
SLIDE 59

Page 59

A B C D E F G H

Vigenère polyalphabetic cipher

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 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 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 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 FA CEF ACE FACEF MY CAT HAS FLEAS RY EEY H

slide-60
SLIDE 60

Page 60

Vigenère 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 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 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 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 A B C D E F G H I J K L M N O P Q R S T U VWX Y Z FA CEF ACE FACEF MY CAT HAS FLEAS RY EEY HC

slide-61
SLIDE 61

Page 61

Vigenère 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 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 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 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 A B C D E F G H I J K L M N O P Q R S T U VWX Y Z FA CEF ACE FACEF MY CAT HAS FLEAS RY EEY HCW

slide-62
SLIDE 62

Page 62

Vigenère 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 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 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 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 A B C D E F G H I J K L M N O P Q R S T U VWX Y Z FA CEF ACE FACEF MY CAT HAS FLEAS RY EEY HCW K

slide-63
SLIDE 63

Page 63

Vigenère 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 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 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 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 A B C D E F G H I J K L M N O P Q R S T U VWX Y Z FA CEF ACE FACEF MY CAT HAS FLEAS RY EEY HCW KL

slide-64
SLIDE 64

Page 64

Vigenère 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 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 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 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 A B C D E F G H I J K L M N O P Q R S T U VWX Y Z FA CEF ACE FACEF MY CAT HAS FLEAS RY EEY HCW KLG

slide-65
SLIDE 65

Page 65

Vigenère 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 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 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 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 A B C D E F G H I J K L M N O P Q R S T U VWX Y Z FA CEF ACE FACEF MY CAT HAS FLEAS RY EEY HCW KLGE

slide-66
SLIDE 66

Page 66

Vigenère 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 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 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 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 A B C D E F G H I J K L M N O P Q R S T U VWX Y Z FA CEF ACE FACEF MY CAT HAS FLEAS RY EEY HCW KLGEX

slide-67
SLIDE 67

Page 67

Vigenère polyalphabetic cipher

"The rebels reposed their major trust, however, in the Vigenere, sometimes using it in the form of a brass cipher

  • disc. In theory, it was an excellent choice, for so far as the

South knew the cipher was unbreakable. In practice, it proved a dismal failure. For one thing, transmission errors that added or subtracted a letter ... unmeshed the key from the cipher and caused no end of difficulty. Once Major Cunningham of General Kirby-Smith's staff tried for twelve hours to decipher a garbled message; he finally gave up in disgust and galloped around the Union flank to the sender to find out what it said."

http://rz1.razorpoint.com/index.html

slide-68
SLIDE 68

Page 68 Page 68

Transposition Ciphers

slide-69
SLIDE 69

Page 69

Transposition ciphers

  • Permute letters in plaintext according to

rules

  • Knowledge of rules will allow message to be

decrypted

  • Earliest version used by the Spartans in the

5th century BC – staff cipher

slide-70
SLIDE 70

Page 70

Transposition ciphers: staff cipher

MYCATHASFLEAS MHE

M H E

slide-71
SLIDE 71

Page 71

Transposition ciphers: staff cipher

MYCATHASFLEAS MHE YAA

Y A A

slide-72
SLIDE 72

Page 72

Transposition ciphers: staff cipher

MYCATHASFLEAS MHE YAA CSS

C S S

slide-73
SLIDE 73

Page 73

Transposition ciphers: staff cipher

MYCATHASFLEAS MHE YAA CSS AFx

A F x Pad out the text. This is a block cipher versus a stream cipher

slide-74
SLIDE 74

Page 74

Transposition ciphers: staff cipher

MYCATHASFLEAS MHE YAA CSS Afx TLy

T L y

slide-75
SLIDE 75

Page 75

Transposition cipher

Table version of staff cipher

– enter data horizontally, read it vertically – secrecy is the width of the table

M Y C A T H A S F L E A S x y z MYCATHASFLEAS

slide-76
SLIDE 76

Page 76

Transposition cipher

Table version of staff cipher

– enter data horizontally, read it vertically – secrecy is the width of the table

M Y C A T H A S F L E A S x y z MYCATHASFLEAS MTFS

slide-77
SLIDE 77

Page 77

Transposition cipher

Table version of staff cipher

– enter data horizontally, read it vertically – secrecy is the width of the table

M Y C A T H A S F L E A S x y z MYCATHASFLEAS MTFSYHLx

slide-78
SLIDE 78

Page 78

Transposition cipher

Table version of staff cipher

– enter data horizontally, read it vertically – secrecy is the width of the table

M Y C A T H A S F L E A S x y z MYCATHASFLEAS MTFSYHLxCAEy

slide-79
SLIDE 79

Page 79

Transposition cipher

Table version of staff cipher

– enter data horizontally, read it vertically – secrecy is the width of the table

M Y C A T H A S F L E A S x y z MYCATHASFLEAS MTFSYHLxCAEyASAz

slide-80
SLIDE 80

Page 80

Transposition cipher with key

– permute letters in plaintext according to key – read down columns, sorting by key Key: 3 1 4 2

M Y C A T H A S F L E A S x y z MYCATHASFLEAS

slide-81
SLIDE 81

Page 81

Transposition cipher with key

– permute letters in plaintext according to key – read down columns, sorting by key Key: 3 1 4 2

M Y C A T H A S F L E A S x y z YHLx YHLx MYCATHASFLEAS

slide-82
SLIDE 82

Page 82

Transposition cipher with key

– permute letters in plaintext according to key – read down columns, sorting by key Key: 3 1 4 2

M Y C A T H A S F L E A S x y z ASAz YHLxASAz MYCATHASFLEAS

slide-83
SLIDE 83

Page 83

Transposition cipher with key

– permute letters in plaintext according to key – read down columns, sorting by key Key: 3 1 4 2

M Y C A T H A S F L E A S x y z MTFS YHLxASAzMTFS MYCATHASFLEAS

slide-84
SLIDE 84

Page 84

Transposition cipher with key

– permute letters in plaintext according to key – read down columns, sorting by key Key: 3 1 4 2

M Y C A T H A S F L E A S x y z CAEy YHLxASAzMTFSCAEy MYCATHASFLEAS

slide-85
SLIDE 85

Page 85

Transposition cipher with key

– permute letters in plaintext according to key – read down columns, sorting by key Key: 3 1 4 2

M Y C A T H A S F L E A S x y z YHLxASAzMTFSCAEY MYCATHASFLEAS

slide-86
SLIDE 86

Page 86

Combined ciphers

  • Combine transposition with substitution

ciphers

– German ADFGVX cipher (WWI)

  • can be troublesome to implement

– may require a lot of memory – may require that messages be certain lengths

  • Difficult with manual cryptography
slide-87
SLIDE 87

Page 87 Page 87

Electro-mechanical cryptographic engines

slide-88
SLIDE 88

Page 88

Rotor machines

1920s: mechanical devices used for automating encryption Rotor machine:

– set of independently rotating cylinders through which electrical pulses flow – each cylinder has input & output pin for each letter of the alphabet – implements a version of the Vigenère cipher – each rotor implements a substitution cipher – output of each rotor is fed into the next rotor

slide-89
SLIDE 89

Page 89

Rotor machines

  • Simplest rotor machine: single cylinder
  • after a character is entered, the cylinder rotates one

position

– internal combinations shifted by one – polyalphabetic substitution cipher with a period of 26 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

slide-90
SLIDE 90

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 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 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

rotate

slide-91
SLIDE 91

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 MY CAT HAS FLEAS S

slide-92
SLIDE 92

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 MY CAT HAS FLEAS SU

slide-93
SLIDE 93

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 MY CAT HAS FLEAS SUI

slide-94
SLIDE 94

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 MY CAT HAS FLEAS SUIU

slide-95
SLIDE 95

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 MY CAT HAS FLEAS SUIUV

slide-96
SLIDE 96

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 MY CAT HAS FLEAS SUIUVA

slide-97
SLIDE 97

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 MY CAT HAS FLEAS SUIUVAY

slide-98
SLIDE 98

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 MY CAT HAS FLEAS SUIUVAYO

slide-99
SLIDE 99

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 MY CAT HAS FLEAS SUIUVAYOI

slide-100
SLIDE 100

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 MY CAT HAS FLEAS SUIUVAYOIN

slide-101
SLIDE 101

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 MY CAT HAS FLEAS SUIUVAYOINK

slide-102
SLIDE 102

Page 102

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 MY CAT HAS FLEAS SUIUVAYOINKB

slide-103
SLIDE 103

Page 103

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 MY CAT HAS FLEAS SUIUVAYOINKBY

slide-104
SLIDE 104

Page 104

Multi-cylinder rotor machines

Single cylinder rotor machine

– substitution cipher with a period = length of alphabet (e.g., 26)

Multi-cylinder rotor machine

– feed output of one cylinder as input to the next one – first rotor advances after character is entered – second rotor advances after a full period of the first – polyalphabetic substitution cipher

  • period = (length of alphabet)number of rotors
  • 3 26-char cylinders  263 = 17,576 substitution alphabets
  • 5 26-char cylinders  265 = 11,881,367 substitution alphabets
slide-105
SLIDE 105

Page 105

Enigma

  • Enigma machine used in

Germany during WWII

  • Three rotor system

– 263 = 17,576 possible rotor positions

  • Input data permuted via

patch panel before sending to rotor engine

  • Data from last rotor reflected back through rotors  makes

encryption symmetric

  • Need to know initial settings of rotor

– setting was f(date) – find in book of codes

  • broken by group at Bletchley Park (Alan Turing)
slide-106
SLIDE 106

Page 106

Enigma

Keyboard (input) Glowlamps (results) Plugboard

Rotors Reflector

slide-107
SLIDE 107

Page 107

One-time pads

Only provably secure encryption scheme

  • invented in 1917
  • large non-repeating set of random key letters written
  • n a pad
  • each key letter on the pad encrypts exactly one

plaintext character

– encryption is addition of characters modulo 26

  • sender destroys pages that have been used
  • receiver maintains identical pad
slide-108
SLIDE 108

Page 108

One-time pads

If pad contains KWXOPWMAELGHW… and we want to encrypt MY CAT HAS FLEAS Ciphertext: WUZOIDMSJWKHO M + K mod 26 = W Y + W mod 26 = U C + X mod 26 = Z A + O mod 26 = O T + P mod 26 = I H + W mod 26 = D A + M mod 26 = M S + A mod 26 = S F + E mod 26 = J L + L mod 26 = W E + G mod 26 = K A + H mod 26 = H S + W mod 26 = O

slide-109
SLIDE 109

Page 109

One-time pads

The same ciphertext can decrypt to anything depending on the key! Same ciphertext: WUZOIDMSJWKHO With a pad of: KWXOPWMAELGHW… Produces: THE DOG IS HAPPY W - D mod 26 = W U - N mod 26 = U Z - V mod 26 = Z O - L mod 26 = O I - U mod 26 = I D - X mod 26 = D M - E mod 26 = M S - A mod 26 = S J - C mod 26 = J W - W mod 26 = W K - V mod 26 = K H - S mod 26 = H O - Q mod 26 = O

slide-110
SLIDE 110

Page 110

One-time pads

Can be extended to binary data

– random key sequence as long as the message – exclusive-or key sequence with message – receiver has the same key sequence

slide-111
SLIDE 111

Page 111

One-Time Pad

void onetimepad(void) { FILE *if = fopen(“intext”, “r”); FILE *kf = fopen(“keytext”, “r”); FILE *of = fopen(“outtext”, “w”); int c, k; while ((c = getc(if)) != EOF) { k = getc(kf); putc((c^k), of); } fclose(if); fclose(kf); fclose(of); }

slide-112
SLIDE 112

Page 112

One-time pads

Problems with one-time pads:

– key needs to be as long as the message! – key storage can be problematic

  • may need to store a lot of data

– keys have to be generated randomly

  • cannot use pseudo-random number generator

– cannot reuse key sequence – sender and receiver must remain synchronized (e.g. cannot lose a message)

slide-113
SLIDE 113

Page 113

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

  • Obtain randomness from:

– Time between keystrokes – Various network/kernel events – Cosmic rays – Electrical noise – Other encrypted messages

slide-114
SLIDE 114

Page 114 Page 114

Computer Cryptography

slide-115
SLIDE 115

Page 115

DES

  • Data Encryption Standard

– adopted as a federal standard in 1976

  • block cipher, 64 bit blocks
  • 56 bit key

– all security rests with the key

  • substitution followed by a permutation

(transposition)

– same combination of techniques is applied on the plaintext block 16 times

slide-116
SLIDE 116

Page 116

DES

64 bit plaintext block initial permutation, IP left half, L1 right half, R0

f

R1 = L0  f(R0, K1) L1= R0

K1

16 rounds

L15= R14 R15 = L14  f(R14, K15)

48-bit subkey permuted from key

f

L16 = R15 R16 = L15  f(R15, K16)

K16

final permutation, IP-1 64 bit ciphertext block

slide-117
SLIDE 117

Page 117

DES: f

DATA: right 32 bits KEY: 56 bits

DATA: left 32 bits New DATA: right 32 bits 48 bits 48 bits S S S S S S S S

slide-118
SLIDE 118

Page 118

DES: S-boxes

  • After compressed key is XORed with expanded block

– 48-bit result moves to substitution operation via eight substitution boxes (s-boxes)

  • Each S-box has

– 6-bit input – 4-bit output

  • 48 bits divided into eight 6-bit sub-blocks
  • Each block is operated by a separate S-box
  • key components of DES’s security
  • net result: 48 bit input generates 32 bit output
slide-119
SLIDE 119

Page 119

Is DES secure? 56-bit key makes DES relatively weak

– 7.2×1016 keys – Brute-force attack

Late 1990’s:

– 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

slide-120
SLIDE 120

Page 120

The power of 2

Adding an extra bit to a key doubles the search space.

Suppose it takes 1 second to attack a 20-bit key:

  • 21-bit key: 2 seconds
  • 32-bit key: 1 hour
  • 40-bit key: 12 days
  • 56-bit key: 2,178 years
  • 64-bit key: >557,000 years!
slide-121
SLIDE 121

Page 121

Increasing The Key

Can double encryption work for DES?

– Useless if we could find a key K such that: EK(P) = EK2(EK1(P)) – This does not hold for DES

slide-122
SLIDE 122

Page 122

Double DES

Vulnerable to meet-in-the-middle attack If we know some pair (P, C), then:

[1] Encrypt P for all 256 values of K1 [2] Decrypt C for all 256 values of K2

For each match where [1] = [2]

– test the two keys against another P, C pair – if match, you are assured that you have the key

slide-123
SLIDE 123

Page 123

Triple DES

Triple DES with two 56-bit keys: C = EK1(DK2(EK1(P))) Triple DES with three 56-bit keys: C = EK3(DK2(EK1(P))) Decryption used in middle step for compatibility with DES (K1=K2=K3) C = EK(DK(EK(P)))  C = EK1(P)

slide-124
SLIDE 124

Page 124

Triple DES

Prevent meet-in-the-middle attack with

– three stages – and two keys

Triple DES: C = EK1(DK2(EK1(P))) Decryption used in middle step for compatibility with DES C = EK(DK(EK(P)))  C = EK1(P)

slide-125
SLIDE 125

Page 125

Popular symmetric algorithms

IDEA - International Data Encryption Algorithm

– 1992 – 128-bit keys, operates on 8-byte blocks (like DES) – algorithm is more secure than DES

RC4, by Ron Rivest

– 1995 – key size up to 2048 bits – not secure against multiple messages encrypted with the same key

AES - Advanced Encryption Standard

– NIST proposed successor to DES, chosen in October 2000 – based on Rigndael cipher – 128, 192, and 256 bit keys

slide-126
SLIDE 126

Page 126

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/

slide-127
SLIDE 127

Page 127 Page 127

The end.