hash functions from superspecial genus 2 curves using
play

Hash functions from superspecial genus-2 curves using Richelot - PowerPoint PPT Presentation

Hash functions from superspecial genus-2 curves using Richelot isogenies Wouter Castryck, Thomas Decru , and Benjamin Smith NutMiC 2019, Paris June 24, 2019 Background 2006: hash functions based on supersingular elliptic curves (Charles,


  1. Hash functions from superspecial genus-2 curves using Richelot isogenies Wouter Castryck, Thomas Decru , and Benjamin Smith NutMiC 2019, Paris June 24, 2019

  2. Background 2006: hash functions based on supersingular elliptic curves (Charles, Goren, Lauter) 2011: key exchange protocol based on supersingular elliptic curves called SIDH (Jao, De Feo)

  3. Background 2006: hash functions based on supersingular elliptic curves (Charles, Goren, Lauter) 2011: key exchange protocol based on supersingular elliptic curves called SIDH (Jao, De Feo) 2018: hash function based on supersingular genus-2 curves (Takashima) 2019: collisions in genus-2 hash, create genus-2 SIDH (Flynn, Ti) 2019: we fix collisions and smooth out a bunch of technicalities

  4. Hash functions from expander graph Input: 110 A F E B J G I H D C

  5. Hash functions from expander graph Input: 110 A 0 1 F E B J G I H D C

  6. Hash functions from expander graph Input: 110 A F E B J G 0 1 I H D C

  7. Hash functions from expander graph Input: 110 A F E B J G I H 0 D C 1

  8. Hash functions from expander graph Input: 110; Output: H A F E B J G I H D C

  9. Supersingular ℓ -isogeny graph over F p 2 Construct the graph G ( p , ℓ ) as follows: Vertices: all supersingular elliptic curves over F p 2 up to ∼ = Edges: all ℓ -isogenies between them

  10. Supersingular ℓ -isogeny graph over F p 2 Construct the graph G ( p , ℓ ) as follows: Vertices: all supersingular elliptic curves over F p 2 up to ∼ = Edges: all ℓ -isogenies between them Some properties: Amount of vertices ∼ p / 12 Good expander graph Every node has ℓ + 1 edges

  11. = F 277 [ x ] / ( x 2 + 274 x + 5) G (277 , 2) with F 277 2 ∼ = F 277 ( a ) ∼ 235a+65 22a+60 236a+184 85a+33 244 269a+53 192a+11 271a+172 46a+100 41a+61 8a+29 6a+154 194a+39 231a+238 42a+216 60a+101 240a+27 61 195 217a+4 83a+67 255a+126 37a+193

  12. Security Problem Given two supersingular elliptic curves E and E ′ defined over F p 2 , find an ℓ k -isogeny between them.

  13. Security Problem Given two supersingular elliptic curves E and E ′ defined over F p 2 , find an ℓ k -isogeny between them. Problem Given any supersingular elliptic curve E defined over F p 2 , find a curve E ′ and two distinct isogenies of degree ℓ k and ℓ k ′ between them.

  14. General idea 2-isogenies between supersingular elliptic curves ↓ (2,2)-isogenies between principally polarized superspecial abelian surfaces

  15. Elliptic curves Definition An elliptic curve , say E , over a field K of odd characteristic, is an algebraic curve defined by an equation of the form E : y 2 = f ( x ) , where f ( x ) is a squarefree polynomial in K [ x ] of degree 3 or 4.

  16. Genus two curves Definition A hyperelliptic curve of genus two , say C , over a field K of odd characteristic, is an algebraic curve defined by an equation of the form C : y 2 = f ( x ) , where f ( x ) is a squarefree polynomial in K [ x ] of degree 5 or 6.

  17. Elliptic curves group law P P+Q -(P+Q) Q

  18. Genus two curves group law Q ? ? ? P

  19. Genus two curves group law P 1 P 2

  20. Genus two curves group law Q 2 P 1 Q 1 P 2

  21. Genus two curves group law Q 2 P 1 Q 1 P 2

  22. Genus two curves group law Q 2 -R 2 P 1 Q 1 -R 1 P 2

  23. Genus two curves group law Q 2 -R 2 R 1 P 1 Q 1 -R 1 P 2 R 2

  24. Abelian surfaces Definition An abelian surface is a two-dimensional projective algebraic variety that is also an algebraic group. Always isomorphic to one of the following: jacobian of a (hyperelliptic) genus-2 curve product of two elliptic curves

  25. Principal polarization Definition A principal polarization is an isomorphism λ from an abelian variety A to its dual, which is of the form λ L : A (¯ k ) → Pic( A ) t ∗ a L ⊗ L − 1 , �→ a for some ample sheaf L on A (¯ k ).

  26. Principal polarization Definition A principal polarization is an isomorphism λ from an abelian variety A to its dual, which is of the form ✘ ✘✘✘✘ ✘ ✘✘✘ λ L : A (¯ ✟ ✟ k ) → Pic ( A ) ✘ ✘✘✘✘✘ ✟ t ∗ a L ⊗ L − 1 , ✟ �→ ✁ a for some ample sheaf L on A (¯ k ). Read: we have equations! y 2 = a 6 x 6 + a 5 x 5 + a 4 x 4 + a 3 x 3 + a 2 x 2 + a 1 x + a 0 ( y 2 = x 3 + b 1 x + b 0 ) × ( y 2 = x 3 + c 1 x + c 0 )

  27. Supersingular elliptic curves E is supersingular iff the p -torsion of E is trivial,

  28. Supersingular elliptic curves E is supersingular iff the p -torsion of E is trivial, or End( E ) is an order in a quaternion algebra,

  29. Supersingular elliptic curves E is supersingular iff the p -torsion of E is trivial, or End( E ) is an order in a quaternion algebra, or the trace of Frobenius is divisible by p ,

  30. Supersingular elliptic curves E is supersingular iff the p -torsion of E is trivial, or End( E ) is an order in a quaternion algebra, or the trace of Frobenius is divisible by p , or the Newton polygon is a straight line segment with slope 1/2,

  31. Supersingular elliptic curves E is supersingular iff the p -torsion of E is trivial, or End( E ) is an order in a quaternion algebra, or the trace of Frobenius is divisible by p , or the Newton polygon is a straight line segment with slope 1/2, or the dual of Frobenius is purely inseparable,

  32. Supersingular elliptic curves E is supersingular iff the p -torsion of E is trivial, or End( E ) is an order in a quaternion algebra, or the trace of Frobenius is divisible by p , or the Newton polygon is a straight line segment with slope 1/2, or the dual of Frobenius is purely inseparable, or the Hasse invariant is 0, . . .

  33. Superspecial genus two curves Definition A p.p. abelian surface defined over a field with characteristic p is superspecial if the Hasse invariant is zero. Why? Finite amount ∼ p 3 / 2880 All defined over F p 2

  34. Superspecial abelian surfaces over F 13 2 J C 2 J C 1 J C 3 E × E

  35. Superspecial abelian surfaces over F 13 2 J C 2 J C 1 J C 3 { 5 , 5 }

  36. Superspecial abelian surfaces over F 13 2 (7 , 2 , 2) (2 , 6 , 5) (4 , 9 , 6) { 5 , 5 }

  37. (2 , 2)-isogenies Definition A (2 , 2) -isogeny φ is an isogeny such that ker φ ∼ = Z / 2 Z ⊕ Z / 2 Z and ker φ is maximal isotropic with regards to the 2-Weil pairing. Remark: there are 15 of these (2 , 2)-isogenies for every A , and at least 9 are to the same type of abelian surface, so J C → J C ′ or E 1 × E 2 → E ′ 1 × E ′ 2

  38. Superspecial p.p. abelian surface (2 , 2)-isogeny graph over F 13 2 5 (7 , 2 , 2) 1 4 4 6 5 9 (2 , 6 , 5) 3 2 (4 , 9 , 6) 1 2 6 2 { 5 , 5 } 10

  39. Superspecial p.p. abelian surface (2 , 2)-isogeny graph over F p 2 Isogeny graph G p : Vertices: all p.p. superspecial abelian surfaces over F p 2 up to isomorphism genus-2 curves: absolute Igusa invariants ( j 1 , j 2 , j 3 ) ∈ F 3 p 2 products of elliptic curves: j -invariants { j 1 , j 2 } ⊂ F p 2 Edges: all (2 , 2)-isogenies between them

  40. Superspecial p.p. abelian surface (2 , 2)-isogeny graph over F p 2 Isogeny graph G p : Vertices: all p.p. superspecial abelian surfaces over F p 2 up to isomorphism genus-2 curves: absolute Igusa invariants ( j 1 , j 2 , j 3 ) ∈ F 3 p 2 products of elliptic curves: j -invariants { j 1 , j 2 } ⊂ F p 2 Edges: all (2 , 2)-isogenies between them Intuitively: Interior of G p : ∼ p 3 / 2880 genus-2 curves Boundary of G p : ∼ p 2 / 288 products of elliptic curves

  41. Restrict to jacobians of genus-2 curves Ignore products of elliptic curves: O (1 / p ) chance of encountering formulas are less efficient what would output be? { j 1 , j 2 } vs ( j 1 , j 2 , j 3 )

  42. Richelot isogenies C 0 : y 2 = ( x − α 1 )( x − α 2 ) ( x − α 3 )( x − α 4 ) ( x − α 5 )( x − α 6 ) � �� � � �� � � �� � G 1 G 2 G 3

  43. Richelot isogenies C 0 : y 2 = ( x − α 1 )( x − α 2 ) ( x − α 3 )( x − α 4 ) ( x − α 5 )( x − α 6 ) � �� � � �� � � �� � G 1 G 2 G 3 Take φ 1 : J C 0 → J C 1 the (2 , 2)-isogeny with kernel { 0 , [( α 1 , 0) − ( α 2 , 0)] , [( α 3 , 0) − ( α 4 , 0)] , [( α 5 , 0) − ( α 6 , 0)] }

  44. Richelot isogenies C 0 : y 2 = ( x − α 1 )( x − α 2 ) ( x − α 3 )( x − α 4 ) ( x − α 5 )( x − α 6 ) � �� � � �� � � �� � G 1 G 2 G 3 Take φ 1 : J C 0 → J C 1 the (2 , 2)-isogeny with kernel { 0 , [( α 1 , 0) − ( α 2 , 0)] , [( α 3 , 0) − ( α 4 , 0)] , [( α 5 , 0) − ( α 6 , 0)] } � C 1 : y 2 = δ − 1 ( G ′ 2 G 3 − G 2 G ′ ( G ′ 3 G 1 − G 3 G ′ ( G ′ 1 G 2 − G 1 G ′ 3 ) 1 ) 2 ) � �� � � �� � � �� � H 1 H 2 H 3

  45. Avoiding dual isogeny Continuing with y 2 = H 1 H 2 H 3 gives the dual isogeny ˆ φ 1 and the composition is a (2 , 2 , 2 , 2)-isogeny: φ 1 A 0 A 1 ˆ φ 1

  46. Avoiding small cycles Continuing with one factor fixed, e.g. y 2 = H 1 ˜ H 2 ˜ H 3 , gives a (2 , 2)-isogeny φ 2 , with a composed (4 , 2 , 2)-isogeny: A ′ 1 φ 1 φ 2 A 0 A 1 A 2 A ′′ 1

  47. Avoiding small cycles Continuing with one factor fixed, e.g. y 2 = H 1 ˜ H 2 ˜ H 3 , gives a (2 , 2)-isogeny φ 2 , with a composed (4 , 2 , 2)-isogeny: A ′ 1 φ ′ φ ′ 1 2 φ 1 φ 2 A 0 A 1 A 2 φ ′′ φ ′′ 1 2 A ′′ 1

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