72
Symmetric Key Cryptography PQCRYPTO Summer School on Post-Quantum Cryptography 2017 Stefan Kölbl June 19th, 2017 DTU Compute, Technical University of Denmark

Symmetric Key Cryptographystek/slides/pqsymcrypt.pdf · Symmetric Key Cryptography ... DTUCompute,TechnicalUniversityofDenmark. Introduction to Symmetric Key Cryptography. ... JohannesA.Buchmann,ErikDahmen

Embed Size (px)

Citation preview

Page 1: Symmetric Key Cryptographystek/slides/pqsymcrypt.pdf · Symmetric Key Cryptography ... DTUCompute,TechnicalUniversityofDenmark. Introduction to Symmetric Key Cryptography. ... JohannesA.Buchmann,ErikDahmen

Symmetric Key CryptographyPQCRYPTO Summer School on Post-QuantumCryptography 2017

Stefan KölblJune 19th, 2017

DTU Compute, Technical University of Denmark

Page 2: Symmetric Key Cryptographystek/slides/pqsymcrypt.pdf · Symmetric Key Cryptography ... DTUCompute,TechnicalUniversityofDenmark. Introduction to Symmetric Key Cryptography. ... JohannesA.Buchmann,ErikDahmen

Introduction to Symmetric KeyCryptography

Page 3: Symmetric Key Cryptographystek/slides/pqsymcrypt.pdf · Symmetric Key Cryptography ... DTUCompute,TechnicalUniversityofDenmark. Introduction to Symmetric Key Cryptography. ... JohannesA.Buchmann,ErikDahmen

Symmetric Key Cryptography

Where does security fail?•

User

Implementation

Protocols

Cryptographic Algorithms

Myth”Cryptographic Algorithms are never the weakest link.”

1

Page 4: Symmetric Key Cryptographystek/slides/pqsymcrypt.pdf · Symmetric Key Cryptography ... DTUCompute,TechnicalUniversityofDenmark. Introduction to Symmetric Key Cryptography. ... JohannesA.Buchmann,ErikDahmen

Symmetric Key Cryptography

Where does security fail?• User•

Implementation

Protocols

Cryptographic Algorithms

RC4

Don’t blame the user!

Myth”Cryptographic Algorithms are never the weakest link.”

1

Page 5: Symmetric Key Cryptographystek/slides/pqsymcrypt.pdf · Symmetric Key Cryptography ... DTUCompute,TechnicalUniversityofDenmark. Introduction to Symmetric Key Cryptography. ... JohannesA.Buchmann,ErikDahmen

Symmetric Key Cryptography

Where does security fail?• User• Implementation•

Protocols

Cryptographic Algorithms

Heartbleed

Myth”Cryptographic Algorithms are never the weakest link.”

1

Page 6: Symmetric Key Cryptographystek/slides/pqsymcrypt.pdf · Symmetric Key Cryptography ... DTUCompute,TechnicalUniversityofDenmark. Introduction to Symmetric Key Cryptography. ... JohannesA.Buchmann,ErikDahmen

Symmetric Key Cryptography

Where does security fail?• User• Implementation• Protocols•

Cryptographic Algorithms

Drown Attack

Myth”Cryptographic Algorithms are never the weakest link.”

1

Page 7: Symmetric Key Cryptographystek/slides/pqsymcrypt.pdf · Symmetric Key Cryptography ... DTUCompute,TechnicalUniversityofDenmark. Introduction to Symmetric Key Cryptography. ... JohannesA.Buchmann,ErikDahmen

Symmetric Key Cryptography

Where does security fail?• User• Implementation• Protocols• Cryptographic Algorithms

Myth”Cryptographic Algorithms are never the weakest link.”

1

Page 8: Symmetric Key Cryptographystek/slides/pqsymcrypt.pdf · Symmetric Key Cryptography ... DTUCompute,TechnicalUniversityofDenmark. Introduction to Symmetric Key Cryptography. ... JohannesA.Buchmann,ErikDahmen

Symmetric Key Cryptography

Hash Function MD5

• Not collision resistant [WY05]• Constructing a rogue CA [Ste+09]

Hash Function SHA-1

• Not collision resistant [WYY05]• First practical collisions this year

Stream Cipher RC4

• Plaintext Recovery in TLS [AlF+13]• ...

2

Page 9: Symmetric Key Cryptographystek/slides/pqsymcrypt.pdf · Symmetric Key Cryptography ... DTUCompute,TechnicalUniversityofDenmark. Introduction to Symmetric Key Cryptography. ... JohannesA.Buchmann,ErikDahmen

Symmetric Key Cryptography

A long list...

• MIFARE Classic (Crypto 1)• Keeloq• A5/1, A5/2• DECT• Kindle Cipher• ...

3

Page 10: Symmetric Key Cryptographystek/slides/pqsymcrypt.pdf · Symmetric Key Cryptography ... DTUCompute,TechnicalUniversityofDenmark. Introduction to Symmetric Key Cryptography. ... JohannesA.Buchmann,ErikDahmen

Symmetric Key Cryptography

What can we do?• Encryption• Authentication (MAC)• Hashing• Random Number Generation• Digital Signature Schemes• Key Exchange

4

Page 11: Symmetric Key Cryptographystek/slides/pqsymcrypt.pdf · Symmetric Key Cryptography ... DTUCompute,TechnicalUniversityofDenmark. Introduction to Symmetric Key Cryptography. ... JohannesA.Buchmann,ErikDahmen

