You are currently viewing a new version of our website. To view the old version click .
Mathematics
  • Article
  • Open Access

7 May 2020

A Group Law on the Projective Plane with Applications in Public Key Cryptography †

,
and
1
Departamento de Automática, Universidad de Alcalá, E-28871 Alcalá de Henares, Spain
2
Instituto de Tecnologías Físicas y de la Información (ITEFI) Consejo Superior de Investigaciones Científicas (CSIC), E-28006 Madrid, Spain
*
Authors to whom correspondence should be addressed.
A preliminary version of this manuscript can be found at arXiv.org under the URL: https://arxiv.org/abs/1802.00246.
This article belongs to the Special Issue Mathematics Cryptography and Information Security

Abstract

In the context of new threats to Public Key Cryptography arising from a growing computational power both in classic and in quantum worlds, we present a new group law defined on a subset of the projective plane F P 2 over an arbitrary field F , which lends itself to applications in Public Key Cryptography and turns out to be more efficient in terms of computational resources. In particular, we give explicitly the number of base field operations needed to perform the mentioned group law. Based on it, we present a Diffie-Hellman-like key agreement protocol. We analyze the computational difficulty of solving the mathematical problem underlying the proposed Abelian group law and we prove that the security of our proposal is equivalent to the discrete logarithm problem in the multiplicative group of the cubic extension of the finite field considered. We present an experimental setup in order to show real computation times along a comparison with the group operation in the group of points of an elliptic curve. Based on current state-of-the-art algorithms, we provide parameter ranges suitable for real world applications. Finally, we present a promising variant of the proposed group law, by moving from the base field F to the ring Z / p q Z , and we explain how the security becomes enhanced, though at the cost of a longer key length.
MSC:
Primary 20K01; Secondary 12F05; 14H50; 15A04; 68Q25; 94A60

2. The Group Law Defined

Our purpose in this section is to search for a particular (finite) group endowed with an internal operation that makes it cyclic provided that certain conditions hold. In the latter case, we define yet another (discrete) logarithm operation, which, if found to be difficult to carry out, may give rise to cryptographic applications.
We will work with three-dimensional vector spaces and their associated two-dimensional projective spaces, defined over finite fields. We will consider certain cubic curve defined over this ambient projective space, so that the set over which we will define our new group operation is precisely the set of points of the projective space that do not belong to that cubic curve.
We will show the conditions under which the cubic curve has no points in the projective space, which means that the group embraces the the full projective space. We will provide the explicit formulas to compute the group law in the base field and the good piece of news is that these formulas are the same for any of the elements in the group, a feature much cherished in cryptographic settings.
Let F be a field and let us consider a linear endomorphism A : V V of the vector space V = F 3 . We define the polynomial Q ( x ) = det ( x 1 I + x 2 A + x 3 A 2 ) , where x = ( x 1 , x 2 , x 3 ) V . The polynomial Q is homogeneous of degree 3, and does not depend on A, but only on the characteristic polynomial χ ( X ) of A.
A new group law is proposed : V × V V . Let the multiplicative group F act on V by the diagonal action, i.e., λ · ( x 1 , x 2 , x 3 ) = ( λ x 1 , λ x 2 , λ x 3 ) , and let F P 2 denote the projective plane, namely F P 2 = ( V \ { ( 0 , 0 , 0 ) } ) / F . Then, the proposed group law induces an Abelian group law on F P 2 \ Q 1 ( 0 ) .
If the characteristic polynomial χ ( X ) is irreducible in F [ X ] , then Q 1 ( 0 ) = { ( 0 , 0 , 0 ) } , and therefore the group law extends to the whole projective plane F P 2 ; moreover, if the base field is a finite field F q , with characteristic different from 2 or 3, then the group G = ( F q P 2 , ) is proved to be cyclic.
The latter property permits us to apply the notion of discrete logarithm to the group G . If we fix a generator g F q P 2 , then any element h of the group is the addition of g with itself a finite number of times, say n, so that h = g g ( n ) g = [ n ] g . The number n is the logarithm of h to the base g.
Given any element h G , and a generator g of the group, the discrete logarithm problem (DLP) consists of finding the smallest integer n, such that h = [ n ] g . In this work, we prove that the DLP over G with a proper choice of the generator is equivalent to the DLP over the multiplicative group ( F q 3 ) .
Popular current cryptosystems are based on the discrete logarithm problem over different groups, such as the group of invertible elements in a finite field, or the group of points of an elliptic curve with the addition of points as group operation. Our proposal could fit perfectly well in the same niche.
As is the case for analogous public key protocols, the users of the present proposal agree to a single base field F q and an (irreducible) polynomial:
χ ( X ) = X 3 c 1 X 2 c 2 X c 3 , c 1 , c 2 , c 3 F q .
The public system parameters include the base field F q , coefficients c 1 , c 2 , c 3 F q , and a generator g.
Next, we prove that the polynomial Q does not depend on A, but only on the characteristic polynomial χ ( X ) of A.
Lemma 1.
Let F be a field and let V be the vector space F 3 . If A : V V is a linear map such that the endomorphisms I , A , A 2 are linearly independent, then the homogeneous cubic polynomial Q ( x ) = det ( x 1 I + x 2 A + x 3 A 2 ) does not depend on the matrix A but only on the coefficients c 1 , c 2 , c 3 of its characteristic polynomial χ ( X ) = X 3 c 1 X 2 c 2 X c 3 .
Proof. 
Let F ¯ be the algebraic closure of F . As the endomorphisms I , A , A 2 are linearly independent, the annihilator polynomial of A coincides with χ ( X ) by virtue of the Cayley-Hamilton theorem. Hence, there exists a basis of F ¯ 3 such that the matrix of A in this basis equals one of the following three matrices:
M 1 = α 1 0 0 0 α 2 0 0 0 α 3 , M 2 = α 1 0 0 0 α 2 0 0 1 α 2 , M 3 = α 1 0 0 1 α 1 0 0 1 α 1 ,
and, from a simple calculation, we obtain
Q ( x ) = det ( x 1 I + x 2 M i + x 3 ( M i ) 2 ) = c 2 x 1 ( x 2 ) 2 + ( c 2 ) 2 2 ( c 1 c 3 ) x 1 ( x 3 ) 2 + c 1 ( x 1 ) 2 x 2 + ( c 1 ) 2 + 2 c 2 ( x 1 ) 2 x 3 ( c 2 c 3 ) x 2 ( x 3 ) 2 + ( c 1 c 3 ) ( x 2 ) 2 x 3 c 1 c 2 + 3 c 3 x 1 x 2 x 3 + ( x 1 ) 3 + c 3 ( x 2 ) 3 + ( c 3 ) 2 ( x 3 ) 3 ,
for every i = 1 , 2 , 3 . □
Theorem 1.
Every linear map A : V V such that the endomorphisms I , A , A 2 are linearly independent, induces a law of composition
: V × V V , ( x , y ) z = x y ,
by the following formula:
z 1 I + z 2 A + z 3 A 2 = x 1 I + x 2 A + x 3 A 2 y 1 I + y 2 A + y 3 A 2 ,
where x = ( x 1 , x 2 , x 3 ) , y = ( y 1 , y 2 , y 3 ) , z = ( z 1 , z 2 , z 3 ) .
Moreover, the set of elements x V such that x y = ( 0 , 0 , 0 ) for some element y in V \ { ( 0 , 0 , 0 ) } coincides with the set Q 1 ( 0 ) , and induces a group law
: ( F 3 \ Q 1 ( 0 ) ) × ( F 3 \ Q 1 ( 0 ) ) ( F 3 \ Q 1 ( 0 ) ) .
If C denotes the projective cubic curve defined by Q ( x ) = 0 , then the group law also induces a group law
: ( F P 2 \ C ) × ( F P 2 \ C ) F P 2 \ C .
Proof. 
As A 3 = c 1 A 2 + c 2 A + c 3 I , and
A 2 · A 2 = A · A 3 = c 1 c 3 I + c 1 c 2 + c 3 A + ( c 1 ) 2 + c 2 A 2 ,
from the formula in (3), it follows:
z 1 = x 1 y 1 + c 3 x 2 y 3 + x 3 y 2 + c 1 c 3 x 3 y 3 , z 2 = x 1 y 2 + x 2 y 1 + c 2 x 2 y 3 + x 3 y 2 + c 1 c 2 + c 3 x 3 y 3 , z 3 = x 2 y 2 + x 1 y 3 + x 3 y 1 + c 1 x 2 y 3 + x 3 y 2 + ( c 1 ) 2 + c 2 x 3 y 3 .
In matrix notation, these formulas can equivalently be written as
z 1 z 2 z 3 = x 1 c 3 x 3 c 1 c 3 x 3 + c 3 x 2 x 2 x 1 + c 2 x 3 c 2 x 2 + c 3 x 3 + c 1 c 2 x 3 x 3 x 2 + c 1 x 3 x 1 + ( c 1 ) 2 x 3 + c 1 x 2 + c 2 x 3 y 1 y 2 y 3 ,
and as a simple computation shows, the determinant of the linear system above is equal to Q ( x ) , where Q is defined by the formula (2). Hence, x y = ( 0 , 0 , 0 ) , for some y in V \ { ( 0 , 0 , 0 ) } , if and only if Q ( x ) = 0 .
The commutativity of ⊕ is a direct consequence of the invariance of the formula (4) under the substitutions x i y i , y i x i , 1 i 3 .
Moreover, formula (3) can also be written as follows:
x y 1 I + x y 2 A + x y 3 A 2 = x 1 I + x 2 A + x 3 A 2 y 1 I + y 2 A + y 3 A 2 .
From the associativity of the composition law of endomorphisms, we deduce
x ( y z ) 1 I + x ( y z ) 2 A + x ( y z ) 3 A 2 = x 1 I + x 2 A + x 3 A 2 · y 1 I + y 2 A + y 3 A 2 · z 1 I + z 2 A + z 3 A 2 = x 1 I + x 2 A + x 3 A 2 · y 1 I + y 2 A + y 3 A 2 · z 1 I + z 2 A + z 3 A 2 = ( x y ) z 1 I + ( x y ) z 2 A + ( x y ) z 3 A 2 .
Hence, x ( y z ) = ( x y ) z , x , y , z V .
From Equation (4), it follows that the unit element is the point ( 1 , 0 , 0 ) , which does not belong to Q 1 ( 0 ) since Q ( 1 , 0 , 0 ) = 1 .
By taking determinants in Equation (3), we obtain
Q ( x y ) = Q ( x ) Q ( y ) , x , y V .
Therefore, the opposite element y of x exists and it is given by the following formulas:
y 1 = 1 Q ( x ) c 1 x 1 x 2 + ( c 1 ) 2 + 2 c 2 x 1 x 3 c 3 + c 1 c 2 x 2 x 3 + ( x 1 ) 2 c 2 ( x 2 ) 2 + ( c 2 ) 2 c 1 c 3 ( x 3 ) 2 , y 2 = 1 Q ( x ) x 1 x 2 + ( c 1 ) 2 x 2 x 3 + c 1 ( x 2 ) 2 c 1 c 2 + c 3 ( x 3 ) 2 , y 3 = 1 Q ( x ) x 1 x 3 + c 1 x 2 x 3 + ( x 2 ) 2 c 2 ( x 3 ) 2 .
Finally, if x , y are replaced by λ x , μ y , respectively, with λ , μ F , then z transforms into λ μ z , thus proving that the group law projects onto F P 2 \ C . □
Remark 1.
Note that the Equations (4), allowing one to compute the group operation in terms of the coefficients in the ground field, are applicable to any element of the group, with no exception at all.
Remark 2.
If v 1 = ( 1 , 0 , 0 ) , v 2 = ( 0 , 1 , 0 ) , v 3 = ( 0 , 0 , 1 ) , then, from Equation (2), we obtain Q ( v 2 ) = c 3 , Q ( v 3 ) = ( c 3 ) 2 . Hence, v 2 and v 3 belong to F 3 \ Q 1 ( 0 ) if and only if c 3 0 , i.e., when A is invertible.

