isogeny-based cryptography Craig Costello Summer School on - - PowerPoint PPT Presentation

isogeny based cryptography
SMART_READER_LITE
LIVE PREVIEW

isogeny-based cryptography Craig Costello Summer School on - - PowerPoint PPT Presentation

An introduction to supersingular isogeny-based cryptography Craig Costello Summer School on Real-World Crypto and Privacy June 8, 2017 ibenik , Croatia T owards quantum-resistant cryptosystems from supersingular elliptic curve isogenies


slide-1
SLIDE 1

Craig Costello

An introduction to supersingular isogeny-based cryptography

Summer School on Real-World Crypto and Privacy June 8, 2017

Šibenik, Croatia

slide-2
SLIDE 2

https://www.microsoft.com/en-us/research/project/sidh-library/ SIDH library v2.0 Full version of Crypto’16 paper (joint with P . Longa and M. Naehrig) http://eprint.iacr.org/2016/413 Full version of Eurocrypt’17 paper (joint with D. Jao, P . Longa, M. Naehrig, D. Urbanik, J. Renes) http://eprint.iacr.org/2016/963 Preprint of recent work on flexible SIDH (joint with H. Hisil) http://eprint.iacr.org/2017/504

T

  • wards quantum-resistant cryptosystems from

supersingular elliptic curve isogenies

LUCA CA DE DE FE FEO, DAVID D JAO, JÉRÔME ME PLÛT http:/ p://ep /eprin rint.i t.iacr acr.or .org/2 /201 011/5 1/506 06

slide-3
SLIDE 3
  • W. Castryck (GIF): ”Elliptic curves are dead: long live elliptic curves” https://www.esat.kuleuven.be/cosic/?p=7404
slide-4
SLIDE 4

Part 1: Motivation Part 2: Preliminaries Part 3: SIDH

slide-5
SLIDE 5
  • Quantum computers break elliptic curves, finite

fields, factoring, everything currently used for PKC

  • Aug 2015: NSA announces plans to transition to

quantum-resistant algorithms

  • Feb 2016: NIST calls for quantum-secure
  • submissions. Deadline Nov 30, 2017

Quantum computers ↔ Cryptopocalypse

slide-6
SLIDE 6

Post-quantum key exchange

Th This is talk: lk: su supe persin singular gular is isoge genie nies

Which hard problem(s) to use now???

slide-7
SLIDE 7

Diffie-Hellman(ish) instantiations

DH DH ECDH R-LWE WE

[BCNS’15, newhope, NTRU]

LWE

[Frodo]

SIDH

[DJP14, CLN16]

elements ts integers 𝑕 modulo prime points 𝑄 in curve group elements 𝑏 in ring 𝑆 = ℤ𝑟 𝑦 /〈Φ𝑜 𝑦 〉 matrices 𝐵 in ℤ𝑟

𝑜×𝑜

curves 𝐹 in isogeny class secrets ets exponents 𝑦 scalars 𝑙 small errors 𝑡, 𝑓 ∈ 𝑆 small 𝑡, 𝑓 ∈ ℤ𝑟

𝑜

isogenies 𝜚 compu putations tations 𝑕, 𝑦 ↦ 𝑕𝑦 𝑙, 𝑄 ↦ 𝑙 𝑄 𝑏, 𝑡, 𝑓 ↦ 𝑏𝑡 + 𝑓 𝐵, 𝑡, 𝑓 ↦ 𝐵𝑡 + 𝑓 𝜚, 𝐹 ↦ 𝜚(𝐹) hard d prob

  • blem

em given 𝑕, 𝑕𝑦 find 𝑦 given 𝑄, 𝑙 𝑄 find 𝑙 given 𝑏, 𝑏𝑡 + 𝑓 find 𝑡 given 𝐵, 𝐵𝑡 + 𝑓 find 𝑡 given 𝐹, 𝜚(𝐹) find 𝜚

slide-8
SLIDE 8

Part 1: Motivation Part 2: Preliminaries Part 3: SIDH

slide-9
SLIDE 9

T

  • construct degree 𝑜 extension field 𝔾𝑟𝑜 of a finite field 𝔾𝑟, take 𝔾𝑟𝑜 = 𝔾𝑟(𝛽)

where 𝑔 𝛽 = 0 and 𝑔(𝑦) is irreducible of degree 𝑜 in 𝔾𝑟[𝑦].

Extension fields

