Next Article in Journal
Dynamical Analysis of Nutrient-Phytoplankton-Zooplankton Model with Viral Disease in Phytoplankton Species under Atangana-Baleanu-Caputo Derivative
Next Article in Special Issue
Speeding-Up Elliptic Curve Cryptography Algorithms
Previous Article in Journal
The Non-Linear Fokker–Planck Equation in Low-Regularity Space
Previous Article in Special Issue
Efficient Generation of Roots of Power Residues Modulo Powers of Two
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

The Case of Small Prime Numbers Versus the Joye–Libert Cryptosystem

by
George Teşeleanu
1,2
1
Advanced Technologies Institute, 10 Dinu Vintilă, 021102 Bucharest, Romania
2
Simion Stoilow Institute of Mathematics of the Romanian Academy, 21 Calea Grivitei, 010702 Bucharest, Romania
Mathematics 2022, 10(9), 1577; https://doi.org/10.3390/math10091577
Submission received: 25 March 2022 / Revised: 21 April 2022 / Accepted: 2 May 2022 / Published: 7 May 2022

Abstract

:
In this paper, we study the effect of using small prime numbers within the Joye–Libert public key encryption scheme. We introduce two novel versions and prove their security. We further show how to choose the system’s parameters such that the security results hold. Moreover, we provide a practical comparison between the cryptographic algorithms we introduced and the original Joye–Libert cryptosystem.
MSC:
11T71; 94A60; 68P25; 11A07; 11A15

1. Introduction

The Joye–Libert cryptosystem was introduced in [1,2] as a generalisation of the Goldwasser–Micali public key encryption scheme [3,4]. The main advantage of the Joye–Libert scheme compared to Goldwasser–Micali is that the first supports a larger message space, and thus it considerably decreases the expansion of the ciphertext. Regarding security, the authors prove that inverting the encryption function is equivalent to breaking the quadratic residuosity problem modulo n = p q , where p and q are prime numbers. Another important security result is that the scheme is semantically secure if the gap 2 k -residue assumption modulo n holds. We underline that the Joye–Libert cryptosystem is partially homomorphic with respect to message addition and supports ciphertext randomization.
In this paper, we aim to find a way to improve decryption times for the Joye–Libert scheme. Therefore, we introduce two variants of the system: an unbalanced version and a multiprime one. In the first version, we show how to decrease the size of p, while keeping the system secure and implicitly decreasing the complexity of decryption. The only cryptosystem related to this version is called the unbalanced RSA [5]. Just like our version, the scope is to reduce p, while keeping the system secure.
In the multiprime version, we increase the number of factors while keeping the size of the modulus constant, and we manage to prove that inverting encryption is equivalent to a vectorial form of the quadratic residuosity assumption. We can find only one related cryptosystem in the literature: the multiprime RSA [6,7]. The philosophy behind the multiprime RSA is the same as ours—it uses parallelism to speed up decryption. A bonus of the multiprime Joye–Libert is that we can also use multiple threads to improve encryption time, while in the case of RSA this is not possible.
In the final section of our paper, we analyze the complexity of the two novel variants. Then we compare the decryption time complexities for all versions of the Joye–Libert scheme. If parallelization is possible, then the multiprime variant is to be preferred since it has faster encryption and decryption. Otherwise, the unbalanced version should be used.
Previous work. Note that a preliminary version of this proposal was presented in [8].
Structure of the paper. In Section 2, we provide the notations used in our paper. Then, we recall several definitions needed to describe our proposals. The original Joye–Libert scheme is detailed in Section 3. In Section 4 and Section 5, we present two novel versions of the Joye–Libert scheme. A performance analysis of the Joye–Libert variants is provided in Section 6. Conclusions and open problems are given in Section 7.

2. Preliminaries

Notations. In this paper, λ represents a security parameter. By | n | , we denote the size of n in bits. The action of selecting a random element x from a sample space X is denoted by x $ X . The assignment operator x y initialises variable x with value y. Let E be an event, then P r [ E ] represents the likelihood of E occurring. Probabilistic polynomial-time algorithms are referred to as PPT algorithms. In this paper, the set of natural numbers { 0 , , a 1 } is denoted by [ 0 , a ) . To simplify notations, we denote the set [ 0 , a + 1 ) by [ 0 , a ] . Multidimensional vectors v = ( v 0 , , v s 1 ) are represented as v = { v i } i [ 0 , s ) .

2.1. Computational Complexity

In this subsection, we present the reader with computational complexities of multiplication, exponentiation and modular inverse. These complexities are needed in order to determine the efficiency of our proposed schemes. Note that the asymptotic values are given in Table 1 and are taken from [9,10]. To simplify our presentation, we use the notation M ( · ) for the complexity of the multiplication algorithm. Note that while discussing the complexity of performing an exponentiation, we assume that the exponent’s length is k bits.

2.2. Number Theoretic Prerequisites