2.1. The Basic Cubic

Proposition 1.
Let χ ( X ) = X 3 c 1 X 2 c 2 X c 3 F [ X ] be the polynomial introduced in Lemma 1 and let α = X mod χ . If N : F [ α ] F is the norm of the extension F [ α ] of F , then a point β = β 0 + β 1 α + β 2 α 2 belongs to the cubic curve C defined in Theorem 1 if and only if N ( β ) = 0 . In particular, if χ is irreducible in F [ X ] , then C has no point in F P 2 .
Proof. 
Every β F [ α ] induces an F -linear endomorphism E β : F [ α ] F [ α ] given by E β ( ξ ) = β · ξ , ξ F [ α ] , and, from the very definition of the norm, we have N ( β ) = det E β . As a computation shows, we obtain N ( β ) = Q ( β 0 , β 1 , β 2 ) , thus proving the first part of the statement.
Moreover, χ is irreducible if and only if F [ α ] is a field, and then the only element with norm 0 is in fact 0 F [ α ] . To see this, assume on the contrary that N ( x ) = 0 , with x 0 and x F [ α ] . Since the norm is a group homomorphism, we can write
1 = N ( 1 ) = N ( x · x 1 ) = N ( x ) · N ( x 1 ) = 0 · N ( x 1 ) = 0 ,
which is a contradiction. Consequently, the curve C has no point in F P 2 . □
Corollary 1.
The polynomial χ is irreducible in F [ X ] if and only if the cubic C is irreducible.
Proof. 
Actually, if χ factors in F [ X ] , say X 3 c 1 X 2 c 2 X c 3 = ( X h ) ( X 2 + k X + l ) , with h , k , l F , then we have
Q ( x ) = [ ( x 1 ) 2 + ( k 2 2 l ) x 1 x 3 + l ( x 2 ) 2 k l x 2 x 3 + l 2 ( x 3 ) 2 k x 1 x 2 ] [ x 1 + h x 2 + h 2 x 3 ] .
Conversely, if χ is irreducible in F [ X ] , then, according to the second part of Proposition 1, the only solution to the cubic equation Q ( x ) = 0 is x = 0 . Hence, Q must be irreducible, as a reducible cubic admits non-trivial solutions in the ground field. □
Corollary 2.
If the characteristic polynomial χ of A is irreducible in F [ X ] , then there is no linear transformation ( λ i j ) i , j = 1 3 G L ( F , 3 ) reducing the polynomial Q defined in (2) to Weierstrass form.
Proof. 
Replacing x j by X j = i = 1 3 λ i j x i , 1 j 3 , in (2), we obtain a cubic Q ¯ , which is in Weierstrass form (see [] [§2.1]) if and only if the coefficients a, b, and c of the terms ( x 3 ) 3 , ( x 1 ) 2 x 2 , and x 1 ( x 2 ) 2 , respectively, vanish. As a computation shows, we have a = Q ¯ ( λ 31 , λ 32 , λ 33 ) , and we can conclude by applying Proposition 1. □