Example: for any prime 𝑞 ≡ 3 mod 4, can take 𝔾𝑞2 = 𝔾𝑞 𝑗 where 𝑗2 + 1 = 0

slide-10
SLIDE 10
  • Recall that every elliptic curve 𝐹 over a field 𝐿 with char 𝐿 > 3 can be

defined by 𝐹 ∶ 𝑧2 = 𝑦3 + 𝑏𝑦 + 𝑐, where 𝑏, 𝑐 ∈ 𝐿, 4𝑏3 + 27𝑐2 ≠ 0

  • For any extension 𝐿′/𝐿, the set of 𝐿′-rational points forms a group with

identity

  • The 𝑘-invariant 𝑘 𝐹 = 𝑘 𝑏, 𝑐 = 1728 ⋅

4𝑏3 4𝑏3+27𝑐2 determines isomorphism

class over ഥ 𝐿

  • E.g., 𝐹′: 𝑧2 = 𝑦3 + 𝑏𝑣2𝑦 + 𝑐𝑣3 is isomorphic to 𝐹 for all 𝑣 ∈ 𝐿∗
  • Recover a curve from 𝑘: e.g., set 𝑏 = −3𝑑 and 𝑐 = 2𝑑 with 𝑑 = 𝑘/(𝑘 − 1728)

Elliptic Curves and 𝑘-invariants

slide-11
SLIDE 11

Over 𝔾13, the curves 𝐹1 ∶ 𝑧2 = 𝑦3 + 9𝑦 + 8 and 𝐹2 ∶ 𝑧2 = 𝑦3 + 3𝑦 + 5 are isomorphic, since 𝑘 𝐹1 = 1728 ⋅

4⋅93 4⋅93+27⋅82 = 3 = 1728 ⋅ 4⋅33 4⋅33+27⋅52 = 𝑘(𝐹2)

An isomorphism is given by 𝜔 ∶ 𝐹1 → 𝐹2 , 𝑦, 𝑧 ↦ 10𝑦, 5𝑧 , 𝜔−1: 𝐹2 → 𝐹1, 𝑦, 𝑧 ↦ 4𝑦, 8𝑧 , noting that 𝜔 ∞1 = ∞2

Example

slide-12
SLIDE 12
  • The multiplication-by-𝑜 map:

𝑜 ∶ 𝐹 → 𝐹, 𝑄 ↦ 𝑜 𝑄

  • The 𝑜-torsion subgroup is the kernel of 𝑜

𝐹 𝑜 = 𝑄 ∈ 𝐹 ഥ 𝐿 ∶ 𝑜 𝑄 = ∞

  • Found as the roots of the 𝑜𝑢ℎ division polynomial 𝜔𝑜
  • If char 𝐿 doesn’t divide 𝑜, then

𝐹 𝑜 ≃ ℤ𝑜 × ℤ𝑜

T

  • rsion subgroups
slide-13
SLIDE 13
  • Consider 𝐹/𝔾11: 𝑧2 = 𝑦3 + 4 with #𝐹(𝔾11) = 12
  • 3-division polynomial 𝜔3(𝑦) = 3𝑦4 + 4𝑦 partially

splits as 𝜔3 𝑦 = 𝑦 𝑦 + 3 𝑦2 + 8𝑦 + 9

  • Thus, 𝑦 = 0 and 𝑦 = −3 give 3-torsion points.

The points (0,2) and (0,9) are in 𝐹 𝔾11 , but the rest lie in 𝐹(𝔾112)

  • Write 𝔾112 = 𝔾11(𝑗) with 𝑗2 + 1 = 0.

𝜔3 𝑦 splits over 𝔾112 as 𝜔3 𝑦 = 𝑦 𝑦 + 3 𝑦 + 9𝑗 + 4 (𝑦 + 2𝑗 + 4)

  • Observe 𝐹 3

≃ ℤ3 × ℤ3 , i.e., 4 cyclic subgroups of order 3

Example (𝑜 = 3)

slide-14
SLIDE 14

Subgroup isogenies

  • Isogeny

geny: : morphism (rational map) 𝜚 ∶ 𝐹1 → 𝐹2 that preserves identity, i.e. 𝜚 ∞1 = ∞2

  • Degree of (separable) isogeny is number of elements in kernel,

same as its degree as a rational map

  • Given finite subgroup 𝐻 ∈ 𝐹1, there is a unique curve 𝐹2 and

