+ All Categories
Home > Documents > Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn,...

Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn,...

Date post: 05-Jul-2020
Category:
Upload: others
View: 0 times
Download: 0 times
Share this document with a friend
108
Introduction to Isogeny-based Cryptography Chloe Martindale Lorenz Panny Technische Universiteit Eindhoven SIAM-AG, Bern, Switzerland, 10 July 2019
Transcript
Page 1: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

Introduction to Isogeny-based Cryptography

Chloe Martindale Lorenz Panny

Technische Universiteit Eindhoven

SIAM-AG, Bern, Switzerland, 10 July 2019

Page 2: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

Why Isogeny-Based Crypto?

The discrete logarithm problem (DLP) is a fundamentalbuilding block in crypto:

The DLP:Let G be a group. For g ∈ G and n ∈ Z, given g and gn, find n.

I In crypto, we use G where the DLP is (sub-)exponentiallyharder than computing gn.

I Shor’s algorithm makes the DLP only polynomially harderthan computing gn for any group G – with a quantumcomputer.

One solution: Isogeny-based cryptography.

1 / 31

Page 3: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

Why Isogeny-Based Crypto?

The discrete logarithm problem (DLP) is a fundamentalbuilding block in crypto:

The DLP:Let G be a group. For g ∈ G and n ∈ Z, given g and gn, find n.

I In crypto, we use G where the DLP is (sub-)exponentiallyharder than computing gn.

I Shor’s algorithm makes the DLP only polynomially harderthan computing gn for any group G – with a quantumcomputer.

One solution: Isogeny-based cryptography.

1 / 31

Page 4: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

Why Isogeny-Based Crypto?

The discrete logarithm problem (DLP) is a fundamentalbuilding block in crypto:

The DLP:Let G be a group. For g ∈ G and n ∈ Z, given g and gn, find n.

I In crypto, we use G where the DLP is (sub-)exponentiallyharder than computing gn.

I Shor’s algorithm makes the DLP only polynomially harderthan computing gn for any group G – with a quantumcomputer.

One solution: Isogeny-based cryptography.

1 / 31

Page 5: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

Why Isogeny-Based Crypto?

The discrete logarithm problem (DLP) is a fundamentalbuilding block in crypto:

The DLP:Let G be a group. For g ∈ G and n ∈ Z, given g and gn, find n.

I In crypto, we use G where the DLP is (sub-)exponentiallyharder than computing gn.

I Shor’s algorithm makes the DLP only polynomially harderthan computing gn for any group G – with a quantumcomputer.

One solution: Isogeny-based cryptography.

1 / 31

Page 6: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

Fundamentals: elliptic curvesDefinitionLet k be a field of characteristic 6= 2. An elliptic curve over k is asmooth1 curve

E/k : y2 = f (x),

where f (x) ∈ k[x] is of degree 3.

1No self-intersections or cusps.2 / 31

Page 7: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

Fundamentals: the group law on elliptic curves

I For any field k, the k-rational points2 of E form a group,written E(k).

The group identity P∞, the ‘point at infinity’, lies on everyvertical line.

2solutions to the equation y2 = f (x), or the ‘point at infinity’ P∞3 / 31

Page 8: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

Fundamentals: the group law on elliptic curves

I For any field k, the k-rational points2 of E form a group,written E(k).

The group identity P∞, the ‘point at infinity’, lies on everyvertical line.

2solutions to the equation y2 = f (x), or the ‘point at infinity’ P∞3 / 31

Page 9: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

Fundamentals: the group law on elliptic curves

I For any field k, the k-rational points2 of E form a group,written E(k).

The group identity P∞, the ‘point at infinity’, lies on everyvertical line.

2solutions to the equation y2 = f (x), or the ‘point at infinity’ P∞3 / 31

Page 10: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

Fundamentals: the group law on elliptic curves

I For any field k, the k-rational points2 of E form a group,written E(k).

The group identity P∞, the ‘point at infinity’, lies on everyvertical line.

2solutions to the equation y2 = f (x), or the ‘point at infinity’ P∞3 / 31

Page 11: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

Fundamentals: the group law on elliptic curves

I For any field k, the k-rational points2 of E form a group,written E(k).

The group identity P∞, the ‘point at infinity’, lies on everyvertical line.

2solutions to the equation y2 = f (x), or the ‘point at infinity’ P∞3 / 31

Page 12: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

Fundamentals: the group law on elliptic curves

I For any field k, the k-rational points2 of E form a group,written E(k).

The group identity P∞, the ‘point at infinity’, lies on everyvertical line.

2solutions to the equation y2 = f (x), or the ‘point at infinity’ P∞3 / 31

Page 13: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

Fundamentals: Elliptic curves

Especially important for isogeny-based crypto:

DefinitionLet E/Fq be an elliptic curve, with q = pn.E is supersingular if p | (q + 1−#E(Fq)).Otherwise E is ordinary.

Important special cases:I When E/Fp supersingular and #E(Fp) = p + 1.I When E/Fp2 supersingular and #E(Fp2) = (p + 1)2.

ExampleDefine E/F5 : y2 = x3 + 1. Then

E(F5) = {(0, 1), (0,−1), (2, 3), (2,−3), (−1, 0),P∞},

so E/F5 is supersingular.

4 / 31

Page 14: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

Fundamentals: Elliptic curves

Especially important for isogeny-based crypto:

DefinitionLet E/Fq be an elliptic curve, with q = pn.E is supersingular if p | (q + 1−#E(Fq)).Otherwise E is ordinary.Important special cases:

I When E/Fp supersingular and #E(Fp) = p + 1.I When E/Fp2 supersingular and #E(Fp2) = (p + 1)2.

ExampleDefine E/F5 : y2 = x3 + 1. Then

E(F5) = {(0, 1), (0,−1), (2, 3), (2,−3), (−1, 0),P∞},

so E/F5 is supersingular.

4 / 31

Page 15: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

Fundamentals: Elliptic curves

Especially important for isogeny-based crypto:

DefinitionLet E/Fq be an elliptic curve, with q = pn.E is supersingular if p | (q + 1−#E(Fq)).Otherwise E is ordinary.Important special cases:

I When E/Fp supersingular and #E(Fp) = p + 1.I When E/Fp2 supersingular and #E(Fp2) = (p + 1)2.

ExampleDefine E/F5 : y2 = x3 + 1. Then

E(F5) = {(0, 1), (0,−1), (2, 3), (2,−3), (−1, 0),P∞},

so E/F5 is supersingular.

4 / 31

Page 16: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

Fundamentals: Isogenies of elliptic curves

DefinitionAn isogeny of elliptic curves over k is a non-zero morphismE→ E′ with finite kernel. It is given by rational maps.

ExampleDefine E51/F419 : y2 = x3 + 51x2 + x

[2] : E51 → E51(x, y) 7→ 2 · (x, y) := (x, y) + (x, y)

I Composing-an-element-with-itself is a morphism for anyabelian variety. Also: it induces a morphism of groups.

I Explicit calculations show that:

[2] : E51 → E51

(x, y) 7→( 1

2 x4−18x3−163x2−18x+ 12

8x(x2+9x+1) ,y(x6+18x5+5x4−5x2−18x−1)

(8x(x2+9x+1))2

).

5 / 31

Page 17: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

Fundamentals: Isogenies of elliptic curves

DefinitionAn isogeny of elliptic curves over k is a non-zero morphismE→ E′ with finite kernel. It is given by rational maps.

ExampleDefine E51/F419 : y2 = x3 + 51x2 + x

[2] : E51 → E51(x, y) 7→ 2 · (x, y) := (x, y) + (x, y)

I Composing-an-element-with-itself is a morphism for anyabelian variety. Also: it induces a morphism of groups.

I Explicit calculations show that:

[2] : E51 → E51

(x, y) 7→( 1

2 x4−18x3−163x2−18x+ 12

8x(x2+9x+1) ,y(x6+18x5+5x4−5x2−18x−1)

(8x(x2+9x+1))2

).

5 / 31

Page 18: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

Fundamentals: Isogenies of elliptic curves

DefinitionAn isogeny of elliptic curves over k is a non-zero morphismE→ E′ with finite kernel. It is given by rational maps.

ExampleDefine E51/F419 : y2 = x3 + 51x2 + x

[2] : E51 → E51(x, y) 7→ 2 · (x, y) := (x, y) + (x, y)

I Composing-an-element-with-itself is a morphism for anyabelian variety. Also: it induces a morphism of groups.

I Explicit calculations show that:

[2] : E51 → E51

(x, y) 7→( 1

2 x4−18x3−163x2−18x+ 12

8x(x2+9x+1) ,y(x6+18x5+5x4−5x2−18x−1)

(8x(x2+9x+1))2

).

5 / 31

Page 19: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

Fundamentals: Isogenies of elliptic curves

DefinitionAn isogeny of elliptic curves over k is a non-zero morphismE→ E′ with finite kernel. It is given by rational maps.

ExampleDefine E51/F419 : y2 = x3 + 51x2 + x

[2] : E51 → E51(x, y) 7→ 2 · (x, y) := (x, y) + (x, y)

I Composing-an-element-with-itself is a morphism for anyabelian variety. Also: it induces a morphism of groups.

I Explicit calculations show that:

[2] : E51 → E51

(x, y) 7→( 1

2 x4−18x3−163x2−18x+ 12

8x(x2+9x+1) ,y(x6+18x5+5x4−5x2−18x−1)

(8x(x2+9x+1))2

).

5 / 31

Page 20: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

Fundamentals: Isogenies of elliptic curves

DefinitionAn isogeny of elliptic curves over k is a non-zero morphismE→ E′ with finite kernel. It is given by rational maps.

ExampleDefine EA/F419 : y2 = x3 + Ax2 + x

I A less obvious isogeny:

f : E51 → E9

(x, y) 7→(

x3−183x2+73x+30(x+118)2 , y x3−65x2−104x+174

(x+118)3

).

I ker(f ) = {(−118, 51), (−118,−51),P∞}

6 / 31

Page 21: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

Fundamentals: Isogenies of elliptic curves

DefinitionAn isogeny of elliptic curves over k is a non-zero morphismE→ E′ with finite kernel. It is given by rational maps.

ExampleDefine EA/F419 : y2 = x3 + Ax2 + x

I A less obvious isogeny:

f : E51 → E9

(x, y) 7→(

x3−183x2+73x+30(x+118)2 , y x3−65x2−104x+174

(x+118)3

).

I ker(f ) = {(−118, 51), (−118,−51),P∞}

6 / 31

Page 22: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

Fundamentals: Isogenies of elliptic curves

DefinitionAn isogeny of elliptic curves over k is a non-zero morphismE→ E′ with finite kernel. It is given by rational maps.

ExampleDefine EA/F419 : y2 = x3 + Ax2 + x

I A less obvious isogeny:

f : E51 → E9

(x, y) 7→(

x3−183x2+73x+30(x+118)2 , y x3−65x2−104x+174

(x+118)3

).

I ker(f ) = {(−118, 51), (−118,−51),P∞}

6 / 31

Page 23: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

Fundamentals: Isogenies of elliptic curves

DefinitionAn isogeny of elliptic curves over k is a non-zero morphismE→ E′ with finite kernel. It is given by rational maps.

ExampleDefine EA/F419 : y2 = x3 + Ax2 + x

I A less obvious isogeny:

f : E51 → E9

(x, y) 7→(

x3−183x2+73x+30(x+118)2 , y x3−65x2−104x+174

(x+118)3

).

I ker(f ) = {(−118, 51), (−118,−51),P∞}

6 / 31

Page 24: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

Fundamentals: Isogenies of elliptic curves

DefinitionLet E,E′/Fq be elliptic curves and let ` ∈ Z>0 be coprime to q.An `-isogeny f : E→ E′ is an isogeny with # ker(f ) = `.

I Our example f : E51 → E9 over F419 was a 3-isogeny.I Fact: an isogeny is uniquely determined by its kernel

(up to isomorphism).I Write ϕG : E→ E/G for the isogeny from E with kernel G.I Vélu’s formulas compute the `-isogeny from its kernel in

time Θ(`).

7 / 31

Page 25: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

Fundamentals: Isogenies of elliptic curves

DefinitionLet E,E′/Fq be elliptic curves and let ` ∈ Z>0 be coprime to q.An `-isogeny f : E→ E′ is an isogeny with # ker(f ) = `.

I Our example f : E51 → E9 over F419 was a 3-isogeny.

I Fact: an isogeny is uniquely determined by its kernel(up to isomorphism).

I Write ϕG : E→ E/G for the isogeny from E with kernel G.I Vélu’s formulas compute the `-isogeny from its kernel in

time Θ(`).

7 / 31

Page 26: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

Fundamentals: Isogenies of elliptic curves

DefinitionLet E,E′/Fq be elliptic curves and let ` ∈ Z>0 be coprime to q.An `-isogeny f : E→ E′ is an isogeny with # ker(f ) = `.

I Our example f : E51 → E9 over F419 was a 3-isogeny.I Fact: an isogeny is uniquely determined by its kernel

(up to isomorphism).

I Write ϕG : E→ E/G for the isogeny from E with kernel G.I Vélu’s formulas compute the `-isogeny from its kernel in

time Θ(`).