The Joye–Libert encryption scheme is based on a generalisation of the Legendre symbol, namely the 2 k -th power residue symbol. Note that the Legendre symbol is obtained when k = 1 , and for simplicity, we further denote it by J p ( a ) . We recall the definition of the 2 k -th power residue symbol and some of its properties, as stated in [11].
Definition 1.
Let p be an odd prime such that 2 k | p 1 . Then, the symbol
J p , 2 k ( a ) = a p 1 2 k mod p
is called the 2 k -th power residue symbol modulo p, where a p 1 2 k Z p , where Z p = { ( p 1 ) / 2 , , 1 , 0 , 1 , , ( p 1 ) / 2 } .
Lemma 1.
The 2 k -th power residue symbol satisfies the following properties
  • If a b mod p , then J p , 2 k ( a ) = J p , 2 k ( b ) ;
  • J p , 2 k ( a 2 k ) = 1 ;
  • J p , 2 k ( a b ) = J p , 2 k ( a ) J p , 2 k ( b ) mod p ;
  • J p , 2 k ( 1 ) = 1 and J p , 2 k ( 1 ) = ( 1 ) ( p 1 ) / 2 k .
Let n = p 1 p t . We further denote by J n ( a ) = J p 1 ( a ) J p t ( a ) the Jacobi symbol of an integer a modulo an integer n. J n and Q R n denote the set of integers modulo n with Jacobi symbol 1, and respectively, the set of quadratic residues modulo n.

2.3. Public Key Encryption

The three PPT algorithms specific to a public key encryption (PKE) scheme are: Setup, Encrypt and Decrypt. Given as input a security parameter, the Setup algorithm outputs the public key and the corresponding secret key. To encrypt a message, Encrypt also needs the public key as input in order to output the correlated ciphertext. To recover the original message, the Decrypt algorithm takes as input the secret key and the ciphertext. Note that if decryption fails, Decrypt returns an invalidity symbol.
Definition 2
(Indistinguishability under Chosen Plaintext Attacks—ind-cpa) The security model against chosen plaintext attacks for a PKE scheme is described using the following game:
S e t u p ( λ ) : In this phase, challenger C first computes the public key, while keeping the corresponding secret key to himself. Then C sends only the public key to adversary A.
Q u e r y : Adversary A chooses two equal length messages m 0 , m 1 and sends them to C. After flipping a coin b { 0 , 1 } , the challenger encrypts m b and sends to A the resulting ciphertext.
G u e s s : In this phase, the adversary outputs a guess b { 0 , 1 } . A wins the security game if b = b .
The advantage of an adversary A attacking a PKE scheme is defined as
A D V A IND CPA ( λ ) = | P r [ b = b ] 1 / 2 |
where the probability is computed over the random bits used by C and A. A PKE scheme isind-cpasecure if for any PPT adversary A, the advantage A D V A IND CPA ( λ ) is negligible.

3. The Joye–Libert PKE Scheme

The Joye–Libert encryption scheme was initially introduced in [1]. Its security was improved in [2]. The authors proved that inverting the encryption function is as hard as the quadratic residuosity assumption. Joye et al. also showed that in the standard model, the ind-cpa security of the PKE is equivalent to the gap 2 k -residuosity assumption. We shortly present the algorithms of the Joye–Libert cryptosystem.
Setup( λ ): Set an integer k 1 . Randomly generate two distinct large prime numbers p, q such that | p | = | q | = λ and p 1 mod 2 k . Output the public key p k = ( n , y , k ) , where n = p q and y J n Q R n . The corresponding secret key is s k = ( p , q ) .
Encrypt( p k , m ): To encrypt a message m [ 0 , 2 k ) , we choose x $ Z n * and compute c y m x 2 k mod n . Output the ciphertext c.
Decrypt( s k , c ): Compute the value z J p , 2 k ( c ) and find m such that the relation J p , 2 k ( y ) m z mod p holds. Efficient methods to recover m can be found in a subsequent section.

4. The Unbalanced Joye–Libert PKE Scheme

In the unbalanced Joye–Libert scheme, we reduce the size of p (denoted by λ p ) while keeping the size of n constant (denoted by λ n ). This modification only impacts the description of the Setup algorithm, which we briefly describe below. Therefore, we have λ n = λ p + λ q , where λ q = | q | and λ p λ q . Note that when λ p = λ q , we obtain the Joye–Libert cryptosystem, which we further refer to as the balanced Joye–Libert scheme.
Setup( λ p , λ q ): Set an integer k 1 . Randomly generate two distinct large prime numbers p, q such that | p | = λ p , | q | = λ q and p 1 mod 2 k . Output the public key p k = ( n , y , k ) , where n = p q and y J n Q R n . The corresponding secret key is s k = ( p , q ) .
Remark 1.
Modifying the size of p does not impact the security proofs discussed in [1,2]. Therefore, as long as factoring is hard, the unbalanced version is secure. We show how to choose λ p such that factoring remains difficult in Section 6.

5. The Multiprime Joye–Libert PKE Scheme

5.1. Description