isogeny 𝜚 ∶ 𝐹1 → 𝐹2 (up to isomorphism) having kernel 𝐻. Write 𝐹2 = 𝜚(𝐹1) = 𝐹1/〈𝐻〉.

slide-15
SLIDE 15

Subgroup isogenies: special cases

  • Isomorphisms are a special case of isogenies where the kernel is trivial

𝜚 ∶ 𝐹1 → 𝐹2, ker 𝜚 = ∞1

  • Endomorphisms are a special case of isogenies where the domain and co-

domain are the same curve 𝜚 ∶ 𝐹1 → 𝐹1, ker 𝜚 = 𝐻, |𝐻| > 1

  • Perhaps think of isogenies as a generalization of either/both: isogenies allow

non-trivial kernel and allow different domain/co-domain

  • Isogenies are *almost* isomorphisms
slide-16
SLIDE 16

Velu’s formulas

Given any finite subgroup of 𝐻 of 𝐹, we may form a qu quotient ent iso soge geny ny 𝜚: 𝐹 → 𝐹′ = 𝐹/𝐻 with kernel 𝐻 using Velu’s fo formu rmula las Example: 𝐹 ∶ 𝑧2 = (𝑦2 + 𝑐1𝑦 + 𝑐0)(𝑦 − 𝑏). The point (𝑏, 0) has order 2; the quotient of 𝐹 by 〈 𝑏, 0 〉 gives an isogeny 𝜚 ∶ 𝐹 → 𝐹′ = 𝐹/〈 𝑏, 0 〉, where 𝐹′ ∶ y2 = x3 + − 4a + 2b1 x2 + b1

2 − 4b0 x

And where 𝜚 maps 𝑦, 𝑧 to

𝑦3− 𝑏−𝑐1 𝑦2− 𝑐1𝑏−𝑐0 𝑦−𝑐0𝑏 𝑦−𝑏

,

x2− 2a x− b1a+b0 y x−a 2

slide-17
SLIDE 17

Velu’s formulas

Given curve coefficients 𝑏, 𝑐 for 𝐹, and all of the 𝑦-coordinates 𝑦𝑗 of the subgroup 𝐻 ∈ 𝐹, Velu’s formulas output 𝑏′, 𝑐′ for 𝐹′, and the map 𝜚 ∶ 𝐹 → 𝐹′, 𝑦, 𝑧 ↦

𝑔

1 𝑦,𝑧

𝑕1 𝑦,𝑧 , 𝑔

2 𝑦,𝑧

𝑕2 𝑦,𝑧

slide-18
SLIDE 18
  • Recall 𝐹/𝔾11: 𝑧2 = 𝑦3 + 4 with #𝐹(𝔾11) = 12
  • Consider 3 ∶ 𝐹 → 𝐹, the multiplication-by-3

endomorphism

  • 𝐻 = ker 3 , which is not cyclic
  • Conversely, given the subgroup 𝐻,

the unique isogeny 𝜚 with ker 𝜚 = 𝐻 turns

  • ut to be the endormorphism 𝜚 = [3]
  • But what happens if we instead take 𝐻 as one
  • f the cyclic subgroups of order 3?

𝐻 = 𝐹[3] Example, cont.

slide-19
SLIDE 19

Example, cont. 𝐹/𝔾11: 𝑧2= 𝑦3 + 4

𝜚2 𝜚4 𝜚1 𝜚3

𝐹2/𝔾11: 𝑧2= 𝑦3 + 5𝑦 𝐹4/𝔾112: 𝑧2= 𝑦3 + (4𝑗 + 3)𝑦 𝐹1/𝔾11: 𝑧2= 𝑦3 + 2 𝐹3/𝔾112: 𝑧2= 𝑦3 + 7𝑗 + 3 𝑦

𝐹1,𝐹2,𝐹3,𝐹4 all 3-isogenous to 𝐹, but what’s the relation to each other?

slide-20
SLIDE 20
  • Fact 1: 𝐹1 and 𝐹2 iso

somorphic

  • rphic iff 𝑘 𝐹1 = 𝑘(𝐹2)
  • Fact 2: 𝐹1 and 𝐹2 iso

sogenous enous iff #𝐹1 = #𝐹2 (T ate)

  • Fact 3: 𝑟 + 1 − 2 𝑟 ≤ #𝐹 𝔾𝑟 ≤ 𝑟 + 1 + 2 𝑟 (Hasse)

