improved constructions of prfs secure against related key
play

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(


  1. Improved Constructions of PRFs Secure Against Related-Key Attacks Kevin Lewi Hart Montgomery Ananth Raghunathan Stanford University

  2. Pseudorandom Functions (PRFs) x ∈ { 0 , 1 } ℓ R k ← − K x k PRF PRF( k , x ) ≈ x Rand Rand( x )

  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 k , k + 1 , k + 2 , . . . F x F ( k + i , x )

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

  5. RKA-secure PRFs for a Class Φ [BK03] For a fixed class Φ of related-key functions φ : K → K , x ∈ { 0 , 1 } ℓ , φ ∈ Φ R k ← − K φ x , φ k PRF PRF( φ ( k ) , x ) (Φ is the class of “related-key attacks” available to the adversary)

  6. RKA-secure PRFs for a Class Φ [BK03] For a fixed class Φ of related-key functions φ : K → K , x ∈ { 0 , 1 } ℓ , φ ∈ Φ x , φ Rand Rand( φ, x ) (Φ is the class of “related-key attacks” available to the adversary)

  7. PRFs under Related-Key Attacks (Example) x ∈ { 0 , 1 } ℓ , φ ∈ Φ R k ← − K x , φ ( k ) = k ⊕ 011 φ k PRF PRF( k ⊕ 011 , x ) 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 }

  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

  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 ) = c 1 · k d + c 2 · k d − 1 + · · · + c d · k + c d +1 } c 1 ,..., c d +1 ∈ F

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

  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] [this work] ∗ PRF [this work] [this work] (under LWE) (from multilinear maps) (from mmaps, only under “unique-input” security)

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

  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: F rka ( k , x ) = F prf ( k , H ( x � F prf ( k , w ))) (“compatible” CR hash function)

  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: F rka ( k , x ) = F prf ( k , H ( x � F prf ( k , w ))) (“compatible” CR hash function)

  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 k 1 , k 2 , F ( k 1 , x ) + F ( k 2 , x ) = F ( k 1 + k 2 , x )

  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 k 1 , k 2 , F ( k 1 , x ) + F ( k 2 , x ) = F ( k 1 + k 2 , 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 ).

  17. Two Key Homomorphic PRFs [BLMR13] ◮ For integers m , n , q , p > 0, k ∈ Z n q , x ∈ { 0 , 1 } ℓ , R − { 0 , 1 } m × n , A 0 , A 1 ← � ℓ � � pp = A 0 , A 1 , F LWE ( k , x ) = A x i · k i =1 p ◮ For integers m , q > 0, groups G 1 , . . . , G ℓ with a multilinear R map, K ∈ Z m × m , x ∈ { 0 , 1 } ℓ , A 0 , A 1 − { 0 , 1 } m × m , ← q F DLIN ( K , x ) = ( g ℓ ) K · � ℓ i =1 A xi pp = ( g 1 ) A 0 , ( g 1 ) A 1 , (here, g i is a generator for group G i )

  18. Key Homomorphic PRFs + BC framework pp = ( g 1 ) A 0 , ( g 1 ) A 1 pp = A 0 , A 1 � ℓ � F DLIN ( K , x ) = ( g ℓ ) K · � ℓ i =1 A xi � F LWE ( k , x ) = A x i · k i =1 p Theorem Applying the BC framework to F LWE yields a PRF secure against linear* related-key attacks. Theorem Applying the BC framework to F DLIN yields a PRF secure against affine related-key attacks.

  19. Key Homomorphic PRFs + BC framework pp = ( g 1 ) A 0 , ( g 1 ) A 1 pp = A 0 , A 1 � ℓ � F DLIN ( K , x ) = ( g ℓ ) K · � ℓ i =1 A xi � F LWE ( k , x ) = A x i · k i =1 p Theorem Applying the BC framework to F LWE yields a PRF secure against linear* related-key attacks. Theorem Applying the BC framework to F DLIN yields a PRF secure against affine related-key attacks. ...what about a PRF secure against polynomial related-key attacks?

  20. Unique-Input Security [BC10] R x i ∈ { 0 , 1 } ℓ , φ i ∈ Φ − { 0 , 1 } λ k ← x i , φ i k F F ( φ i ( k ) , x i ) Unique-Input Security: The inputs x i are unique

  21. Unique-Input Security For Polynomials pp = ( g 1 ) A 0 , ( g 1 ) A 1 F DLIN ( K , x ) = ( g ℓ ) K · � ℓ i =1 A xi Theorem F DLIN is a PRF secure against polynomial related-key attacks (unique-input). Open Problem: Can we show that F DLIN is secure against polynomial RKAs without the unique-input restriction?

  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] [this work] ∗ PRF [this work] [this work] (under LWE) (from multilinear maps) (from mmaps, only under “unique-input” security)

  23. Thanks!

Download Presentation
Download Policy: The content available on the website is offered to you 'AS IS' for your personal information and use only. It cannot be commercialized, licensed, or distributed on other websites without prior consent from the author. To download a presentation, simply click this link. If you encounter any difficulties during the download process, it's possible that the publisher has removed the file from their server.

Recommend


More recommend