2.2. Cyclicity

Theorem 2.
If F q is a finite field of characteristic different from 2 or 3 and the polynomial χ ( X ) = X 3 c 1 X 2 c 2 X c 3 introduced in Lemma 1 is irreducible in F q [ X ] , then the group G = ( F q P 2 , ) is cyclic.
Proof. 
Since char F q 2 , 3 , the polynomial χ is separable and in its splitting field F q we have χ ( X ) = ( X α 1 ) ( X α 2 ) ( X α 3 ) , the roots α 1 , α 2 , α 3 being pairwise distinct, and in a certain basis of F q F q V the matrix of A is given by the formula (1). As the Galois group G ( F q / F q ) acts transitively on the roots of χ , there exist two automorphisms such that σ 2 ( α 1 ) = α 2 and σ 3 ( α 1 ) = α 3 . If β = β 1 + β 2 α 1 + β 3 ( α 1 ) 2 , β i F q , 1 i 3 , is an element in F q [ α 1 ] F q 3 , then, for every positive integer n, we have
β 1 I + β 2 A + β 3 A 2 n = β n 0 0 0 σ 2 β n 0 0 0 σ 3 β n .
Consequently, if β is a generator of the multiplicative group ( F q 3 ) , then the vector ( β 1 , β 2 , β 3 ) generates the group ( ( F q ) 3 \ { ( 0 , 0 , 0 ) } , ) and its corresponding projective point [ β 1 , β 2 , β 3 ] = ( β 1 , β 2 , β 3 ) mod F q generates the group G , with F q P 2 = ( F q ) 3 \ { ( 0 , 0 , 0 ) } / F q . □
Remark 3.
It is important to keep in mind that the implication in Theorem 2 works only in the way in which it is worded. If one selects a generator of the group G , it will in general be a generator of only a subgroup of the whole ( F q 3 ) group. Consequently, when choosing a generator for G , it is convenient to pick it from the set of generators in ( F q 3 ) and, after that, project it onto F q P 2 .
Remark 4.
As the order of the group G = ( F q P 2 , ) is q 2 + q + 1 , the statement of Theorem 2 means that there exists an element β G of order q 2 + q + 1 . According to the proof of Theorem 2, this is equivalent to saying that the matrix A in (1) is of order q 2 + q + 1 in the linear group G L ( F q , 3 ) . A classical result (see [] [Theorem, p. 379]) states that such a collineation always exists, but we need a direct proof of this fact to be able to apply it below in Section 3.1; see also [] [Proposition 2.1].
Remark 5.
When the polynomial χ is reducible, experimental tests carried out in the prime field F p show that the projective cubic curve C defined as Q ( x ) = 0 has a number of points from the set { p + 2 , 2 p + 1 , 3 p , p + 1 } only.
Since the projective space F p P 2 has a total of p 2 + p + 1 points, the group ( F p P 2 \ C , ) is left, respectively, with { p 2 1 , p 2 p , ( p 1 ) 2 , p 2 } points.
If the number of points of C is either p + 2 or 2 p + 1 , then the group ( F p P 2 \ C , ) is still cyclic, and has the expected number of generators, namely, either φ ( p 2 1 ) or φ ( p 2 p ) , respectively, where φ is Euler’s totient function.
However, none of the other two possibilities give rise to a cyclic group. Rather, for the case where C has 3 p points, there appears a number of cyclic groups, whose cardinalities are the divisors of p 1 ; it is important to remark that the total number of points left for the group is precisely ( p 1 ) 2 . Thus, the group ( F p P 2 \ C , ) can be decomposed as a direct sum of a number of cyclic groups such that the product of their cardinalities is ( p 1 ) 2 .
As for the case when C has p + 1 points, the group ( F p P 2 \ C , ) is not cyclic either and can be decomposed as a direct sum of 2 cyclic groups with p points each. Remark that now the total number of points left for the group is p 2 , so again the numbers of points of the cyclic groups of this case match the divisors of p.
Remark 6.
Hasse’s theorem states [] [Theorem 4.1] that the number of points in an elliptic curve E ( F q ) verifies that | # E ( F q ) ( q + 1 ) | 2 q , i.e., # E ( F q ) = O ( q ) . However, the projective space in our proposal has O ( q 2 ) points, thus rendering brute-force and known-message attacks much more difficult.

3. A Cryptographic Protocol

We have presented the group G = ( F q P 2 , ) and the conditions under which it is cyclic. In this section, we will show how this group can be profited as a basic building block for cryptographic applications, and we will assess its cryptographic security level.
We resort to current state-of-the-art algorithms deployed to attack the discrete logarithm problem. Among them, index-calculus algorithm stands out since it displays a subexponential expected running time.
Equipped with these tools, we will show how this group permits us to set up a basic, à la Diffie-Hellman, key-exchange protocol, and what cryptographic security is to be expected from it. Actually, we will present the range in which the protocol setup parameters should lie in order to achieve a certain security level.
We also provide an experimental setup that we have carried out in order to obtain computation times for the new group operation on a real setting, along with a comparison with computation times required to sum points on elliptic curves.
First of all, we establish the computational security of the mathematical problem defined over the cyclic group considered. Later on, as an example of cryptographic protocol, we present a Diffie-Hellman-like key agreement protocol.

3.1. Equivalence of DLP in G and ( F q 3 )

