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.