The LOCAL attack: Cryptanalysis of the authenticated encryption - - PowerPoint PPT Presentation

the local attack cryptanalysis of the authenticated
SMART_READER_LITE
LIVE PREVIEW

The LOCAL attack: Cryptanalysis of the authenticated encryption - - PowerPoint PPT Presentation

The LOCAL attack: Cryptanalysis of the authenticated encryption scheme ALE Dmitry Khovratovich and Christian Rechberger University of Luxembourg and DTU (Denmark) Presented by Yu Sasaki (NTT, Japan) 15 August 2013 Authenticated encryption


slide-1
SLIDE 1

The LOCAL attack: Cryptanalysis of the authenticated encryption scheme ALE

Dmitry Khovratovich and Christian Rechberger

University of Luxembourg and DTU (Denmark)

Presented by Yu Sasaki (NTT, Japan)

15 August 2013

slide-2
SLIDE 2

Authenticated encryption

slide-3
SLIDE 3

Authenticated encryption

Authenticated encryption — a single-key construction that achieves both confidentiality and data integrity. Data integrity/authentication means that a decryptable ciphertext must have been produced with a secret key. Hence most ciphertexts must decrypt to ⊥.

slide-4
SLIDE 4

Authenticated encryption

Authenticated encryption — a single-key construction that achieves both confidentiality and data integrity. Data integrity/authentication means that a decryptable ciphertext must have been produced with a secret key. Hence most ciphertexts must decrypt to ⊥. Several types:

  • Modes of operation (OCB, EAX, CCM, GCM), which invoke

an arbitrary blockcipher;

  • Dedicated constructions (Helix/Phelix, Grain128a), which use

fixed components. Both use nonces to achieve confidentiality in the presence of repeated queries or blocks.

slide-5
SLIDE 5

Authenticated encryption

Authenticated encryption — a single-key construction that achieves both confidentiality and data integrity. Data integrity/authentication means that a decryptable ciphertext must have been produced with a secret key. Hence most ciphertexts must decrypt to ⊥. Several types:

  • Modes of operation (OCB, EAX, CCM, GCM), which invoke

an arbitrary blockcipher;

  • Dedicated constructions (Helix/Phelix, Grain128a), which use

fixed components. Both use nonces to achieve confidentiality in the presence of repeated queries or blocks. Furthermore, some input must be authenticated but not encrypted (e.g., routing information). It is called associated data (AD).

slide-6
SLIDE 6

Authenticated encryption with associated data

Encryption: E : K × N × A × M → C Decryption: D : K × N × A × C → M ∪ {⊥}.

M A

EK

C T A authenticate and bind authenticate encrypt and

N

use and transmit

N

AD Message Nonce

Confidentiality:

  • Ciphertexts indistinguishable from random strings;

Data integrity:

  • Most of seemingly valid ciphertexts decrypt to ⊥.
slide-7
SLIDE 7

Breaking AE

Find an attack that violate any security property.

slide-8
SLIDE 8

Breaking AE

Find an attack that violate any security property. In our case — forgery attack, i.e. constructing a ciphertext that decrypts to M =⊥.

slide-9
SLIDE 9

Breaking AE

In our case, (existential) forgery attack means:

  • We are given access to the encryption oracle

[message M] × [nonce N] − → [ciphertext+tag C];

  • Note that C has some redundancy: most seemingly valid

ciphertexts are not decryptable.

  • Ask C = EK(M, N) (we ignore associated data);
  • Construct C ′ such that DK(C ′) = M′ =⊥.
slide-10
SLIDE 10

ALE

AES AES Extended key schedule AES N K K A1 AES 4 rounds AES 4 rounds AES 4 rounds A2 Ar Extended key schedule M1 AES 4 rounds leak C1 M2 AES 4 rounds leak C2 AES 4 rounds leak Mt AES 4 rounds leak Ct AES 4 rounds AES K T

Initialization phase Associated data phase Message processing phase

10127 K1 S1 K2

slide-11
SLIDE 11

ALE and LEX

LEX stream cipher

M1 AES 10 rounds leak C1 M2 AES 10 rounds leak C2 AES 10 rounds leak Mt AES 10 rounds leak Ct AES 10 rounds K K K K

Two crucial differences: key schedule and message injection ALE scheme

Extended key schedule M1 AES 4 rounds leak C1 M2 AES 4 rounds leak C2 AES 4 rounds leak Mt AES 4 rounds leak Ct AES 4 rounds

The latter helps.

slide-12
SLIDE 12

Leakage under scope

Bytes are extracted just after SubBytes operation:

SR MC AK,SB SR MC AK,SB M1 SR MC AK,SB SR MC AK AK,SB M2

Hence differential properties of the internal state are partly known.

slide-13
SLIDE 13

Main idea I

Make a local collision in the state:

Extended key schedule M1 AES 4 rounds leak C1 M2 AES 4 rounds leak C2 AES 4 rounds leak Mt AES 4 rounds leak Ct AES 4 rounds

Hence the same tag for a fresh ciphertext.

slide-14
SLIDE 14

Main idea II

We know the extracted bytes and how a difference would go through it

SR MC AK,SB SR MC AK,SB ∆1 SR MC AK,SB SR MC AK AK,SB ∆2

#1 #2 #3 #4

slide-15
SLIDE 15

Unknowns

25 total active S-boxes, only 17 unknown:

SR MC AK,SB SR MC AK,SB ∆1 SR MC AK,SB SR MC AK AK,SB ∆2

#1 #2 #3 #4

slide-16
SLIDE 16

Construction

Start in the middle, assume highest differential probability 2−6 everywhere:

SR MC AK,SB SR MC AK,SB ∆1 SR MC AK,SB SR MC AK AK,SB ∆2

#1 #2 #3 #4

Given output differences, construct a colliding ciphertext (hence a forgery) with probability 2−102.

slide-17
SLIDE 17

Complexity

  • The designers put the upper bound 240 on the data encrypted
  • n a single key.
  • Thus we use other trails if we want to stick to the same

message.

  • Total 2119 attempts before the first forgery, if only one

message is known (data/complexity tradeoff).

slide-18
SLIDE 18

Two consecutive forgeries for the same message yield state recovery:

M2 Ka Kb

SR MC

State recovered in the second forgery

SB

C0 C1 State recovered in the first forgery M2 M1 M3 M2

First forgery Second forgery State recovery

slide-19
SLIDE 19

Results

Data Verification attempts Memory Security claim Forgery 2102 2102 negl. not violated 240 2110 negl. violated 1 2119 negl. violated 1 1 negl. violated, success rate 2−119 State recovery 1 2120 negl. violated

slide-20
SLIDE 20

Strengthening ALE. Can we prevent the attack by just adding one more round?

slide-21
SLIDE 21

5-round attack

Not really. 5-round trail

SR MC AK,SB SR MC AK,SB ∆1 SR MC AK AK,SB ∆2

#1 #2 #3

SR MC AK,SB

#5 #4

SR MC AK,SB

High data complexity (280), but still a gain over brute force.

slide-22
SLIDE 22

Questions?