Proposition 2.
Let F q be a finite field of characteristic 2 or 3. Assume the polynomial χ ( X ) = X 3 c 1 X 2 c 2 X c 3 in Lemma 1 is irreducible in F q [ X ] , and let α F q 3 be a root of χ.
If ( γ 1 , γ 2 , γ 3 ) is a generator of the group ( ( F q ) 3 \ { ( 0 , 0 , 0 ) } , ) and ( β 1 , β 2 , β 3 ) belongs to this group, then n N is a solution to the equation
β 1 , β 2 , β 3 = γ 1 , γ 2 , γ 3 ( n ) γ 1 , γ 2 , γ 3 ,
if and only if n is a solution to the equation β = γ n in the multiplicative group ( F q 3 ) , where β = β 1 + β 2 α + β 3 α 2 , and γ = γ 1 + γ 2 α + γ 3 α 2 .
Therefore, the DLP in the group ( ( F q ) 3 \ { ( 0 , 0 , 0 ) } , ) is equivalent to the DLP in ( F q 3 ) .
Proof. 
Letting α = α 1 , the statement follows from the matrix formula in the proof of Theorem 2 taking the very definition of the group law ⊕ by formula (3) into account. □
In the present case, Proposition 2 states the “equivalence” because the reduction of problems (see, for example, [] [p. 5], [] [Ch. 8]) works both ways, namely, DLP in the group ( ( F q ) 3 \ { ( 0 , 0 , 0 ) } , ) reduces to the DLP in ( F q 3 ) and the other way around. Hence, Proposition 2 proves that the use of the group G = ( F q P 2 , ) is safe for standard implementations in PKC (e.g., see [] [§1.6]), since the security it provides is equivalent to that of DLP in ( F q 3 ) , as long as the caveat stated in Remark 3 is taken into account.
In terms of cryptanalysis, logarithms in G can be computed using “generic” algorithms, i.e., those that assume no particular structure in (or extra knowledge of) the group. The most popular ones are Pohlig-Hellman (which reduces the computation in the whole group to the computation of the logarithm in all subgroups of prime order of G ), Shank’s Baby Step/Giant Step, and Pollard’s Rho algorithm. All of them need an exponential computation time.
However, there exists the so-called index-calculus algorithm, which is much faster as it is able to compute discrete logarithms in the multiplicative group of a finite field in subexponential time (see, e.g., []). Since the operations in the proposed group G = ( F q P 2 , ) can be efficiently transferred to those in ( F q 3 ) , it follows that index-calculus algorithm can be applied to the multiplicative group of the latter. This fact does not render the group operation automatically useless in the face of possible cryptographic applications, as long as proper key lengths are utilized.
For general finite fields, such as the proposed one, with a multiplicative group of size N, current state-of-the-art algorithms (including index-calculus) report computation times of
L N ( α , c ) = exp ( c + o ( 1 ) ) ( log N ) α ( log log N ) 1 α ,
where α and c are parameters in the ranges 0 < α < 1 and c > 0 (sometimes c is omitted and we default to L N ( α ) ). Actually, α drives the transition from an exponential-time algorithm (when α approaches 1) to a pure polynomial-time algorithm (as α tends to 0).
The first subexponential algorithms had complexity L N ( 1 / 2 ) and applied only to prime fields. Soon L N ( 1 / 3 ) was achieved for any finite field, with values for c ranging from ( 64 / 3 ) 1 / 3 for fields with high characteristic to ( 128 / 9 ) 1 / 3 for medium characteristic. When dealing with small characteristic fields, recent research brought down the complexity to L N ( 1 / 4 ) [] and even to quasi-polynomial time [,]. If the group size is N = p n , and we write p = L p n ( l p ) , then the characteristic is considered “small”, “medium-sized” or “large” depending on whether l p 1 / 3 , 1 / 3 < l p < 2 / 3 , or l p 2 / 3 , respectively.
In any case, the previous results have been applied in practice and several cryptanalysis have been successfully carried out (see [,]), so it seems sensible to avoid using small characteristics and also extensions of moderate characteristic included in the range threatened by recent cryptanalytic techniques [,,]. However, these algorithms are heuristic and are proved to work only for certain particular cases, not difficult to circumvent: for example, if one has N = p n , it suffices to choose both p and n to be prime in order to thwart both [,]. For a detailed account of history and current status, see [] (in particular §4.2), and [].
Our proposal is to use a group G of prime order n = q 2 + q + 1 , over a ground field F q . Using formula (5), we can compute how many elements in G provide a given security level. Since the number of elements is roughly the square of the value of q, it follows that q can be represented with only one half of the bits needed for n. This has a direct impact on the computation time of the ⊕ operation in G , since it is performed in F q (see Equation (4) and cost analysis in Section 3.4).

3.2. System Setup and System Parameters for a Key Agreement Protocol

The group G = ( F q P 2 , ) lends readily itself as a building block for standard cryptographic applications to be constructed upon it. One of such applications is a Diffie-Hellman-like key agreement protocol, which will be described in the following sections.
In the sequel, we provide the necessary steps to set up the system. Moreover, the users also need to fix some system parameters.
System Setup
To set up the system, the following steps are in order:
  • Choose a ground field F q with characteristic different from 2 or 3, such that = q 2 + q + 1 is prime.
  • Select elements c 1 , c 2 , c 3 F q such that the polynomial
    χ ( X ) = X 3 c 1 X 2 c 2 X c 3
    is irreducible in F q [ X ] .
  • Consider F q 3 F q [ X ] / ( χ ( X ) ) . Select α ( F q 3 ) such that it is a generator of ( F q 3 ) .
  • Compute the coordinates of α seen as a vector over F q , which will be denoted as ( α 1 , α 2 , α 3 ) ( F q ) 3 \ { ( 0 , 0 , 0 ) } .
  • Consider a projection π : ( F q ) 3 \ { ( 0 , 0 , 0 ) } F q P 2 , such that [ β 1 , β 2 , β 3 ] = π ( α 1 , α 2 , α 3 ) , and Q ( β 1 , β 2 , β 3 ) = 1 .
    Observe that N ( α ) = Q ( α 1 , α 2 , α 3 ) (see proof of Proposition 1). If we compute a = N ( α ) e , where e = 3 1 ( mod q 1 ) , we have that N ( a α ) = 1 . Therefore, the projection π consists simply in computing β i = a α i , for 1 i 3 .
    Defining the projection π in this way is convenient, since it automatically gives rise to a generator in F q P 2 with a unitary norm, which means that all the elements generated by it will enjoy also a unitary norm.
    Remark en passant that the previous device works only if 3 is invertible in Z q 1 . Fortunately, this is always the case since otherwise the following implications hold: 3 | ( q 1 ) q 1 ( mod 3 ) = q 2 + q + 1 0 ( mod 3 ) and the latter equation would contradict the fact that we chose as a prime.
Remark 7.
In order to save space, we can always find an irreducible χ such that c 1 = 0 . Obviously, c 3 cannot be 0, but we may wonder whether we could in addition take c 2 = 0 . However, this is not possible according to [] (Lemma 7). The latter reference studies the number of irreducible binomials X t a F q [ X ] , with a F q , and concludes that the number of such irreducible binomials N t ( q ) is
N t ( q ) = φ ( t ) t ( q 1 ) , i f rad 4 ( t ) | ( q 1 ) , 0 , o t h e r w i s e .
The largest square-free number that divides t 0 is denoted by rad ( t ) and
rad 4 ( t ) = rad ( t ) i f 4 | / t 2 rad ( t ) o t h e r w i s e .
For our case, t = 3 , hence rad 4 ( t ) = 3 . However, then N t ( q ) = 0 , since we chose = q 2 + q + 1 to be a prime, thus implying 3 | / ( q 1 ) .
Accordingly, we conclude that c 1 and c 2 cannot be simultaneously taken as 0.
System Parameters
The system parameters are defined by the set S = { F q , [ β 1 , β 2 , β 3 ] , c 1 , c 2 , c 3 } , following the notation and conditions explained above.

3.3. The Key Agreement Protocol

The key agreement follows the well-known Diffie-Hellman paradigm. Any two users A , B , willing to agree on a common value, which remains secret, set up a system and agree on its parameters, as stated previously.
The protocol runs as follows:
  • User A selects n A Z uniformly at random, with = q 2 + q + 1 , computes
    [ γ 1 A , γ 2 A , γ 3 A ] = n A [ β 1 , β 2 , β 3 ] F q P 2
    and sends it to user B.
  • User B selects n B Z uniformly at random, computes
    [ γ 1 B , γ 2 B , γ 3 B ] = n B [ β 1 , β 2 , β 3 ] F q P 2
    and sends it to user A.
  • User A computes k A = n A [ γ 1 B , γ 2 B , γ 3 B ] .
  • User B computes k B = n B [ γ 1 A , γ 2 A , γ 3 A ] .