Symmetric Key Cryptography

Digital Signatures

• Hash-based Signature Schemes (MSS, XMSS [BDH11],SPHINCS [Ber+15])

• Zero-Knowledge Proof Based (Fish [Cha+17], Picnic [Cha+17])

5

Page 12: Symmetric Key Cryptographystek/slides/pqsymcrypt.pdf · Symmetric Key Cryptography ... DTUCompute,TechnicalUniversityofDenmark. Introduction to Symmetric Key Cryptography. ... JohannesA.Buchmann,ErikDahmen

Symmetric Key Cryptography

Key Exchange with Merkle Puzzles (1978)

• Alice prepares m Puzzles: P1, . . . ,Pm.• Solving a puzzle requires n steps.• Reveals an id and key kid.

Alice Bob

P1, . . . ,PmSolve Pi → idi, ki

idi

• Bob needs to compute n steps.• Adversary needs to compute mn.

6

Page 13: Symmetric Key Cryptographystek/slides/pqsymcrypt.pdf · Symmetric Key Cryptography ... DTUCompute,TechnicalUniversityofDenmark. Introduction to Symmetric Key Cryptography. ... JohannesA.Buchmann,ErikDahmen

Symmetric Key Cryptography

NoteWe need a shared secret between the parties.

Meet on Friday

E

qgWqNDAdcYgmyOy

Meet on Friday

qgWqNDAdcYgmyOy

EK K

7

Page 14: Symmetric Key Cryptographystek/slides/pqsymcrypt.pdf · Symmetric Key Cryptography ... DTUCompute,TechnicalUniversityofDenmark. Introduction to Symmetric Key Cryptography. ... JohannesA.Buchmann,ErikDahmen

Symmetric Key Cryptography

The adversary• Eavesdrop on communication• Modify transmission• Delete/Insert messages• ...

...but is bound in• Computational power• Available memory• Time• Data

8

Page 15: Symmetric Key Cryptographystek/slides/pqsymcrypt.pdf · Symmetric Key Cryptography ... DTUCompute,TechnicalUniversityofDenmark. Introduction to Symmetric Key Cryptography. ... JohannesA.Buchmann,ErikDahmen

Symmetric Key Cryptography

Goals of the attacker• Decrypt a ciphertext• Forge a signature• Recover the secret key• Distinguish output• ...

Message

E

Random

qgWqNDA

?

?

9

Page 16: Symmetric Key Cryptographystek/slides/pqsymcrypt.pdf · Symmetric Key Cryptography ... DTUCompute,TechnicalUniversityofDenmark. Introduction to Symmetric Key Cryptography. ... JohannesA.Buchmann,ErikDahmen

Symmetric Key Cryptography

How do we achieve security for an algorithm?

• Reduce security to a hard problem.• Make it secure against all known attacks.

NoteWe can not proof security for a primitive.

10

Page 17: Symmetric Key Cryptographystek/slides/pqsymcrypt.pdf · Symmetric Key Cryptography ... DTUCompute,TechnicalUniversityofDenmark. Introduction to Symmetric Key Cryptography. ... JohannesA.Buchmann,ErikDahmen

Encryption

Page 18: Symmetric Key Cryptographystek/slides/pqsymcrypt.pdf · Symmetric Key Cryptography ... DTUCompute,TechnicalUniversityofDenmark. Introduction to Symmetric Key Cryptography. ... JohannesA.Buchmann,ErikDahmen

Block Ciphers

Plaintext CiphertextBC

Key

• Encrypts blocks of fixed size n with a key of size k.• Requires a mode to encrypt arbitrary messages.

Block cipher is not an encryption scheme

11

Page 19: Symmetric Key Cryptographystek/slides/pqsymcrypt.pdf · Symmetric Key Cryptography ... DTUCompute,TechnicalUniversityofDenmark. Introduction to Symmetric Key Cryptography. ... JohannesA.Buchmann,ErikDahmen

Symmetric Key

Ideal Block Cipher

K = 101010111010...

K = 001111110000...K = 111111001000...

Plaintexts Ciphertexts

12

Page 20: Symmetric Key Cryptographystek/slides/pqsymcrypt.pdf · Symmetric Key Cryptography ... DTUCompute,TechnicalUniversityofDenmark. Introduction to Symmetric Key Cryptography. ... JohannesA.Buchmann,ErikDahmen

Symmetric Key

Ideal Block Cipher

K = 101010111010...

K = 001111110000...

K = 111111001000...

Plaintexts Ciphertexts

12

Page 21: Symmetric Key Cryptographystek/slides/pqsymcrypt.pdf · Symmetric Key Cryptography ... DTUCompute,TechnicalUniversityofDenmark. Introduction to Symmetric Key Cryptography. ... JohannesA.Buchmann,ErikDahmen

Symmetric Key

Ideal Block Cipher

K = 101010111010...K = 001111110000...

K = 111111001000...

Plaintexts Ciphertexts

12

Page 22: Symmetric Key Cryptographystek/slides/pqsymcrypt.pdf · Symmetric Key Cryptography ... DTUCompute,TechnicalUniversityofDenmark. Introduction to Symmetric Key Cryptography. ... JohannesA.Buchmann,ErikDahmen

Block Ciphers

A block cipher can be seen as a family of 2k n-bit bijections.

ProblemThere are 2n! bijections, we ideally want to choose 2k uniformly atrandom.

GoalWe need something efficient to mimic this behaviour.

13