We further describe the multiprime Joye–Libert encryption scheme. In this case, we split up n into multiple primes. Therefore, we have λ n = t λ p + λ q . Note that when λ p = λ q and t = 1 , we obtain the original cryptosystem from [1,2], and moreover, when in addition we set k = 1 , we obtain the Goldwasser–Micali cryptosystem [3]. In addition, if we set t = 1 , we obtain the unbalanced version.
Setup( λ p , λ q ): Set an integer k 1 . Randomly generate t + 1 distinct large prime numbers p 1 , , p t , q such that | p 1 | = = | p t | = λ p , | q | = λ q and p 1 , , p t 1 mod 2 k . Let n = p 1 p t q . For each i [ 1 , t ] select y i $ Z n * such that
J p i ( y i ) = J q ( y i ) = 1 and J p j , 2 k ( y i ) = 1 , where j i .
Output the public key p k = ( n , Y , k ) and the corresponding secret key s k = P , where Y = { y i } i [ 1 , t ] and P = { p i } i [ 1 , t ] .
Encrypt( p k , m ): To encrypt message m [ 0 , 2 k t ) , first we divide it into t blocks m = m 1 m t such that for each i [ 1 , t ] we have | m i | = k . Then, we choose randomly x $ Z n * and compute the value c x 2 k · i = 1 t y i m i mod n . The output is ciphertext c.
Decrypt( s k , c ): For each i [ 1 , t ] , compute m i using Algorithm 1.
Algorithm 1 Basic decryption algorithm
Mathematics 10 01577 i001
Correctness. Let m i = w = 0 k 1 b w 2 w be the binary expansion of block m i . Note that
J p i , 2 s ( c ) = J p i , 2 s ( x 2 k · v = 1 t y v m v ) = J p i , 2 s ( y i m i ) = J p i , 2 s ( y i ) w = 0 s 1 b w 2 w
since
  • J p i , 2 s ( x 2 k ) = 1 , where 1 s k ;
  • J p i , 2 k ( y j ) = 1 , where j i ;
  • w = 0 k 1 b w 2 w = w = 0 s 1 b w 2 w + 2 s w = s k 1 b w 2 w s .
As a result, the message block m i can be recovered bit-by-bit using p i .

5.2. Security Analysis

In this section, we first introduce a vectorial generalisation of the quadratic residuosity problem and prove that inverting the encryption function of our proposal is as hard as breaking this assumption. Then, we generalise the gap 2 k -residuosity problem stated in [1] and prove the ind-cpa security of our proposal.
Before stating the security assumptions used to prove the security of our proposal, we first define the following sets
Z n ( i ) = { x Z n * J p j , 2 k ( x ) = 1 for any j i } , Q R n ( i ) = { x Z n ( i ) J p i ( x ) = 1 and J q ( x ) = 1 } , J n ( i ) = { x Z n ( i ) J p i ( x ) J q ( x ) = 1 } ,
where n = p 1 p t q and i , j [ 1 , t ] .
Definition 3
Vectorial Quadratic Residuosity—vqr). Choose t + 1 distinct large prime numbers p 1 , , p t , q such that | p 1 | = = | p t | = λ p , | q | = λ q and p 1 , , p t 1 mod 2 k . Let n = p 1 p t q . Let A be a PPT algorithm that returns 1 on input ( x 1 , , x t , n ) if x i Q R n ( i ) . We define the advantage
A D V A VQR ( λ p , λ q ) = P r [ A ( x 1 , , x t , n ) = 1 | x i $ Q R n ( i ) for i [ 1 , t ] ] P r [ A ( x 1 , , x t , n ) = 1 | x i $ J n ( i ) Q R n ( i ) for i [ 1 , t ] ] .
The Vectorial Quadratic Residuosity assumption states that for any PPT algorithm A the advantage A D V A VQR ( λ p , λ q ) is negligible.
Theorem 1.
Inverting the encryption function of the multiprime Joye–Libert PKE is intractable if thevqrassumption is intractable.
Proof. 
Let us assume that there exists an adversary A such that given a ciphertext c, it recovers the message m. We construct a PPT algorithm that breaks the vqr assumption. More precisely, on input ( y 1 , , y t ) B computes c ( y 1 y t ) 2 k 1 x 2 k , where x $ Z n * . Remark that if y i J n ( i ) Q R n ( i ) , then c is an encryption of m 2 k 1 = 2 k 1 2 k 1 . If y i Q R n ( i ) , then y i w i 2 mod n , and thus c ( w 1 w t x ) 2 k mod n is an encryption of m 0 = 0 . According to the above arguments, on input ( y 1 , , y t , c ) algorithm A outputs either m 2 k 1 or m 0 , and thus B outputs 0 or 1, respectively. Therefore, B breaks the vqr assumption with non-negligible probability.    □
Definition 4
(Vectorial Gap 2 k -Residuosity—vgr). Choose t + 1 distinct large prime numbers p 1 , , p t , q such that | p 1 | = = | p t | = λ p , | q | = λ q and p 1 , , p t 1 mod 2 k . Let n = p 1 p t q . Let A be a PPT algorithm that returns 1 on input ( x 1 , , x t , k , n ) if x i J n ( i ) Q R n ( i ) . We define the advantage
A D V A VGR ( λ p , λ q ) = P r [ A ( x 1 , , x t , k , n ) = 1 | x i $ J n ( i ) Q R n ( i ) for i [ 1 , t ] ] P r [ A ( x 1 2 k , , x t 2 k , k , n ) = 1 | x i $ Z n * for i [ 1 , t ] ] .
The Vectorial Gap 2 k -Residuosity assumption states that for any PPT algorithm A, the advantage A D V A VGR ( λ p , λ q ) is negligible.
Theorem 2.
The multiprime Joye–Libert PKE isind-cpasecure if and only if thevgrassumption is intractable.
Proof. 
The proof of the statement is obtained by simply replacing the distribution of the public key elements ( y 1 , , y t ) . More precisely, we randomly select the y i values from the multiplicative subgroup of 2 k residues modulo n instead of drawing them from the J n ( i ) Q R n ( i ) set. Under the vgr assumption, the adversary will not notice this change. Therefore, we removed any link between the ciphertext c and the message m, and thus the ind-cpa security follows.    □