According to the definitions, the following equalities clearly hold:
k A = n A [ γ 1 B , γ 2 B , γ 3 B ] = n A n B [ β 1 , β 2 , β 3 ] = n B n A [ β 1 , β 2 , β 3 ] = n B [ γ 1 A , γ 2 A , γ 3 A ] = k B .
Hence, the properties of the operation ⊕ in G ensure that actually k A = k B , which is the common value expected as the output of the protocol.

3.4. Cost of the Operation in G

Let S and P be the number of field operations in order to perform an addition and a multiplication respectively in F q . From the formula (4), it follows that the total number of operations for computing x y is equal to 10 S + 15 P , once the 2 S + 3 P precomputations of c 1 c 3 , c 1 c 2 + c 3 , and ( c 1 ) 2 + c 2 are assumed.

3.5. A Toy Example

We provide hereafter an example of computing a discrete logarithm by brute-force search. In general, this algorithm is, of course, infeasible, but we choose very small parameters in order to illustrate the operation of the group G .
Let us take the prime field F p , with p = 131 , for which p 2 + p + 1 = 17,293 is also a prime. Accordingly, the group G is cyclic. We set the parameters c 1 = 13 , c 2 = 18 , c 3 = 73 , since the polynomial χ ( X ) = X 3 13 X 2 18 X 73 is irreducible in F 131 .
We select the element x = ( 126 , 16 , 1 ) as a generator in ( F q 3 ) . As explained above, it is convenient to project it onto a unitary norm point of F q P 2 . To achieve this goal, we perform the following steps:
N ( x ) = Q ( 126 , 16 , 1 ) = 90 , e = 3 1 ( mod 130 ) = 87 , a = 1 / N ( x ) e = 23 , X = π ( x ) = a · ( 126 , 16 , 1 ) = [ 16 , 106 , 23 ] .
Observe that indeed Q ( 16 , 106 , 23 ) = 1 . We choose a target point y = ( 86 , 120 , 1 ) and performing a similar computation we get Y = [ 15 , 91 , 87 ] . The problem is to find the discrete logarithm of Y to the base X, i.e., find the integer n such that Y = n X . Iterating the operation, we carry out an exhaustive search:
[ 16 , 106 , 23 ] [ 44 , 78 , 53 ] [ 65 , 41 , 125 ] [ 40 , 50 , 43 ] [ 35 , 67 , 125 ] [ 115 , 59 , 58 ] [ 11 , 95 , 6 ] [ 8 , 69 , 62 ] [ 122 , 109 , 9 ] [ 15 , 91 , 87 ] .
Eventually, we come up with the target point. Since the operation has been iterated ten times, we conclude Y = 10 X for this particular pair, so that log X Y = 10 . Remark that, to perform each step, it suffices to follow the formula (4).

3.6. Experimental Results

We have conducted several experiments in order to assess the computation time of the ⊕ operation in G . The basic setup consists of selecting prime fields, F p , over which the ⊕ operation will be tested. Observe that, according to formula (4), performing the operation boils down to a number of additions and multiplications over the base field; hence, the expected computation time will depend on the size of its elements; informally, size (also known as bit length) means the number of bits in the binary representation of such elements. The selected prime fields, F p , will have increasing values for the size of p, i.e., increasing bit lengths in the representation of their elements.
Taking the previous considerations into account the experiment is conducted as follows: we take increasing values of p and, for each value, we perform all the required computations to add two random points in G , following formula (4). We repeat the experiment a large number of times for distinct points and record the mean computation time for each value of p.
In order to compare computation times, we repeated the same experiment for the point addition in elliptic curves over F p , using the same range of bit lengths. As before, the idea is selecting random points and adding them using, in particular, projective coordinates according to the formulas given in [] [§13.2.1.b]. Repeating the computation a large number of times, we record the mean computation time for each value of p. Choosing the point addition operation in elliptic curves as the term of comparison with the ⊕ operation seems sensible since both operations share a relatively large number of basic operations (namely, additions, multiplications, and inversions) in the ground field.
We implemented the experiments using Java SE Runtime Environment version 1.8.0_171-b11 and the execution was carried out on an Intel Core i7-4790 platform (Santa Clara, CA, USA) running at 3.60 GHz. We performed the experiment in the range 32–512 bits in steps of 32 bits.
The experiments yielded the results shown in Table 1. In each line, the first column represents the number of bits of the binary representation of the elements in F p , the ground field. The second and third columns represent the mean computation time needed to perform the addition of two points in the group G via the operation ⊕, and in an elliptic curve over F p , respectively. All the computation times are measured in microseconds.
Table 1. Computation time for one single operation in each setting.
Having a visual idea of the results reported in Table 1 is best achieved by depicting them in a combined graph. To this end, we show in Figure 1 the graphical representation of the computation times for both operations, as reported in Table 1. Both graphs are conveniently labeled so that one of them depicts the computation time for the ⊕ operation in G , and the other one depicts the computation time for the point addition in elliptic curves over F p . The x-axis represents the bit length of p common for both operations.
Figure 1. Comparison of average computation times for both settings.
The graph pushes to the foreground some interesting remarks:
  • The computation times shown in Figure 1 for both settings show a essentially linear growth, which is convenient in view of practical applications.
  • Though the point addition in elliptic curves is slightly slower than the ⊕ operation in G for the same bit length over the ground field, they keep a rather constant ratio between them, which is roughly equal to 0.7 .

3.7. Real World Parameters

In order to assess the size for real world parameters, we resort to the recommendations issued by NIST []. These recommendations are based on the knowledge of the execution time of the best algorithms solving any particular problem. We will reproduce here an excerpt of Table 2 in that reference, which summarizes the bit sizes for the relevant parameters applicable to our proposal.
Table 2. Comparable cryptographic strengths.
We explain hereafter the meaning of the columns. To begin with, Security strength represents the binary logarithm of the estimated time taken by the best known algorithm for solving the problem (which is proportional to the number of cryptographic operations), thus breaking the cryptosystem. The center column, labeled as Group order, is related to the group where the cryptosystem is defined; in our case, it is the projective space F q P 2 where F q is the base field. In particular, each line in this column represents the binary logarithm of the number of elements in the projective space needed to achieve the security strength indicated in the leftmost column.
Since we propose that the number of points in the projective space is n = q 2 + q + 1 , the base field size (namely, the binary logarithm of q) is half the size of n, as represented in the rightmost column. Remark that this is a nice feature, since the multiplication cost in the base field is intimately related to the size of the latter.
Finally, the public key consists of one projective point. Since we chose unitary norm for such point, it can be represented with just two elements of the base field. Therefore, public key size is twice as much as the base field size (it needs twice as many bits).

4. A More Robust System