Page 23: Symmetric Key Cryptographystek/slides/pqsymcrypt.pdf · Symmetric Key Cryptography ... DTUCompute,TechnicalUniversityofDenmark. Introduction to Symmetric Key Cryptography. ... JohannesA.Buchmann,ErikDahmen

Block Ciphers

Iterated construction

Key

Plaintext CiphertextBC

P Cf1 f2 f3 fr

K1 K2 K3 Kr

14

Page 24: Symmetric Key Cryptographystek/slides/pqsymcrypt.pdf · Symmetric Key Cryptography ... DTUCompute,TechnicalUniversityofDenmark. Introduction to Symmetric Key Cryptography. ... JohannesA.Buchmann,ErikDahmen

Symmetric Key Cryptography

The Data Encryption Standard• Developed in 1970s at IBM.• Feistel Network with 16rounds.

• Encrypts 64-bit blockswith 56-bit keys.

• Standardized in 1977.

f1

f2

f3

f4

L0 R0

L4 R4

15

Page 25: Symmetric Key Cryptographystek/slides/pqsymcrypt.pdf · Symmetric Key Cryptography ... DTUCompute,TechnicalUniversityofDenmark. Introduction to Symmetric Key Cryptography. ... JohannesA.Buchmann,ErikDahmen

Symmetric Key Cryptography

The Advanced Encryption Standard (AES)

• Public Competition hosted by NIST (1997-2001)• Must support block size of 128 bits and key size of 128, 192 and256 bits.

• CAST-256• CRYPTON• DEAL• DFC• E2

• FROG• HPC• LOKI97• MAGENTA• MARS

• RC6• Rijndael• SAFER+• Serpent• Twofish

16

Page 26: Symmetric Key Cryptographystek/slides/pqsymcrypt.pdf · Symmetric Key Cryptography ... DTUCompute,TechnicalUniversityofDenmark. Introduction to Symmetric Key Cryptography. ... JohannesA.Buchmann,ErikDahmen

Symmetric Key Cryptography

The Advanced Encryption Standard (AES)

• Public Competition hosted by NIST (1997-2001)• Must support block size of 128 bits and key size of 128, 192 and256 bits.

• CAST-256• CRYPTON• DEAL• DFC• E2

• FROG• HPC• LOKI97• MAGENTA• MARS

• RC6• Rijndael• SAFER+• Serpent• Twofish

16

Page 27: Symmetric Key Cryptographystek/slides/pqsymcrypt.pdf · Symmetric Key Cryptography ... DTUCompute,TechnicalUniversityofDenmark. Introduction to Symmetric Key Cryptography. ... JohannesA.Buchmann,ErikDahmen

Block Ciphers

AES/Rijndael

• Blocksize: 128-bit• Keysize: 128/192/256 bits• Iterated block cipher with 10/12/14 rounds• Is part of a wide-range of standards.• Direct support by instructions in modern CPUs.

17

Page 28: Symmetric Key Cryptographystek/slides/pqsymcrypt.pdf · Symmetric Key Cryptography ... DTUCompute,TechnicalUniversityofDenmark. Introduction to Symmetric Key Cryptography. ... JohannesA.Buchmann,ErikDahmen

Block Ciphers

Update 4× 4 state of bytes• SubBytes• ShiftRows• MixColumns• AddKey

1,2

a a a

aa1,1aa

a 2,1a a a

aaa

0,0 a 0,1 0,2 0,3

1,0 1,3

2,0 2,2 2,3

3,0 a 3,1 3,2 3,3 b

2,1

1,2

b b b b

bbbb

b b b b

bbb

0,0 0,1 0,2 0,3

1,0 1,1 1,3

2,0 2,2 2,3

3,0 3,1 3,2 3,3

SubBytes

S

18

Page 29: Symmetric Key Cryptographystek/slides/pqsymcrypt.pdf · Symmetric Key Cryptography ... DTUCompute,TechnicalUniversityofDenmark. Introduction to Symmetric Key Cryptography. ... JohannesA.Buchmann,ErikDahmen

Block Ciphers

Update 4× 4 state of bytes• SubBytes• ShiftRows• MixColumns• AddKey

ShiftRows

a a a a

aaaa

a a a a

aaaa

a a a a

aaaa

a a a a

aaaa

Nochange

Shift 1

Shift 2

Shift 3

0,0 0,1 0,2 0,3

1,0 1,1 1,2 1,3 1,1 1,2 1,3 1,0

0,0 0,1 0,2 0,3

2,0 2,1 2,2 2,3 2,0 2,12,2 2,3

3,0 3,1 3,2 3,3 3,0 3,1 3,23,3

18

Page 30: Symmetric Key Cryptographystek/slides/pqsymcrypt.pdf · Symmetric Key Cryptography ... DTUCompute,TechnicalUniversityofDenmark. Introduction to Symmetric Key Cryptography. ... JohannesA.Buchmann,ErikDahmen

Block Ciphers

Update 4× 4 state of bytes• SubBytes• ShiftRows• MixColumns• AddKey

1,2

a a a

aa1,1aa

a 2,1a a a

aaa

0,0

a0,10,2 0,3

1,0 1,3

2,0 2,2 2,3

3,0 a 3,13,2 3,3 b

1,2

b b b

bbb

b 2,1b b b

bb

0,0

b0,10,2 0,3

1,0b 1,1

1,3

2,0 2,2 2,3

3,0 b 3,13,2 3,3

MixColumns

18

