1. Introduction
The relevance of PQC algorithms is dictated by active work on the creation of quantum computers. Work on the standardization of algorithms has been carried out by the Information Technology Laboratory of the Computer Security Resource Center of the National Institute of Standards and Technology (NIST) since 2016. At the moment, three draft standards FIPS 203 [
1], 204 [
2], and 205 [
3], which are part of the NIST PQC Standardization process, have been submitted for wide discussion.
The announcement of the PQC CSIDH algorithm [
4], based on the original CRS scheme [
5], was accompanied by the author’s statement that it has the smallest known key length of 512 bits with a security level of 128 bits. However, problems with vulnerability to side-channel attacks and fast performance were noted. To overcome the slowness of the implementation of the CRS scheme [
6], the authors justified their choice of supersingular elliptic curves in Montgomery form instead of ordinary (non-supersingular) ones in [
5], which speeds up the implementation by a factor of 2000 [
4].
A significant acceleration of CSIDH [
4] implementation (20%) was achieved in [
7] with Farashahi-Hosseini [
8] calculations in projective coordinates
. The CSIDH model [
7] uses the Edwards isogenies of complete curves technique [
9] with computations of isogenic curve parameters using formulas [
10].
In our articles [
11,
12,
13,
14,
15,
16,
17] we disagreed with the ambiguous terminology of curves in Edwards form in the pioneering [
9] and proposed a more correct classification of them into three non-isomorphic classes [
11]. The present article has two aims. First, we give an overview of our most promising modifications of the CSIDH algorithm, which improve the efficiency of the algorithm. Along with this, here for the first time we obtain an integral lower bound estimate of the gain in the speed of computation of isogenic chains
in the speed of computing isogenic chains due to all proposed modifications.
The purpose of this article is to summarize previously developed methods for increasing the performance and security of PQC algorithms on isogenies of Edwards curves, as well as aggregation and integral evaluation of successive improvements.
There are several improvements for the CSIDH algorithm proposed in this article:
The advantages of non-cyclic classes of quadratic and twisted supersingular Edwards curves over the class of complete supersingular Edwards curves are the doubling of the set of all curves and, most importantly, the elimination of the laborious operation of inversion of the
parameter
in the transition to quadratic twist [
11,
12,
13]. In this article, we obtain the first partial estimate of the gain
in the speed of computation in CSIDH on non-cyclic supersingular Edwards curves compared to complete supersingular Edwards curves;
The computational cost in projective coordinates
Farashahi-Hosseini [
8] parameter
of the isogenic curve and isogenic function
we obtained an estimate of the gain in computational speed in CSIDH
due to the refusal of the redundant calculation of the function
;
The existence of two isomorphic cryptosystems with parallel computation capability removes the threat of side-channel and doubles the performance of the algorithm. Here, the partial estimate of the speed gain of the algorithm is ;
While preserving the security parameters, it is possible to reduce the degree of the senior isogeny and obtain a linear estimate of the CSIDH acceleration by a factor of 1.5;
A single public key of the recipient instead of two in CSIDH gives a security gain;
An important advantage of ordinary non-cyclic Edwards curves is the existence of 4-independent cryptosystems with the possibility of parallel computation and performance quadrupling (or doubling compared to CSIDH). Other interesting problems and modifications of cryptosystems are considered in [
17].
This article is intended to reconsider the performance assessment of CSIDH and CSIKE algorithms. These modifications can be used for implementation into cryptographic standards.
Section 2 gives the rationale for the choice of non-cyclic classes of quadratic and twisted supersingular Edwards curves defined as a pair of quadratic twists over a prime field
, where
. In
Section 3, based on the estimates obtained in [
13] of the computational cost in projective coordinates
Farashahi-Hosseini [
8] parameter. In
Section 4, we consider the method of randomization of the CSIDH algorithm [
14] and justify estimates of the speed gain of its implementation.
Section 5 is devoted to the optimization of the distribution of isogeny degrees in CSIDH [
16], which is not dense and has discontinuities in the table of prime numbers. The original and fast key encapsulation CSIKE algorithm [
15] and its model implementation are discussed in
Section 6. In
Section 7, we consider aspects of the CRS model implementation of the Diffie-Hellman secret sharing scheme on 4-degree isogenies
of ordinary non-cyclic Edwards curves.
2. Selection of Classes and Types of Edwards Curves
Edwards curves in the most general form are defined in [
9] by the equation
For the classical horizontal symmetry of elliptic curve points, in [
11] we move the parameter
by a multiplier
in the form
and we call (2) an equation in generalized Edwards form. In the laws of addition and doubling of points of the curve (2)
coordinates
and
are swapped around compared to the original form of the curve equation.
Depending on the quadratic properties of
and
parameters in [
11], we also propose a more correct classification of curves into three non-intersecting classes than in [
9]:
A. Complete Edwards curves: ;
B. Quadratic Edwards curves: ;
C. Twisted Edwards curves: .
The well-known implementation of the CSIDH algorithm [
7] is based on complete Edwards curves
A in the Farashahi-Hosseini
coordinate system, which accelerated its performance by 20% compared to Montgomery curves in the
coordinate system. We have justified and utilized non-cyclic curves of classes
B and
C as quadratic twist pairs in [
12,
13,
14,
15,
16,
17]. They have two important advantages over the complete Edwards curves
A:
Let us define curves
B and
C as a pair of quadratic twists at
by the equations:
In the twisted curve (6), both parameters of the curve (5) are multiplied by
and become non-square. The orders of all supersingular Edwards curves are equal to
where for the CSIDH algorithm
, where
are the degrees of prime odd isogenies (see
Section 4). The maximum order of a point of a non-cyclic curve is
, so it is sufficient to multiply any random point by four to obtain odd-order points.
It follows from (5) and (6) that the transition to quadratic twist for classes
B and
C is practically free, whereas within class A such a transition is achieved by inversion of the parameter
, which according to a known estimate [
18] requires
, where
is the cost of multiplication in the group
Taking conditionally the complexity of the transition between curves (5) and (6) as
, we obtain a conditional average estimate of the gain
in computational speed compared to complete curves
A. Since in the CSIDH algorithm the transition to quadratic twist is required for approximately half of the isogenic curves, we can use a conditional lower estimate of the gain
.
By curve type here we mean supersingular curves with trace
or ordinary curves with order
, where
is the trace of the Frobenius equation,
. Since the set of the former is
times wider than the set of supersingular curves, interesting unique applications of this type of Edwards curves are discussed in [
14] and
Section 7.
An important tool in analyzing isogenies is the
J-invariant [
9]
This parameter distinguishes between isogenic (with different
J-invariants) and isomorphic (with equal
J-invariants) curves. Since the
J-invariant retains its value for all isomorphic curves and quadratic twist pairs [
19], it is the same for a pair of quadratic and twisted supersingular Edwards curves (
), so we will use the invariant
. It is useful both in finding supersingular curves and in constructing isogeny chain graphs. One of the properties of
J-invariant is
.
For the considered classes of supersingular Edwards curves the substitution gives an isomorphism, and for complete Edwards curves a quadratic twist.
3. Computation of Odd-Degree Isogenies on Edwards Curves and Complexity Estimation
Isogenies of an elliptic curve
over the field
into a curve
is a homomorphism
given by rational functions. This means that there exists a rational function [
19]
mapping the points of the curve
to the points of the curve
, and for all
. The isogeny degree is the maximum of the degrees
and its kernel
is the subgroup
whose points are mapped by the function
into a neutral element
of the group
. The degree of the separable isogeny is equal to the ordering
of its kernel. The isogeny compresses the set of points of the curve
в
times (
curve points
are mapped to a single point on the curve
).
The computation of isogenies of Edwards curves of classes
A and
B of odd powers is performed according to Theorem 2 [
10]. In [
12] we generalized it to curves of class
C in the following theorem.
Theorem 1. Let is a subgroup of odd order of points of curve over the field
Then
there is
l-isogeny with the kernel
G from the curve
into a curve
with parameters
, where
, and the mapping function
or
Proof of Theorem 1. Its evidence is given in [
12]. It is important to note that the isogenic function (11) includes the parameter
, which is absent in the original Theorem 2 [
10]. □
The parameters of the isogenic curve according to Theorem 2 [
10] are calculated by the formulas
The task of this section is a comparative evaluation of the complexity of computing the isogenic function
and the parameter
of the isogenic curve
. This will allow us to estimate the gain in computational speed in the CSIDH algorithm when giving up the computation of the function
(justified in
Section 4).
The fastest results today for curve isogenies in Edwards form are obtained in projective coordinates
with the introduction of a generalized Farashahi-Hosseini variable
[
8]. For isogenies of degree
are calculated
points
of the isogeny kernel together with the coordinates
, then according to Theorem 2 [
7]
Let
complexity of multiplication in the field
,
is the complexity of squaring, and let us use the results of [
7]. Taking into account the complexity of calculating the coordinates of the kernel points, the complexity of calculating the function
is equal to
The cost of calculating the parameter
of the isogenic curve
, respectively,
Let’s take the known estimate
[
9]. Then we have
The gain in computing speed without taking into account
equals
For at the maximum and minimum this gain is equal to 2.27 and 2.20, respectively. On average, we obtain Thus, the acceleration of the CSIDH algorithm when refusing the redundant calculation of the function is estimated by the coefficient
4. Randomization of the CSIDH Algorithm on Non-Cyclic Edwards Curves
The PQC CSIDH algorithm is proposed by the authors [
4] to solve the classical Diffie-Hellman key exchange problem. Isogenic curve mapping
of order
over a prime field
into a curve
is defined as the class-group action and is commutative. Compared to the known original CRS scheme (Couveignes [
20] and Rostovtsev et al. [
5]) on ordinary curves, the use of isogenies of supersingular curves allowed us to speed up the algorithm and obtain the smallest known key size (512 bits with a security level of 128 bits in [
4]).
Let the curve
of order
contain points of small odd orders
Then there exists an isogenic curve
of the same order
as a mapping of degree
. Repetition of this operation
times is denoted as
. The values of the exponents of the isogenies
determine the length of the chain of isogenies of degree
. In [
4] the interval of exponent values is adopted
,
,
, which provides a security level of 128 bits during attacks on a quantum computer. Negative values of the exponent
mean the transition to the supersingular curve of quadratic twist.
Non-interactive key exchange using the Diffie-Hellman scheme involves steps [
4]:
Parameter selection. For small prime odd is calculated where the value is determined by the security level, a suitable field modulus , and the starting elliptic curve are chosen;
Public key computation. Alice uses her secret key constructs an isogenic mapping and computes the isogenic curve as her public key. Bob, based on the secret key and function performs the same computation and obtains his public key These curves are defined by their parameters with exact isomorphism;
Key exchange. The protocol here is similar to Step 2 with a change for Alice and for Bob. Knowing Bob’s public key, Alice calculates . Bob’s similar action gives the result , coinciding with the first one due to the commutativity of the group operation. As a shared secret we take J-invariant of the curve
Below we give a modification of Alice’s computation algorithm according to
Section 3 [
4] using isogenies of quadratic and twisted supersingular Edwards curves.
Compared to Algorithm 2 in [
4], Algorithm 1 adapted to quadratic and twisted supersingular Edwards curves. In this section, we present an analysis of the speed gains of the randomized algorithm [
14] compared to the algorithm [
4].
Algorithm 1. Evaluation of the class-group action on quadratic and twisted supersingular Edwards curves. |
Input: and a list of integers . Output: such that , where . 1. WHILE some DO 2. Sample a random ; 3. Set , IF is a square in ; 4. ELSE , ; 5. Let . IF then start over to Line 2 while ; 6. Let and compute ; 7. FOR each DO 8. Compute ; 9. IF compute an isogeny with ; 10. Set , , ; 11. Skip in and IF ; 12. RETURN . |
The CSIDH algorithm [
4] is constructed in such a way that the computation of isogenic chains according to functions
are performed in two stages: first the set is formed
with key exponents
of one sign, then, after zeroing all
, of the other. At each stage, the kernels and parameters of exactly
of isogenic curves of isogenies of degrees
constructed on curves of the same class (
or
). This gives rise to the threat of a side-channel attack based on measuring the time of these computations, proportional to the length of the
and degree
of each chain
. In this regard, most articles on this topic [
21,
22] consider different variants of “constant time CSIDH” in which the secret exponents are
are built up to an upper bound
by fictitious chains of isogenies. Such protection is achieved by significant redundancy and slowing down the algorithm by half.
We propose in [
14] another method for solving the problem is the randomization of the path of isogenic chains. The idea is that any random coordinate of the
of an elliptic curve always generates a random point
of one of the two curves of a pair of quadratic twist pair (5) or (6). Then instead of trying (unsuccessfully with probability ½) to find a point of a curve of a given class and succeeding with probability 1, we determine the class of curve (in our case it is the curve
(5) or
(6), one of which the point belongs to
). Then we calculate the first isogenic curve in this class
isogeny degree
corresponds to the sign of the exponent
. The selection
is randomized, and the value
is decreased by one. In the next step with a new value of the parameter
the random point
of one of the curves
or
, the isogeny kernel of the randomly chosen degree is determined
and the parameter
of the chain. The process continues until all
. The corresponding randomized CSIDH Algorithm 2 is given below.
Algorithm 2. Randomized evaluation of the class-group action on quadratic and twisted supersingular Edwards curves. |
Input: and a list of integers . Output: such that , where . 1. Let , , , ; 2. WHILE some DO 3. Sample a random ; 4. Set , , IF ; 5. ELSE , , ; 6. Compute -coordinate of the point ; 7. Compute ; 8. Sample a random ; 9. Compute ; 10. IF compute kernel of -isogeny ; 11. ELSE start over to Line 3; 12. Compute of curve , , ; 13. Skip to and set IF ; 14. RETURN . |
Here instead of one set in Algorithm 1 two sets and are formed, in which the numbers of isogeny degrees corresponding to the key positions are recorded with positive and negative exponents respectively. At any random choice of is coordinate we obtain a random point , belonging to the curve (5) or (6). Its multiplication by four in Step 7 gives a point of of odd order. The scalar multiplication in Step 9 calculates the point of the of the isogeny kernel, then the coordinates of all points of the kernel are calculated. Finally, in Step 12, according to (12), we calculate the parameter of the isogenic curve .
Note that in classical CSIDH there is already a guaranteed level of protection against the type of side channel attack described above. It is determined by the sign of the secret exponent
of the key. Since each component of
function
computation time
and
is the same, the probability of the analyst’s success even in the conditions of error-free values of
is equal to
(for the data of [
4]). For the average length of
chain of isogenies of each degree
the total length of the chain of isogenies of the function is
steps. Let
be the probability of error-free determination of degree
by the analyst at one step of the randomized CSIDH protocol, then its probability of success can be estimated by the value
. For example, at
the analyst’s probability of success is
, and at
this probability is close to the value
which is well below the safety level
. Various modifications of the proposed randomization method are possible with insertions of single dummy exponents into the sample components of the
functions
that will not introduce redundancy into the calculations. Note that one mistake of an analyst destroys all his labor-intensive work.
Algorithm 2 does not include the computation of the isogenic function , which gives an estimate of the speed gain of Algorithm 2 The following gain randomization method provides that instead of choosing one of the curves (5) or (6) with probability ½ in Algorithm 2, any choice is good. There is also an approximate gain compared to “constant time CSIDH” in which close to half of the isogenies are fictitious, which is not the case in Algorithm 2.
Finally, we’ll justify the gain due to parallel computations in two cryptosystems with isomorphic curves. This article is described for the first time. The idea is that in classes B and C for any Edwards curve (5) and (6) with parameter there exists an isomorphic curve with parameter . Fixing the starting curve , we construct chains of isogenies of all degrees of the first cryptosystem with the secret key . The second cryptosystem with the secret key can be easily constructed on the set of all curves isomorphic to the first one. For this purpose, another starting curve is chosen by inverting the parameter of any curve of the first cryptosystem. These two sets of curves do not intersect, and it is possible to solve two problems simultaneously instead of one, which doubles the computational performance. In addition, parallel computing removes the threat of side-channel attacks altogether and makes the “constant time CSIDH” redundancy meaningless.
Reducing for simplicity the estimate
and taking
, we obtain from the results of this section a partial estimate of the computational speed gain of the CSIDH algorithm
. Thus, the final lower speedup estimate of the CSIDH algorithm modified in [
12,
13,
14,
15,
16,
17] is no less than
. In the following sections, we consider further modifications of CSIDH and their performance evaluations.
5. Optimization of Isogeny Degree Set in CSIDH
In this section, we optimize the distribution of isogeny degrees
in [
16] and evaluate the gains
of this optimization in comparison with the CSIDH model [
4].
We found that 74 degrees
isogenies in [
4] with the value of
runs only a fraction of all minimal prime numbers from 3 to
, the total number of which is 106. In other words, 32 values of prime numbers are not included in the list of degrees
in the model [
4], which means discontinuities (gaps) in the set of
. With an average cost of each degree of 8 bits, a rough estimate of the cost of the removed degrees is
bits. These losses are unnecessary and generate a slowdown of the algorithm at excessively high degrees of isogenies.
We set a task to analyze possible distributions of sets of prime numbers of the set with size and to find variants of optimization (compaction) of this distribution. According to the table of prime numbers up to 587, the complete set contains all prime numbers.
Let’s call the set of prime numbers ordered in ascending order is optimal if at known and product It follows from the definition that the optimal set of prime numbers is dense (without skips) with elements . It is constructed as a segment of length of ordered prime numbers. Removing at least one number (except the extreme numbers) from the middle of the segment gives a non-optimal set Removal of one of the extreme numbers of the segment gives two different optimal sets of size . Any subset (segment of length of the complete set is an optimal set. A non-optimal set contains skips that violate the condition .
The complete set
is optimal by definition. Removing 32 numbers from it gives a set
that is far from optimal. This set
in [
4]. We associate the notion of optimality exclusively with the maximization of the product of elements of the set.
Let’s divide
into subsets
which includes prime numbers in the hundreds of numbers with numbers
. For the first hundred, for example, we have the subset
, where
. For all six subsets
these numbers
are given in the second row of
Table 1.
Each degree
in binary form has a
bit. For all products of numbers
in subsets
we calculate the bit length
of the degrees of isogenies. The values
are given in the third row of
Table 1. These results allow us to draw interesting conclusions. First, the sum of all bits of the third row
bits, defining the product of all 106 prime numbers
, has a redundancy of 283 bits compared to the minimum lower threshold of 510 bits (
) [
4] security requirements. Second, prime numbers in the 5th and 6th hundreds (
and
) can be removed, since
bits, which satisfies with a margin of 24 bits the requirement
. Ignoring the last two columns of
Table 1, we obtain 77 values of the elements of the optimal set of
of prime numbers. Further, we propose to remove the 3 lowest degrees in the first hundred
and construct the optimal set of isogeny degrees
of the same size 74 as in [
4]. This preserves the length
of the secret key. Given the equality
, the product n of all
of the optimal set
is evaluated by a binary number of length 528 bits. Adding 2 bits, we obtain the estimate
bit. For the distribution
we can adjust
Table 1: in column
of the table we should put the values of
and the last two columns of the table should be deleted. Then
bits,
bit. Such an optimal distribution of degrees
isogenies ensures that the minimal security threshold of 512 bits of the algorithm is exceeded by 18 bits.
Note that the reserve of 18 bits can be used up by removing the two maximum isogeny degrees 397 and 389 for a total cost of 18 bits and taking However, this requires reducing the length of the secret key by two.
The main advantage of the set of isogeny degrees proposed here
over the one used in [
4] is a significant (by a factor of 1.5) decrease of
up to
with an optimal distribution of prime numbers. The real gain requires experimental estimation of the complexity of CSIIDH implementation at such a radical reduction of the value of
.
So, a linear estimate of the gain in computational speed due to the optimization of the isogeny degree distribution is equal to . Together with the total gain of the previous sections, we obtain a speedup of the CSIIDH algorithm by a factor of times.
6. CSIKE Algorithm
The classical non-interactive Diffie-Hellman algorithm is based on the use of two public keys. The same problem of generating a shared secret can be solved in protocol with one transmission session and one recipient’s public key, which is more secure. To do this, Alice generates a shared secret, encrypts it with Bob’s public key, and sends him the encrypted key. On receipt, Bob decrypts it with his secret key. This protocol is called key encapsulation. It involves the steps [
23]:
Secret key generation . Alice uses a random number sensor to find the secret encapsulation vector , constructs the class function of the class group action and computes an isogenic curve , whose parameter is taken as the secret key .
Key encapsulation. It’s Alice’s procedure for encrypting the key with Bob’s public key . To do this, Alice computes an isogenic curve . The parameter of this curve is sent to Bob.
Key decapsulation. Bob’s decryption of the curve with his secret key is reduced to his computation of an isogenic curve where the mapping is constructed by inversion of all signs of the exponents of Bob’s secret key .
In [
15], the original CSIKE algorithm was proposed as a modification of CSIDH, replacing Alice’s secret key with a secret vector
, with which she computes a curve
and the shared secret key
. Alice then encrypts it with Bob’s public key
. and computes the curve
. Bob decapsulates his cipher using a multiplicative inverse function
(such that
, where
), thereby restoring the curve
. As the key of encapsulation by both parties, we can take
J-invariant of the curve
.
We consider a simple model of the implementation of the CSIKE algorithm on quadratic and twisted supersingular Edwards curves that form pairs of quadratic twist curves with order
. Such curves exist only at
and have order
Let such a pair of curves contain kernels of order 3, 5, and 7. At the value
of the minimal prime
, then the order of these curves
. The parameter
of the whole family of 418 quadratic Edwards curves can be taken as squares
Of these, 66 pairs of quadratic and twisted supersingular Edwards curves are found with parameters
and
Table 2 summarizes the values of the parameter
for pairs of quadratic
and twisted
supersingular Edwards curves. They are written as squares
in ascending order
. In this example, the relative proportion of supersingular Edwards curves is close to 16%. Note that for each curve in
Table 2, there is at least one isomorphic curve with a parameter
and the same
J-invariant (6).
For the first quadratic curve
from
Table 2, we can construct 3-, 5-, and 7-isogenies and find the parameters
of a chain of isogenic curves
such that
. Period
of the chain of isogenies divides the number
of all supersingular Edwards curves. The calculations of the parameters of
chains of respectively 3-, 5-, and 7-isogenies quadratic supersingular Edwards curves are useful only for illustrating the properties of chains of isogenies of quadratic twist pair curves and we omit them in this article. We only note that the period of the 3-isogeny
and the other two
The fragments of isogenic chains of quadratic supersingular Edwards curves in the tables are read from left to right, for twisted ones—from right to left. At each step
isogeny of degree
coordinates
points of the kernel, after which the parameter of the
of the isogenic curve
according to (12) is calculated. Calculation of the isogenic function
, according to Algorithm 1 of
Section 4 is not necessary.
Example 1. Suppose Alice has generated a secret vector which by isogenic mapping at the first stage transforms it into a shared secret key i.e., calculates the curve
Then at the second stage, she encrypts this key with Bob’s public key. Let Bob’s secret , respectively, its function of the class-group action Let us perform their key computations As the starting curve of the chain of isogenies, we take the curve . Then , .
To simplify the record in the algorithm for calculating the isogenic curve
we will use only the parameters
which completely defines the curves
and
as pairs of quadratic twists. In the parameter chain
below we write in parentheses the degree of isogeny, above the arrow the number of steps with the exponent sign
For example, according to the function
and the curve
without resorting to the randomization method (see
Section 4), Alice computes a chain of
So, the shared secret key
. Similarly, Bob calculates his public key based on the curve
and a function
So Bob’s public key
. Then, in the second encapsulation step, Alice encrypts Bob’s public key with the secret key
and calculates
.
Finally, in the third step of decapsulation, Bob from the curve
removes his secret key using the inverse function
He ends up with a shared secret key calculated for him by Alice. To avoid ambiguity when obtaining isomorphic curves, J-invariant (7) is taken as the encapsulation key by both parties curve .
The above example gives a concise illustration of the CSIKE algorithm. Its efficiency increases significantly after using the randomization method (see
Section 4). For example, Alice’s computation of the encapsulation key
based on the secret vector
can be realized by a pseudo-random chain of isogenic curves in 20 steps
This result is, understandably, the same as the first result above. In
Table 2, exactly half of the parameters
are marked with asterisks. These 33 values are included in the period
3-isogeny and form a set of parameters
of the first cryptosystem with the starting curve
(or any other curve of this set
). In our example, all isogenic curves belong to this set. The parameters not labeled in
Table 2 form the set of 33-parameter
isomorphic curves, on which we can build a second cryptosystem independent of the first one with the possibility of parallel computation. For example, from the starting curve with
parameter inversion we come to an isomorphic curve
of the second cryptosystem (see
Table 2). Further, by specifying different secrets
and
in the two cryptosystems, we can double the key length (
bit in CSIDH). Parallel computation, moreover, makes a side-channel attack hopeless. Note also that this possibility arises when only classes of non-cyclic Edwards curves (5) and (6) are used.
We can conclude that the CSIKE algorithm and modifications of the CSIDH algorithm proposed in our works [
15] on quadratic and twisted supersingular Edwards curves provide an efficient and secure alternative to various variants of “Constant time CSIDH” [
21,
22] with lower estimates in computational speed up to
. Computation of odd degree isogenies in coordinates
[
7], allows us to realize the fastest computations to date in the construction of PQC protocols CSIDH, CSIKE, and similar. Examples of such implementation for simple models of CSIDH and CSIKE algorithms are given in [
12,
13,
14,
15,
16,
17]. The possibility of refusing to compute the isogenic function
of a random point
, which more than doubles the speedup of the algorithm, is justified. The above results cast doubt on the assertion of the author of [
24] about the insufficient efficiency of the CSIDH algorithm. The largest computational costs in the algorithms are associated with scalar multiplications of random points, the costs of which require rather experimental evaluation.
7. CRS Encryption Scheme on Isogenies of Ordinary Non-Cyclic Edwards Curves
The presentation of Castryck et al. [
4] of the PQC CSIDH algorithm cites the CRS scheme as the first proposed scheme on isogenies of ordinary elliptic curves [
5]. Its remarkable properties are the commutativity of isogenic transitions, flexibility, and simplicity due to the use of prime field arithmetic
. The CSIDH algorithm already uses the technology of supersingular elliptic curves, which is justified by the relatively faster implementation of the algorithms. For example, it is noted that CRS encryption is prohibitively slow and can take several minutes at a security level of 128 bits [
4].
In [
17], we attempted to find reasons for the slowness of the CRS scheme compared to CSIDH and found only immeasurable redundancy in the choice of cryptosystem parameters [
5,
6]. Then, dealing with the modeling and modification problems of CSIDH, we constructed a prime 4-isogenous model of the CRS scheme with degrees
with our modifications [
17]. Since the set of ordinary elliptic curves is approximately
times wider than the set of supersingular curves, we should expect that their advantages would be discovered as well. Indeed, such advantages turned out to be the growth of the number of degrees of isogenies at a given or close modulus of the
field, and the presence of four parallel independent cryptosystems instead of two in CSIDH, which doubles the speed of the CRS scheme algorithm comparably to CSIDH.
In this survey article, we only consider aspects related to the encryption model and omit the multifunctionality of the scheme described in the original article [
17].
The order of an elliptic curve
over a prime field
is defined as
, where
is the trace of the Frobenius endomorphism equation
. For a curve of quadratic twist
this order
is symmetric concerning the mean value
. For the supersingular curve
and the orders of both curves
coincide and the sets of isogeny degrees are the same, but the signs of the exponents of the degrees are reversed, as in CSIDH. In the case of ordinary curves, the orders of the quadratic twist pairs differ by
, then there exist different degrees of isogenies on curves of two classes related as quadratic twist pairs with different orders. This is the main specificity of ordinary curves. The exponents of the degrees of isogenies of these two curves, as in CSIDH, have opposite signs. The alternation of the degrees of isogenies according to the randomization method is random, and the simplicity of the transitions of the chain of isogenies from one class of non-cyclic Edwards curves (5) and (6) to another is achieved by the fact that their parameters are additively inverse:
(see
Section 2).
By analogy with CSIDH, it is not difficult to form general parameters of CRS—similar cryptosystem on isogenies of ordinary Edwards curves of order over a field with modulus . Let and is the order of a quadratic supersingular Edwards curve over a field with modulus Setting the values of the Frobenius trace we determine the sum , equal to a prime number . Then over the field there exists a quadratic ordinary Edwards curve (5) of order and a twisted curve (6) of order .
For example, for the set of degrees of isogenies {, then at we obtain a prime number . Thus the orders of the curves of the pair of quadratic twists are and , .
Other variants of calculating the ordinary Edwards curve parameters are given in [
17]. Thus, we have four degrees of isogenies
, the first three of which are factors of order 840 of the quadratic curve (5), and degrees 3 and 37 share order 888 of the twisted curve (6) over the field
and the trace of the Frobenius endomorphism equation
For the first curve (5), the signs of the exponents of the isogenies are
and for the curve (6)
. Here degree 3 is bidirectional (admits both signs), and degrees 5 and 7 (
) and 37 (
) are unidirectional.
With a relatively small field modulus
it is not difficult to find the estimated
parameters
of all curves (5) with order 840. Since they are squares, a complete search modulo
of all
and
yields the set of all 62 values of the parameters
d of the ordinary Edwards curves (5) and (6) given in
Table 3. All curves together, respectively, are 124. Here the number of parameters is even since for each curve there exists an isomorphic curve with parameter
and the same
J-invariant (7). For example,
,
. Then there are 31 non-isomorphic curves (5), the same number of curves (6). Isogenies of all degrees have a prime period
All parameter values of
Table 3 can be found by computing chains of any degree isogeny
in period
. For example, let us compute the chain of 3-isogenies of the quadratic curve (5) in the same way as in [
13] for CSIDH on supersingular curves of order 840 over the field
. Choosing the first curve in
Table 3 as the starting curve, we obtain for the curve (5)
The number above Arrow 1 denotes one step of the 3-isogeny chain of the quadratic ordinary Edwards curve (5) with exponent . Under the value of the parameter in parentheses, we write the degree of isogeny.
For the curved curve (6) with
there also exists a 3-isogeny of the same period
31
having a reverse order of alternation of isogenic curves (the last chain and (23) are read in reverse order). The number above the arrow (–1) means one step of the isogenic curve (6) with negative parameters. Do not forget that the pair of twist curves
and
here are orders of 840 and 888, respectively. For any other degree of isogeny, we can construct similar (23) and (24) chains of isogenic curves of period
with the same set of parameters
, but with different orders of alternation. In
Table 3, these 31 parameters
are marked with asterisks. This is the set of parameters
of the first cryptosystem. Inverting each parameter
we get unlabeled 31 parameters
of the second cryptosystem. As in
Section 6 when describing CSIKE (CSIDH), here we also have two isomorphic cryptosystems with the possibility of parallel computation.
A remarkable property of ordinary curves in comparison with supersingular curves is the existence of two more isomorphic cryptosystems. The idea is prime: we can swap the orders of the quadratic (5) and twisted (6) ordinary Edwards curves. The corresponding cryptosystem will be called dual.
Let the orders of the curves (5) and (6) over the field
,
For a dual cryptosystem, we can compute an array of parameter values
instead of the brute-force method for
Table 3. Let us find just one curve (5) with an order
and parameter
Let us compute a 37-isogeny chain like (23) with a starting value
, and its values marked with an asterisk are entered in the first three rows of
Table 4. In the same sequence, in the next three rows of the array, we will write the inverted values of the
of the isomorphic curves (not marked with an asterisk). The upper and lower parts of
Table 4 form equal-sized sets of the parameters of the
of two isomorphic dual cryptosystems.
So, using an ordinary instead of supersingular Edwards curve, we get four independent cryptosystems instead of two, which in parallel computing provides a 4-fold gain in cryptosystem performance compared to classical CSIDH. The parallel computation must make it impossible to realize side channel attack and redundancy in “constant time CSIDH” meaningless. Redundant cryptosystems can be used both for the 4-fold increase of key length in encapsulation algorithms and for simplification of the algorithm (reducing the number of isogeny degrees at fixed key length).
Let us consider an example of the implementation of the Diffie-Hellman secret-sharing algorithm on the first cryptosystem with 31 parameters
from
Table 4. In our model with isogenies of degrees
, to equalize the selection probabilities of the quadratic twist pair curves, we assume all degrees are unidirectional, then in the secret keys of degrees
we attribute the quadratic curve
and degrees
to the twisted curve
Let’s take Alice’s secret keys
and Bob’s
Let’s compute for 12 randomly chosen isogeny steps for each of their public keys.
Alice’s public key with randomly chosen curves and degrees is defined as
Bob’s similar calculations give
As a result, the two parties have public keys
and
. Next, Alice uses her secret key to compute
curve
Bob’s symmetric calculus
give the same result due to the commutativity of isogenies
, which defines the quadratic curve
of the shared secret. As noted above, this value is unique (for a given starting curve). It is not required here in the shared secret
to go to the J-invariant. Similar calculations with other starting curves and keys can be performed in parallel in other 3-independent cryptosystems to solve different problems.