the collision security of tandem dm in the ideal cipher
play

The Collision Security of Tandem-DM in the Ideal Cipher Model - PowerPoint PPT Presentation

The Collision Security of Tandem-DM in the Ideal Cipher Model Jooyoung Lee 1 Martijn Stam 2 John Steinberger 3 1 Faculty of Mathematics and Statistics, Sejong University, Seoul, Korea 2 Department of Computer Science, University of Bristol,


  1. The Collision Security of Tandem-DM in the Ideal Cipher Model Jooyoung Lee 1 Martijn Stam 2 John Steinberger 3 1 Faculty of Mathematics and Statistics, Sejong University, Seoul, Korea 2 Department of Computer Science, University of Bristol, Bristol, United Kingdom 3 Institute of Theoretical Computer Science, Tsinghua University, Beijing, China August 18, 2011

  2. Tandem-DM E M E A 3 n -bit to 2 n -bit compression function making two calls to a blockcipher using 2 n -bit keys Proposed by Lai and Massey in Eurocrypt 1992 The first security proof given in FSE 2009, its extension given in ProvSec 2010

  3. Tandem-DM E M E Contribution Shows the prior proofs are flawed Presents a novel proof for the collision resistance of Tandem-DM in the ideal cipher model Mostly historical interest, rather than practical interest

  4. Ideal Cipher Model & Query History E Adversary E -1 An ideal cipher is simulated by lazy sampling The query history Q determines every evaluation of a blockcipher-based compression function

  5. Ideal Cipher Model & Query History E Adversary E -1 K 1 ,X 1 An ideal cipher is simulated by lazy sampling The query history Q determines every evaluation of a blockcipher-based compression function

  6. Ideal Cipher Model & Query History E Adversary E -1 K 1 ,X 1 $ n 1 ← { 0,1} \R Y K1 K1 ← R K1 ∪ { Y } K1 ∪ { Y 1 } R R R K1 An ideal cipher is simulated by lazy sampling The query history Q determines every evaluation of a blockcipher-based compression function

  7. Ideal Cipher Model & Query History E Adversary E -1 K 1 ,X 1 $ n 1 ← { 0,1} \R Y K1 K1 ← R K1 ∪ { Y } K1 ∪ { Y 1 } R R R K1 Y 1 An ideal cipher is simulated by lazy sampling The query history Q determines every evaluation of a blockcipher-based compression function

  8. Ideal Cipher Model & Query History E Adversary E -1 K 1 ,X 1 (X 1 ,K 1 ,Y 1 ) Y 1 An ideal cipher is simulated by lazy sampling The query history Q determines every evaluation of a blockcipher-based compression function

  9. Ideal Cipher Model & Query History E Adversary E -1 K 2 ,Y 2 (X 1 ,K 1 ,Y 1 ) An ideal cipher is simulated by lazy sampling The query history Q determines every evaluation of a blockcipher-based compression function

  10. Ideal Cipher Model & Query History E Adversary E -1 K 2 ,Y 2 (X 1 ,K 1 ,Y 1 ) $ n X 2 ← { 0,1} \D K2 D K2 ← D K2 ∪ { X 2 } D K2 ∪ { X } D K2 An ideal cipher is simulated by lazy sampling The query history Q determines every evaluation of a blockcipher-based compression function

  11. Ideal Cipher Model & Query History E Adversary E -1 K 2 ,Y 2 (X 1 ,K 1 ,Y 1 ) $ n X 2 ← { 0,1} \D K2 D K2 ← D K2 ∪ { X 2 } D K2 ∪ { X } D K2 X 2 An ideal cipher is simulated by lazy sampling The query history Q determines every evaluation of a blockcipher-based compression function

  12. Ideal Cipher Model & Query History E Adversary E -1 K 2 ,Y 2 (X 1 ,K 1 ,Y 1 ) (X 2 ,K 2 ,Y 2 ) X 2 An ideal cipher is simulated by lazy sampling The query history Q determines every evaluation of a blockcipher-based compression function

  13. Ideal Cipher Model & Query History E Adversary E -1 K 3 ,X 3 (X 1 ,K 1 ,Y 1 ) (X 2 ,K 2 ,Y 2 ) An ideal cipher is simulated by lazy sampling The query history Q determines every evaluation of a blockcipher-based compression function

  14. Ideal Cipher Model & Query History E Adversary E -1 K 3 ,X 3 $ (X 1 ,K 1 ,Y 1 ) n 3 ← { 0,1} \R Y K3 (X 2 ,K 2 ,Y 2 ) K3 ← R K3 ∪ { Y } K3 ∪ { Y 3 } R R R K3 An ideal cipher is simulated by lazy sampling The query history Q determines every evaluation of a blockcipher-based compression function

  15. Ideal Cipher Model & Query History E Adversary E -1 K 3 ,X 3 $ (X 1 ,K 1 ,Y 1 ) n 3 ← { 0,1} \R Y K3 (X 2 ,K 2 ,Y 2 ) K3 ← R K3 ∪ { Y K3 ∪ { Y } 3 } R R R K3 Y 3 An ideal cipher is simulated by lazy sampling The query history Q determines every evaluation of a blockcipher-based compression function

  16. Ideal Cipher Model & Query History E Adversary E -1 K 3 ,X 3 (X 1 ,K 1 ,Y 1 ) (X 2 ,K 2 ,Y 2 ) (X 3 K 3 Y 3 ) (X 3 ,K 3 ,Y 3 ) Y 3 An ideal cipher is simulated by lazy sampling The query history Q determines every evaluation of a blockcipher-based compression function

  17. Ideal Cipher Model & Query History E Adversary E -1 (X 1 ,K 1 ,Y 1 ) (X 2 ,K 2 ,Y 2 ) (X 3 K 3 Y 3 ) (X 3 ,K 3 ,Y 3 ) (X q K q Y (X q ,K q ,Y q ) q ) An ideal cipher is simulated by lazy sampling The query history Q determines every evaluation of a blockcipher-based compression function

  18. Ideal Cipher Model & Query History E Adversary E -1 (X 1 ,K 1 ,Y 1 ) (X 2 ,K 2 ,Y 2 ) (X 3 K 3 Y 3 ) (X 3 ,K 3 ,Y 3 ) (X q K q Y Query History Q Q (X q ,K q ,Y q ) q ) Q e Hi to An ideal cipher is simulated by lazy sampling The query history Q determines every evaluation of a blockcipher-based compression function

  19. Ideal Cipher Model & Query History E Adversary E -1 (X 1 ,K 1 ,Y 1 ) (X 2 ,K 2 ,Y 2 ) (X 3 K 3 Y 3 ) (X 3 ,K 3 ,Y 3 ) (X q K q Y Query History Q Q (X q ,K q ,Y q ) q ) Q e Hi to An ideal cipher is simulated by lazy sampling The query history Q determines every evaluation of a blockcipher-based compression function

  20. Evaluation of Tandem-DM ( A , B || L , R ) , ( B , L || R , S ) ∈ Q determine TDM E : { 0 , 1 } 3 n { 0 , 1 } 2 n − → A || B || L �− → A ⊕ R || B ⊕ S TL A R A A B L R S B S BL

  21. Collisions in Tandem-DM The goal of a collision-finding adversary A To find ( A , B || L , R ) , ( B , L || R , S ) , ( A ′ , B ′ || L ′ , R ′ ) , ( B ′ , L ′ || R ′ , S ′ ) such that A || B || L � = A ′ || B ′ || L ′ , A ⊕ R = A ′ ⊕ R ′ , B ⊕ S = B ′ ⊕ S ′ Predicate Coll ( Q ) is true if and only if such queries exist in Q TL TR A R A’ R’ A A A’ A B L R B’ L’ R’ S S S’ B S B’ S’ BL BR

  22. Collisions in Tandem-DM The goal of a collision-finding adversary A To find ( A , B || L , R ) , ( B , L || R , S ) , ( A ′ , B ′ || L ′ , R ′ ) , ( B ′ , L ′ || R ′ , S ′ ) such that A || B || L � = A ′ || B ′ || L ′ , A ⊕ R = A ′ ⊕ R ′ , B ⊕ S = B ′ ⊕ S ′ We want to upper bound Pr [ Coll ( Q )] = Adv Coll TDM E ( A ) TL TR A R A’ R’ A A A A’ B L R B’ L’ R’ S S’ S B S B’ S’ BL BR

  23. Collisions in Tandem-DM The goal of a collision-finding adversary A To find ( A , B || L , R ) , ( B , L || R , S ) , ( A ′ , B ′ || L ′ , R ′ ) , ( B ′ , L ′ || R ′ , S ′ ) such that A || B || L � = A ′ || B ′ || L ′ , A ⊕ R = A ′ ⊕ R ′ , B ⊕ S = B ′ ⊕ S ′ We want Pr [ Coll ( Q )] to be small TL TR A R A’ R’ A A A’ A B L R B’ L’ R’ S S S’ B S B’ S’ BL BR

  24. Case Analysis Coll ( Q ) ⇒ Coll 1 ( Q ) ∨ Coll 2 ( Q ) ∨ Coll 3 ( Q ) , where Coll 1 ( Q ) ⇔ Q has a collision with TL, BL, TR, BR distinct Coll 2 ( Q ) ⇔ Q has a collision with TL = BL or TR = BR Coll 3 ( Q ) ⇔ Q has a collision with TL = BR or BL = TR Ex) Coll 2 ( Q ) occurs if ( A , A || A , A ) , ( B , B || B , B ) s.t. A � = B exist TL TR 0 n 0 n A A B B A A B B A B A B 0 n 0 n BL BR

  25. Case Analysis Coll ( Q ) ⇒ Coll 1 ( Q ) ∨ Coll 2 ( Q ) ∨ Coll 3 ( Q ) , where Coll 1 ( Q ) ⇔ Q has a collision with TL, BL, TR, BR distinct Coll 2 ( Q ) ⇔ Q has a collision with TL = BL or TR = BR Coll 3 ( Q ) ⇔ Q has a collision with TL = BR or BL = TR We are going to focus on upper bounding Pr [ Coll 1 ( Q )] Ex) Coll 2 ( Q ) occurs if ( A , A || A , A ) , ( B , B || B , B ) s.t. A � = B exist TL TR 0 n 0 n A A B B A A B B A B A B 0 n 0 n BL BR

  26. Upper bounding Pr [ Coll 1 ( Q )] General Framework Upper bound the probability of Coll i 1 ( Q ) that the i -th query 1 completes a collision Union bound by summing the upper bounds over all 2 possible queries i = 1 , . . . , q (If the upper bounds are independent of each query, then we can just multiply q ) TL TR A R A’ R’ A A A’ A B L R B’ L’ R’ S S’ S B S B’ S’ BL BR

  27. Upper bounding Pr [ Coll 1 ( Q )] General Framework Upper bound the probability of Coll i 1 ( Q ) that the i -th query 1 completes a collision Union bound by summing the upper bounds over all 2 possible queries i = 1 , . . . , q (If the upper bounds are independent of each query, then we can just multiply q ) How can we upper bound Pr [ Coll i 1 ( Q )] ? TL TR A R A’ R’ A A A’ A B L R B’ L’ R’ S S’ S B S B’ S’ BL BR

  28. Upper bounding Pr [ Coll i 1 ( Q )] By symmetry, we can assume the last query is either TL or BL. The last query: TL BL Backward Case 1 Case 3 Forward Case 2 Case 4 TL TR A R A’ R’ A A A’ A B L R B’ L’ R’ S S’ S B S B’ S’ BL BR

  29. Upper bounding Pr [ Coll i 1 ( Q )] By symmetry, we can assume the last query is either TL or BL. The last query: TL BL Backward Case 1 Case 3 Forward Case 2 Case 4 Union bound Pr [ Coll i 1 ( Q )] ≤ Pr [ Case1 ] + Pr [ Case2 ] + Pr [ Case3 ] + Pr [ Case4 ] TL TR A R A’ R’ A A A’ A B L R B’ L’ R’ S S’ S B S B’ S’ BL BR

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