Page 31: Symmetric Key Cryptographystek/slides/pqsymcrypt.pdf · Symmetric Key Cryptography ... DTUCompute,TechnicalUniversityofDenmark. Introduction to Symmetric Key Cryptography. ... JohannesA.Buchmann,ErikDahmen

Block Ciphers

Update 4× 4 state of bytes• SubBytes• ShiftRows• MixColumns• AddKey

2,1

1,21,1

a a a a

aaaa

a a a a

aaaa

0,0 0,1 0,2 0,3

1,0 1,3

2,0 2,2 2,3

3,0 3,1 3,2 3,3

k k k k

kkkk

k k 2,1

k

k k

kkk

0,0 0,1 0,2 0,3

1,0 1,1 1,2 1,3

2,0 2,2 2,3

3,0 3,1 3,2 3,3

b

2,1

1,2

b b b b

bbbb

b b b b

bbb

0,0 0,1 0,2 0,3

1,0 1,1 1,3

2,0 2,2 2,3

3,0 3,1 3,2 3,3

AddRoundKey

18

Page 32: Symmetric Key Cryptographystek/slides/pqsymcrypt.pdf · Symmetric Key Cryptography ... DTUCompute,TechnicalUniversityofDenmark. Introduction to Symmetric Key Cryptography. ... JohannesA.Buchmann,ErikDahmen

Block Ciphers

Current state of key recovery attacks for AES-128

0 6 7 8 10

244 [Fer+00]

299 [DFJ13] 2125.34 [BKR11]

2126.18 [BKR11]

There are many more attacks with different trade-offs oftime/data/memory.

19

Page 33: Symmetric Key Cryptographystek/slides/pqsymcrypt.pdf · Symmetric Key Cryptography ... DTUCompute,TechnicalUniversityofDenmark. Introduction to Symmetric Key Cryptography. ... JohannesA.Buchmann,ErikDahmen

Stream Ciphers

Page 34: Symmetric Key Cryptographystek/slides/pqsymcrypt.pdf · Symmetric Key Cryptography ... DTUCompute,TechnicalUniversityofDenmark. Introduction to Symmetric Key Cryptography. ... JohannesA.Buchmann,ErikDahmen

Stream Ciphers

Plaintext Ciphertext

Keystream

E

Key IV

• Encrypts individual digits.• IV to have multiple key stream for each K• Requires no padding.• Often used for low-bandwidth communication.

20

Page 35: Symmetric Key Cryptographystek/slides/pqsymcrypt.pdf · Symmetric Key Cryptography ... DTUCompute,TechnicalUniversityofDenmark. Introduction to Symmetric Key Cryptography. ... JohannesA.Buchmann,ErikDahmen

Stream Ciphers

Widely found in practice

• GSM standard (A5/1, A5/2)• LTE (SNOW 3G, ZUC)• Bluetooth (E0)• TLS protocol (RC4, ChaCha20)

21

Page 36: Symmetric Key Cryptographystek/slides/pqsymcrypt.pdf · Symmetric Key Cryptography ... DTUCompute,TechnicalUniversityofDenmark. Introduction to Symmetric Key Cryptography. ... JohannesA.Buchmann,ErikDahmen

Stream Ciphers

eSTREAM Project (EU)

Goal...promote the design of efficient and compact stream cipherssuitable for widespread adoption...

Software Hardware

HC-128 Grain v1Rabbit MICKEY 2.0Salsa20/12 TriviumSOSEMANUK

22

Page 37: Symmetric Key Cryptographystek/slides/pqsymcrypt.pdf · Symmetric Key Cryptography ... DTUCompute,TechnicalUniversityofDenmark. Introduction to Symmetric Key Cryptography. ... JohannesA.Buchmann,ErikDahmen

Stream Ciphers

LFSR-based Constructions, e.g. A5/1

• Load IV and Key in registers.• Shift registers depending on values in .• Produces 1-bit output in each iteration.

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21

0 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22

23

Page 38: Symmetric Key Cryptographystek/slides/pqsymcrypt.pdf · Symmetric Key Cryptography ... DTUCompute,TechnicalUniversityofDenmark. Introduction to Symmetric Key Cryptography. ... JohannesA.Buchmann,ErikDahmen

Stream Ciphers

Counter Mode (CTR)

N||0 . . . 01

AESK

C0, . . . , C127

N||0 . . . 02

AESK

C128, . . . , C255

N||0 . . . 03

AESK

C256, . . . , C383

Keystream:

NoteReusing nonce and counter gives same keystream.

24

Page 39: Symmetric Key Cryptographystek/slides/pqsymcrypt.pdf · Symmetric Key Cryptography ... DTUCompute,TechnicalUniversityofDenmark. Introduction to Symmetric Key Cryptography. ... JohannesA.Buchmann,ErikDahmen

Stream Ciphers

Salsa20 / ChaCha20• ARX-based design• 512-bit state• Uses 256-bit key• 20 rounds• Fast in software• ChaCha20-Poly1305 in TLS

25

Page 40: Symmetric Key Cryptographystek/slides/pqsymcrypt.pdf · Symmetric Key Cryptography ... DTUCompute,TechnicalUniversityofDenmark. Introduction to Symmetric Key Cryptography. ... JohannesA.Buchmann,ErikDahmen

Stream Ciphers

Current state of key recovery attacks for Salsa20

0 5 6 7 8 20

28 [CM16]

232 [CM16]

2137 [CM16]

2244.9 [CM16]

For ChaCha typically one round less.

26