The security of the cryptosystem proposed in the previous sections can be increased by extending the theory developed for a field to the case of a unitary commutative ring R.
Essentially, we will stick to the ring Z / m Z , where m = p q is an integer, the product of two primes of similar size, p and q. We will strain ourselves in order to apply all the concepts developed in the previous sections to this new setting in an attempt to improve the security and efficiency of the proposed scheme.
We will manage to obtain the definition of a group law acting over the direct product of two projective spaces, F p P 2 × F q P 2 . In this new setting, the security is reinforced since an attacker is forced to sequentially solve an instance of the integer factorization problem and an instance (actually two instances, but they can be parallelized) of the discrete logarithm problem.
In fact, let M be a free R-module of finite rank and let A : M M be an R-linear map with characteristic polynomial χ A ( X ) = det ( X I Λ ) , X being an indeterminate, I the identity matrix of order r = rank M , and Λ the matrix of A in an arbitrary basis for M. According to [] [III, §8, 11.Proposition 20], the Cayley-Hamilton Theorem holds in this setting, namely χ A ( A ) = 0 .
Hence, if M = R 3 and χ A ( X ) = X 3 c 1 X 2 c 2 X c 3 , c 1 , c 2 , c 3 R , then A 3 = c 1 A 2 + c 2 A + c 3 I .
As above, we can define a degree-3 homogeneous polynomial in R [ x 1 , x 2 , x 3 ] by setting Q ( x 1 , x 2 , x 3 ) = det x 1 I + x 2 Λ + x 3 Λ 2 . As a computation shows, we have
Q ( x 1 , x 2 , x 3 ) = c 2 x 1 ( x 2 ) 2 + ( c 2 ) 2 2 ( c 1 c 3 ) x 1 ( x 3 ) 2 + c 1 ( x 1 ) 2 x 2 + ( c 1 ) 2 + 2 c 2 ( x 1 ) 2 x 3 ( c 2 c 3 ) x 2 ( x 3 ) 2 + ( c 1 c 3 ) ( x 2 ) 2 x 3 c 1 c 2 + 3 c 3 x 1 x 2 x 3 + ( x 1 ) 3 + c 3 ( x 2 ) 3 + ( c 3 ) 2 ( x 3 ) 3 ,
thus proving that Lemma 1 still holds in this case; i.e., Q depends on χ A only, but not on the matrix Λ .
The projective plane over R is then defined as follows: R P 2 = ( R 3 \ { 0 } ) / R , where R denotes the multiplicative group of invertible elements in R and R acts on R 3 \ { 0 } by
λ · ( x 1 , x 2 , x 3 ) = ( λ x 1 , λ x 2 , λ x 3 ) , λ R , ( x 1 , x 2 , x 3 ) R 3 \ { 0 } .
Proceeding as in the previous sections, a composition law : R 3 × R 3 R 3 , ( x , y ) z = x y , x = ( x 1 , x 2 , x 3 ) , y = ( y 1 , y 2 , y 3 ) , z = ( z 1 , z 2 , z 3 ) , can be defined by the formula
z 1 I + z 2 A + z 3 A 2 = x 1 I + x 2 A + x 3 A 2 y 1 I + y 2 A + y 3 A 2 ,
and similarly we deduce
z 1 z 2 z 3 = x 1 c 3 x 3 c 1 c 3 x 3 + c 3 x 2 x 2 x 1 + c 2 x 3 c 2 x 2 + c 3 x 3 + c 1 c 2 x 3 x 3 x 2 + c 1 x 3 x 1 + ( c 1 ) 2 x 3 + c 1 x 2 + c 2 x 3 y 1 y 2 y 3 .
The determinant of the matrix of (6) is equal to Q ( x 1 , x 2 , x 3 ) . Hence, ⊕ induces a composition law : Q 1 ( R ) × Q 1 ( R ) Q 1 ( R ) . If C denotes the set of classes modulo R of points x R 3 such that Q ( x ) R \ R , then ⊕ also induces a composition law : P Q 1 ( R ) × P Q 1 ( R ) P Q 1 ( R ) , where P Q 1 ( R ) = R P 2 \ C , as if Q ( x ) is invertible and λ R , then Q ( λ x ) = λ 3 Q ( x ) is also invertible.
The same proof given in the case of a field shows that the composition law ⊕ is associative, commutative, and admits an identity element, which is the vector ( 1 , 0 , 0 ) .
If m = p q with p q prime integers, then from Chinese Remainder Theorem there is a ring isomorphism between Z / m Z and the product ring F p × F q . Hence, each vector x R 3 can be assigned a pair ( x , x ) in ( F p ) 3 × ( F q ) 3 and the group ( Z / m Z ) = ( F p ) × ( F q ) acts on R 3 in the same way as ( F p ) acts on ( F p ) 3 and ( F q ) does on ( F q ) 3 .
Consequently, x 0 if and only if at least one of its two components x , x is distinct from 0 , so that
R 3 \ { 0 } = { 0 } × ( F q ) 3 \ { 0 } ( F p ) 3 \ { 0 } × { 0 } ( F p ) 3 \ { 0 } × ( F q ) 3 \ { 0 } .
Therefore, ( Z / p q Z ) P 2 = F p P 2 F q P 2 F p P 2 × F q P 2 .
Moreover, letting z = ( z , z ) = x y , as a computation shows, one obtains z = x y and z = x y , and Q ( x ) is invertible if and only if Q ( x ) mod p and Q ( x ) mod q both are invertible in Z / p Z and Z / q Z , respectively. If x R 3 corresponds to ( x , x ) in ( F p ) 3 × ( F q ) 3 , then Q ( x ) = ( Q ( x ) , Q ( x ) ) , where Q ( x ) = det x 1 I + x 2 Λ + x 3 Λ 2 , Q ( x ) = det x 1 I + x 2 Λ + x 3 Λ 2 , and Λ = Λ mod p , Λ = Λ mod q . Hence,
Q 1 ( R ) = ( x , x ) ( F p ) 3 × ( F q ) 3 : Q ( x ) 0 , Q ( x ) 0 .
We set
χ ( X ) = X 3 c 1 X 2 c 2 X c 3 F p [ X ] , c i = c i mod p χ ( X ) = X 3 c 1 X 2 c 2 X c 3 F q [ X ] , c i = c i mod q 1 i 3 .
If both χ and χ are irreducible polynomials in F p [ X ] and F q [ X ] , respectively, then, according to Proposition 1, the points of the associated curves C and C reduce to the origin; i.e., Q 1 ( 0 ) = { 0 p } , Q 1 ( 0 ) = { 0 q } , where 0 p and 0 q denote the origin in ( F p ) 3 and ( F q ) 3 , respectively.
From (7), taking (8) into account, it follows: P Q 1 ( R ) = F p P 2 × F q P 2 . Consequently, we conclude that P Q 1 ( R ) S p × S q , where S p and S q are the subgroups given by
S p = ( F p P 2 × { ( 1 , 0 , 0 ) } , ) , S q = ( { ( 1 , 0 , 0 ) } × F q P 2 , ) ,
and, from Theorem 2, we thus obtain
Proposition 3.
If the polynomials χ and χ are irreducible in F p [ X ] and F q [ X ] , respectively, then the group ( P Q 1 ( R ) = F p P 2 × F q P 2 , ) is isomorphic to the direct product of the cyclic groups S p and S q . Hence, ( P Q 1 ( R ) , ) is cyclic if and only if a = p 2 + p + 1 and b = q 2 + q + 1 are coprimes; i.e., gcd ( a , b ) = 1 .
Remark 8.
If d = gcd ( a , b ) , then a = d a , b = d b , with gcd ( a , b ) = 1 . The cyclic subgroup S in Z / a Z × Z / b Z spanned by ( 1 mod a , 1 mod b ) is of order a b d . As d < p q and a = O ( p 2 ) , b = O ( q 2 ) , it follows: a b d > O ( p 2 q 2 ) p q = O p q , which indicates that in general the group S is large enough, even if a and b are not coprimes.
Remark 9.
It is clear that the group ( P Q 1 ( R ) , ) is also amenable as a building block for a key-agreement protocol by choosing R = Z m , with m composite. Observe that its security is enhanced with respect to its counterpart F q , q a prime power, since the algorithms known to be efficient to compute discrete logarithms only work in the multiplicative group of a field. This means that one is forced to factorize m in order to apply such algorithms to the present case, thus increasing the time complexity and the security of the system, though at the price of doubling the key length.

