YOU ARE DOWNLOADING DOCUMENT

Please tick the box to continue:

Transcript
Page 1: Hard and easy components of collision search in the Zémor- Tillich hash function: New attacks and reduced variants with equivalent security Christophe.

Hard and easy components of collision search in the Zémor-Tillich hash function: New attacks and reduced variants with equivalent security

Christophe PetitUCL Crypto Group04/22/09 | CRYP-201

Collisions for hash functions

C. Petit, J.J. Quisquater, J.P. Tillich, G. Zémor

Page 2: Hard and easy components of collision search in the Zémor- Tillich hash function: New attacks and reduced variants with equivalent security Christophe.

2

Cryptographic hash functions

Page 3: Hard and easy components of collision search in the Zémor- Tillich hash function: New attacks and reduced variants with equivalent security Christophe.

3

Graph-based hash functions

• Most hash functions can be seen as

• While Zémor-Tillich is more like

Page 4: Hard and easy components of collision search in the Zémor- Tillich hash function: New attacks and reduced variants with equivalent security Christophe.

4

Outline

The Zémor-Tillich hash function

Introduction

New attacks

Reduced variants

Conclusion

Page 5: Hard and easy components of collision search in the Zémor- Tillich hash function: New attacks and reduced variants with equivalent security Christophe.

The Zémor-Tillich hash function

Page 6: Hard and easy components of collision search in the Zémor- Tillich hash function: New attacks and reduced variants with equivalent security Christophe.

6

The Zémor-Tillich hash function

• Introduced at CRYPTO’94 [TZ94]

• Let irreducible over with and let

• Let

• For a message

• Output set has size

Page 7: Hard and easy components of collision search in the Zémor- Tillich hash function: New attacks and reduced variants with equivalent security Christophe.

7

The Zémor-Tillich hash function

• Graph and group interpretations of main properties

• Representation problem : given a group and a set , find a product

• Balance problem : find

Page 8: Hard and easy components of collision search in the Zémor- Tillich hash function: New attacks and reduced variants with equivalent security Christophe.

8

The Zémor-Tillich hash function

• Previous cryptanalysis:– Malleability

– Invertibility for short messages [SGGB00]

– Trapdoor attacks on [CP94,AK98,SGGB00]

– Projection to finite fields [G96]

– Subgroup attacks for composite [SGGB00]

• This paper:– Generic collision and preimage subgroup attacks in time

(instead of and for birthday and exhaustive)

Page 9: Hard and easy components of collision search in the Zémor- Tillich hash function: New attacks and reduced variants with equivalent security Christophe.

New attacks

Page 10: Hard and easy components of collision search in the Zémor- Tillich hash function: New attacks and reduced variants with equivalent security Christophe.

10

Generic collision attack

• Sketch:1. Find lower triangular matrices

with meet-in-the-middle random search

2. Combine lower triangular matrices to have a lower diagonal matrix with ones in the diagonal by solving discrete logarithms

3. The resulting matrix has order 2

• In each step, we use

Page 11: Hard and easy components of collision search in the Zémor- Tillich hash function: New attacks and reduced variants with equivalent security Christophe.

11

Generic collision attack, 1st step

• If for some

Then for some

• To solve the equation:– Compute and

on various random messages

– For each obtained, store the projective point( )

– After messages, likely to be done

Page 12: Hard and easy components of collision search in the Zémor- Tillich hash function: New attacks and reduced variants with equivalent security Christophe.

12

Generic collision attack, 2nd step

• Combine triangular matrices to get a matrix with ones in the diagonal

Use

• Representation problem in finite fields:

Given find

• Equivalent to Discrete Logarithm [BM97]…that is easy here !

Page 13: Hard and easy components of collision search in the Zémor- Tillich hash function: New attacks and reduced variants with equivalent security Christophe.

13

Generic collision attack, 3d step

• For any ,

Page 14: Hard and easy components of collision search in the Zémor- Tillich hash function: New attacks and reduced variants with equivalent security Christophe.