Page 41: Symmetric Key Cryptographystek/slides/pqsymcrypt.pdf · Symmetric Key Cryptography ... DTUCompute,TechnicalUniversityofDenmark. Introduction to Symmetric Key Cryptography. ... JohannesA.Buchmann,ErikDahmen

Cryptographic Hash Functions

Page 42: Symmetric Key Cryptographystek/slides/pqsymcrypt.pdf · Symmetric Key Cryptography ... DTUCompute,TechnicalUniversityofDenmark. Introduction to Symmetric Key Cryptography. ... JohannesA.Buchmann,ErikDahmen

Hash Functions

”There was of course no way of knowing whether youwere being watched at any given moment. How often, oron what system, the Thought Police plugged in on anyindividual wire was guesswork. It was even conceivablethat they watched everybody all the time. But at anyrate they could plug in your wire whenever they wantedto. You had to live – did live, from habit that becameinstinct – in the assumption that every sound you madewas overheard, and, except in darkness, every movementscrutinized.”

WqNDAdcYgmyOH

27

Page 43: Symmetric Key Cryptographystek/slides/pqsymcrypt.pdf · Symmetric Key Cryptography ... DTUCompute,TechnicalUniversityofDenmark. Introduction to Symmetric Key Cryptography. ... JohannesA.Buchmann,ErikDahmen

Hash Functions

”There was of course no way of knowing whether youwere being watched at any given moment. How often, oron what system, the Thought Police plugged in on anyindividual wire was guesswork. It was even conceivablethat they watched everybody all the time. But at anyrate they could plug in your wire whenever they wantedto. You had to live – did live, from habit that becameinstinct – in the assumption that every noise you madewas overheard, and, except in darkness, every movementscrutinized.”

a1IMC3mLo9LxH

28

Page 44: Symmetric Key Cryptographystek/slides/pqsymcrypt.pdf · Symmetric Key Cryptography ... DTUCompute,TechnicalUniversityofDenmark. Introduction to Symmetric Key Cryptography. ... JohannesA.Buchmann,ErikDahmen

Hash Functions

Applications