5. Conclusions

In this work, we have defined a group law, ⊕, over the set F q P 2 , and considered the discrete logarithm problem associated with them. We have analyzed their properties and stated the security of the problem considered. Moreover, based on it, we have defined a cryptographic key agreement protocol as one possible application of this problem to public key cryptography. Finally, we shift the system to the group ( P Q 1 ( R ) , ) over the ring Z / p q Z , which turns out to be completely analogous to the previous one and offers an enhanced security, though at the cost of some extra key length.
As future work, we think that it is possible to extend this discrete logarithm problem in order to define new cryptographic protocols for encryption/decryption and digital signatures, among others, in a similar way as ElGamal or elliptic curve cryptosystems were defined from the Diffie-Hellman key agreement protocol.

Author Contributions

Conceptualization, R.D.D., L.H.E. and J.M.M.; Funding acquisition, L.H.E.; Investigation, R.D.D., L.H.E. and J.M.M.; Methodology, R.D.D., L.H.E. and J.M.M.; Writing—original draft, R.D.D., L.H.E. and J.M.M.; Writing—review & editing, R.D.D., L.H.E. and J.M.M. All authors have read and agreed to the published version of the manuscript.

Funding

This research has been partially supported by Ministerio de Economía, Industria y Competitividad (MINECO), Agencia Estatal de Investigación (AEI), and European Regional Development Fund (ERDF, EU), through project COPCIS, Grant No. TIN2017-84844-C2-1-R, and by Comunidad de Madrid (Spain) through project CYNAMON, Grant No. P2018/TCS-4566-CM, co-funded along with ERDF.

Conflicts of Interest

The authors declare no conflict of interest.

Abbreviations

The following abbreviations are used in this manuscript:
DLPDiscrete Logarithm Problem
PKCPublic Key Cryptography