5.3. Optimizations

Setup Optimization. When choosing the public key we have to meet certain restrictions. An effective way to accomplish this is to first randomly choose the values y i , i $ Z p i * Q R p i , y i , t + 1 $ Z q * Q R q and w i , j $ Z p j * . Then compute the elements y i , j w i , j 2 k mod p j . Using the Chinese remainder theorem, we compute the desired value y i Z n * such that y i y i , mod p for all [ 1 , t ] and y i y i , t + 1 mod q .
Decryption Optimization. In order to speed-up the decryption process, the authors of [2] add an extra restriction when generating the prime factors of n, and then use it to simplify decryption. Applying this to the multiprime case, we obtain the fact that we have to generate p i such that p i 1 mod 2 k + 1 holds.
Let p i = ( p i 1 ) / 2 k and α i [ s ] = 2 k s p i . Then, the following relation between the ciphertext and plaintext holds
c α i [ s ] ( x 2 k · v = 1 t y v m v ) α i [ s ] y i α i [ s ] w = 0 s 1 b w 2 w y i b s 1 2 k 1 p i y i α i [ s ] w = 0 s 2 b w 2 w ( 1 ) b s 1 y i α i [ s ] ( m i mod 2 s 1 ) mod p i
since
  • ( x 2 k ) α i [ s ] = x 2 k s ( p i 1 ) = 1 ;
  • J p i , 2 k ( y j ) = 1 , where j i ;
  • w = 0 k 1 b w 2 w = w = 0 s 1 b w 2 w + 2 s w = s k 1 b w 2 w s ;
  • J p i ( y i ) = 1 .
Hence, if we precompute D i = y i p i , then we can recover message block m i . Wrapping it all together, we obtain Algorithm 2. Note that when t = 1 , we obtain [2] (Algorithm 3). The authors also propose three other optimizations [2] (Algorithms 4–6), but their complexity is similar to that of Algorithm 3. Remark that two of these optimizations contain a typo: in line 5, Algorithm 5 and line 6, Algorithm 6 we should have A k j C [ k j ] mod p instead of A C [ k j ] mod p .   
Algorithm 2 Optimized decryption algorithm
Mathematics 10 01577 i002

6. Implementation and Performance Analysis

6.1. Parameter Selection

The fastest currently known algorithm for factoring composite numbers is the Number Field Sieve (NFS) [12]. The expected running time of the NFS depends on the size of the modulus n and not on the size of its factors. More precisely, the expected running time is approximately
L [ n ] = e 1.923 ( log n ) 1 / 3 ( log log n ) 2 / 3 .
In [12,13], the authors extrapolate the running time needed to factor a modulus of size λ n from the computational effort required to factor a 512-bit modulus. Hence, a λ n -bit modulus offers a security equivalent to a block cipher of d-bit security if
L [ 2 λ n ] 50 · 2 d 56 · L [ 2 512 ] .
Since we start from a secure Joye–Libert PKE and we wish to optimize decryption by decreasing the size of some of the factors of the modulus, while keeping the size of the modulus constant, the NFS cannot be expected to factor n. Unfortunately, this strategy can make the resulting PKEs vulnerable to the Elliptic Curve Method (ECM) [14] if we lower the size of the factors below a certain threshold. Compared to the NFS, the ECM has a running time determined by the size of the smallest factor. Thus, if p is the smallest factor, then the running time of the ECM is
E [ n , p ] = ( log 2 n ) 2 e 2 log p log log p .
Similarly to the NFS, Lenstra [15] extrapolates the equivalent security provided by a module of size λ n with the smallest prime of size λ p to be
E [ 2 λ n , 2 λ p ] 80 · 2 d 56 · E [ 2 768 , 2 167 ] .
From Equations (1) and (2), we can deduce the following equivalency
E [ 2 λ n , 2 λ p ] 80 · 2 log 2 ( L [ 2 λ n ] / ( 50 · L [ 2 512 ] ) ) · E [ 2 768 , 2 167 ] .
A different model for predicting the security against the NFS and the ECM is provided in [16]. Compared to Lenstra’s model, Brent uses known historical factoring records to predict the year a modulus of a given size will be factored. Using the least-squares fit, Brent obtains the following equation for the NFS
D n 1 / 3 = Y 1928.6 13.24 or equivalently Y = 13.24 · D n 1 / 3 + 1928.6
and for the ECM
D p 1 / 2 = Y 1932.3 9.3 or equivalently Y = 9.3 · D p 1 / 2 + 1932.3 ,
where D n is the number of digits of the factored modulus and D p is the number of digits of the largest prime factor found using the ECM.
Using regression analysis, we update Brent’s equations using data points from [17,18,19,20,21,22,23,24,25,26,27] for the NFS and from [28,29] for the ECM. These data points are presented in Figure 1 and Figure 2.
Therefore, the updated equation for the NFS is
D n 1 / 3 = Y 1926 13.97 or equivalently Y = 13.97 · D n 1 / 3 + 1926
and for the ECM
D p 1 / 2 = Y 1939 8.207 or equivalently Y = 8.207 · D p 1 / 2 + 1939 .
Equations (4)–(7) are presented in Figure 3 and Figure 4. Note that the black dots represent the acquired data points. We observe that in the case of the NFS the estimates are close, while in the case of the ECM the new estimate is more pessimistic from a security point of view. Using the updated estimates (Equations (6) and (7)), we obtain the following equivalency
D p 1 / 2 = 13.97 · D n 1 / 3 13 8.207 .
According to NIST [30], the recommended key sizes for composite modules are λ n = 1536 / 3840 / 15 , 360 . We preferred to use NIST recommendations instead of the ones from [12,13], since these key sizes are the ones used by the industry and the key sizes from [12,13] are criticized as being too conservative [17]. Therefore, using Equations (3) and (8), we obtain the equivalent size of the smallest prime. The results are presented in Table 2. Note that in the parentheses we provide the maximum number of prime factors that n can have. Based on these equivalences, we obtain the parameters for the Joye–Libert schemes that offer protection against the NFS and the ECM (see Table 3).
Due to a powerful attack by Coppersmith [31], the size of k must be upper bounded by 0.5 λ p . Otherwise, the factors of n can be found. We can easily see that the block sizes from Table 3 offer a large enough security margin obtained from this bound (see Table 4).