Upshot for fixed 𝑟 𝑃 𝑟 isogeny classes 𝑃(𝑟) isomorphism classes

Isomorphisms and isogenies

slide-21
SLIDE 21
  • 𝐹/𝔾𝑟 with 𝑟 = 𝑞𝑜 supersingular iff 𝐹 𝑞 = {∞}
  • Fact: all supersingular curves can be defined over 𝔾𝑞2
  • Let 𝑇𝑞2 be the set of supersingular 𝑘-invariants

Supersingular curves

Theorem: #𝑇𝑞2 =

𝑞 12 + 𝑐, 𝑐 ∈ {0,1,2}

slide-22
SLIDE 22
  • We are interested in the set of supersingular curves (up to isomorphism)
  • ver a specific field
  • Thm (Mestre): all supersingular curves over 𝔾𝑞2 in same isogeny class
  • Fact (see previous slides): for every prime ℓ not dividing 𝑞, there exists

ℓ + 1 isogenies of degree ℓ originating from any supersingular curve

The supersingular isogeny graph

Upshot: immediately leads to (ℓ + 1) directed regular graph 𝑌(𝑇𝑞2, ℓ)

slide-23
SLIDE 23
  • Let 𝑞 = 241, 𝔾𝑞2 = 𝔾𝑞 𝑥 = 𝔾𝑞 𝑦 /(𝑦2 − 3𝑦 + 7)
  • #𝑇𝑞2 = 20
  • 𝑇𝑞2 = {93, 51𝑥 + 30, 190𝑥 + 183, 240, 216, 45𝑥 + 211, 196𝑥 +

105, 64, 155𝑥 + 3, 74𝑥 + 50, 86𝑥 + 227, 167𝑥 + 31, 175𝑥 + 237, 66𝑥 + 39, 8, 23𝑥 + 193, 218𝑥 + 21, 28, 49𝑥 + 112, 192𝑥 + 18}

E.g. a supersingular isogeny graph

Credit to Fre Vercauteren for example and pictures…

slide-24
SLIDE 24

Supersingular isogeny graph for ℓ = 2: 𝑌(𝑇2412,2)

slide-25
SLIDE 25

Supersingular isogeny graph for ℓ = 3: 𝑌(𝑇2412,3)

slide-26
SLIDE 26

Rapid id mi mixi xing g proper perty: ty: Let 𝑇 be any subset of the vertices of the graph 𝐻, and 𝑦 be any vertex in 𝐻. A “long enough” random walk will land in 𝑇 with probability at least 𝑇

2|𝐻|.

Supersingular isogeny graphs are Ramanujan graphs

See De Feo, Jao, Plut (Prop 2.1) for precise formula describing what’s “long enough”

slide-27
SLIDE 27

Part 1: Motivation Part 2: Preliminaries Part 3: SIDH

slide-28
SLIDE 28

SIDH: history

  • 1999:

99: Couveignes gives talk “Hard homogenous spaces” (eprint.iacr.org/2006/291)

  • 2006

006 (OID IDH) H): Rostovsev and Stolbunov propose ordinary isogeny DH

  • 2010

10 (OID IDH H break) eak): Childs-Jao-Soukharev give quantum subexponential alg.

  • 2011

11 (SID IDH) H): Jao and De Feo fix by choosing supersingular curves

Cr Crucial cial dif iffer ferenc ence: e: supersingular (i.e., non-ordinary) endomorphism ring is not commutative (resists above attack)

slide-29
SLIDE 29
slide-30
SLIDE 30
  • W. Castryck (GIF): ”Elliptic curves are dead: long live elliptic curves” https://www.esat.kuleuven.be/cosic/?p=7404
slide-31
SLIDE 31

𝐹0 𝐹𝐵 = 𝐹0/〈𝐵〉 𝐹0/〈𝐶〉 = 𝐹𝐶 𝐹𝐵𝐶 = 𝐹0/〈𝐵, 𝐶〉

𝜚𝐵 𝜚𝐶 𝜚𝐵′ 𝜚𝐶

params public private 𝐹’s are isogenous curves 𝑄’s, 𝑅’s, 𝑆’s, 𝑇’s are points

SIDH: in a nutshell

slide-32
SLIDE 32

𝐹0 𝐹𝐵 = 𝐹0/〈𝑄

𝐵 + 𝑡𝐵 𝑅𝐵〉