7 / 31

Page 27: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

Fundamentals: Isogenies of elliptic curves

DefinitionLet E,E′/Fq be elliptic curves and let ` ∈ Z>0 be coprime to q.An `-isogeny f : E→ E′ is an isogeny with # ker(f ) = `.

I Our example f : E51 → E9 over F419 was a 3-isogeny.I Fact: an isogeny is uniquely determined by its kernel

(up to isomorphism).I Write ϕG : E→ E/G for the isogeny from E with kernel G.

I Vélu’s formulas compute the `-isogeny from its kernel intime Θ(`).

7 / 31

Page 28: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

Fundamentals: Isogenies of elliptic curves

DefinitionLet E,E′/Fq be elliptic curves and let ` ∈ Z>0 be coprime to q.An `-isogeny f : E→ E′ is an isogeny with # ker(f ) = `.

I Our example f : E51 → E9 over F419 was a 3-isogeny.I Fact: an isogeny is uniquely determined by its kernel

(up to isomorphism).I Write ϕG : E→ E/G for the isogeny from E with kernel G.I Vélu’s formulas compute the `-isogeny from its kernel in

time Θ(`).

7 / 31

Page 29: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

Fundamentals: Isogenies of elliptic curvesOf special interest in crypto:

I We call an isogeny cyclic if its kernel is cyclic.