6.2. Complexity

Using the complexities provided in Table 1, we compute the asymptotic run times of the decryption algorithm for each Joye–Libert variant. We also determine the size of a block m i for each variant. The results are provided in Table 5. Note that by parallel multiprime we mean the multiprime version in which we use a separate thread to compute each block m i . We can easily see that for the parameters presented in Table 3, the encryption and decryption complexities of the unbalanced and multiprime versions are similar. Therefore, we only compare the balanced, unbalanced and the parallel multiprime versions. In addition, remark that we choose the parameters such that the message spaces are similar for all the variants.
The comparison of the computational complexity of the three variants is presented in Figure 5, Figure 6 and Figure 7. Note that the two sets of crosses for the multiprime version correspond to the two equivalence models: Lenstra—right side crosses and Regression—left side crosses. We also added a dotted red line in the case of the basic decryption (Algorithm 1), which represents the boundary of the optimized decryption algorithm (Algorithm 2) of the balanced version.
From the six plots, we can see that the parallel multiprime version always performs better than the (un)balanced version if multiple threads are available. Additionally, the more threads we use, the faster we recover the original message. Therefore, if additional memory is available and parallelization is possible, then the parallel multiprime version endowed with the optimized decryption algorithm is preferable. Nevertheless, if we only have access to parallelization, then the parallel multiprime version equipped with the basic decryption algorithm is the best choice. Otherwise, we should use the unbalanced variant.

6.3. Implementation Details

We further provide the reader with benchmarks for the three Joye–Libert PKE schemes. We ran each of the three sub-algorithms on a CPU Intel i7-4790 4.00 GHz and used GCC to compile it (with the O3 flag activated for optimization). Note that for all computations we used the GMP library [32]. To calculate the running times we used the omp_get_wtime() function [33]. For the parallel multiprime variant we used the OMP library [33] to parallelize encryption/decryption. To obtain the average running time in seconds we chose to encrypt 100 128 / 192 / 256 -bit messages. Therefore, we wanted to simulate a key distribution scenario. The results are provided in Table 6. Note that the optimized version of the decryption algorithm is denoted by Decrypt (opt).
We can see from Table 6 that the conclusions presented in Section 6.2 hold. We can also see that the multiprime version has the shortest time to generate the parameters, while the unbalanced version the longest time. Nevertheless, generating parameters is a one-time operation.

7. Conclusions

In this work, we introduced two novel versions of the Joye-Libert cryptosystem. The first one, called the unbalanced Joye–Libert PKE, lowers the size of p in order to decrease decryption time. The second one, called the multiprime Joye–Libert PKE, increases the number of factors and achieves better decryption times by using multiple threads. Therefore, if parallel threads are available, we recommend the multiprime version, otherwise, we recommend the unbalanced variant. If additional memory is available, then we can replace the basic decryption algorithm with the optimized version, and therefore, we can obtain even better decryption times.
Open Problem. In [2], the authors manage to link the gap 2 k -residuosity assumption to the quadratic residuosity assumption, when q 3 mod 4 , and to the quadratic residuosity and squared Jacobi symbols assumptions, when q 1 mod 4 . Therefore, it would be interesting to find a similar link for the vqr assumption. The main bottleneck that we encountered when trying to link it to the vqr is that the probability of choosing an element from J n ( i ) is 1 / 2 k t k + 2 , and thus for t elements the probability is 1 / 2 t ( k t k + 2 ) . Therefore, for practical values of k and t, this probability is negligible.