𝐹0/〈𝑄𝐶 + 𝑡𝐶 𝑅𝐶〉 = 𝐹𝐶 𝐹𝐵𝐶 = 𝐹0/〈𝐵, 𝐶〉

𝜚𝐵 𝜚𝐶 𝜚𝐵′ 𝜚𝐶

params public private 𝐹’s are isogenous curves 𝑄’s, 𝑅’s, 𝑆’s, 𝑇’s are points

SIDH: in a nutshell

(𝜚𝐶(𝑄

𝐵), 𝜚𝐶(𝑅𝐵)) = (𝑆𝐶, 𝑇𝐶)

(𝑆𝐵, 𝑇𝐵) = (𝜚𝐵(𝑄𝐶), 𝜚𝐵(𝑅𝐶))

𝐹𝐵/〈𝑆𝐵 + 𝑡𝐶 𝑇𝐵〉 ≅ 𝐹0/〈𝑄

𝐵 + 𝑡𝐵 𝑅𝐵 , 𝑄𝐶 + 𝑡𝐶 𝑅𝐶〉 ≅ 𝐹𝐶/〈𝑆𝐶 + 𝑡𝐵 𝑇𝐶〉

Key: : Alice sends her isogeny evaluated at Bob’s generators, and vice versa

slide-33
SLIDE 33
  • Why 𝐹′ = 𝐹/〈𝑄 + 𝑡 𝑅〉 , etc?
  • Why not just 𝐹′ = 𝐹/〈 𝑡 𝑅〉 ?...

because here 𝐹′ is ≈ independent of 𝑡

  • Need two-dimensional basis to span

two-dimensional torsion

  • Every different 𝑡 now gives a different
  • rder 𝑜 subgroup, i.e., kernel, i.e. isogeny
  • Composite same thing, just uglier picture

𝐹 𝑜 ≅ ℤ𝑜 × ℤ𝑜

(𝑜 prime depicted below) 𝑜 + 1 cyclic subgroups order n

𝑄 [𝑡]𝑅 𝑅

slide-34
SLIDE 34
  • Why 𝐹′ = 𝐹/〈𝑄 + 𝑡 𝑅〉 , etc?
  • Why not just 𝐹′ = 𝐹/〈 𝑡 𝑅〉 ?...

because here 𝐹′ is ≈ independent of 𝑡

  • Need two-dimensional basis to span

two-dimensional torsion

  • Every different 𝑡 now gives a different
  • rder 𝑜 subgroup, i.e., kernel, i.e. isogeny
  • Composite same thing, just uglier picture

𝐹 𝑜 ≅ ℤ𝑜 × ℤ𝑜

(𝑜 prime depicted below) 𝑜 + 1 cyclic subgroups order n

𝑄 [𝑡]𝑅 𝑅

slide-35
SLIDE 35
  • Why 𝐹′ = 𝐹/〈𝑄 + 𝑡 𝑅〉 , etc?
  • Why not just 𝐹′ = 𝐹/〈 𝑡 𝑅〉 ?...

because here 𝐹′ is ≈ independent of 𝑡

  • Need two-dimensional basis to span

two-dimensional torsion

  • Every different 𝑡 now gives a different
  • rder 𝑜 subgroup, i.e., kernel, i.e. isogeny
  • Composite same thing, just uglier picture

𝐹 𝑜 ≅ ℤ𝑜 × ℤ𝑜

(𝑜 prime depicted below) 𝑜 + 1 cyclic subgroups order n

𝑄 [𝑡]𝑅 𝑅

slide-36
SLIDE 36
  • Why 𝐹′ = 𝐹/〈𝑄 + 𝑡 𝑅〉 , etc?
  • Why not just 𝐹′ = 𝐹/〈 𝑡 𝑅〉 ?...

because here 𝐹′ is ≈ independent of 𝑡

  • Need two-dimensional basis to span

two-dimensional torsion

  • Every different 𝑡 now gives a different
  • rder 𝑜 subgroup, i.e., kernel, i.e. isogeny
  • Composite same thing, just uglier picture

𝐹 𝑜 ≅ ℤ𝑜 × ℤ𝑜

(𝑜 prime depicted below) 𝑜 + 1 cyclic subgroups order n

𝑄 𝑅

slide-37
SLIDE 37
  • Computing isogenies of prime degree ℓ at least 𝑃 ℓ , e.g., Velu’s

