efficient doubling on genus two curves over binary fields
play

Efficient Doubling on Genus Two Curves over Binary Fields (SAC - PowerPoint PPT Presentation

Efficient Doubling on Genus Two Curves over Binary Fields (SAC 2004) Marc Stevens Tanja Lange Eindhoven University Ruhr-Universitt of Technology Bochum Overview Elliptic Curves Hyperelliptic Curves HEC of Genus 2


  1. Efficient Doubling on Genus Two Curves over Binary Fields (SAC 2004) Marc Stevens Tanja Lange Eindhoven University Ruhr-Universität of Technology Bochum

  2. Overview • Elliptic Curves • Hyperelliptic Curves • HEC of Genus 2 • Comparisons

  3. Elliptic Curves • Koblitz/Miller (1985) Use additive group of points on an elliptic curve: • Smaller key sizes due to exponential discrete logarithm problem on EC (160 bit EC vs. 1024 bit RSA)

  4. Group operation over �

  5. Group operation over �

  6. Group operation over �

  7. Explicit formulae • Binary fields, Addition Doubling + y y y 1 2 1 λ = λ = + x 1 + x x x 1 2 1 2 2 ′ ′ = λ + λ + + + = λ + λ + x x x f x f 1 2 2 2 ′ ′ ′ ′ ′ ′ = + λ + + = + λ + + y ( x x ) x y y ( x x ) x y 1 1 1 1 1 inversion, 2 multiplications, 1 squaring

  8. Hyperelliptic Curves • Generalisation of Elliptic Curves For which no (x,y) � C satisfies both partial derivative equations • g is called genus • Elliptic Curves are HEC of genus 1

  9. Hyperelliptic Curve of genus 2 over �

  10. Hyperelliptic Curves • Points on the curve C do NOT form a group for genus g > 1 • Instead use Divisors: i.e. a finite formal sum of points with multiplicity

  11. Divisors • Degree of D is • Div 0 C is the group of degree zero divisors • Princ is the group of principal divisors – Divisors associated with functions Sum of intersection points of a function and curve – Subgroup of Div 0C

  12. Hyperelliptic curves • Divisors defined over � q : • Cryptographic group: Degree zero divisors modulo principal divisors Group order is about

  13. Hyperelliptic curves • Semi-reduced divisor • Divisor class has unique representative

  14. Efficient Arithmetic • Representation of the Divisor class: Mumford representation – u is monic – deg v < deg u � g =2 – u | v 2 + vh - f

  15. Connection

  16. Efficient Arithmetic • Cantor’s algorithm Input Step 1. Composition Step 2. Reduction

  17. Cantor: 1. Composition Output

  18. Cantor: 2. Reduction Output

  19. Genus 2 Explicit Formulae • Focus on binary fields • Explicit formulae avoid unnecessary calculations • Addition more complex than Elliptic Curves: – 1 inversion, 22 multiplications, 3 squarings – EC: 1 inversion, 2 multiplications, 1 squaring • Same security, half field size – 80 bit vs. EC 160 bit

  20. G2 addition & doubling • Explicit formulae for addition and doubling by Tanja Lange • Most common case for doubling: – deg u=2 – res( h, u ) ≠ 0 • Doubling general: 1 inv, 22 mul, 5 sqr • Our improvements using h 0 =0 – At worst 1 inv, 17 mul, 5 sqr – At best when h 2 =0 : 1 inv, 5 mul, 6 sqr

  21. Explicit formulae • Break down of steps in Cantor’s algorithm: Use Montgomery’s trick, Karatsuba, …

  22. G2 doubling, general

  23. G2 doubling, deg h=1 • Case • Curve transformation – h 0 = f 4 = f 1 = 0 – (1/h 1 ) ‘small’ 2 , h 1 -1 , f 3 , f 2 , f 0 • Formulas depend on h 1 , h 1 – Case h 1 =1: 6 sqr, 5 mul, 1 inv – Case 1/h 1 ‘small’: 5 sqr, 7 mul, 1 inv – Case h 1 arbitrary: 5 sqr, 9 mul, 1 inv

  24. G2 doubling, deg h =1

  25. G2 doubling, deg h=2 • Case deg h=2 • Curve transformation – h 2 = 1, f 3 = f 2 = 0 – h 0 = 0 only if h 1 =0 or Tr(h 0 /h 12 )=0 2 , f 4 • Formulas depend on h 2 , h 1 , h 1 – Case h 1 ‘small’: 1 inv, 12 mul, 6 sqr – Case h 1 arbitrary: 1 inv, 17 mul, 5 sqr – If f 4 ‘small’ then 2 mul cheap or for free

  26. G2 doubling, deg h=2

  27. Timings ,8 • m-Fold timings using a ,7 sliding window method ,6 of size 3 ,5 Mean running time x 100 (precomputes ±D, ±3D) ,4 Curves • Based on NTL library ,3 HEC deg h=2 • Timed on a ,2 EC AMD Athlon XP2500+ ,1 HEC deg h=1 122 137 149 163 178 193 202 226 131 142 157 167 181 197 214 • Curves defined over F 2 Field degree x genus

  28. The end

Recommend


More recommend