Funding

This research received no external funding.

Institutional Review Board Statement

Not applicable.

Informed Consent Statement

Not applicable.

Data Availability Statement

Not applicable.

Conflicts of Interest

The author declares no conflict of interest.

References

  1. Joye, M.; Libert, B. Efficient Cryptosystems from 2k-th Power Residue Symbols. In Proceedings of the Annual International Conference on the Theory and Applications of Cryptographic Techniques, Athens, Greece, 26–30 May 2013; Lecture Notes in Computer Science. Springer: Berlin/Heidelberg, Germany, 2013; Volume 7881, pp. 76–92. [Google Scholar]
  2. Benhamouda, F.; Herranz, J.; Joye, M.; Libert, B. Efficient Cryptosystems from 2k-th Power Residue Symbols. J. Cryptol. 2017, 30, 519–549. [Google Scholar] [CrossRef] [Green Version]
  3. Goldwasser, S.; Micali, S. Probabilistic Encryption and How to Play Mental Poker Keeping Secret All Partial Information; STOC 1982; ACM: New York, NY, USA, 1982; pp. 365–377. [Google Scholar]
  4. Goldwasser, S.; Micali, S. Probabilistic Encryption. J. Comput. Syst. Sci. 1984, 28, 270–299. [Google Scholar] [CrossRef] [Green Version]
  5. Shamir, A. RSA for Paranoids. RSA Lab. Cryptobytes 1995, 1, 1–4. [Google Scholar]
  6. Rivest, R.L.; Shamir, A.; Adleman, L.M. Cryptographic Communications System and Method. US Patent 4,405,829, 20 September 1983. [Google Scholar]
  7. Cryptography Using Compaq Multiprime Technology in a Parallel Processing Environment. 2000. Available online: https://www.compaq.com (accessed on 24 March 2022).
  8. Maimuţ, D.; Teşeleanu, G. A New Generalisation of the Goldwasser-Micali Cryptosystem Based on the Gap 2k-residuosity Assumption. In Proceedings of the International Conference on Information Technology and Communications Security, Bucharest, Romania, 19–20 November 2020; Lecture Notes in Computer Science. Springer: Berlin/Heidelberg, Germany, 2020; Volume 12596, pp. 24–40. [Google Scholar]
  9. Crandall, R.; Pomerance, C. Prime Numbers: A Computational Perspective; Number Theory and Discrete Mathematics; Springer: Berlin/Heidelberg, Germany, 2005. [Google Scholar]
  10. Menezes, A.; van Oorschot, P.C.; Vanstone, S.A. Handbook of Applied Cryptography; CRC Press: Boca Raton, FL, USA, 1996. [Google Scholar]
  11. Yan, S.Y. Number Theory for Computing; Theoretical Computer Science; Springer: Berlin/Heidelberg, Germany, 2002. [Google Scholar]
  12. Lenstra, A.K.; Verheul, E.R. Selecting Cryptographic Key Sizes. J. Cryptol. 2001, 14, 255–293. [Google Scholar] [CrossRef] [Green Version]
  13. Lenstra, A.K.; Verheul, E.R. Selecting Cryptographic Key Sizes. In Proceedings of the International Workshop on Public Key Cryptography; Lecture Notes in Computer Science. Springer: Berlin/Heidelberg, Germany, 2000; Volume 1751, pp. 446–465. [Google Scholar]
  14. Lenstra, H.W., Jr. Factoring Integers with Elliptic Curves. In Annals of Mathematics; Princeton University: Princeton, NJ, USA, 1987; pp. 649–673. [Google Scholar]
  15. Lenstra, A.K. Unbelievable Security. Matching AES Security Using Public Key Systems. In Proceedings of the International Conference on the Theory and Application of Cryptology and Information Security, Gold Coast, Australia, 9–13 November 2001; Lecture Notes in Computer Science. Springer: Berlin/Heidelberg, Germany, 2001; Volume 2248, pp. 67–86. [Google Scholar]
  16. Brent, R.P. Some Parallel Algorithms for Integer Factorisation. In Proceedings of the European Conference on Parallel Processing; Lecture Notes in Computer Science. Springer: Berlin/Heidelberg, Germany, 1999; Volume 1685, pp. 1–22. [Google Scholar]
  17. Silverman, R.D. A Cost-Based Security Analysis of Symmetric and Asymmetric Key Lengths. RSA Lab. Bull. 2000. Available online: https://www.semanticscholar.org/paper/A-Cost-Based-Security-Analysis-of-Symmetric-and-Key-Silverman/5f56b7e3d8423cffa724d8037e68394bcf9f52bf (accessed on 24 March 2022).
  18. Odlyzko, A.M. The Future of Integer Factorization. RSA Lab. Cryptobytes 1995, 1, 5–12. [Google Scholar]
  19. Denny, T.; Dodson, B.; Lenstra, A.K.; Manasse, M.S. On the Factorization of RSA-120. In Proceedings of the Annual International Cryptology Conference; Lecture Notes in Computer Science. Springer: Berlin/Heidelberg, Germany, 1993; Volume 773, pp. 166–174. [Google Scholar]
  20. RSA Honor Roll. 1999. Available online: http://www.ontko.com/pub/rayo/primes/hr_rsa.txt (accessed on 24 March 2022).
  21. Cavallar, S.; Dodson, B.; Lenstra, A.; Leyland, P.; Lioen, W.; Montgomery, P.L.; Murphy, B.; Riele, H.T.; Zimmermann, P. Factorization of RSA-140 Using the Number Field Sieve. In Proceedings of the International Conference on the Theory and Application of Cryptology and Information Security; Lecture Notes in Computer Science. Springer: Berlin/Heidelberg, Germany, 1999; Volume 1716, pp. 195–207. [Google Scholar]
  22. Cavallar, S.; Dodson, B.; Lenstra, A.K.; Lioen, W.; Montgomery, P.L.; Murphy, B.; Riele, H.T.; Aardal, K.; Gilchrist, J.; Guillerm, G.; et al. Factorization of a 512-bit RSA modulus. In Proceedings of the International Conference on the Theory and Applications of Cryptographic Techniques, Beijing, China, 18–22 October 1998; Lecture Notes in Computer Science. Springer: Berlin/Heidelberg, Germany, 2000; Volume 1807, pp. 1–18. [Google Scholar]
  23. Kleinjung, T.; Aoki, K.; Franke, J.; Lenstra, A.K.; Thomé, E.; Bos, J.W.; Gaudry, P.; Kruppa, A.; Montgomery, P.L.; Osvik, D.A.; et al. Factorization of a 768-Bit RSA Modulus. In Proceedings of the Annual Cryptology Conference, Amsterdam, The Netherlands, 2 May 2002; Lecture Notes in Computer Science. Springer: Berlin/Heidelberg, Germany, 2010; Volume 6223, pp. 333–350. [Google Scholar]
  24. Bahr, F.; Boehm, M.; Franke, J.; Kleinjung, T. Factorization of RSA-200. 2005. Available online: https://members.loria.fr/PZimmermann/records/rsa200 (accessed on 24 March 2022).
  25. Franke, J.; Kleinjung, T.; Montgomery, P.; te Riele, H.; Bahr, F.; Leclair, D.; Leyland, P.; Wackerbarth, R. Factorization of RSA-576. 2003. Available online: https://members.loria.fr/PZimmermann/records/rsa576 (accessed on 24 March 2022).
  26. Boudot, F.; Gaudry, P.; Guillevic, A.; Heninger, N.; Thomé, E.; Zimmermann, P. 795-bit Factoring and Discrete Logarithms. 2019. Available online: https://sympa.inria.fr/sympa/arc/cado-nfs/2019-12/msg00000.html (accessed on 24 March 2022).
  27. Boudot, F.; Gaudry, P.; Guillevic, A.; Heninger, N.; Thomé, E.; Zimmermann, P. Factorization of RSA-250. 2020. Available online: https://sympa.inria.fr/sympa/arc/cado-nfs/2020-02/msg00001.html (accessed on 24 March 2022).
  28. Zimmermann, P. 50 Largest Factors Found by ECM. Available online: https://members.loria.fr/PZimmermann/records/top50.html (accessed on 24 March 2022).
  29. Brent, R.P. Large Factors Found By ECM. Available online: https://maths-people.anu.edu.au/~brent/ftp/champs.txt (accessed on 24 March 2022).
  30. Barker, E. NIST SP800-57 Recommendation for Key Management, Part 1: General. Tech. Rep. NIST 2016. Available online: https://csrc.nist.gov/publications/detail/sp/800-57-part-1/rev-4/archive/2016-01-28 (accessed on 24 March 2022).
  31. Coppersmith, D. Small Solutions to Polynomial Equations, and Low Exponent RSA Vulnerabilities. J. Cryptol. 1997, 10, 233–260. [Google Scholar] [CrossRef] [Green Version]
  32. The GNU Multiple Precision Arithmetic Library. Available online: https://gmplib.org/ (accessed on 24 March 2022).
  33. OpenMP. Available online: https://www.openmp.org/ (accessed on 24 March 2022).