formulas need the whole kernel specified

  • We (obviously) need exp. set of kernels, meaning exp. sized

isogenies, which we can’t compute unless they’re smooth

  • Here (for efficiency/ease) we will only use isogenies of degree ℓ𝑓

for ℓ ∈ {2,3}

Exploiting smooth degree isogenies

slide-38
SLIDE 38

Exploiting smooth degree isogenies

(credit DJP’14 for picture, and for a much better way to traverse the tree)

  • Suppose our secret point 𝑆0 has order ℓ5 with,

e.g., ℓ ∈ {2,3}, we need 𝜚 ∶ 𝐹 → 𝐹/〈𝑆0〉

  • Could compute all ℓ5 elements in kernel

(but only because exp is 5)

  • Better to factor 𝜚 = 𝜚4𝜚3𝜚2𝜚1𝜚0,

where all 𝜚𝑗 have degree ℓ, and

𝜚0 = 𝐹0 → 𝐹0/〈 ℓ4 𝑆0〉 , 𝑆1 = 𝜚0 𝑆0 ; 𝜚1 = 𝐹1 → 𝐹1/〈 ℓ3 𝑆1〉 , 𝑆2 = 𝜚1(𝑆1); 𝜚2 = 𝐹2 → 𝐹2/〈 ℓ2 𝑆2〉 , 𝑆3 = 𝜚2(𝑆2); 𝜚3 = 𝐹3 → 𝐹3/〈 ℓ1 𝑆3〉 , 𝑆4 = 𝜚3(𝑆3); 𝜚4 = 𝐹4 → 𝐹4/〈𝑆4〉 .

slide-39
SLIDE 39

SIDH: security

  • Se

Setting ting: : supersingular elliptic curves 𝐹/𝔾𝑞2 where 𝑞 is a large prime

  • Hard

d pr problem blem: Given 𝑄, 𝑅 ∈ 𝐹 and 𝜚 𝑄 , 𝜚 𝑅 ∈ 𝜚(𝐹), compute 𝜚 (where 𝜚 has fixed, smooth, public degree)

  • Be

Best st (kno nown) n) attac tacks ks: classical 𝑃(𝑞1/4) and quantum 𝑃(𝑞1/6)

  • Confidence:

nfidence: above complexities are optimal for (above generic) claw attack

slide-40
SLIDE 40

𝑞 = 23723239 − 1

(Our) parameters

𝑞 ≈ 2768 gives ≈ 192 bits clas assical sical and 128 bits quantum um security against best known attacks

𝐹0 /𝔾𝑞2 ∶ 𝑧2 = 𝑦3 + 𝑦 #𝐹0 = 𝑞 + 1 2 = 23723239 2

Easy ECDLP

𝑄

𝐵, 𝑄𝐶 ∈ 𝐹0 𝔾𝑞 , 𝑅𝐵 = 𝜐 𝑄 𝐵 , 𝑅𝐶 = 𝜐 𝑄𝐶

PK = 𝑦 𝑄 , 𝑦 𝑅 , 𝑦 𝑅 − 𝑄 ∈ 𝔾𝑞2

3

564 bytes 376 bytes

params public private

48 bytes

𝑡𝐵, 𝑡𝐶 ∈ ℤ

188 bytes

𝑘(𝐹𝐵𝐶) ∈ 𝔾𝑞2

slide-41
SLIDE 41

𝐹a,b ∶ 𝑐𝑧2 = 𝑦3 + 𝑏𝑦2 + 𝑦

Point and isogeny arithmetic in ℙ1

𝐹(A:B:C) ∶ 𝐶𝑍2𝑎 = 𝐷𝑌3 + 𝐵𝑌2𝑎 + 𝐷𝑌𝑎2 𝑦, 𝑧 ↔ (𝑌 ∶ 𝑍 ∶ 𝑎) 𝑏, 𝑐 ↔ (𝐵 ∶ 𝐶 ∶ 𝐷) ℙ1 point arithmetic (Montgomery): 𝑌 ∶ 𝑎 ↦ (𝑌′: 𝑎′) ℙ1 isogeny arithmetic (this work): 𝐵 ∶ 𝐷 ↦ 𝐵′: 𝐷′ ECDH: move around different points on a fixed curve. SIDH: move around different points and different curves

The Montgomery 𝐶 coefficient only fixes the quadratic

  • twist. Can ignore it