I The kernel of a cyclic `-isogeny is generated by an`-torsion point (in particular: a point of order `).

I An `-torsion point is a point P ∈ E(k) such that

[`]P = P + · · ·+ P︸ ︷︷ ︸` times

= P∞.

Our example f : E51 → E9 was a cyclic 3-isogeny:

ker(f ) = {(−118, 51), (−118,−51),P∞}= {(−118, 51), [2](−118, 51), [3](−118, 51)}.

we could also write

f = ϕ〈(−118,51)〉 : E51 → E51/〈(−118, 51)〉.

8 / 31

Page 30: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

Fundamentals: Isogenies of elliptic curvesOf special interest in crypto:

I We call an isogeny cyclic if its kernel is cyclic.I The kernel of a cyclic `-isogeny is generated by an`-torsion point (in particular: a point of order `).

I An `-torsion point is a point P ∈ E(k) such that

[`]P = P + · · ·+ P︸ ︷︷ ︸` times

= P∞.

Our example f : E51 → E9 was a cyclic 3-isogeny:

ker(f ) = {(−118, 51), (−118,−51),P∞}= {(−118, 51), [2](−118, 51), [3](−118, 51)}.

we could also write

f = ϕ〈(−118,51)〉 : E51 → E51/〈(−118, 51)〉.

8 / 31

Page 31: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

Fundamentals: Isogenies of elliptic curvesOf special interest in crypto:

I We call an isogeny cyclic if its kernel is cyclic.I The kernel of a cyclic `-isogeny is generated by an`-torsion point (in particular: a point of order `).

I An `-torsion point is a point P ∈ E(k) such that

[`]P = P + · · ·+ P︸ ︷︷ ︸` times

= P∞.

Our example f : E51 → E9 was a cyclic 3-isogeny:

ker(f ) = {(−118, 51), (−118,−51),P∞}= {(−118, 51), [2](−118, 51), [3](−118, 51)}.

we could also write

f = ϕ〈(−118,51)〉 : E51 → E51/〈(−118, 51)〉.

8 / 31

Page 32: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

Fundamentals: Isogenies of elliptic curvesOf special interest in crypto:

I We call an isogeny cyclic if its kernel is cyclic.I The kernel of a cyclic `-isogeny is generated by an`-torsion point (in particular: a point of order `).

I An `-torsion point is a point P ∈ E(k) such that

[`]P = P + · · ·+ P︸ ︷︷ ︸` times

= P∞.

Our example f : E51 → E9 was a cyclic 3-isogeny:

ker(f ) = {(−118, 51), (−118,−51),P∞}= {(−118, 51), [2](−118, 51), [3](−118, 51)}.

we could also write

f = ϕ〈(−118,51)〉 : E51 → E51/〈(−118, 51)〉.

8 / 31

Page 33: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

Fundamentals: Isogenies of elliptic curvesOf special interest in crypto:

I We call an isogeny cyclic if its kernel is cyclic.I The kernel of a cyclic `-isogeny is generated by an`-torsion point (in particular: a point of order `).

I An `-torsion point is a point P ∈ E(k) such that

[`]P = P + · · ·+ P︸ ︷︷ ︸` times

= P∞.

Our example f : E51 → E9 was a cyclic 3-isogeny:

ker(f ) = {(−118, 51), (−118,−51),P∞}= {(−118, 51), [2](−118, 51), [3](−118, 51)}.

we could also write

f = ϕ〈(−118,51)〉 : E51 → E51/〈(−118, 51)〉.

8 / 31

Page 34: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

Decomposing smooth isogenies

I We will use isogenies with ‘crypto-sized’ (big) kernels.

Vélu’s formulas take Θ(#G) to compute ϕG : E→ E/G.

!! Make sure G has smooth order.!! Evaluate ϕG as a chain of small-degree isogenies:

For G ∼= Z/`k, we can decompose ϕG into `-isogeniesψ1, . . . , ψk:

E E1 . . . Ek−1 E/Gψ1

ϕG

ψ2 ψk−1 ψk

Complexity: O(k2 · `). Exponentially smaller than #G = `k!‘Optimal strategy’ improves this to O(k log k · `).

9 / 31

Page 35: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

Decomposing smooth isogenies

I We will use isogenies with ‘crypto-sized’ (big) kernels.

Vélu’s formulas take Θ(#G) to compute ϕG : E→ E/G.

!! Make sure G has smooth order.

!! Evaluate ϕG as a chain of small-degree isogenies:For G ∼= Z/`k, we can decompose ϕG into `-isogeniesψ1, . . . , ψk:

E E1 . . . Ek−1 E/Gψ1

ϕG

ψ2 ψk−1 ψk

Complexity: O(k2 · `). Exponentially smaller than #G = `k!‘Optimal strategy’ improves this to O(k log k · `).

9 / 31

Page 36: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

Decomposing smooth isogenies

I We will use isogenies with ‘crypto-sized’ (big) kernels.

Vélu’s formulas take Θ(#G) to compute ϕG : E→ E/G.

!! Make sure G has smooth order.!! Evaluate ϕG as a chain of small-degree isogenies:

For G ∼= Z/`k, we can decompose ϕG into `-isogeniesψ1, . . . , ψk:

E E1 . . . Ek−1 E/Gψ1

ϕG

ψ2 ψk−1 ψk

Complexity: O(k2 · `). Exponentially smaller than #G = `k!‘Optimal strategy’ improves this to O(k log k · `).

9 / 31

Page 37: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

Decomposing smooth isogenies

I We will use isogenies with ‘crypto-sized’ (big) kernels.

Vélu’s formulas take Θ(#G) to compute ϕG : E→ E/G.

!! Make sure G has smooth order.!! Evaluate ϕG as a chain of small-degree isogenies:

For G ∼= Z/`k, we can decompose ϕG into `-isogeniesψ1, . . . , ψk:

E E1 . . . Ek−1 E/Gψ1

ϕG

ψ2 ψk−1 ψk

Complexity: O(k2 · `). Exponentially smaller than #G = `k!‘Optimal strategy’ improves this to O(k log k · `).

9 / 31

Page 38: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

Decomposing smooth isogenies

I We will use isogenies with ‘crypto-sized’ (big) kernels.

Vélu’s formulas take Θ(#G) to compute ϕG : E→ E/G.

!! Make sure G has smooth order.!! Evaluate ϕG as a chain of small-degree isogenies:

For G ∼= Z/`k, we can decompose ϕG into `-isogeniesψ1, . . . , ψk:

E E1 . . . Ek−1 E/Gψ1

ϕG

ψ2 ψk−1 ψk

Complexity: O(k2 · `). Exponentially smaller than #G = `k!‘Optimal strategy’ improves this to O(k log k · `).

9 / 31

Page 39: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

Elliptic curves and isogenies

DefinitionLet E/Fq be an elliptic curve and let ` ∈ Z>0. Let f : E→ E′ bean `-isogeny.

Then there exists a unique (up to isomorphism) `-isogeny

f∨ : E′ → E

such thatf∨ ◦ f = [`].

This is called the dual isogeny.(As before [`] denotes the multiplication-by-` map.)

10 / 31

Page 40: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

Elliptic curves and isogenies

DefinitionLet E/Fq be an elliptic curve and let ` ∈ Z>0. Let f : E→ E′ bean `-isogeny.Then there exists a unique (up to isomorphism) `-isogeny

f∨ : E′ → E

such thatf∨ ◦ f = [`].

This is called the dual isogeny.(As before [`] denotes the multiplication-by-` map.)

10 / 31

Page 41: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

Elliptic curves and isogenies

DefinitionLet E/Fq be an elliptic curve and let ` ∈ Z>0. Let f : E→ E′ bean `-isogeny.Then there exists a unique (up to isomorphism) `-isogeny

f∨ : E′ → E

such thatf∨ ◦ f = [`].

This is called the dual isogeny.

(As before [`] denotes the multiplication-by-` map.)

10 / 31

Page 42: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

Elliptic curves and isogenies

DefinitionLet E/Fq be an elliptic curve and let ` ∈ Z>0. Let f : E→ E′ bean `-isogeny.Then there exists a unique (up to isomorphism) `-isogeny

f∨ : E′ → E

such thatf∨ ◦ f = [`].

This is called the dual isogeny.(As before [`] denotes the multiplication-by-` map.)

10 / 31

Page 43: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

Fundamentals: Isogeny graphs

DefinitionLet q be a prime power and ` be a prime not dividing q. Theisogeny graph G`,n over Fq has

I Nodes: elliptic curves defined over Fq with n points(up to Fq-isomorphism).

I Edges: an edge E− E′ represents an `-isogeny E→ E′

defined over Fq together with its dual isogeny.(up to post-composition with isomorphisms).

11 / 31

Page 44: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

Fundamentals: Isogeny graphs

DefinitionLet q be a prime power and ` be a prime not dividing q. Theisogeny graph G`,n over Fq has

I Nodes: elliptic curves defined over Fq with n points(up to Fq-isomorphism).

I Edges: an edge E− E′ represents an `-isogeny E→ E′

defined over Fq together with its dual isogeny.(up to post-composition with isomorphisms).

11 / 31

Page 45: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

Fundamentals: Isogeny graphs

DefinitionLet q be a prime power and ` be a prime not dividing q. Theisogeny graph G`,n over Fq has

I Nodes: elliptic curves defined over Fq with n points(up to Fq-isomorphism).

I Edges: an edge E− E′ represents an `-isogeny E→ E′

defined over Fq together with its dual isogeny.(up to post-composition with isomorphisms).

11 / 31

Page 46: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

Isogeny graphs

Example

Replace eg. byE51 E9

Then the graph G3,420 over F419 looks like:

[NB: the nodes with p + 1 = 420 points are the supersingular nodes].

12 / 31

Page 47: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

Isogeny graphs

Example

Replace eg. byE51 E9

Then the graph G3,420 over F419 looks like:

[NB: the nodes with p + 1 = 420 points are the supersingular nodes].

12 / 31

Page 48: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

Isogeny graphs

A 3-isogeny(picture not to scale)

E51: y2=x3+51x2+x E9: y2=x3+9x2+x

(x, y)(

97x3−183x2+xx2−183x+97 ,

y· 133x3+154x2−5x+97−x3+65x2+128x−133

)

13 / 31

Page 49: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

Fragen?

Questions?

Domande?

Dumondas?

14 / 31

Page 50: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

Big picture

I Isogenies are a source of exponentially-sized graphs.

I We can walk efficiently on these graphs.

I Fast mixing: short paths to (almost) all nodes.

I No efficient∗ algorithms to recover paths from endpoints.(Both classical and quantum!)

I Enough structure to navigate the graph meaningfully.That is: some well-behaved ‘directions’ to describe paths. More later.

It is easy to construct graphs that satisfy almost all of these —not enough for crypto!

15 / 31

Page 51: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

Big picture

I Isogenies are a source of exponentially-sized graphs.

I We can walk efficiently on these graphs.

I Fast mixing: short paths to (almost) all nodes.

I No efficient∗ algorithms to recover paths from endpoints.(Both classical and quantum!)

I Enough structure to navigate the graph meaningfully.That is: some well-behaved ‘directions’ to describe paths. More later.

It is easy to construct graphs that satisfy almost all of these —not enough for crypto!

15 / 31

Page 52: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

Big picture

I Isogenies are a source of exponentially-sized graphs.

I We can walk efficiently on these graphs.

I Fast mixing: short paths to (almost) all nodes.

I No efficient∗ algorithms to recover paths from endpoints.(Both classical and quantum!)

I Enough structure to navigate the graph meaningfully.That is: some well-behaved ‘directions’ to describe paths. More later.

It is easy to construct graphs that satisfy almost all of these —not enough for crypto!

15 / 31

Page 53: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

Big picture

I Isogenies are a source of exponentially-sized graphs.

I We can walk efficiently on these graphs.

I Fast mixing: short paths to (almost) all nodes.

I No efficient∗ algorithms to recover paths from endpoints.(Both classical and quantum!)

I Enough structure to navigate the graph meaningfully.That is: some well-behaved ‘directions’ to describe paths. More later.

It is easy to construct graphs that satisfy almost all of these —not enough for crypto!

15 / 31

Page 54: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

Big picture

I Isogenies are a source of exponentially-sized graphs.

I We can walk efficiently on these graphs.

I Fast mixing: short paths to (almost) all nodes.

I No efficient∗ algorithms to recover paths from endpoints.(Both classical and quantum!)

I Enough structure to navigate the graph meaningfully.That is: some well-behaved ‘directions’ to describe paths. More later.

It is easy to construct graphs that satisfy almost all of these —not enough for crypto!

15 / 31

Page 55: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

Big picture

I Isogenies are a source of exponentially-sized graphs.

I We can walk efficiently on these graphs.

I Fast mixing: short paths to (almost) all nodes.

I No efficient∗ algorithms to recover paths from endpoints.(Both classical and quantum!)

I Enough structure to navigate the graph meaningfully.That is: some well-behaved ‘directions’ to describe paths. More later.

It is easy to construct graphs that satisfy almost all of these —not enough for crypto!

15 / 31

Page 56: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

The beauty and the beast

Components of well-chosen isogeny graphs look like this:

Which of these is good for crypto?

Both.

16 / 31

Page 57: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

The beauty and the beast

Components of well-chosen isogeny graphs look like this:

Which of these is good for crypto?

Both.

16 / 31

Page 58: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

The beauty and the beast

Components of well-chosen isogeny graphs look like this:

Which of these is good for crypto? Both.

16 / 31

Page 59: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

The beauty and the beast

At this time, there are two distinct families of systems:

q = p

CSIDH ["si:­saId]https://csidh.isogeny.org

q = p2

SIDHhttps://sike.org

16 / 31

Page 60: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

CSIDH ["si:­saId]

(Castryck, Lange, Martindale, Panny, Renes; 2018)

17 / 31

Page 61: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

CSIDH in one slide

I Choose some small odd primes `1, ..., `n.I Make sure p = 4 · `1 · · · `n − 1 is prime.I Let X = {y2 = x3+Ax2+x over Fp with p+1 points}.I Look at the `i-isogenies defined over Fp within X.

mag

icm

ath

happ

ens!

p = 419`1 = 3`2 = 5`3 = 7

I Walking ‘left’ and ‘right’ on any `i-subgraph is efficient.

18 / 31

Page 62: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

CSIDH in one slide

I Choose some small odd primes `1, ..., `n.I Make sure p = 4 · `1 · · · `n − 1 is prime.

I Let X = {y2 = x3+Ax2+x over Fp with p+1 points}.I Look at the `i-isogenies defined over Fp within X.

mag

icm

ath

happ

ens!

p = 419`1 = 3`2 = 5`3 = 7

I Walking ‘left’ and ‘right’ on any `i-subgraph is efficient.

18 / 31

Page 63: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

CSIDH in one slide

I Choose some small odd primes `1, ..., `n.I Make sure p = 4 · `1 · · · `n − 1 is prime.I Let X = {y2 = x3+Ax2+x over Fp with p+1 points}.

I Look at the `i-isogenies defined over Fp within X.

mag

icm

ath

happ

ens!

p = 419`1 = 3`2 = 5`3 = 7

I Walking ‘left’ and ‘right’ on any `i-subgraph is efficient.

18 / 31

Page 64: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

CSIDH in one slide

I Choose some small odd primes `1, ..., `n.I Make sure p = 4 · `1 · · · `n − 1 is prime.I Let X = {y2 = x3+Ax2+x over Fp with p+1 points}.I Look at the `i-isogenies defined over Fp within X.

mag

icm

ath

happ

ens!

p = 419`1 = 3`2 = 5`3 = 7

I Walking ‘left’ and ‘right’ on any `i-subgraph is efficient.

18 / 31

Page 65: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

CSIDH in one slide

I Choose some small odd primes `1, ..., `n.I Make sure p = 4 · `1 · · · `n − 1 is prime.I Let X = {y2 = x3+Ax2+x over Fp with p+1 points}.I Look at the `i-isogenies defined over Fp within X.

mag

icm

ath

happ

ens!

p = 419`1 = 3`2 = 5`3 = 7

I Walking ‘left’ and ‘right’ on any `i-subgraph is efficient.

18 / 31

Page 66: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

CSIDH in one slide

I Choose some small odd primes `1, ..., `n.I Make sure p = 4 · `1 · · · `n − 1 is prime.I Let X = {y2 = x3+Ax2+x over Fp with p+1 points}.I Look at the `i-isogenies defined over Fp within X.

mag

icm

ath

happ

ens!

p = 419`1 = 3`2 = 5`3 = 7

I Walking ‘left’ and ‘right’ on any `i-subgraph is efficient.

18 / 31

Page 67: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

Elliptic-curve people may know this graph:It is the union of depth-0 isogeny volcanoes.

Typical formulation:

Theorem. Let O be an imaginary quadratic order and k a field.If the set

E `O(k) = { j(E) | E/k ordinary, End(E) ∼= O}

is non-empty, then the ideal-class group cl(O) acts freely andtransitively on E `O(k).

Less well-known:This also works for supersingular elliptic curves if one restrictsto k = Fp, ∼=Fp , and EndFp .

19 / 31

Page 68: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

Elliptic-curve people may know this graph:It is the union of depth-0 isogeny volcanoes.

Typical formulation:

Theorem. Let O be an imaginary quadratic order and k a field.If the set

E `O(k) = { j(E) | E/k ordinary, End(E) ∼= O}

is non-empty, then the ideal-class group cl(O) acts freely andtransitively on E `O(k).

Less well-known:This also works for supersingular elliptic curves if one restrictsto k = Fp, ∼=Fp , and EndFp .

19 / 31

Page 69: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

Elliptic-curve people may know this graph:It is the union of depth-0 isogeny volcanoes.

Typical formulation:

Theorem. Let O be an imaginary quadratic order and k a field.If the set

E `O(k) = { j(E) | E/k ordinary, End(E) ∼= O}

is non-empty, then the ideal-class group cl(O) acts freely andtransitively on E `O(k).

Less well-known:This also works for supersingular elliptic curves if one restrictsto k = Fp, ∼=Fp , and EndFp .

19 / 31

Page 70: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

Walking in the CSIDH graph

Supersingular curves have computational benefits:By taking special p, it is easy to control the group structure!(Not easy for ordinary curves in ‘interesting’ cases.)

Taking a ‘positive’ step on the `i-subgraph:1. Find a point (x, y) ∈ E of order `i with x, y ∈ Fp.2. Compute the isogeny with kernel 〈(x, y)〉.

Taking a ‘negative’ step on the `i-subgraph:1. Find a point (x, y) ∈ E of order `i with x ∈ Fp but y /∈ Fp.2. Compute the isogeny with kernel 〈(x, y)〉.

Net result: With x-only arithmetic everything happens over Fp.=⇒ Efficient to implement!

20 / 31

Page 71: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

Walking in the CSIDH graph

Supersingular curves have computational benefits:By taking special p, it is easy to control the group structure!(Not easy for ordinary curves in ‘interesting’ cases.)

Taking a ‘positive’ step on the `i-subgraph:1. Find a point (x, y) ∈ E of order `i with x, y ∈ Fp.2. Compute the isogeny with kernel 〈(x, y)〉.

Taking a ‘negative’ step on the `i-subgraph:1. Find a point (x, y) ∈ E of order `i with x ∈ Fp but y /∈ Fp.2. Compute the isogeny with kernel 〈(x, y)〉.

Net result: With x-only arithmetic everything happens over Fp.=⇒ Efficient to implement!

20 / 31

Page 72: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

Walking in the CSIDH graph

Supersingular curves have computational benefits:By taking special p, it is easy to control the group structure!(Not easy for ordinary curves in ‘interesting’ cases.)

Taking a ‘positive’ step on the `i-subgraph:1. Find a point (x, y) ∈ E of order `i with x, y ∈ Fp.2. Compute the isogeny with kernel 〈(x, y)〉.

Taking a ‘negative’ step on the `i-subgraph:1. Find a point (x, y) ∈ E of order `i with x ∈ Fp but y /∈ Fp.2. Compute the isogeny with kernel 〈(x, y)〉.

Net result: With x-only arithmetic everything happens over Fp.=⇒ Efficient to implement!

20 / 31

Page 73: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

Walking in the CSIDH graph

Supersingular curves have computational benefits:By taking special p, it is easy to control the group structure!(Not easy for ordinary curves in ‘interesting’ cases.)

Taking a ‘positive’ step on the `i-subgraph:1. Find a point (x, y) ∈ E of order `i with x, y ∈ Fp.2. Compute the isogeny with kernel 〈(x, y)〉.

Taking a ‘negative’ step on the `i-subgraph:1. Find a point (x, y) ∈ E of order `i with x ∈ Fp but y /∈ Fp.2. Compute the isogeny with kernel 〈(x, y)〉.

Net result: With x-only arithmetic everything happens over Fp.=⇒ Efficient to implement!

20 / 31

Page 74: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

CSIDH key exchange

Alice Bob[ , , , ] [ , , , ]

21 / 31

Page 75: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

CSIDH key exchange

Alice Bob[↑, , , ] [

↑, , , ]

21 / 31

Page 76: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

CSIDH key exchange

Alice Bob[ ,

↑, , ] [ ,

↑, , ]

21 / 31

Page 77: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

CSIDH key exchange

Alice Bob[ , ,

↑, ] [ , ,

↑, ]

21 / 31

Page 78: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

CSIDH key exchange

Alice Bob[ , , ,

↑] [ , , ,

↑]

21 / 31

Page 79: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

CSIDH key exchange

Alice Bob[ , , , ] [ , , , ]

21 / 31

Page 80: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

CSIDH key exchange

Alice Bob[↑, , , ] [

↑, , , ]

21 / 31

Page 81: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

CSIDH key exchange

Alice Bob[ ,

↑, , ] [ ,

↑, , ]

21 / 31

Page 82: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

CSIDH key exchange

Alice Bob[ , ,

↑, ] [ , ,

↑, ]

21 / 31

Page 83: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

CSIDH key exchange

Alice Bob[ , , ,

↑] [ , , ,

↑]

21 / 31

Page 84: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

CSIDH key exchange

Alice Bob[ , , , ] [ , , , ]

21 / 31

Page 85: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

Group=action-based key exchange

Like in the CSIDH example, we generally get a key exchangefrom a commutative group action G× S→ S:

Alice public Bob

a random←−−− G b random←−−− G

a ∗ s b ∗ s

key := a ∗ (b ∗ s) = ab ∗ s key := b ∗ (a ∗ s) = ab ∗ s

22 / 31

Page 86: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

Why no Shor?

Shor computes α from h = gα by finding the kernel of the map

f : Z2 → G, (x, y) 7→ gx ·↑

hy

For group actions, we generally cannot compose a ∗ s and b ∗ s!

23 / 31

Page 87: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

Security of CSIDH

Core problem:Given E,E′ ∈ X, find a smooth-degree isogeny E→ E′.

The size of X is #cl(Z[√−p]) ≈√p.

best known classical attack: meet-in-the-middle, O(p1/4).

Fully exponential: Complexity exp((log p)1+o(1)).

Solving abelian hidden shift breaks CSIDH.

non-devastating quantum attack (Kuperberg’s algorithm).

Subexponential: Complexity exp((log p)1/2+o(1)). next talk!

24 / 31

Page 88: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

Security of CSIDH

Core problem:Given E,E′ ∈ X, find a smooth-degree isogeny E→ E′.

The size of X is #cl(Z[√−p]) ≈√p.

best known classical attack: meet-in-the-middle, O(p1/4).

Fully exponential: Complexity exp((log p)1+o(1)).

Solving abelian hidden shift breaks CSIDH.

non-devastating quantum attack (Kuperberg’s algorithm).

Subexponential: Complexity exp((log p)1/2+o(1)). next talk!

24 / 31

Page 89: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

Security of CSIDH

Core problem:Given E,E′ ∈ X, find a smooth-degree isogeny E→ E′.

The size of X is #cl(Z[√−p]) ≈√p.

best known classical attack: meet-in-the-middle, O(p1/4).

Fully exponential: Complexity exp((log p)1+o(1)).

Solving abelian hidden shift breaks CSIDH.

non-devastating quantum attack (Kuperberg’s algorithm).

Subexponential: Complexity exp((log p)1/2+o(1)). next talk!

24 / 31

Page 90: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

Can we avoid Kuperberg’s algorithm?

The supersingular isogeny graph over Fp2 has less structure.

I SIDH uses the full Fp2-isogeny graph. No group action!

I Problem: also no more intrinsic sense of direction.“It all bloody looks the same!” — a famous isogeny cryptographer

need extra information to let Alice & Bob’s walks commute.

25 / 31

Page 91: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

Can we avoid Kuperberg’s algorithm?

The supersingular isogeny graph over Fp2 has less structure.

I SIDH uses the full Fp2-isogeny graph. No group action!

I Problem: also no more intrinsic sense of direction.“It all bloody looks the same!” — a famous isogeny cryptographer

need extra information to let Alice & Bob’s walks commute.

25 / 31

Page 92: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

Now: SIDH (Jao, De Feo; 2011)

(...whose name doesn’t allow for nice pictures of beaches...)

26 / 31

Page 93: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

SIDH: High-level view

E

I Alice & Bob pick secret subgroups A and B of E.I Alice computes ϕA : E→ E/A; Bob computes ϕB : E→ E/B.

(These isogenies correspond to walking on the isogeny graph.)

I Alice and Bob transmit the values E/A and E/B.I Alice somehow obtains A′ := ϕB(A). (Similar for Bob.)

I They both compute the shared secret(E/B)/A′ ∼= E/〈A,B〉 ∼= (E/A)/B′.

By the way: This is also the high-level view for CSIDH...

27 / 31

Page 94: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

SIDH: High-level view

EϕA

ϕB

I Alice & Bob pick secret subgroups A and B of E.

I Alice computes ϕA : E→ E/A; Bob computes ϕB : E→ E/B.(These isogenies correspond to walking on the isogeny graph.)

I Alice and Bob transmit the values E/A and E/B.I Alice somehow obtains A′ := ϕB(A). (Similar for Bob.)

I They both compute the shared secret(E/B)/A′ ∼= E/〈A,B〉 ∼= (E/A)/B′.

By the way: This is also the high-level view for CSIDH...

27 / 31

Page 95: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

SIDH: High-level view

E E/A

E/B

ϕA

ϕB

I Alice & Bob pick secret subgroups A and B of E.I Alice computes ϕA : E→ E/A; Bob computes ϕB : E→ E/B.

(These isogenies correspond to walking on the isogeny graph.)

I Alice and Bob transmit the values E/A and E/B.I Alice somehow obtains A′ := ϕB(A). (Similar for Bob.)

I They both compute the shared secret(E/B)/A′ ∼= E/〈A,B〉 ∼= (E/A)/B′.

By the way: This is also the high-level view for CSIDH...

27 / 31

Page 96: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

SIDH: High-level view

E E/A

E/B

ϕA

ϕB

I Alice & Bob pick secret subgroups A and B of E.I Alice computes ϕA : E→ E/A; Bob computes ϕB : E→ E/B.

(These isogenies correspond to walking on the isogeny graph.)

I Alice and Bob transmit the values E/A and E/B.

I Alice somehow obtains A′ := ϕB(A). (Similar for Bob.)

I They both compute the shared secret(E/B)/A′ ∼= E/〈A,B〉 ∼= (E/A)/B′.

By the way: This is also the high-level view for CSIDH...

27 / 31

Page 97: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

SIDH: High-level view

E E/A

E/B

ϕA

ϕB ϕB′

ϕA′

I Alice & Bob pick secret subgroups A and B of E.I Alice computes ϕA : E→ E/A; Bob computes ϕB : E→ E/B.

(These isogenies correspond to walking on the isogeny graph.)

I Alice and Bob transmit the values E/A and E/B.I Alice somehow obtains A′ := ϕB(A). (Similar for Bob.)

I They both compute the shared secret(E/B)/A′ ∼= E/〈A,B〉 ∼= (E/A)/B′.

By the way: This is also the high-level view for CSIDH...

27 / 31

Page 98: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

SIDH: High-level view

E E/A

E/B E/〈A,B〉

ϕA

ϕB ϕB′

ϕA′

I Alice & Bob pick secret subgroups A and B of E.I Alice computes ϕA : E→ E/A; Bob computes ϕB : E→ E/B.

(These isogenies correspond to walking on the isogeny graph.)

I Alice and Bob transmit the values E/A and E/B.I Alice somehow obtains A′ := ϕB(A). (Similar for Bob.)

I They both compute the shared secret(E/B)/A′ ∼= E/〈A,B〉 ∼= (E/A)/B′.

By the way: This is also the high-level view for CSIDH...

27 / 31

Page 99: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

SIDH: High-level view

E E/A

E/B E/〈A,B〉

ϕA

ϕB ϕB′

ϕA′

I Alice & Bob pick secret subgroups A and B of E.I Alice computes ϕA : E→ E/A; Bob computes ϕB : E→ E/B.

(These isogenies correspond to walking on the isogeny graph.)

I Alice and Bob transmit the values E/A and E/B.I Alice somehow obtains A′ := ϕB(A). (Similar for Bob.)

I They both compute the shared secret(E/B)/A′ ∼= E/〈A,B〉 ∼= (E/A)/B′.

By the way: This is also the high-level view for CSIDH...

27 / 31

Page 100: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

SIDH’s auxiliary points

Previous slide: “Alice somehow obtains A′ := ϕB(A).”

Alice knows only A, Bob knows only ϕB. Hm.

Solution: ϕB is a group homomorphism!

I Alice picks A as 〈P + [a]Q〉 for fixed public P,Q ∈ E.I Bob includes ϕB(P) and ϕB(Q) in his public key.

=⇒ Now Alice can compute A′ as 〈ϕB(P) + [a]ϕB(Q)〉!

P

Q

A

ϕB(P)

ϕB(Q)

A′ϕB

28 / 31

Page 101: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

SIDH’s auxiliary points

Previous slide: “Alice somehow obtains A′ := ϕB(A).”

Alice knows only A, Bob knows only ϕB. Hm.

Solution: ϕB is a group homomorphism!I Alice picks A as 〈P + [a]Q〉 for fixed public P,Q ∈ E.I Bob includes ϕB(P) and ϕB(Q) in his public key.

=⇒ Now Alice can compute A′ as 〈ϕB(P) + [a]ϕB(Q)〉!

P

Q

A

ϕB(P)

ϕB(Q)

A′ϕB

28 / 31

Page 102: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

SIDH’s auxiliary points

Previous slide: “Alice somehow obtains A′ := ϕB(A).”

Alice knows only A, Bob knows only ϕB. Hm.

Solution: ϕB is a group homomorphism!I Alice picks A as 〈P + [a]Q〉 for fixed public P,Q ∈ E.I Bob includes ϕB(P) and ϕB(Q) in his public key.

=⇒ Now Alice can compute A′ as 〈ϕB(P) + [a]ϕB(Q)〉!

P

Q

A

ϕB(P)

ϕB(Q)

A′ϕB

28 / 31

Page 103: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

SIDH in one slide

Public parameters:I a large prime p = 2n3m − 1 and a supersingular E/FpI bases (P,Q) and (R,S) of E[2n] and E[3m] (recall E[k] ∼= Z/k× Z/k)

Alice public Bob

a random←−−− {0...2n−1} b random←−−− {0...3m−1}

A := 〈P + [a]Q〉compute ϕA : E→ E/A

B := 〈R + [b]S〉compute ϕB : E→ E/B

E/A, ϕA(R), ϕA(S) E/B, ϕB(P), ϕB(Q)

A′ := 〈ϕB(P) + [a]ϕB(Q)〉s := j

((E/B)/A′

) B′ := 〈ϕA(R) + [b]ϕA(S)〉s := j

((E/A)/B′

)29 / 31

Page 104: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

Security of SIDH

The SIDH graph has size bp/12c+ ε.Alice & Bob can choose from about

√p secret keys each.

Classical attacks:I Meet-in-the-middle: O(p1/4) time & space.I Collision finding: O(p3/8/

√memory/cores).

Quantum attacks:I Claw finding: claimed O(p1/6).

Newer paper says this is more expensive than classical attacks.

Bottom line: Fully exponential. Complexity exp((log p)1+o(1)).

30 / 31

Page 105: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

Security of SIDH

The SIDH graph has size bp/12c+ ε.Alice & Bob can choose from about

√p secret keys each.

Classical attacks:I Meet-in-the-middle: O(p1/4) time & space.I Collision finding: O(p3/8/

√memory/cores).

Quantum attacks:I Claw finding: claimed O(p1/6).

Newer paper says this is more expensive than classical attacks.

Bottom line: Fully exponential. Complexity exp((log p)1+o(1)).

30 / 31

Page 106: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

Security of SIDH

The SIDH graph has size bp/12c+ ε.Alice & Bob can choose from about

√p secret keys each.

Classical attacks:I Meet-in-the-middle: O(p1/4) time & space.I Collision finding: O(p3/8/

√memory/cores).

Quantum attacks:I Claw finding: claimed O(p1/6).

Newer paper says this is more expensive than classical attacks.

Bottom line: Fully exponential. Complexity exp((log p)1+o(1)).

30 / 31

Page 107: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

Security of SIDH

The SIDH graph has size bp/12c+ ε.Alice & Bob can choose from about

√p secret keys each.

Classical attacks:I Meet-in-the-middle: O(p1/4) time & space.I Collision finding: O(p3/8/

√memory/cores).

Quantum attacks:I Claw finding: claimed O(p1/6).

Newer paper says this is more expensive than classical attacks.

Bottom line: Fully exponential. Complexity exp((log p)1+o(1)).

30 / 31

Page 108: Introduction to Isogeny-based Cryptography · Let G be a group. For g 2G and n 2Z, given g and gn, find n. I In crypto, we use G where the DLP is(sub-)exponentially harderthan computing

Fragen?

Questions?

Domande?

Dumondas?

31 / 31


Recommended