Improved Constructions of PRFs Secure Against Related-Key Attacks - - PowerPoint PPT Presentation

improved constructions of prfs secure against related key
SMART_READER_LITE
LIVE PREVIEW

Improved Constructions of PRFs Secure Against Related-Key Attacks - - PowerPoint PPT Presentation

Improved Constructions of PRFs Secure Against Related-Key Attacks Kevin Lewi Hart Montgomery Ananth Raghunathan Stanford University Pseudorandom Functions (PRFs) x { 0 , 1 } R k K x k PRF PRF( k , x ) x Rand Rand(


slide-1
SLIDE 1

Improved Constructions of PRFs Secure Against Related-Key Attacks

Kevin Lewi Hart Montgomery Ananth Raghunathan

Stanford University

slide-2
SLIDE 2

Pseudorandom Functions (PRFs)

PRF k PRF(k, x) x k

R

← − K x ∈ {0, 1}ℓ ≈ Rand Rand(x) x

slide-3
SLIDE 3

Related-Key Attacks

◮ With physical access, attacker can cause device to flip bits of

the key

◮ Key update protocols that update the key using a known

function

F k, k + 1, k + 2, . . . F(k+i, x) x

slide-4
SLIDE 4

Related-Key Attacks on Blockciphers

RKAs on blockciphers have been effective in key recovery:

◮ 3-DES, DESX related-key slide and differential attacks ◮ AES-192 and AES-256 related-key differential attacks

[Biryukov, Khovratovich 2009] Other types of RKAs:

◮ boomerang attack, rectangle attack, SQUARE attack, and

many more. . .

slide-5
SLIDE 5

RKA-secure PRFs for a Class Φ [BK03]

For a fixed class Φ of related-key functions φ : K → K, PRF k PRF(φ(k), x) x, φ k

R

← − K x ∈ {0, 1}ℓ, φ ∈ Φ φ (Φ is the class of “related-key attacks” available to the adversary)

slide-6
SLIDE 6

RKA-secure PRFs for a Class Φ [BK03]

For a fixed class Φ of related-key functions φ : K → K, Rand Rand(φ, x) x, φ x ∈ {0, 1}ℓ, φ ∈ Φ (Φ is the class of “related-key attacks” available to the adversary)

slide-7
SLIDE 7

PRFs under Related-Key Attacks (Example)

PRF k PRF(k ⊕ 011, x) x, φ(k) = k ⊕ 011 k

R

← − K x ∈ {0, 1}ℓ, φ ∈ Φ φ Example: Suppose the adversary can tamper with the key by flipping any of its last 3 bits. Then, Φ = {φz | z ∈ {0, 1}3, φz(k) = k ⊕ z}

slide-8
SLIDE 8

Related-Key Attacks from a Theoretical Perspective

◮ 2003: Bellare and Kohno established a theoretical foundation

for building blockciphers and PRFs resistant against RKAs

◮ 2010: Bellare and Cash built the first PRFs secure against

non-trivial RKAs

◮ 2011: Bellare, Cash, and Miller showed how to transfer RKA

security to higher-level primitives (IBE, sigs, etc.)

◮ 2012: Bellare, Paterson, and Thomson showed how to get

RKA security for more expressive classes of attacks

slide-9
SLIDE 9

Types of Algebraic Φ (from [BPT12])

For a PRF whose key space is F (field):

◮ Linear:

Φ = {φ(k) = k + z}z∈F

◮ Affine:

Φ = {φ(k) = a · k + b}a,b∈F (a = 0)

◮ Polynomial (bounded degree):

Φ = {φ(k) = c1 ·kd +c2 ·kd−1 +· · ·+cd ·k +cd+1}c1,...,cd+1∈F

slide-10
SLIDE 10

Related Work

[BC10] build RKA-secure PRFs for a non-trivial class of functions weaker than the linear class Primitive Linear Affine Polynomial IBE [BCM11] [BPT12] [BPT12] Sig [BCM11] [BPT12] [BPT12] CCA-secure PKE [Wee12] [BPT12] [BPT12] CPA-secure SKE [AHI11] [GNR11] [GNR11] PRF — — —

slide-11
SLIDE 11

Our Results

Primitive Linear Affine Polynomial IBE [BCM11] [BPT12] [BPT12] Sig [BCM11] [BPT12] [BPT12] CCA-secure PKE [Wee12] [BPT12] [BPT12] CPA-secure SKE [AHI11] [GNR11] [GNR11] PRF [this work]∗ [this work] [this work]

(under LWE) (from multilinear maps)

(from mmaps, only under “unique-input” security)

slide-12
SLIDE 12

◮ The Bellare-Cash Framework ◮ Unique-Input RKA Security

slide-13
SLIDE 13

Bellare-Cash Framework

Theorem (Bellare, Cash 2010)

PRF +“key transformer for Φ”+“fingerprint” → RKA-secure PRF for Φ

given φ ∈ Φ and F(k, ·), can compute F(φ(k), ·) an input w s.t. for all k and distinct φ1, φ2 ∈ Φ, F(φ1(k), w) = F(φ2(k), w) [BC10] Construction: Frka(k, x) = Fprf(k, H(xFprf(k, w))) (“compatible” CR hash function)

slide-14
SLIDE 14

Bellare-Cash Framework

Theorem (Bellare, Cash 2010)

PRF +“key transformer for Φ”+“fingerprint” → RKA-secure PRF for Φ

given φ ∈ Φ and F(k, ·), can compute F(φ(k), ·) an input w s.t. for all k and distinct φ1, φ2 ∈ Φ, F(φ1(k), w) = F(φ2(k), w) [BC10] Construction: Frka(k, x) = Fprf(k, H(xFprf(k, w))) (“compatible” CR hash function)

slide-15
SLIDE 15

Our Main Tool: Key Homomorphic PRFs [BLMR13]

For a PRF F : K × X → X:

Key Homomorphism

We say F is key homomorphic if for all inputs x and keys k1, k2, F(k1, x) + F(k2, x) = F(k1 + k2, x)

slide-16
SLIDE 16

Our Main Tool: Key Homomorphic PRFs [BLMR13]

For a PRF F : K × X → X:

Key Homomorphism

We say F is key homomorphic if for all inputs x and keys k1, k2, F(k1, x) + F(k2, x) = F(k1 + k2, x)

Key Homomorphism ⇒ Key Transformers for Linear Φ

For x and φ(k) = k + c, key transformer queries for F(k, x) and computes F(c, x) to form F(φ(k), x).

slide-17
SLIDE 17

Two Key Homomorphic PRFs [BLMR13]

◮ For integers m, n, q, p > 0, k ∈ Zn q, x ∈ {0, 1}ℓ,

A0, A1

R

← − {0, 1}m×n, pp = A0, A1, FLWE(k, x) = ℓ

  • i=1

Axi · k

  • p

◮ For integers m, q > 0, groups G1, . . . , Gℓ with a multilinear

map, K ∈ Zm×m

q

, x ∈ {0, 1}ℓ, A0, A1

R

← − {0, 1}m×m, pp = (g1)A0, (g1)A1, FDLIN(K, x) = (gℓ)K·ℓ

i=1 Axi

(here, gi is a generator for group Gi)

slide-18
SLIDE 18

Key Homomorphic PRFs + BC framework

pp = A0, A1 pp = (g1)A0, (g1)A1 FLWE(k, x) = ℓ

  • i=1

Axi · k

  • p

FDLIN(K, x) = (gℓ)K·ℓ

i=1 Axi

Theorem

Applying the BC framework to FLWE yields a PRF secure against linear* related-key attacks.

Theorem

Applying the BC framework to FDLIN yields a PRF secure against affine related-key attacks.

slide-19
SLIDE 19

Key Homomorphic PRFs + BC framework

pp = A0, A1 pp = (g1)A0, (g1)A1 FLWE(k, x) = ℓ

  • i=1

Axi · k

  • p

FDLIN(K, x) = (gℓ)K·ℓ

i=1 Axi

Theorem

Applying the BC framework to FLWE yields a PRF secure against linear* related-key attacks.

Theorem

Applying the BC framework to FDLIN yields a PRF secure against affine related-key attacks. ...what about a PRF secure against polynomial related-key attacks?

slide-20
SLIDE 20

Unique-Input Security [BC10]

F k F(φi(k), xi) xi, φi k

R

← − {0, 1}λ xi ∈ {0, 1}ℓ, φi ∈ Φ Unique-Input Security: The inputs xi are unique

slide-21
SLIDE 21

Unique-Input Security For Polynomials

pp = (g1)A0, (g1)A1 FDLIN(K, x) = (gℓ)K·ℓ

i=1 Axi

Theorem

FDLIN is a PRF secure against polynomial related-key attacks (unique-input). Open Problem: Can we show that FDLIN is secure against polynomial RKAs without the unique-input restriction?

slide-22
SLIDE 22

Our Results

Primitive Linear Affine Polynomial IBE [BCM11] [BPT12] [BPT12] Sig [BCM11] [BPT12] [BPT12] CCA-secure PKE [Wee12] [BPT12] [BPT12] CPA-secure SKE [AHI11] [GNR11] [GNR11] PRF [this work]∗ [this work] [this work]

(under LWE) (from multilinear maps)

(from mmaps, only under “unique-input” security)

slide-23
SLIDE 23

Thanks!