Computing supersingular isogenies on Kummer surfaces Craig Costello ASIACRYPT December 6, 2018 Brisbane, Australia
ECC vs. post-quantum ECC W. Castryck (GIF): https://www.esat.kuleuven.be/cosic/?p=7404
Alice 2 " -isogenies, Bob 3 $ -isogenies W. Castryck (GIF): https://www.esat.kuleuven.be/cosic/?p=7404
In a nutshell: πΉ(πΎ ( ) )
In a nutshell: πΎ , (πΎ ( )
In a nutshell: πΏ(πΎ ( )
Why go hyperelliptic? πΉ βΆ π§ 1 = π¦ 4 + β― π·: π§ 1 = π¦ 9 + β― #πΉ πΎ < β #π· πΎ < π» β π·Γπ· π» = πΉ π» = #π· 1 π» = #πΉ
Why go Kummer? πΎ(πΎ ( ) πΏ(πΎ ( ) = πΎ(πΎ ( )/β¨Β±1β© 72 equations in β @A 1 equation in β 4 β’ Genus 2 analogue of elliptic curve π¦ -line β’ Extremely efficient arithmetic
β¦ a few of my favourite thingsβ¦
From elliptic to hyperelliptic Consider πΉ/πΏ: π§ 1 = π¦ 4 + 1 π·/πΏ: π§ 1 = π¦ 9 + 1 Obvious map π βΆ π· πΏ β πΉ πΏ π¦, π§ β¦ (π¦ 1 , π§) But what about π K@ βΆ πΉ πΏ β π·(? ) β¦ 1: 2: Points on πΉ are group elements, points on π· are notβ¦ 3: Actually want map πΉ β πΎ , , but dim πΉ = 1 while dim πΎ , = 2 β¦ Want general π, π K@ between π§ 1 = π¦ 4 + π΅π¦ 1 + π¦ to π§ 1 = π¦ 9 + π΅π¦ Q + π¦ 1 ??? 4:
Proposition 1 πΎ ( ) = πΎ ( (π) with π 1 + 1 = 0 πΉ/πΎ ( ) : π§ 1 = π¦ π¦ β π½ π¦ β 1/π½ π½ = π½ X + π½ @ π with π½ X , π½ @ β πΎ ( π·/πΎ ( : π§ 1 = (π¦ 1 + ππ¦ β 1) π¦ 1 β ππ¦ β 1 π¦ 1 β πππ¦ β 1 ) ]Z \ ) K@) 1Z [ (Z [ π = Z \ , π = ) ]@) both in πΎ ( (Z [ ]Z \ Then Res πΎ a) /πΎ a (πΉ) is (2,2) -isogenous to πΎ , (πΎ ( ) ker(π) β ker πΜ β β€ 1 Γβ€ 1 π π π β πΜ = [2] Or, pictorially, πΜ
Unpacking Proposition 1 Weil restriction turns 1 equation over πΎ ( ) into two equations over πΎ ( β’ Simple linear transform of πΉ/πΎ ( ) : π§ 1 = π π¦ = π¦ 4 + π΅π¦ 1 + π¦ to β’ π l/πΎ ( ) : π§ 1 = π(π¦) such that π·/πΎ ( ) : π§ 1 = π(π¦ 1 ) is non-singular πΉ Pullback π β of π βΆ π¦, π§ β¦ (π¦ 1 , π§) gives 2 points in π· πΎ ( o , β’ π but composition with Abel-Jacobi map bring these to πΎ , (πΎ ( ) ) Need to go from πΎ , (πΎ ( ) ) to πΎ , (πΎ ( ) ; cue good old Trace map, β’ π t π: π β¦ r π(π) uβvwx(πΎ a) /πΎ a ) π βΆ Res πΎ a) /πΎ a (πΉ) β πΎ , (πΎ ( ) , π β¦ (π β π β π)(π)
Matching 2 -kernels in πΎ ( ) with (2,2) -kernels in πΎ ( πΉ β β€ ((]@) Γβ€ ((]@) πΎ , β β€ ((]@)/1 Γβ€ ((]@)/1 Γβ€ 1 Γβ€ 1 πΉ 2 β β€ 1 Γβ€ 1 πΎ , 2 β β€ 1 Γβ€ 1 Γβ€ 1 Γβ€ 1 π (0,0) β’ Fifteen (2,2) -kernels in πΎ , πΎ ( . Number of ways to split π· βs sextic into three quadratic factors. ~ β { π½, 0 , 1/π½, 0 } mma 2 : identifies π β (0,0) and Ξ₯, Ξ₯ β’ Le Lemma
Richelot isogenies in genus 2 Elliptic curve isogenies are easy/explicit/fast, thanks to VΓ©lu. But beyond elliptic curves, far from true! β’ 2,2 -isogenies in genus 2 are exception, thanks to work beginning with Richelot in 1836 β’ Lessons learned from elliptic case: β’ (1) easiest to derive explicitly when the kernel is π , i.e. the kernel we donβt want! (2) when kernel is Ξ₯ , precompose with isomorphism π β βΆ πΎ , β πΎ ,Ζ Ξ₯ β¦ π Ζ (3) π β either requires a square root, or torsion βfrom aboveβ (4) who cares about the full Jacobian group, letβs move the Kummer variety π β β π π β (Ξ₯)
Supersingular Kummer surfaces 1 β‘Λβ° : πΊ β π @ π 1 π 4 π Q = π @ 1 + π 1 1 + π 4 1 + π Q 1 β π» π @ + π 1 πΏ β,β¦,β π 4 + π Q β πΌ π @ π 1 + π 4 π Q Surface constants πΊ, π», πΌ β πΎ ( Points π @ : π 1 : π 4 : π Q β β 4 (πΎ ( ) Theta constants π @ : π 1 : 1: 1 βΌ (ππ @ : ππ 1 : π: π) Arithmetic constants π @ : π 1 : π 4 : π Q ; functions of π @ , π 1 1 : β 1 1 : β 4 1 : β Q 1 ) π: β @ : β 1 : β 4 : β Q β¦ (β @ π·: β @ : β 1 : β 4 : β Q β¦ (π @ β @ : π 1 β 1 : π 4 β 4 : π Q β Q ) πΌ: β @ : β 1 : β 4 : β Q β¦ (β @ + β 1 + β 4 + β Q : β @ +β 1 β β 4 β β Q : β @ β β 1 + β 4 β β Q : β @ β β 1 β β 4 + β Q ) Λ β πΌ β π β π· β πΌ)(π) Doubling 2 β β’ββ : π β¦ (π β π· π 2-isogeny (splitting [2] ) π Ε‘ : π β¦ (π β π· β πΌ)(π)
Kummer isogenies for non-trivial kernels ~} . Write πΌ π = π Ζ : π 1 Ζ : π 4 Ζ : π Ζ π point of order 2 on πΏ corresponding to G β {Ξ₯, Ξ₯ β’ @ Q Ζ : π 1 Ζ : π 4 Ζ : π Q Ζ π point of order 4 on πΏ such that 2 π = π . Write πΌ π = π @ β’ Ζ π @ : π 1 Ζ π 1 : π 4 Ζ π 4 : π Q Ζ π Q Define π· β’,ΕΎ βΆ π @ : π 1 : π 4 : π Q β¦ π @ β’ Ζ π Q Ζ : π Ζ π Q Ζ : π 1 Ζ π @ Ζ : π 1 Ζ π @ Ζ where π @ : π 1 : π 4 : π Q = π 1 @ Then π ΕΎ : πΏ ΕΈ< β πΏ ΕΈ< /π» , π β¦ (π β πΌ β π· β’,ΕΎ β πΌ)(π) 4M+4S+16A β’
Implications Theta constants map to theta constants: no special map needed to find image surface β’ Comparison in Table/paper very conservative. Kummer will win in aggressive impl.: β’ ) (scalars 4 x larger) - Recall Kummer over πΎ 1 \)Β‘ K@ almost as fast as FourQ over πΎ 1 \)Β‘ K@ - Recall that βdoublingβ and β2-isog. pointβ are bottlenecks in optimal tree strategy - Pushing points through 2 β for small β likely to be better on Kummer, donβt need to compute all intermediate surface constants
Related future work To use this right now, Alice need to map back-and-forth using π and πΜ . Certainly not a β’ deal-breaker! Thus, , this is a call for r skilled implementers! But ideally we want Bob to be able to use the Kummer, too! Then uncompressed β’ SIDH/SIKE can be defined as Kummer everywhere! Thus, , this is a call for r fast (π, π) -is isogenie ies on fas ast Kummers! Going further, general isogenies in Montgomery elliptic case have a nice explicit form (see β’ [C-Hisil, AsiaCryptβ17] and [Renes,PQCryptoβ18]). Thus, r fast (β, β) - , this is a call for is isogenie ies on fas ast Kummers! Gut feeling is that thereβs a better way to write down supersingular Kummers, and their β’ arithmetic. Thus, , this is a call for r smart rt geometers!
Cheers! https://eprint.iacr.org/2018/850.pdf https://www.microsoft.com/en-us/download/details.aspx?id=57309
Recommend
More recommend