References

  1. Koblitz, N. Elliptic curve cryptosystems. Math. Comput. 1987, 48, 203–209. [Google Scholar] [CrossRef]
  2. Miller, V.S. Use of elliptic curves in cryptography. Lect. Notes Comput. Sci. 1986, 218, 417–426. [Google Scholar] [CrossRef]
  3. Diffie, W.; Hellman, M.E. New directions in cryptography. IEEE Trans. Inform. Theory 1976, 22, 644–654. [Google Scholar] [CrossRef]
  4. Rivest, R.; Shamir, A.; Adleman, L.M. A Method for Obtaining Digital Signatures and Public-Key Cryptosystems. Commun. ACM 1978, 21, 120–126. [Google Scholar] [CrossRef]
  5. ElGamal, T. A public key cryptosystem and a signature scheme based on discrete logarithms. IEEE Trans. Inform. Theory 1985, 31, 469–472. [Google Scholar] [CrossRef]
  6. Menezes, A.J.; Qu, M.; Vanstone, S.A. Some new key agreement protocols providing implicit authentication. In Proceedings of the 2nd Workshop on Selected Areas in Cryptography (SAC ’95), Carleton University, Ottawa, ON, Canada, 18–19 May 1995; pp. 22–32. [Google Scholar]
  7. Massey, J.L.; Omura, J.K. Method and Apparatus for Maintaining the Privacy of Digital Messages Conveyed by Public Transmission. 1986. Available online: www.google.com/patents/US4567600 (accessed on 1 March 2020).
  8. Menezes, A.; Vanstone, S. Elliptic curve cryptosystems and their implementation. J. Cryptol. 1993, 6, 209–224. [Google Scholar] [CrossRef]
  9. Bellare, M.; Rogaway, P. Minimizing the use of random oracles in authenticated encryption schemes. Lect. Notes Comput. Sci. 1997, 1334, 1–16. [Google Scholar] [CrossRef]
  10. Abdalla, M.; Bellare, M.; Rogaway, P. DHAES: An Encryption Scheme Based on the Diffie-Hellman Problem. Available online: http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.28.2910 (accessed on 1 March 2020).
  11. Abdalla, M.; Bellare, M.; Rogaway, P. DHIES: An Encryption Scheme Based on the Diffie-Hellman Problem. 2001. Available online: http://web.cs.ucdavis.edu/~rogaway/papers/dhies.pdf (accessed on 1 March 2020).
  12. Abdalla, M.; Bellare, M.; Rogaway, P. The oracle Diffie-Hellman assumptions and an analysis of DHIES. Lect. Notes Comput. Sci. 2001, 2020, 143–158. [Google Scholar] [CrossRef]
  13. ANSI. Public Key Cryptography for the Financial Services Industry: Key Agreement and key Transport Using Elliptic Curve Cryptography; American National Standards Institute: New York, NY, USA, 2001. [Google Scholar]
  14. IEEE. Standard Specifications for Public Key Cryptography-Amendment 1: Additional Techniques; Institute of Electrical and Electronics Engineers: Piscataway, NJ, USA, 2004. [Google Scholar]
  15. ISO/IEC. Information Technology-Security Techniques-Encryption Algorithms-Part 2: Asymmetric Ciphers; International Organization for Standardization/International Electrotechnical Commission: Geneva, Switzerland, 2006. [Google Scholar]
  16. Gayoso Martínez, V.; Hernández Álvarez, F.; Hernández Encinas, L.; Sánchez Ávila, C. Analysis of ECIES and other cryptosystems based on elliptic curves. J. Inf. Assur. Secur. 2011, 6, 285–293. [Google Scholar]
  17. NIST. Digital Signature Standard (DSS); National Institute of Standards and Technology: Gaithersburg, MD, USA, 2000.
  18. ANSI. Public Key Cryptography for the Financial Services Industry: The Elliptic Curve Digital Signature Algorithm (ECDSA); American National Standards Institute: New York, NY, USA, 2005. [Google Scholar]
  19. IEEE. Standard Specifications for Public Key Cryptography; Institute of Electrical and Electronics Engineers: Piscataway, NJ, USA, 2000. [Google Scholar]
  20. National Institute of Standard and Technology. Digital Signature Standard (DSS); NIST FIPS 186-4; National Institute of Standard and Technology: Gaithersburg, MD, USA, 2009.
  21. Lochter, M.; Merkle, J. Elliptic Curve Cryptography (ECC) Brainpool Standard Curves and Curve Generation. Request for comments (RFC 5639), Internet Engineering Task Force. 2010. Available online: https://datatracker.ietf.org/doc/rfc5639/ (accessed on 1 March 2020).
  22. Bernstein, D.J.; Lange, T. SafeCurves, 2014. Available online: http://safecurves.cr.yp.to/ (accessed on 1 March 2020).
  23. Edwards, H. A normal form for elliptic curves. Bull. Am. Math. Soc. 2007, 44, 393–422. [Google Scholar] [CrossRef]
  24. Baignères, T.; Delerablée, C.; Finiasz, M.; Goubin, L.; Lepoint, T.; Rivain, M. Trap Me If You Can. Million Dollar Curve. Cryptology ePrint Archive: Report 2015/1249. 2016. Available online: https://eprint.iacr.org/2015/1249 (accessed on 1 March 2020).
  25. Gayoso Martínez, V.; Hernández Encinas, L.; Martín Muñoz, A.; Durán Díaz, R. Secure elliptic curves and their performance. Log. J. IGPL 2019, 27, 277. [Google Scholar] [CrossRef]
  26. Koyama, K.; Maurer, U.M.; Okamoto, T.; Vanstone, S.A. New Public-Key Schemes Based on Elliptic Curves over the Ring Z n . Lect. Notes Comput. Sci. 1992, 576, 252–266. [Google Scholar] [CrossRef]
  27. Meyer, B.; Müller, V. A Public Key Cryptosystem Based on Elliptic Curves over Z / n Z Equivalent to Factoring. Lect. Notes Comput. Sci. 1996, 1070, 49–59. [Google Scholar] [CrossRef]
  28. Papachristodoulou, L.; Batina, L.; Mentens, N. Recent Developments in Side-Channel Analysis on Elliptic Curve Cryptography Implementations. In Hardware Security and Trust: Design and Deployment of Integrated Circuits in a Threatened Environment; Sklavos, N., Chaves, R., Di Natale, G., Regazzoni, F., Eds.; Springer International Publishing: Berlin, Germany, 2017; pp. 49–76. [Google Scholar] [CrossRef]
  29. Gayoso Martínez, V.; Hernández Encinas, L.; Martín Muñoz, A. Implementation of Cryptographic Algorithms for Elliptic Curves. In Geometry, Algebra and Applications: From Mechanics to Cryptography; Springer: Cham, Switzerland, 2016; Chapter 11; pp. 121–133. [Google Scholar] [CrossRef]
  30. Shor, P. Polynomial-Time Algorithms for Prime Factorization and Discrete Logarithms on a Quantum Computer. SIAM J. Comput. 1997, 26, 1484–1509. [Google Scholar] [CrossRef]
  31. Gidney, C.; Ekeå, M. How to Factor 2048 bit RSA Integers in 8 Hours Using 20 Million Noisy Qubits. arXiv 2009, arXiv:1905.09749. [Google Scholar]
  32. NIST. Post-Quantum Cryptography. On-Line Publication, 2017. Available online: https://csrc.nist.gov/Projects/Post-Quantum-Cryptography (accessed on 1 March 2020).
  33. NIST. Post-Quantum Cryptography, 2nd round. On-line publication: 2019. Available online: https://csrc.nist.gov/projects/post-quantum-cryptography/round-2-submissions (accessed on 1 March 2020).
  34. Menezes, A.J. Elliptic Curve Public Key Cryptosystems; The Kluwer International Series in Engineering and Computer Science. Communications and Information Theory; Kluwer Academic Publishers: Boston, MA, USA, 1993; Volume 234. [Google Scholar] [CrossRef]
  35. Singer, J. A theorem in finite projective geometry and some applications to number theory. Trans. Am. Math. Soc. 1938, 43, 377–385. [Google Scholar] [CrossRef]
  36. Ghorpade, S.R.; Hasan, S.U.; Kumari, M. Primitive polynomials, Singer cycles and word-oriented linear feedback shift registers. Des. Codes Cryptogr. 2011, 58, 123–134. [Google Scholar] [CrossRef]
  37. Silverman, J.H.; Tate, J.T. Rational Points on Elliptic Curves; Undergraduate Texts in Mathematics, Springer International Publishing: Cham, Switzerland, 2015. [Google Scholar] [CrossRef]
  38. Koblitz, N.; Menezes, A.J. Another look at “Provable Security”. J. Cryptol. 2007, 20, 3–37. [Google Scholar] [CrossRef]
  39. Papadimitriou, C.H. Computational Complexity; Addison-Wesley Publishing Company: Reading, MA, USA, 1994. [Google Scholar] [CrossRef]
  40. Odlyzko, A.M. Handbook of Finite Fields; CRC Press: Boca Raton, FL, USA, 2013; pp. 393–401. [Google Scholar]
  41. Joux, A. A New Index Calculus Algorithm with Complexity L(1/4 + o(1)) in Small Characteristic. In International Conference on Selected Areas in Cryptography; Springer: Berlin/Heidelberg, Germany, 2014; Volume 8282, pp. 355–379. [Google Scholar] [CrossRef]
  42. Barbulescu, R.; Gaudry, P.; Joux, A.; Thomé, E. A heuristic quasi-polynomial algorithm for discrete logarithm in finite fields of small characteristic. In Annual International Conference on the Theory and Applications of Cryptographic Techniques; Springer: Berlin/Heidelberg, Germany, 2014. [Google Scholar] [CrossRef]
  43. Granger, R.; Kleinjung, T.; Zumbrägel, J. On the discrete logarithm problem in finite fields of fixed characteristic. Trans. Am. Math. Soc. 2018, 370, 3129–3145. [Google Scholar] [CrossRef]
  44. Adj, G.; Menezes, A.; Oliveira, T.; Rodríguez-Henríquez, F. Computing discrete logarithms using Joux’s algorithm. ACM Comm. Computer Algebra 2015, 49, 60.v. [Google Scholar] [CrossRef]
  45. Kleinjung, T.; Diem, C.; Lenstra, A.K.; Priplata, C.; Stahlke, C. Computation of a 768-Bit Prime Field Discrete Logarithm. In Annual International Conference on the Theory and Applications of Cryptographic Techniques; Springer: Cham, Switzerland, 2017; Volume 10210, pp. 185–201. [Google Scholar] [CrossRef]
  46. Hayasaka, K.; Aoki, K.; Kobayashi, T.; Takagi, T. A construction of three-dimensional lattice sieve for number field sieve over GF(pn). Cryptology ePrint Archive, 2015/1179, 2015. Available online: https://eprint.iacr.org/2015/1179.pdf (accessed on 1 March 2020).
  47. Joux, A.; Odlyzko, A.; Pierrot, C. Open problems in Mathematics and Computational Science; Springer International Publishing: Cham, Switzerland, 2014; pp. 5–36. [Google Scholar] [CrossRef]
  48. Granger, R.; Kleinjung, T.; Zumbrägel, J. Indiscreet logarithms in finite fields of small characteristic. Adv. Math. Commun. 2018, 12, 263–286. [Google Scholar] [CrossRef]
  49. Heyman, R.; Shparlinski, I.E. Counting irreducible binomials over finite fields. Finite Fields Their Appl. 2016, 38, 1–12. [Google Scholar] [CrossRef]
  50. Cohen, H.; Frey, G.; Avanzi, R.; Doche, C.; Lange, T.; Nguyen, K.; Vercauteren, F. Handbook of Elliptic and Hyperelliptic Curve Cryptography; Chapman and Hall/CRC, Taylor & Francis Group: New York, NY, USA, 2005. [Google Scholar] [CrossRef]
  51. Barker, E. Recommendation for Key Management, Part 1: General; NIST: Gaithersburg, MD, USA, 2016. Available online: https://csrc.nist.gov/publications/detail/sp/800-57-part-1/rev-4/final (accessed on 1 March 2020).
  52. Bourbaki, N. Éléments de Mathématique. Algèbre. Chapitres 1 à 3; Herman: Paris, France, 1970. [Google Scholar] [CrossRef]

Article Metrics

Citations

Article Access Statistics

Multiple requests from the same IP address are counted as one view.