14

Improvements

• Preimage attack: – A bit more technical, but same ideas

– Same complexity

• Memory-free versions– Transform the birthday search in the first step into a

cycle detection problem

– Use standard techniques (distinguished points,…)

Page 15: Hard and easy components of collision search in the Zémor- Tillich hash function: New attacks and reduced variants with equivalent security Christophe.

15

Hard and easy components

• Finding a message hashing to a triangular matrix is “nearly’’ as hard as Finding a message hashing to the identity

• Similarly:– Finding a message hashing to a diagonal matrix

– Given some vector , finding a message hashing to a matrix with left / right eigenvector

are nearly as hard as finding a message hashing to the identity

Page 16: Hard and easy components of collision search in the Zémor- Tillich hash function: New attacks and reduced variants with equivalent security Christophe.

16

Hard and easy components

• The output of ZT is bits while its security is bits: how to extract the secure bits ?

Page 17: Hard and easy components of collision search in the Zémor- Tillich hash function: New attacks and reduced variants with equivalent security Christophe.

Reduced variants

Page 18: Hard and easy components of collision search in the Zémor- Tillich hash function: New attacks and reduced variants with equivalent security Christophe.

18

Vectorial Zémor-Tillich

• The output of ZT is bits while its security is bits: how to extract the secure bits ?

• Vectorial version – Outputs bits

– For a given initial vector , returns

• If the initial vector is chosen randomly, just as secure as the original matrix version

Page 19: Hard and easy components of collision search in the Zémor- Tillich hash function: New attacks and reduced variants with equivalent security Christophe.

19

Equivalence between vectorial and matrix versions

• Suppose there is an algorithm finding collision for the vectorial version…

– Run it on a randomWe get where and are the ZT hash values of the colliding messages

– Run it on We get

– Repeat times

Page 20: Hard and easy components of collision search in the Zémor- Tillich hash function: New attacks and reduced variants with equivalent security Christophe.

20

Equivalence between vectorial and matrix versions

• Key observations:–

– « Homomorphism »

• To find a collision:– Let

– Find such that

Page 21: Hard and easy components of collision search in the Zémor- Tillich hash function: New attacks and reduced variants with equivalent security Christophe.

21

Equivalence between vectorial and matrix versions

• Colliding messages:–

– where if

• The two messages collide to the value

Page 22: Hard and easy components of collision search in the Zémor- Tillich hash function: New attacks and reduced variants with equivalent security Christophe.

22

Projective version

• The output of ZT is bits while its security is bits: how to extract the secure bits ?

• Projective version – Outputs bits

– Returns if the vectorial version returns

• If the initial vector is chosen randomly, « nearly » as secure as the initial matrix version

Page 23: Hard and easy components of collision search in the Zémor- Tillich hash function: New attacks and reduced variants with equivalent security Christophe.

23

« Quasi » equivalence between projective and vectorial versions

• Suppose there is an algorithm finding collision for the projective version…– Run it on to get and

– Run it on to get and

– After steps, find such that

• Complexity of last step– Hard asymptotically

( discrete logarithms problems + one subset sum problem)

– Feasible for

Page 24: Hard and easy components of collision search in the Zémor- Tillich hash function: New attacks and reduced variants with equivalent security Christophe.

Conclusion

Page 25: Hard and easy components of collision search in the Zémor- Tillich hash function: New attacks and reduced variants with equivalent security Christophe.

25

Conclusion

• New generic attacks– Collision attack in time (instead of )

– Preimage attack in time (instead of )

• New variants– Vectorial variant as secure

– Projective variant « nearly » as secure

– Best attack against projective variant is birthday search

• Zémor-Tillich is not broken– is too small

– Still a very interesting design

Page 26: Hard and easy components of collision search in the Zémor- Tillich hash function: New attacks and reduced variants with equivalent security Christophe.

Questions ?


Related Documents