• Integrity Check• Digital Signature Schemes (this afternoon)• Password Hashing (https://password-hashing.net/)• Message Authentication• Commitment Schemes• ...

29

Page 45: Symmetric Key Cryptographystek/slides/pqsymcrypt.pdf · Symmetric Key Cryptography ... DTUCompute,TechnicalUniversityofDenmark. Introduction to Symmetric Key Cryptography. ... JohannesA.Buchmann,ErikDahmen

Hash Functions

Preimage Resistance

? H(x)H

For n-bit output size

• Best attack: 2n

30

Page 46: Symmetric Key Cryptographystek/slides/pqsymcrypt.pdf · Symmetric Key Cryptography ... DTUCompute,TechnicalUniversityofDenmark. Introduction to Symmetric Key Cryptography. ... JohannesA.Buchmann,ErikDahmen

Hash Functions

Second-Preimage Resistance

x H(x)H

=

? H(x)H

For n-bit output size

• Best attack: 2n

31

Page 47: Symmetric Key Cryptographystek/slides/pqsymcrypt.pdf · Symmetric Key Cryptography ... DTUCompute,TechnicalUniversityofDenmark. Introduction to Symmetric Key Cryptography. ... JohannesA.Buchmann,ErikDahmen

Hash Functions

Collision Resistance

? hH

= =

? h′H

For n-bit output size

• Best attack: 2n/2

32

Page 48: Symmetric Key Cryptographystek/slides/pqsymcrypt.pdf · Symmetric Key Cryptography ... DTUCompute,TechnicalUniversityofDenmark. Introduction to Symmetric Key Cryptography. ... JohannesA.Buchmann,ErikDahmen

Hash Functions

Hardness of finding collision vs. preimages in practice

Algorithm Year n Collision Preimage

MD4 1990 128 < 1 sec

278.4 [Guo+10]

MD5 1992 128 < 1 sec

2123.4 [SA09]

SHA-1 1995 160 263

2151.1 [KK12] 57/80 rounds

SHA-256 2001 256 265.5 31/64 rounds

2255.5 [KRS12] 45/64 rounds

33

Page 49: Symmetric Key Cryptographystek/slides/pqsymcrypt.pdf · Symmetric Key Cryptography ... DTUCompute,TechnicalUniversityofDenmark. Introduction to Symmetric Key Cryptography. ... JohannesA.Buchmann,ErikDahmen

Hash Functions

Hardness of finding collision vs. preimages in practice

Algorithm Year n Collision Preimage

MD4 1990 128 < 1 sec 278.4 [Guo+10]MD5 1992 128 < 1 sec 2123.4 [SA09]SHA-1 1995 160 263 2151.1 [KK12] 57/80 roundsSHA-256 2001 256 265.5 31/64 rounds 2255.5 [KRS12] 45/64 rounds

33

Page 50: Symmetric Key Cryptographystek/slides/pqsymcrypt.pdf · Symmetric Key Cryptography ... DTUCompute,TechnicalUniversityofDenmark. Introduction to Symmetric Key Cryptography. ... JohannesA.Buchmann,ErikDahmen

Hash Functions

Requirements for security and performance can vary on application.

Password Hashingshould be slow!

Performance onlong/short mes-sages.

Collision resistance notrequired!

34

Page 51: Symmetric Key Cryptographystek/slides/pqsymcrypt.pdf · Symmetric Key Cryptography ... DTUCompute,TechnicalUniversityofDenmark. Introduction to Symmetric Key Cryptography. ... JohannesA.Buchmann,ErikDahmen

Hash Functions

Ideal Hash Function

M1

M2

M3

Messages Hashes

35

Page 52: Symmetric Key Cryptographystek/slides/pqsymcrypt.pdf · Symmetric Key Cryptography ... DTUCompute,TechnicalUniversityofDenmark. Introduction to Symmetric Key Cryptography. ... JohannesA.Buchmann,ErikDahmen

Hash Functions

Ideal Hash Function

M1

M2

M3

Messages Hashes

35

Page 53: Symmetric Key Cryptographystek/slides/pqsymcrypt.pdf · Symmetric Key Cryptography ... DTUCompute,TechnicalUniversityofDenmark. Introduction to Symmetric Key Cryptography. ... JohannesA.Buchmann,ErikDahmen

Hash Functions

Ideal Hash Function

M1

M2

M3

Messages Hashes

35

Page 54: Symmetric Key Cryptographystek/slides/pqsymcrypt.pdf · Symmetric Key Cryptography ... DTUCompute,TechnicalUniversityofDenmark. Introduction to Symmetric Key Cryptography. ... JohannesA.Buchmann,ErikDahmen

Hash Functions

How to construct a hash function?

• Merkle-Damgård with compression function (SHA-1, SHA-2)

IV f

M1

f

M2

f

Mn

gh1 hn+1 h

ProblemHow do we construct the compression function?

36

Page 55: Symmetric Key Cryptographystek/slides/pqsymcrypt.pdf · Symmetric Key Cryptography ... DTUCompute,TechnicalUniversityofDenmark. Introduction to Symmetric Key Cryptography. ... JohannesA.Buchmann,ErikDahmen

Hash Functions

How to construct a hash function?

• Merkle-Damgård with compression function (SHA-1, SHA-2)

hi

hi+1

mi BC

SolutionUse a block cipher! ... but often state is too small.

36

Page 56: Symmetric Key Cryptographystek/slides/pqsymcrypt.pdf · Symmetric Key Cryptography ... DTUCompute,TechnicalUniversityofDenmark. Introduction to Symmetric Key Cryptography. ... JohannesA.Buchmann,ErikDahmen

Hash Functions

Compression Function Design (MD4)

Ai Bi Ci Di

≪ s

Fi

Ai+1 Bi+1 Ci+1 Di+1

Mi

Ki

37

Page 57: Symmetric Key Cryptographystek/slides/pqsymcrypt.pdf · Symmetric Key Cryptography ... DTUCompute,TechnicalUniversityofDenmark. Introduction to Symmetric Key Cryptography. ... JohannesA.Buchmann,ErikDahmen

Hash Functions

Compression Function Design (MD5)

Ai Bi Ci Di

≪ s

Fi

Ai+1 Bi+1 Ci+1 Di+1

Mi

Ki

38

Page 58: Symmetric Key Cryptographystek/slides/pqsymcrypt.pdf · Symmetric Key Cryptography ... DTUCompute,TechnicalUniversityofDenmark. Introduction to Symmetric Key Cryptography. ... JohannesA.Buchmann,ErikDahmen

Hash Functions

Compression Function Design (SHA-1)

Ai Bi Ci Di Ei

≪ 5

≪ 30

Fi

Ei+1Di+1Ci+1Bi+1Ai+1

Wi

Ki

39

Page 59: Symmetric Key Cryptographystek/slides/pqsymcrypt.pdf · Symmetric Key Cryptography ... DTUCompute,TechnicalUniversityofDenmark. Introduction to Symmetric Key Cryptography. ... JohannesA.Buchmann,ErikDahmen

Hash Functions

Compression Function Design (SHA-2)

Ai Bi Ci Di Ei Fi Gi Hi

If

Σ1

Maj

Σ0

Hi+1Gi+1Fi+1Ei+1Di+1Ci+1Bi+1Ai+1

Wt

Kt

40

Page 60: Symmetric Key Cryptographystek/slides/pqsymcrypt.pdf · Symmetric Key Cryptography ... DTUCompute,TechnicalUniversityofDenmark. Introduction to Symmetric Key Cryptography. ... JohannesA.Buchmann,ErikDahmen

Hash Functions

The 2005 Hash Crisis

• Wang and Yu show that MD5 is not collision resistant [WY05]...• ... and SHA-1 isn’t either [WYY05].• Concerns that SHA-2 will also fail.

MD4

MD5

SHA-1

41

Page 61: Symmetric Key Cryptographystek/slides/pqsymcrypt.pdf · Symmetric Key Cryptography ... DTUCompute,TechnicalUniversityofDenmark. Introduction to Symmetric Key Cryptography. ... JohannesA.Buchmann,ErikDahmen

Hash Functions

The SHA-3 Competition

• Public Competition to find a new standard SHA-3.• From 2007 to 2012

• Abacus

• ARIRANG

• AURORA

• Blake

• Blender

• Blue Midnight Wish

• Boole

• Cheetah

• CHI

• CRUNCH

• CubeHash

• DCH

• Dynamic SHA

• Dynamic SHA2

• ECHO

• ECOH

• Edon-R

• EnRUPT

• ESSENCE

• FSB

• Fugue

• Grøstl

• Hamsi

• HASH 2X

• JH

• Keccak

• Khichidi-1

• LANE

• Lesamnta

• Luffa

• LUX

• Maraca

• MCSSHA-3

• MD6

• MeshHash

• NaSHA

• NKS2D

• Ponic

• SANDstorm

• Sarmal

• Sgàil

• Shabal

• SHAMATA

• SHAvite-3

• SIMD

• Skein

• Spectral Hash

• StreamHash

• SWIFFTX

• Tangle

• TIB3

• Twister

• Vortex

• WaMM

• Waterfall

• ZK-Crypt

42

Page 62: Symmetric Key Cryptographystek/slides/pqsymcrypt.pdf · Symmetric Key Cryptography ... DTUCompute,TechnicalUniversityofDenmark. Introduction to Symmetric Key Cryptography. ... JohannesA.Buchmann,ErikDahmen

Hash Functions

The SHA-3 Competition

• Public Competition to find a new standard SHA-3.• From 2007 to 2012

• Abacus

• ARIRANG

• AURORA

• Blake• Blender

• Blue Midnight Wish

• Boole

• Cheetah

• CHI

• CRUNCH

• CubeHash

• DCH

• Dynamic SHA

• Dynamic SHA2

• ECHO

• ECOH

• Edon-R

• EnRUPT

• ESSENCE

• FSB

• Fugue

• Grøstl• Hamsi

• HASH 2X

• JH• Keccak• Khichidi-1

• LANE

• Lesamnta

• Luffa

• LUX

• Maraca

• MCSSHA-3

• MD6

• MeshHash

• NaSHA

• NKS2D

• Ponic

• SANDstorm

• Sarmal

• Sgàil

• Shabal

• SHAMATA

• SHAvite-3

• SIMD

• Skein• Spectral Hash

• StreamHash

• SWIFFTX

• Tangle

• TIB3

• Twister

• Vortex

• WaMM

• Waterfall

• ZK-Crypt

42

Page 63: Symmetric Key Cryptographystek/slides/pqsymcrypt.pdf · Symmetric Key Cryptography ... DTUCompute,TechnicalUniversityofDenmark. Introduction to Symmetric Key Cryptography. ... JohannesA.Buchmann,ErikDahmen

Hash Functions

The SHA-3 Competition

• Public Competition to find a new standard SHA-3.• From 2007 to 2012

• Abacus

• ARIRANG

• AURORA

• Blake

• Blender

• Blue Midnight Wish

• Boole

• Cheetah

• CHI

• CRUNCH

• CubeHash

• DCH

• Dynamic SHA

• Dynamic SHA2

• ECHO

• ECOH

• Edon-R

• EnRUPT

• ESSENCE

• FSB

• Fugue

• Grøstl

• Hamsi

• HASH 2X

• JH

• Keccak• Khichidi-1

• LANE

• Lesamnta

• Luffa

• LUX

• Maraca

• MCSSHA-3

• MD6

• MeshHash

• NaSHA

• NKS2D

• Ponic

• SANDstorm

• Sarmal

• Sgàil

• Shabal

• SHAMATA

• SHAvite-3

• SIMD

• Skein

• Spectral Hash

• StreamHash

• SWIFFTX

• Tangle

• TIB3

• Twister

• Vortex

• WaMM

• Waterfall

• ZK-Crypt

42

Page 64: Symmetric Key Cryptographystek/slides/pqsymcrypt.pdf · Symmetric Key Cryptography ... DTUCompute,TechnicalUniversityofDenmark. Introduction to Symmetric Key Cryptography. ... JohannesA.Buchmann,ErikDahmen

Hash Functions

SHA-3 Winner Keccak

0

0

r

c

π

M0

π

M1

π

M2

π

h0

π

h1h

• Based on the sponge construction.• Uses 1600-bit permutation π.• Parameters: rate r and capacity c.• Security claim of 2c/2.

43

Page 65: Symmetric Key Cryptographystek/slides/pqsymcrypt.pdf · Symmetric Key Cryptography ... DTUCompute,TechnicalUniversityofDenmark. Introduction to Symmetric Key Cryptography. ... JohannesA.Buchmann,ErikDahmen

Hash Functions

SHA3-256 (c = 512) collision resistance

0 4 5 24

practical [Qia+17]

2115 [DDS13]

Practical Attacks for c = 1601:

• Collisions for 6 rounds• Preimages for 4 rounds

1http://keccak.noekeon.org/crunchy_contest.html

44

Page 66: Symmetric Key Cryptographystek/slides/pqsymcrypt.pdf · Symmetric Key Cryptography ... DTUCompute,TechnicalUniversityofDenmark. Introduction to Symmetric Key Cryptography. ... JohannesA.Buchmann,ErikDahmen

Hash Functions

What should you use now?

”We don’t need another slow, secure hash function—we’vealready got SHA-2.”—Adam Langley, Mar. 20172

SHA-3 standard tooconservative?3

• Use different parameters.• Tree hashing mode forbetter performance.

• RFC for Kangaroo124

2https://www.imperialviolet.org/2017/05/31/skipsha3.html3http://keccak.noekeon.org/is_sha3_slow.html4https://tools.ietf.org/html/draft-viguier-kangarootwelve-00 45

Page 67: Symmetric Key Cryptographystek/slides/pqsymcrypt.pdf · Symmetric Key Cryptography ... DTUCompute,TechnicalUniversityofDenmark. Introduction to Symmetric Key Cryptography. ... JohannesA.Buchmann,ErikDahmen

Symmetric Key Cryptography

What can we do?• Encryption• Authentication (MAC)• Hashing• Random Number Generation• Digital Signature Schemes• Key Exchange

46

Page 68: Symmetric Key Cryptographystek/slides/pqsymcrypt.pdf · Symmetric Key Cryptography ... DTUCompute,TechnicalUniversityofDenmark. Introduction to Symmetric Key Cryptography. ... JohannesA.Buchmann,ErikDahmen

Questions?

46

Page 69: Symmetric Key Cryptographystek/slides/pqsymcrypt.pdf · Symmetric Key Cryptography ... DTUCompute,TechnicalUniversityofDenmark. Introduction to Symmetric Key Cryptography. ... JohannesA.Buchmann,ErikDahmen

References i

Nadhem J. AlFardan et al. “On the Security of RC4 in TLS”. In: Proceedingsof the 22th USENIX Security Symposium. 2013, pp. 305–320.

Johannes A. Buchmann, Erik Dahmen, and Andreas Hülsing. “XMSS - APractical Forward Secure Signature Scheme Based on Minimal SecurityAssumptions”. In: Post-Quantum Cryptography - 4th InternationalWorkshop, PQCrypto 2011, Taipei, Taiwan, November 29 - December 2, 2011.Proceedings. 2011, pp. 117–129.

Andrey Bogdanov, Dmitry Khovratovich, and Christian Rechberger. “BicliqueCryptanalysis of the Full AES”. In: Advances in Cryptology - ASIACRYPT 2011.2011, pp. 344–371.

Daniel J. Bernstein et al. “SPHINCS: Practical Stateless Hash-BasedSignatures”. In: Advances in Cryptology - EUROCRYPT 2015. 2015,pp. 368–397.

47

Page 70: Symmetric Key Cryptographystek/slides/pqsymcrypt.pdf · Symmetric Key Cryptography ... DTUCompute,TechnicalUniversityofDenmark. Introduction to Symmetric Key Cryptography. ... JohannesA.Buchmann,ErikDahmen

References ii

Arka Rai Choudhuri and Subhamoy Maitra. “Significantly ImprovedMulti-bit Differentials for Reduced Round Salsa and ChaCha”. In: IACRTrans. Symmetric Cryptol. 2016.2 (2016), pp. 261–287.

Melissa Chase et al. Post-Quantum Zero-Knowledge and Signatures fromSymmetric-Key Primitives. Cryptology ePrint Archive, Report 2017/279.http://eprint.iacr.org/2017/279. 2017.

Itai Dinur, Orr Dunkelman, and Adi Shamir. “Collision Attacks on Up to 5Rounds of SHA-3 Using Generalized Internal Differentials”. In: FastSoftware Encryption - 20th International Workshop, FSE 2013. 2013,pp. 219–240.

Patrick Derbez, Pierre-Alain Fouque, and Jérémy Jean. “Improved KeyRecovery Attacks on Reduced-Round AES in the Single-Key Setting”. In:Advances in Cryptology - EUROCRYPT 2013. 2013, pp. 371–387.

Niels Ferguson et al. “Improved Cryptanalysis of Rijndael”. In: Fast SoftwareEncryption, 7th International Workshop, FSE 2000. 2000, pp. 213–230.

48

Page 71: Symmetric Key Cryptographystek/slides/pqsymcrypt.pdf · Symmetric Key Cryptography ... DTUCompute,TechnicalUniversityofDenmark. Introduction to Symmetric Key Cryptography. ... JohannesA.Buchmann,ErikDahmen

References iii

Jian Guo et al. “Advanced Meet-in-the-Middle Preimage Attacks: FirstResults on Full Tiger, and Improved Results on MD4 and SHA-2”. In:Advances in Cryptology - ASIACRYPT 2010. 2010, pp. 56–75.

Simon Knellwolf and Dmitry Khovratovich. “New Preimage Attacks againstReduced SHA-1”. In: Advances in Cryptology - CRYPTO 2012. 2012,pp. 367–383.

Dmitry Khovratovich, Christian Rechberger, and Alexandra Savelieva.“Bicliques for Preimages: Attacks on Skein-512 and the SHA-2 Family”. In:Fast Software Encryption - 19th International Workshop, FSE 2012. 2012,pp. 244–263.

Kexin Qiao et al. “New Collision Attacks on Round-Reduced Keccak”. In:Advances in Cryptology - EUROCRYPT 2017. 2017, pp. 216–243.

Yu Sasaki and Kazumaro Aoki. “Finding Preimages in Full MD5 Faster ThanExhaustive Search”. In: Advances in Cryptology - EUROCRYPT 2009. 2009,pp. 134–152.

49

Page 72: Symmetric Key Cryptographystek/slides/pqsymcrypt.pdf · Symmetric Key Cryptography ... DTUCompute,TechnicalUniversityofDenmark. Introduction to Symmetric Key Cryptography. ... JohannesA.Buchmann,ErikDahmen

References iv

Marc Stevens et al. “Short Chosen-Prefix Collisions for MD5 and theCreation of a Rogue CA Certificate”. In: Advances in Cryptology - CRYPTO2009. 2009, pp. 55–69.

Xiaoyun Wang and Hongbo Yu. “How to Break MD5 and Other HashFunctions”. In: Advances in Cryptology - EUROCRYPT 2005. 2005, pp. 19–35.

Xiaoyun Wang, Yiqun Lisa Yin, and Hongbo Yu. “Finding Collisions in theFull SHA-1”. In: Advances in Cryptology - CRYPTO 2005. 2005, pp. 17–36.

50