Figure 1. Size of general number factored versus year.
Figure 1. Size of general number factored versus year.
Mathematics 10 01577 g001
Figure 2. Size of general number factored using ECM versus year.
Figure 2. Size of general number factored using ECM versus year.
Mathematics 10 01577 g002
Figure 3. D 1 / 3 versus year Y.
Figure 3. D 1 / 3 versus year Y.
Mathematics 10 01577 g003
Figure 4. D 1 / 2 versus year Y for ECM.
Figure 4. D 1 / 2 versus year Y for ECM.
Mathematics 10 01577 g004
Figure 5. Decryption complexity versus λ p for λ n = 3072 .
Figure 5. Decryption complexity versus λ p for λ n = 3072 .
Mathematics 10 01577 g005
Figure 6. Decryption complexity versus λ p for λ n = 7680 .
Figure 6. Decryption complexity versus λ p for λ n = 7680 .
Mathematics 10 01577 g006
Figure 7. Decryption complexity versus λ p for λ n = 15,360.
Figure 7. Decryption complexity versus λ p for λ n = 15,360.
Mathematics 10 01577 g007
Table 1. Computational complexity for μ -bit numbers.
Table 1. Computational complexity for μ -bit numbers.
OperationComplexity
Multiplication M ( μ ) = O ( μ log μ log log μ )
Exponentiation O ( k M ( μ ) )
Modular inverse O ( μ M ( μ ) )
Table 2. Equivalent key sizes.
Table 2. Equivalent key sizes.
Modulus Key Size3072768015,360
Lenstra model 800 ( 3 ) 1617 ( 4 ) 2761 ( 5 )
Regression model 749 ( 4 ) 1457 ( 5 ) 2385 ( 6 )
Table 3. Joye–Libert parameters’ size.r.
Table 3. Joye–Libert parameters’ size.r.
| n | t | p | | q | | m i | TypeModel
3072115361536128Balanced-
18002272128UnbalancedLenstra
2800147264Multiprime
17492323128UnbalancedRegression
2749157464Multiprime
374982543
7680138403840192Balanced-
116176063192UnbalancedLenstra
21617444696Multiprime
31617282964
114576223192UnbalancedRegression
21457476696Multiprime
31457330964
41457185248
15,360176807680256Balanced-
1276112,599256UnbalancedLenstra
227619838128Multiprime
32761707786
42761431664
1238512,975256UnbalancedRegression
2238510,590128Multiprime
32385820586
42385582064
52385343552
Table 4. Coppersmith’s upper bound.
Table 4. Coppersmith’s upper bound.
| p | 1536800749384016171457768027612385
0.5 | p | 7684003741920808728384013801192
Table 5. Performance analysis.
Table 5. Performance analysis.
Scheme | m | Encryption ComplexityDecryption Complexity
Balancedk O ( 2 k M ( λ n ) ) O ( ( 2 k λ + k ) M ( λ ) )
   O ( ( λ + k 2 / 2 + 3 k / 2 ) M ( λ ) )   