in SIDH since 𝑘 𝐹 = 𝑘(𝐹′)

slide-42
SLIDE 42

Performance

comparison

  • ur work

prior work public key size (bytes) uncompressed 564 768 compressed 330 385 uncompressed speed (cc x 106) Alice total 90 267 Bob total 102 274 compressed speed (cc x 106) Alice total 239 6887 Bob total 263 8514

(see papers for references and benchmarking details)

slide-43
SLIDE 43

SIDH vs. lattice “DH” primitives

T able le: ms for full DH round (Alice + Bob) on 2.6GHz Intel Xeon i5 (Sandy Bridge) See “Frodo” for benchmarking details.

Name Primitive Full DH (ms) PK size (bytes) Frodo LWE 2.600 11,300 NewHope R-LWE 0.310 1,792 NTRU NTRU 2.429 1,024 SIDH Supersingular Isogeny 900 564

All numbers above are for plain C implementations (e.g., SIDH w. assembly optimizations is 56ms)

slide-44
SLIDE 44

Compressed SIDH vs. lattice “DH” primitives

Name Primitive Full DH (ms) PK size (bytes) Frodo LWE 2.600 11,300 NewHope R-LWE 0.310 1,792 NTRU NTRU 2.429 1,024 SIDH Supersingular Isogeny ≈ 2390 330

Compr mpressed essed SIDH DH roughly ghly 2-3 slowe wer th than n uncom compr pressed ssed SIDH. DH.

slide-45
SLIDE 45

Further topics and recent work…

slide-46
SLIDE 46
  • Issues regarding public key validation: Asiacrypt2016 paper by

Galbraith-Petit-Shani-Ti

  • NSA countermeasure: “Failure is not an option: standardization

issues for PQ key agreement”

  • Thus, library currently supports ephemeral DH only
  • But all PQ key establishment (codes, lattice) suffer from this

Validating public keys

slide-47
SLIDE 47
  • No clear frontrunner for PQ key exchange
  • Hybrid particularly good idea for (relatively young) SIDH
  • Hybrid particularly easy for SIDH

BigMont: a strong SIDH+ECDH hybrid

There are exponentially many 𝐵 such that 𝐹𝐵 /𝔾𝑞2: 𝑧2 = 𝑦3 + 𝐵𝑦2 + 𝑦 is in the supersingular isogeny class. These are all unsuitable for ECDH. There are also exponentially many 𝐵 such that 𝐹𝐵 /𝔾𝑞2: 𝑧2 = 𝑦3 + 𝐵𝑦2 + 𝑦 is suitable for ECDH, e.g. 𝐵 = 624450.

slide-48
SLIDE 48

SIDH vs. SIDH+ECDH hybrid

comparison SIDH SIDH+ECDH bit security (hard problem) classical 192 (SSDDH) 384 (ECDHP) quantum 128 (SSDDH) 128 (SSDDH) public key size (bytes) 564 658 Speed (cc x 106) Alice key gen. 46 52 Bob key gen. 52 58 Alice shared sec. 44 50 Bob shared sec. 50 57

Colossal amount of classical security almost-for-free (≈ no more code)

slide-49
SLIDE 49

C-Hisil: For odd order ℓ = 2𝑒 + 1 point 𝑄 on Montgomery curve 𝐹, map 𝜚 ∶ 𝐹 → 𝐹′, 𝑦, 𝑧 ↦ (𝜚𝑦 𝑦 , 𝑧 ⋅ 𝜚𝑦

′ 𝑦 )

Simple, compact, (relatively) efficient isogenies of arbitrary degree

with 𝜚𝑦 𝑦 = 𝑦 ⋅ ෑ

1≤𝑗≤𝑒

𝑦 ⋅ 𝑦 𝑗 𝑄 − 1 𝑦 − 𝑦 𝑗 𝑄

2

is ℓ-isogeny with ker 𝜚 = ⟨𝑄⟩, and moreover, 𝐹′ is Montgomery curve.

slide-50
SLIDE 50

Need not have 𝑞 = 2𝑗3𝑘 − 1, can easily implement 𝑞 = ∏𝑟𝑗

𝑛𝑗 ⋅ ∏𝑠 𝑘 𝑜𝑘 − 1

with gcd ∏𝑟𝑗, ∏𝑠

𝑘 = 1

Arbitrary degree isogenies

slide-51
SLIDE 51

Questions?