@@ -209,7 +209,7 @@ \section*{Preface}
209
209
Many students have contributed by pointing out mistakes and helping
210
210
fixing them. %
211
211
We would like to thank, in particular, Simon Masson, Marcel Müller,
212
- Martin Strand, Vadym Fedyukovych and Tomáš Novotny, Sina Schaeffler,
212
+ Martin Strand, Vadym Fedyukovych, Tomáš Novotny, Sina Schaeffler,
213
213
Val\' erien Hatey, Mehdi Kermaoui, and apologize to all those students
214
214
whose name we've forgot.
215
215
@@ -3023,18 +3023,21 @@ \section{Cryptographic group actions}
3023
3023
hardness properties correspond to the following three problems.
3024
3024
3025
3025
\begin {problem }[Group action inverse problem, Vectorization]
3026
+ \label {prob:gaip }
3026
3027
Given two elliptic curves $ E,E'$ with complex multiplication by an
3027
3028
order $ \O $ , find an ideal (class) $ \frak a⊂\O $ such that
3028
3029
$ E'=\frak a · E$ .
3029
3030
\end {problem }
3030
3031
3031
3032
\begin {problem }[Parallelization, Group action CDH]
3033
+ \label {prob:ga-cdh }
3032
3034
Let $ E,E'$ be elliptic curves with complex multiplication by $ \O $ . %
3033
3035
Let $ \frak a ∈ \Cl (\O )$ . %
3034
3036
Given $ (E, \frak a·E, E')$ , compute $ \frak a·E'$ .
3035
3037
\end {problem }
3036
3038
3037
3039
\begin {problem }[Group action DDH]
3040
+ \label {prob:ga-ddh }
3038
3041
Let $ E,E'$ be elliptic curves with complex multiplication by $ \O $ . %
3039
3042
Let $ \frak a ∈ \Cl (\O )$ . %
3040
3043
Given a tuple $ (E,\frak a·E,E',E'')$ , decide whether
@@ -3374,7 +3377,8 @@ \section{CSIDH and oriented supersingular curves}
3374
3377
$ \End (E)$ ; it is, in fact, (almost) the subring of $ \F _q$ -rational
3375
3378
endomorphism of $ E$ .%
3376
3379
\footnote {There are, in fact, two possibilities for $ \End _{\F _p}(E)$ ,
3377
- namely $ ℤ[π]$ or $ ℤ[(π+1 )/2 ]$ .} %
3380
+ namely $ ℤ[π]$ or $ ℤ[(π-1 )/2 ]$ , depending on whether $ π-1 $ vanishes
3381
+ on all of $ E[2 ]$ or not.} %
3378
3382
Then, $ \Cl (ℤ[π])$ acts on the set of $ \F _q$ -isomorphism classes of
3379
3383
supersingular curves, like in the CM case. %
3380
3384
This fact was first observed in~\cite {Delfs2016 } and then leveraged
@@ -3410,86 +3414,127 @@ \section{CSIDH and oriented supersingular curves}
3410
3414
\label {fig:csidh }
3411
3415
\end {figure }
3412
3416
3413
- Supersingular curves over a prime field and the CSIDH group action are
3414
- a special case of a more general setting called \emph {orientations of
3415
- supersingular curves }. %
3416
- Oriented curves are pairs $ (E, \O \hookrightarrow \End (E))$ , where $ E$
3417
- is a supersingular curve and $ \O \hookrightarrow \End (E)$ is an
3418
- embedding of a quadratic imaginary order inside $ \End (E)$ . %
3419
- As Kohel and Coló showed~\cite {ColoKohel +2020 +414 +437 }, $ \Cl (\O )$ acts
3420
- on these curves like in the CM case, and this was leveraged
3417
+ To encompass the ordinary and the supersingular case at once, we
3418
+ introduce the terminology of orientations. %
3419
+
3420
+ \begin {definition }[Oriented curve]
3421
+ \label {def:oriented-curve }
3422
+ Let $ \O $ be an imaginary quadratic order. %
3423
+ An \emph {$ \O $ -oriented curve } is a curve $ E$ together with an
3424
+ injection $ \O \hookrightarrow \End (E)$ . %
3425
+ If there is no other quadratic order $ \O ' ⊃ \O $ such that
3426
+ $ \O ' \hookrightarrow \End (E)$ , we say that the orientation is
3427
+ \emph {primitive }.
3428
+ \end {definition }
3429
+
3430
+ Theorems analogous to the \hyperref [th:compl-mul]{fundamental theorem
3431
+ of complex multiplication} apply to oriented curves; in particular,
3432
+ $ \Cl (\O )$ acts faithfully%
3433
+ \footnote {The action is not always transitive: depending on the case,
3434
+ there may be one or two orbits.} %
3435
+ on primitively $ \O $ -oriented curves.
3436
+ See~\cite {ColoKohel +2020 +414 +437 ,onuki2021 } for details.
3437
+
3438
+ Thus, CSIDH is an instance of a $ ℤ[π]$ -orientation. %
3439
+ Orientations induced by the Frobenius endomorphism are easy to work
3440
+ with, because the action of Frobenius on $ E[ℓ_i]$ is particularly easy
3441
+ to compute. %
3442
+ However, with some extra effort, it is possible to compute the class
3443
+ group action on many other oriented supersingular isogeny classes:
3444
+ This was first observed by Kohel and
3445
+ Coló~\cite {ColoKohel +2020 +414 +437 }, and then leveraged
3421
3446
in~\cite {PKC:DFKLMPW23 } to define an analogue of CSIDH, named SCALLOP,
3422
- based on orientations by arbitrary orders.
3447
+ based on orientations by suborders of large prime conductor inside a
3448
+ maximal order of small discriminant.
3423
3449
3424
3450
3425
3451
\section {Security and quantum computers }
3426
3452
3427
3453
We now do a quick review of the security of protocols based on complex
3428
3454
multiplication. %
3429
- The cornerstone of isogeny based cryptography is the isogeny path
3430
- problem: given isogenous curves $ E$ , $ E'$ , find an isogeny of smooth
3431
- degree between them. %
3432
- CM based protocols are no exception: find an isogeny walk between $ E$
3433
- and $ E'$ , and the group action inverse problem is solved. %
3434
- Naturally, the first parameter to look at is the size of the isogeny
3435
- class of $ E,E'$ : too small, and we can find the isogeny by brute
3436
- force. %
3437
-
3438
- For simplicity we assume that $ E$ and $ E'$ have complex multiplication
3439
- by a maximal order. %
3440
- Indeed, if this is not the case, we may use the theory of isogeny
3441
- volcanoes to find ascending paths from $ E$ and $ E'$ to two curves
3442
- $ \hat {E},\hat {E}'$ with complex multiplication by the maximal order.%
3443
- \footnote {Ascending an $ \ell $ -volcano can be done efficiently as long
3444
- as $ \ell $ is polynomially sized. %
3445
- However SCALLOP~\cite {PKC:DFKLMPW23 } uses supersingular curves
3446
- oriented by a non-maximal quadratic order of large prime conductor,
3447
- a case where it is not currently known how to efficiently walk to
3448
- the maximal order.} %
3449
- Then, we are left with the problem of finding a horizontal isogeny
3450
- between $ \hat {E}$ and $ \hat {E'}$ . %
3451
- Since the horizontal isogeny class of $ \O _K$ is the smallest among all
3452
- horizontal isogeny classes of curves with complex multiplication by
3453
- some $ \O ⊂\O _K$ , this is an easier problem to solve, as first noted by
3454
- Galbraith, Hess and
3455
- Smart~\cite {EC:GalHesSma02 ,galbraith +stolbunov11 }.%
3456
-
3457
- \begin {problem }[Horizontal isogeny path problem]
3455
+ The cornerstone of isogeny based cryptography is the \emph {isogeny
3456
+ path problem }: given isogenous curves $ E$ , $ E'$ , find a path between
3457
+ them in \emph {some } isogeny graph. %
3458
+ CM-based protocols are no exception: find an isogeny walk between $ E$
3459
+ and $ E'$ in the CM graph, and the \hyperref [prob:gaip]{group action
3460
+ inverse problem} is solved. %
3461
+ We restate this problem using our newly introduced terminology; for
3462
+ simplicity, we restrict to primitive orientations.
3463
+
3464
+ \begin {problem }[Oriented isogeny path problem]
3458
3465
\label {prob:hiwp }
3459
- Let $ \F _q$ be a finite field, and let $ \O _K$ be the ring of integers
3460
- of a quadratic imaginary field $ K=ℚ(\sqrt {-D})$ . %
3461
- Given two elliptic curves $ E,E'$ defined over $ \F _q$ with complex
3462
- multiplication by $ \O _K$ , find an isogeny $ E→E'$ of smooth degree.
3466
+ \footnote {This problem is almost identical to the \emph {effective
3467
+ $ \O $ -vectorization } problem of~\cite {EC:Wesolowski22 }.} %
3468
+ Let $ \F _q$ be a finite field, and let $ \O $ be a quadratic imaginary
3469
+ order $ \O ⊂ K$ . %
3470
+ Given two isogenous primitively $ \O $ -oriented elliptic curves $ E,E'$
3471
+ defined over $ \F _q$ , find an isogeny $ E→E'$ of smooth degree.
3463
3472
\end {problem }
3464
3473
3465
- The size of the horizontal isogeny class is $ h(\O _K)$ ; it is known by
3466
- the class number formula that this is in $ O(\sqrt {Δ_K}\log Δ_K)$ , and,
3467
- for the typical isogeny class\footnote {Including the isogeny class of
3468
- trace zero supersingular curves used in CSIDH.}, $ Δ_K=O(q)$ . %
3474
+ Naturally, the first parameter to look at is the size of the
3475
+ $ \O $ -oriented isogeny class: too small, and we can find an isogeny by
3476
+ brute force. %
3469
3477
The best generic attack against the \nameref {prob:hiwp } is a
3470
3478
Pollard-rho style algorithm, performing random walks from $ E$ and $ E'$
3471
3479
until a collision is found~\cite {GHS }. %
3472
- Its average complexity is $ O(\sqrt {h(\O _K)})$ , thus $ O(q^{1/4})$ for a
3473
- typical isogeny class. %
3474
- This justifies choosing a prime $ q$ of $ 4 n$ bits, for a security level
3475
- of $ 2 ^n$ , and this is indeed and what CSIDH
3476
- does~\cite {AC:CLMPR18 }.
3477
-
3478
- However, we must also ensure that the key space covers the whole
3479
- $ \Ell _q(\O _K)$ , possibly approaching the uniform distribution. %
3480
- This means that isogeny walks, as in Eq.~\eqref {eq:iso-walk }, must be
3481
- sampled from a relatively large subset $ S⊂\Cl (\O _K)$ , implying that
3482
- $ \# S\gg \log q$ . %
3483
- For efficiency reasons, practical instantiations take $ S$ just large
3484
- enough: $ \# S\sim (\log q)/2 $ ;%
3485
- \footnote {Additional constraints in CSIDH force $ \# S$ to grow as
3486
- $ (\log q)/(\loglog q)$ .} %
3487
- however it will not go unnoticed that this choice is insufficient to
3488
- apply Theorem~\ref {th:ord-exp }. %
3489
- We may as well live with it, changing our security assumptions to take
3490
- into account the biased distributions given by random walks in graphs
3491
- that are not provably expander families, but behave in practice as
3492
- such. %
3480
+ Its average complexity is $ O(\sqrt {h(\O )})$ , the square root of the
3481
+ class number of $ \O $ . %
3482
+
3483
+ When $ \O $ is the maximal order of $ K$ , it is known by the class number
3484
+ formula that $ h(\O )$ is in $ O(\sqrt {Δ_K}\log Δ_K)$ . %
3485
+ If we take an elliptic curve over $ \F _q$ at random, then with
3486
+ overwhelming probability it will be ordinary and $ Δ_K=O(q)$ .%
3487
+ \footnote {The discriminant of Frobenius can be computed in polynomial
3488
+ time using Schoof's algorithm (see
3489
+ Appendix~\ref {sec:appl-point-count }), then factoring it gives
3490
+ $ Δ_K$ . %
3491
+ Thus it is generally feasible to find by trial-and-error ordinary
3492
+ curves with an adequately large $ Δ_K$ .} %
3493
+ Similarly, in the case of Frobenius-oriented supersingular curves
3494
+ (i.e., CSIDH and variants) $ Δ_K = -4 q$ or $ Δ_K = -q$ . %
3495
+ Either way, the generic attack runs in $ O(q^{1/4})$ , which
3496
+ justifies choosing a prime $ q$ of $ 4 n$ bits for a security level of
3497
+ $ 2 ^n$ , as done in~\cite {10.1007 /978 -3 -030 -03332 -3_14 ,AC:CLMPR18 }.
3498
+
3499
+ The generic attack is relevant when the distributions of $ E$ and $ E'$
3500
+ are independent, e.g.\ when at least one of the two is uniformly
3501
+ distributed in the class. %
3502
+ However if the key space of a key exchange scheme is not large enough,
3503
+ it may be more efficient to perform a brute force search on it. %
3504
+ Ideally, we would construct CM graphs with a sufficiently large subset
3505
+ of edges $ S⊂\Cl (\O _K)$ , and take random walks long enough that
3506
+ Theorem~\ref {th:ord-exp } applies, thus ensuring that public keys are
3507
+ uniformly distributed. %
3508
+ However this is seldom efficient, and practical schemes take instead a
3509
+ key space just large enough that a search for the secret key is at
3510
+ least as expensive as the generic algorithm. %
3511
+
3512
+ \begin {remark }
3513
+ When the orientation is not principal, the first step consists in
3514
+ reducing to the principal case using the theory of isogeny
3515
+ volcanoes, as first outlined by Galbraith, Hess and
3516
+ Smart~\cite {EC:GalHesSma02 ,galbraith +stolbunov11 }.
3517
+
3518
+ Let $ E$ be $ \O $ -oriented and let $ \O _K ⊃ \O $ be the maximal order. %
3519
+ For each prime $ ℓ$ dividing the conductor $ [\O _K:\O ]$ we determine
3520
+ the level of $ E$ in the $ ℓ$ -volcano, then an ascending walk to a
3521
+ curve on the crater. %
3522
+ Repeating for each prime, we obtain an $ \O _K$ -principally oriented
3523
+ curve $ \hat {E}$ and a walk $ E→\hat {E}$ . %
3524
+ Doing the same for the second curve $ E'$ , we reduce to the
3525
+ $ \O _K$ -oriented problem between $ \hat {E}$ and $ \hat {E}'$ .
3526
+
3527
+ However, these steps are only doable for `` small'' primes $ ℓ$ (say
3528
+ $ ℓ∈\polylog (q)$ ). %
3529
+ In most practical cases, the conductor $ [\O _K:\O ]$ will only contain
3530
+ a handful of small primes and the reduction applies. %
3531
+ One notable exception are the public keys used in
3532
+ SCALLOP~\cite {PKC:DFKLMPW23 }, which are all principally oriented by
3533
+ the same order $ \O $ of large prime conductor $ f = [\O _K:\O ]$ . %
3534
+ In this case, it can be shown that evaluating the ascending
3535
+ $ f$ -isogeny is in fact equivalent to breaking the system.
3536
+ \end {remark }
3537
+
3493
3538
3494
3539
\paragraph {Quantum security. }
3495
3540
The discussion on security would not be complete without surveying
@@ -3542,10 +3587,11 @@ \section{Security and quantum computers}
3542
3587
As first noted in~\cite {childs2014constructing } and then improved
3543
3588
in~\cite {BIJ18 ,Jao -etal -kuperberg -2018 ,EC:BonSch20 ,EC:Peikert20 },
3544
3589
Kuperberg's algorithm can be used to solve the \nameref {prob:hiwp } as
3545
- follows: let $ E,E'$ be the two curves with complex multiplication by
3546
- $ \O _K$ , define two functions $ f_0 ,f_1 :\Cl (\O _K)\to\Ell _q(\O _K)$ as
3547
- $ f_0 (\a )=\a ·E$ and $ f_1 (\a )=\a ·E'$ , then the hidden shift defines a
3548
- horizontal isogeny between $ E$ and $ E'$ . %
3590
+ follows: let $ E,E'$ be the two oriented curves in the same isogeny
3591
+ class $ \mathcal {C}$ , define two functions
3592
+ $ f_0 ,f_1 :\Cl (\O )\to\mathcal {C}$ as $ f_0 (\a )=\a ·E$ and $ f_1 (\a )=\a ·E'$ ,
3593
+ then the hidden shift corresponds to the class of a horizontal isogeny
3594
+ between $ E$ and $ E'$ . %
3549
3595
3550
3596
Kuperberg's algorithm is a game changer for protocols based on complex
3551
3597
multiplication: indeed, to ensure $ 2 ^n$ quantum security we need to
@@ -4312,7 +4358,7 @@ \section{The effective Deuring correspondence}
4312
4358
\end {proof }
4313
4359
4314
4360
Even though $ ϕ:E_0 →E$ always exists, it is not necessarily easy to
4315
- compute . %
4361
+ find . %
4316
4362
We will come back to the problem of computing isogenies of
4317
4363
supersingular curves and its relationship to computing their
4318
4364
endomorphsim rings in Section~\ref {sec:security }.
0 commit comments