Unbalancedk O ( 2 k M ( λ n ) ) O ( ( 2 k λ p + k ) M ( λ p ) )
O ( ( λ p + k 2 / 2 + 3 k / 2 ) M ( λ p ) )
Multiprime t k O ( 2 k t M ( λ n ) ) O ( t ( 2 k λ p + k ) M ( λ p ) )
O ( t ( λ p + k 2 / 2 + 3 k / 2 ) M ( λ p ) )
Parallel Multiprime t k O ( 2 k M ( λ n ) ) O ( ( 2 k λ p + k ) M ( λ p ) )
O ( ( λ p + k 2 / 2 + 3 k / 2 ) M ( λ p ) )
Table 6. Running times.
Table 6. Running times.
| n | t | p | SetupEncryptDecryptDecrypt (opt)
307211536 0.193475 0.000782 0.325478 0.007954
1800 0.414516 0.000783 0.046704 0.002073
2800 0.129921 0.000584 0.025147 0.001427
1749 0.507081 0.000782 0.038254 0.001796
2749 0.140442 0.000567 0.020635 0.001273
3749 0.036575 0.000419 0.014810 0.000770
768013840 6.554910 0.004791 6.516350 0.095550
11617 14.48600 0.004792 0.565853 0.017291
21617 6.103730 0.003115 0.287015 0.006300
31617 1.334260 0.002326 0.205834 0.004104
11457 17.03100 0.004790 0.390024 0.013370
21457 6.961240 0.003112 0.201755 0.004917
31457 2.030210 0.002387 0.162581 0.003348
41457 0.559723 0.001948 0.154818 0.002867
15,36017680 55.77040 0.018572 47.62750 0.472317
12761 184.5970 0.018570 3.337000 0.080039
22761 69.75550 0.010459 1.712070 0.029658
32761 27.77600 0.007987 1.222490 0.023583
42761 8.610660 0.006857 0.995357 0.018094
12385 183.5240 0.018564 2.183190 0.059934
22385 86.03020 0.010578 1.135120 0.021922
32385 38.94160 0.008167 0.808199 0.017175
42385 16.45910 0.006833 0.675422 0.012873
52385 5.086330 0.006127 0.702819 0.012128
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Share and Cite

MDPI and ACS Style

Teşeleanu, G. The Case of Small Prime Numbers Versus the Joye–Libert Cryptosystem. Mathematics 2022, 10, 1577. https://doi.org/10.3390/math10091577

AMA Style

Teşeleanu G. The Case of Small Prime Numbers Versus the Joye–Libert Cryptosystem. Mathematics. 2022; 10(9):1577. https://doi.org/10.3390/math10091577

Chicago/Turabian Style

Teşeleanu, George. 2022. "The Case of Small Prime Numbers Versus the Joye–Libert Cryptosystem" Mathematics 10, no. 9: 1577. https://doi.org/10.3390/math10091577

Note that from the first issue of 2016, this journal uses article numbers instead of page numbers. See further details here.

Article Metrics

Back to TopTop