Next Article in Journal
Short-Scale Stochastic Solar Energy Models: A Datacenter Use Case
Next Article in Special Issue
Ternary Menger Algebras: A Generalization of Ternary Semigroups
Previous Article in Journal
Wavelet Transform-Statistical Time Features-Based Methodology for Epileptic Seizure Prediction Using Electrocardiogram Signals
Previous Article in Special Issue
Novel Parametric Solutions for the Ideal and Non-Ideal Prouhet Tarry Escott Problem
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

Factorization and Malleability of RSA Moduli, and Counting Points on Elliptic Curves Modulo N

1
Departament de Matemàtiques i Informàtica, Universitat de Barcelona, Gran Via de les Corts Catalanes 585, 08007 Barcelona, Spain
2
Departamento de Matemáticas, Universitat Politécnica Catalunya, Edificio C3—Campus Nord UPC, Carrer de Jordi Girona 1-3, 08034 Barcelona, Spain
*
Author to whom correspondence should be addressed.
Mathematics 2020, 8(12), 2126; https://doi.org/10.3390/math8122126
Submission received: 29 September 2020 / Revised: 16 November 2020 / Accepted: 18 November 2020 / Published: 27 November 2020
(This article belongs to the Special Issue Algebra and Number Theory)

Abstract

:
In this paper we address two different problems related with the factorization of an RSA (Rivest–Shamir–Adleman cryptosystem) modulus N. First we show that factoring is equivalent, in deterministic polynomial time, to counting points on a pair of twisted Elliptic curves modulo N. The second problem is related with malleability. This notion was introduced in 2006 by Pailler and Villar, and deals with the question of whether or not the factorization of a given number N becomes substantially easier when knowing the factorization of another one N relatively prime to N. Despite the efforts done up to now, a complete answer to this question was unknown. Here we settle the problem affirmatively. To construct a particular N that helps the factorization of N, we use the number of points of a single elliptic curve modulo N. Coppersmith’s algorithm allows us to go from the factors of N to the factors of N in polynomial time.

1. Introduction

There is no need to explain the importance of secure digital communication today. We are using computers for military purposes, politics, electronic payments, voting and, lately, even for taking sharing decisions via blockchain. And the standard tool to provide data security is Cryptography. Since 1977 it has been proved that asymmetric encryption, and in particular RSA which is the most widely used, is a very convenient mechanism for both security and efficiency purposes.
The security of RSA is based on the hardness of factoring large integers, and there is a massive literature on this subject. Today, even though the most efficient factorization algorithm is the general number field sieve (see Reference [1,2,3]), which works in subexponential running time, the future seems to lead us to quantum computation, where the improvement is dramatic. In this setting, we find Shor’s algorithm which is able to factor integers in polynomial-time in a gate-based quantum computer, and there are other apparently fast algorithms in adiabatic or annealing quantum computers (see Reference [4,5,6,7]).
In spite of the existence of these algorithms, since it is not yet possible to build quantum computers with sufficiently many qbits to factor large integers, the security of cryptosystems relying on the hardness of integer factorization, such as RSA, is not currently at stake. Therefore, both for practical purposes and for its theoretical intrinsic interest, the problem of integer factorization (with classical computers) is highly relevant.
But, we have many algorithms to find the factors of a number, and we learn them at the school, so what does it mean that factoring is difficult? Well, it simply means that given
N = 2211282552952966643528108525502623092761208950247001539441374831912 8822941402001986512729726569746599085900330031400051170742204560859 2763579537571859542988389587092292384910067030341246205457845664136 64540684214361293017694020846391065875914794251435144458199
and knowing that it is the product of two prime factors, nobody in the world knows how to find them using only N and no extra a priori information on his factors. It is so hard that, in fact, the problem seems completely different each time you try to factor a new number. In other words, it seems, at first, that even if you know the factors of any number relatively prime to N, it will not help to find the factors of N. This is what is known in the literature as non-malleability of the factorization problem.
The motivation of this note is twofold. We started studying the problem of malleability of an RSA modulus N and suddenly we came to deal directly with the problem of factorization, finding that, in fact, it is equivalent to counting the number of points on an elliptic curve modulo N.
But let us start with malleability. It was introduced in 2006 in the paper by Pailler and Villar [8]. This notion, which we give explicitly in Section 3, captures a very basic fact in arithmetic: intuitively, one tends to believe that the problem of factoring a given number N (an RSA modulus) is not made easier if we know how to factor other numbers N relatively prime to N. If this is true, we say that factoring is non-malleable.
In spite of its purely arithmetic nature, the truth is that malleability appeared to the authors while studying the existence of a tradeoff between one-wayness and security under chosen ciphertext attacks (CCA), already observed back in the eighties, for example in Reference [9,10,11]. In some sense, one cannot achieve one-way encryption with a level of security equivalent to solve certain difficult problem, at the same time as the cryptosystem being CCA secure with respect to it.
Even though this paradox has been observed, it has not been formally proven, except in the case of factoring-based cryptosystems, in which Pailler and Villar [8] clarified the question reformulating the paradox in terms of key preserving black-box reductions and proved that, if factoring can be reduced in the standard model to breaking one-wayness of the cryptosystem, then it is impossible to achieve chosen-cyphertext security.
After this, they introduce the notion of malleability of a key generator, and, with it, they are able to extend the result from key preserving black box reductions to the case of arbitrary black box reductions.
Given the importance of both one-wayness and CCA security, authors started to search for ways to overcome this uninstantiability and two relevant papers appeared. In Reference [12], the authors propose a new public-key encryption scheme that is based on Rabin’s trapdoor one-way permutation with equivalence between CCA security and the factoring problem. Being aware of the work of Reference [8], they had to modify the setting to achieve their result. Then, in Reference [13], the authors show that the widely deployed encryption scheme of Bellare and Rogaway, RSA-OAEP (Optimal Asymmetric Encryption Padding) [14], which combines RSA with two rounds of an underlying Feistel network in which hash (i.e., round) functions are modeled as random oracles, meets indistinguishability under chosen-plaintext attack (IND-CPA).
Both papers introduced modifications trying to avoid the paradox in the more general setting of arbitrary black-box reductions, proved via non-malleability. So, as the authors themselves stress in Reference [8], it is very important to study non-malleability of key generators and, in fact, they conjecture that most instance generators are non-malleable, although no arguments are given to support this belief.
At this point, let us give the more precise definition of malleability. It rests in measuring the difference between suitable Game 0 and Game 1, as defined in Reference [8]. In Game 0, we factor a given number N with an oracle which can solve any problem that can be reduced to factoring. On the other hand, in Game 1 the oracle has the extra ability of factoring numbers which are relatively prime to N. If the probability of factoring N increases significantly in Game 1, then we say that factoring is malleable. (see Reference [8], Section 4.1, for more details).
In Reference [15], we address this question and notice that the freedom of selecting the new number N breaks the independent behaviour of prime numbers; hence, we produce an explicit N which makes factorization malleable. In other words, given any RSA modulus N, we prove the existence of a polynomial time reduction algorithm from factoring N to factoring certain explicit numbers N , all relatively prime to N.
The numbers given in Reference [15] are very simple: given the RSA modulus n = p q , the factorization of N = m N 1 , where m is a primitive root of the smallest prime dividing N, allows us to factor N in polynomial time. However, this does not give a complete satisfactory answer for several reasons. First, one could think of N to be of exponential size and then out of the scope of the question. However, as we mention in Reference [15], one can think of N as a collection of exactly N ones when it is written in m-ary, and we just need the factors of N modulo N, a data that has the same size as the given number. In any case, it still persists, in the restlessness of not knowing whether or not in a small interval centered in N, we can find an explicit N which can help to factor N.
In this paper, we address precisely this question and give an affirmative answer to the malleability of the problem of factoring by showing a number of the same size of N in which factorization allows us to factor N with an algorithm that runs in polynomial time.
To achieve this goal, we will use very basic facts from the theory of elliptic curves. Concretely, we will prove that, given a random elliptic curve E defined modulo N, where N is an RSA modulus, and assuming that its number of points | E ( Z / N Z ) | is known, by further knowing the factorization of | E ( Z / N Z ) | , we can produce a deterministic polynomial time algorithm that factors N. The key tool in our proof will be the result of Coppersmith (see Reference [16]) that allows to factor an integer by knowing only certain bits of one of its prime factors.
This settles the question and proves that factoring is a malleable task. The first consequence of the result is obviously that the impossibility results gotten in Reference [8] for key-preserving reductions cannot be extended to arbitrary reductions, and leaving open whether a cryptosystem could be constructed, such as its one-way security, is equivalent to factoring and CCA at the same time. In particular, for example, it is known that onewayness of Rabin encription is equivalent to factoring, and it remains unknown the existence of an instantiation in the standard model chosen-cyphertext secure under the factoring assumption.
While proving the previous statement on malleability, another interesting problem treated widely in the literature (see Reference [17,18] for related results) showed up in a natural way:
Problem 1.
Is factoring N equivalent to counting the number of points of elliptic curves modulo N?
In this paper, we give a definite answer to this question by proving the following theorem:
Theorem 1.
Given N and the number of points of any elliptic curve modulo N, E, and of one of its twists E d , with ( d , N ) = 1 , so that the three integers | E ( Z / N Z ) | , N and | E d ( Z / N Z ) | are all distinct, we can factor N in deterministic polynomial time.
The proof of this result relies in proving a rather elementary new lemma, Lemma 1, that, even though it is remarkably simple, it was not in the literature so far.
Remark 1.
As we have already remarked, the previous problem has been addressed in Reference [18]. We should stress that the results in that paper are based in an assumption on the distribution of the number of points on elliptic curves over finite fields, which is not accurate. In addition, the reduction algorithm from counting the number of points of the elliptic curve modulo N to factoring N in their case is probabilistic, while here it is proved to be deterministic. Moreover, in terms of malleability, what we do in Section 3 involves taking a single elliptic curve, and succeeds with probability 1, while the results in Reference [18] require considering many elliptic curves to have positive probability to factor N. Finally, the method used in that paper only works for the number of projective points on the elliptic curve, not covering the affine case as we do.
The structure of the paper goes as follows: In Section 2, we prove Theorem 1, while Section 3 is dedicated to the problem of malleability of factoring.

2. Factorization

Let N Z . Given an elliptic curve E : = { y 2 = x 3 + a x + b } over Z / N Z , we will denote by E d its quadratic twist E d : = { d y 2 = x 3 + a x + b } . E ( Z / N Z ) will be the group of Z / N Z points, and E ( Z / N Z ) the set of affine points of the curve. In any event, if C is a set, we will let | C | be its cardinal.
In the case when N = l is a prime number, then | E ( Z / l Z ) | = l + 1 a l , where a l is the trace of the Frobenius endomorphism of the curve E modulo l, | a l 2 l | , and the curve has only one point at infinity. We will denote I l = { l + 1 2 l , l + 1 + 2 l } the Hasse interval. In addition, it is well known that, if d is an integer coprime to l, then | E d ( Z / l Z ) | = l + 1 d l a l .
In the case when N = p q , a product of two prime numbers, then we know that E ( Z / N Z ) = E ( Z / p Z ) × E ( Z / q Z ) ; hence,
| E ( Z / N Z ) | = ( P a p ) ( Q a q ) = P Q P a q Q a p + a p a q ,
where P = p + 1 , Q = q + 1 in the projective case, and P = p , Q = q in the affine case.
Now, consider and RSA modulus N and ( d , N ) = 1 . There are three options for E d ( Z / N Z ) (or E d ( Z / N Z ) ), depending on the Legendre simbols d p and d q . Let us denote, by abuse of notation, E = | E ( Z / N Z ) | , and E ^ , E ˜ , E ¯ to the following integers:
E ^ = ( P + a p ) ( Q + a q ) = P Q + P a q + Q a p + a p a q , E ˜ = ( P a p ) ( Q + a q ) = P Q + P a q Q a p a p a q , E ¯ = ( P + a p ) ( Q a q ) = P Q P a q + Q a p a p a q .
Then,
E + E ^ + E ˜ + E ¯ = 4 P Q ,
while
4 P Q = ( E + E ˜ ) ( E + E ¯ ) E = E + E ˜ + E ¯ + ( E ˜ E ¯ ) E = 4 P Q E ^ + ( E ˜ E ¯ ) E ,
so
E E ^ = E ˜ E ¯ .
Lemma 1.
Knowing two among E ˜ , E ^ , E ¯ and E, we know the four of them.
Proof. 
We split the proof in 2 cases.
Case 1. We suppose E and E ^ are known. The case in which E ˜ and E ¯ are known is analogous. Then, we compute its product, M = E E ^ , and its sum L = E + E ^ , and we have
E ˜ E ¯ = M E ˜ + E ¯ = 4 P Q L ,
so E ˜ and E ¯ are the solutions of the quadratic polynomial X 2 ( 4 P Q L ) X + M .
E ˜ = 4 P Q L + ( 4 P Q L ) 2 4 M 2 , E ¯ = 4 P Q L ( 4 P Q L ) 2 4 M 2 .
Case 2. Suppose E and E ˜ are known. The cases in which the pairs ( E , E ¯ ) , ( E ^ , E ˜ ) and ( E ^ , E ¯ ) are known are analogous. Then, compute the quotient E E ˜ = M and the sum E + E ˜ = L . Hence, E ¯ E ^ = M , or E ¯ = M E ^ , and by (2) ( M + 1 ) E ^ = 4 P Q L , or
E ^ = 4 P Q L ( M + 1 ) , E ¯ = M ( 4 P Q L ) ( M + 1 ) .
 □
Theorem 2.
Knowing either E ( Z / N Z ) and E d ( Z / N Z ) or E ( Z / N Z ) and E d ( Z / N Z ) for d p = 1 , we can factor N in polynomial time.
In the projective case, we compute the four integers E , E ^ , E ˜ , E ¯ by Lemma 1 and then its sum to compute P Q . With P Q and N, we factor N.
In the affine case, we again compute the four integers E , E ^ , E ˜ , E ¯ and then note that E + E ˜ = 2 q ( p a p ) has q as a common factor with N, so, if a p 0 , computing the gcd with N, we factor N. On the other hand, if a q 0 , we do the same with E + E ¯ = 2 p ( q a q ) .
In both cases, observe that, in principle, we do not know which one is E d ( Z / N Z ) , so we will have to make two computations.
Remark 2.
The theorem obviously does not apply in the affine case if a p = a q = 0 , since then the number of affine points of the elliptic curve and its twists is simply N, so we do not get new information. In this case, we just have to select another curve.
Theorem 3.
Under the Extended Riemann Hypothesis, ERH, factoring an RSA modulus N = p q is polynomial time equivalent to counting the number of points, affine or projective, of elliptic curves E modulo N, non-supersingular for both primes p and q.
Proof. 
Let E be an elliptic curve. Then, knowing the factorization of N, we can compute | E ( Z / N Z ) | by Schoof’s algorithm [19]. □
Now, suppose we know | E ( Z / N Z ) | . Then, from Reference [20], we know that, under ERH, the smallest quadratic nonresidue modulo p, call it d, is of size O ( ( log p ) 2 ) . Hence, apply the previous Theorem 2 to the pair E , E d for every d up to this bound.
Recall that, as of today, we can compute the number of points modulo N by baby step giant step, since E ( mod N ) has group structure, in O ( N 1 / 4 + ε ) , which is exponential.

3. Malleability

As in previous sections, let N = p q be an RSA modulus. We recall that, in order to prove that factoring is malleable, we need to find a number relatively prime to N and of the same size, in which factorization will allow us to factor N in polynomial time. For that, we will consider a random elliptic curve E ( mod N ) , and let | E ( Z / N Z ) | be its number of affine points, while | E ( Z / N Z ) | will be the number of its points including the points at infinity. We can prove the following theorem.
Theorem 4.
Given N = p q where p , q are prime numbers, and an elliptic curve E ( mod N ) , uniformly at random, there exists a polynomial time algorithm in log N such that with input N and the factorization of | E ( Z / N Z ) | or | E ( Z / N Z ) | , it outputs the factors of N, p, and q with probability one.
We need some preparation before starting the proof of the theorem. First, of all observe that we can not use the previous result if the number of factors of | E ( Z / N Z ) | (and | E ( Z / N Z ) | ) is not logarithmic on the size of N, since then no polynomial time algorithm could work. However, as it is shown in the following proposition this event is negligible. Let C N be the set of elliptic curves modulo N, where two curves will be identified if their reductions modulo p and q are isomorphic. Recall that | C N | 4 N = o ( 1 ) , as can be seen in section ( 1.4 ) of Reference [21] by using the Chinese Remainder Theorem. Now, for any set C C N , we will consider the uniform probability p ( C ) = | C | | C N | . Finally, given N = p q , an RSA modulus we consider for each divisor l of N the set S l = { E C N : d ( | E ( Z / l Z | ) > ( log l ) 4 } , where as usual d ( n ) denotes the number of divisors of n.
Proposition 1.
With the notation above we have
p ( S N ) = o 1 log N
as N goes to infinity.
Proof. 
Note that, if N = p q , then, by (1), if E S N , then either E S p or E S q , so p ( S N ) p ( S p ) + p ( S q ) . Now, using Proposition 1.9 in Reference [21], we see that, for l = p or l = q ,
p ( S l ) c | S l | ( log l ) 2 l .
On the other hand, from the average of the divisor function
n x d ( n ) = x log x + ( 2 γ 1 ) x + o ( x ) ,
we deduce that
| S p | ( log p ) 4 < m S p I p d ( m ) m I p d ( m ) = 4 p log p + O ( p ) ,
and so
| S p | p ( log p ) 3 ,
which, in particular, gives
p ( S N ) = o 1 log N ,
which tends to zero as N goes to infinity. □
Now, recall that, as we mentioned in the introduction, the proof of the theorem will be based on a well known result of Coppersmith, which allows us to find a factor of an integer by just knowing certain part of its highest bits. For convenience, we include this result now
Theorem 5.
(Coppersmith) If we know an integer N = p q and we know the high order ( 1 / 4 ) ( log 2 N ) bits of p, then in polynomial time in log N we can discover p and q.
In fact, we will use a very slight improvement of the previous result by simply observing that it would be sufficient by knowing the ( 1 / 4 ) ( log 2 N ) O ( log log N ) highest order bits, since we could try the rest up to ( 1 / 4 ) ( log 2 N ) one by one in polynomial time.
Now, in order to use Coppersmith’s result, we note that the distance between two integers forces some of their highest digits to be equal. In particular, let us suppose that two integers x < y are at distance y x = 2 t + R where R < 2 t . We can write x = M x 2 t + R x , y = M y 2 t + R y with R x < 2 t , R y < 2 t and 2 t < R y R x < 2 t . Then, y x = ( M y M x ) 2 t + R y R x , which gives M y = M x + 1 or M y = M x + 2 ; hence, the highest bits up to t of one of the integers determine those of the other. We are now ready to start the proof of Theorem 4.
Proof of Theorem 4.
We select an elliptic curve E modulo N, and, by Proposition 1, we can assume that | E ( Z / N Z ) | has a logarithmic number of divisors. Then, in polynomial time, we find the factor q a q + 1 which, by Hasse’s theorem, is at distance | a q 1 | 2 q + 1 2 N 1 / 4 + 1 , of q which is a factor of N. Then, by the previous considerations, by bounding the distance between the two integers by 2 q 1 / 2 , we know up to t = [ log 2 q / 2 ] + 1 of the highest bits of q. And then, by division, we also know up to t of the highest bits of p. But, N p = M p 2 t + R p ( M p + 1 ) 2 t , so M p N / ( 2 t + 1 ) N 1 / 4 ; hence, we can apply Coppersmith algorithm to find p, thus factoring N. □
Corollary 1.
Integer factoring is a malleable problem.
Proof. 
We assume that we have at our disposal an oracle that computes any of the two numbers | E ( Z / N Z ) | and | E ( Z / N Z ) | . Since this computation can be reduced to the factorization of N thanks to Schoof’s algorithm, this corresponds to Game 0 in the setup described in the introduction while defining malleability. Note also that, as we have already observed, there is no known polynomial time algorithm that can factor N using this information.
Assume now that we have access to an auxiliary oracle that can factor any number relatively prime to N (this extra tool corresponds to Game 1 in the definition of malleability). Using it, we factor the number | E ( Z / N Z ) | (or | E ( Z / N Z ) | ). From Proposition 1, we know that, with probability basically 1, the number of divisors of | E ( Z / N Z ) | is of order a power of the logarithm of N, and, in particular, polynomial in N, so we can use a suitable element in this set of divisors (as in Theorem 4) to factor N in polynomial time, thus concluding that Game 1 has solved the factorization problem that was not achieved by Game 0, which shows that factorization of RSA modulus is malleable. □
Remark 3.
The case in which | E ( Z / N Z ) | is given is similar, and we leave the details to the reader.

Small Difference

Even though malleability is fully proved in the previous section, we include this section as a small remark in the negligible case in which | E ( Z / N Z ) | and | E ( Z / N Z ) | have an exponential number of divisors, but the two prime factors p , q are not too far from each other.
In order to construct an RSA modulus, we typically search for a couple of prime factors of the same number of bits, i.e., q < p < 2 q . However, if the two primes are very close to each other, the scheme is easy to break since the modulus can be factored in polynomial time. Indeed, it is well known that, if Δ = | p q | < N 1 / 4 , Fermat’s factorization algorithm enables to find both factors of N in polynomial time and there has been an effort of the community to improve the exponent 1 / 4 in Δ for the factorization of N. It is worth it to mention that, if the objective is breaking the RSA scheme, rather than factoring the modulus, then the exponent can be increased all the way up to basically 1 by means of an improved version of the attacks done by Wiener or Boneh and Durfee (see Reference [22]). However, for the factorization of N, not too much more is known. In Reference [23], the authors claim, in an apparently unpublished work, that we are able to factor an RSA modulus N = p q even when the difference is of order | p q | < N 1 / 3 .
We devote this section to recover Δ < N 1 / 3 using malleability techniques: in particular, the factorization of the number of points of a random elliptic curve modulo N, together with a simple application of an argument of elementary geometry attributed to Heron of Alexandria, which says that, in any triangle, the product of the length of its three sides equals four times the area times the radius of the circumscribed circle. We will assume from now that Δ = | p q | < c N 1 / 3 for some suitable constant c .
In our case, given three points ( x 0 , y 0 ) , ( x 1 , y 1 ) , ( x 2 , y 2 ) of integer coordinates in the hyperbola x y = | E ( Z / N Z ) | , we see that the radius of the circumscribed circle is
R = ( ( x 0 x 1 ) 2 + ( | E ( Z / N Z ) | ) 2 ) ( ( x 0 x 2 ) 2 + ( | E ( Z / N Z ) | ) 2 ) ( ( x 2 x 1 ) 2 + ( | E ( Z / N Z ) | ) 2 ) 4 ( | E ( Z / N Z ) | ) 2 ( x 0 x 1 x 2 ) 2 ,
and taking max { x 0 , x 1 , x 2 } | E ( Z / N Z ) | , we get
R | E ( Z / N Z ) | 4 .
On the other hand, by Hasse’s theorem,
| E ( Z / N Z ) | ( p 1 ) 2 ( q 1 ) 2 ,
and
( p 1 ) ( q 1 ) = N p q + 1 N / 4 ,
for N sufficiently large, and so
R N 64 .
Hence, by Heron of Alexandria’s theorem, in an arc of the hyperbola x y = | E ( Z / N Z ) | of length less than ( N / 32 ) 1 / 3 , we can only have two points of integer coordinates.
Now, recall that the length L of an arc of the hyperbola x y = T with a x b is given by
L = a b 1 + T 2 t 4 d t a b 1 + T 2 t 4 d t = ( b a ) + T 2 3 1 a 3 1 b 3 = = ( b a ) + ( b a ) T 2 3 b 2 + a b + a 2 ( a b ) 3 ( b a ) + ( b a ) T 2 a 3 b .
Consider T = | E ( Z / N Z ) | , b N 1 / 2 and b a c N 1 / 3 for suitable c.
Hence, by noting that
| E ( Z / N Z ) | ( p + 1 ) 2 ( q + 1 ) 2 = ( N + p + q + 1 ) N + 7 N 3 / 4 ,
since the primes are very close, we get from a simple computation that the arc on the hyperbola has length
L 3 c N 1 / 3 .
In particular we can select c small enough so L ( N / 32 ) 1 / 3 , forcing the arc to have two points of integral coordinates at most. Hence, we can ask the auxiliary oracle to factor E N * and find the, at most, two factors of it lying in the interval [ a , b ] . This oracle will give back the factor a N 1 / 2 c N 1 / 3 q a q + 1 N 1 / 2 b , for a q 0 or a N 1 / 2 q a q + 1 N 1 / 2 + c N 1 / 3 b if a q 0 for some c c . In practice, c = 1 3 ( 32 ) 1 / 3 and c = 1 6 ( 32 ) 1 / 3 are enough. Using it, we can factor N with Coppersmith’s algorithm, as we did in the previous subsection.
Remark 4.
Again, the case in which | E ( Z / N Z ) | is given is similar, and we leave the details to the reader.

Author Contributions

This research was jointly carried by the two authors, contributing both to the exact same tasks to an equal extent. All authors have read and agreed to the published version of the manuscript.

Funding

The first author is partially supported by the PID2019-107297GB-I00 grant of the MICINN (Spain). The second author is partially supported by the PID2019-110224RB-I00 grant of the MICINN (Spain)

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Buhler, J.P.; Lenstra, H.W., Jr.; Pomerance, C. Factoring integers with the number field sieve. In The Development of the Number Field Sieve LNM 1554; Springer: Berlin, Germany, 1993. [Google Scholar]
  2. Kleinjung, T. On polynomial selection for the general number field sieve. Math. Comp. 2006, 75, 2037–2047. [Google Scholar] [CrossRef] [Green Version]
  3. Aoki, K.; Franke, J.; Kleinjung, T.; Lenstra, A.K.; Osvik, D.A. A kilobit special number field sieve factorization. Asiacrypt LNCS 2008, 4833, 1–12. [Google Scholar]
  4. Shor, P.W. Algorithms for quantum computation: discrete logarithms and factoring. In Proceedings of the 35th Annual Symposium on Foundations of Computer Science; IEEE: New York, NY, USA, 1994; pp. 124–134. [Google Scholar]
  5. Beckman, D.; Chari, A.N.; Devabhaktuni, S.; Preskill, J. Efficient Networks for Quantum Factoring. Phys. Rev. A 1996, 54, 1034–1063. [Google Scholar] [CrossRef] [PubMed] [Green Version]
  6. Xinhua, P.; Zeyang, L.; Nanyang, X.; Gan, Q.; Xianyi, Z.; Dieter, S.; Jiangfeng, D. Quantum Adiabatic Algorithm for Factorization and Its Experimental Implementation. Phys. Rev. Lett. 2008, 101, 220–405. [Google Scholar]
  7. Shuxian, J.; Keith, A.B.; Alexander, J.M.; Travis, S.H.; Sabre, K. Quantum Annealing for Prime Factorization. Sci. Rep. 2018, 8, 17667. [Google Scholar]
  8. Paillier, P.; Villar, J.L. Trading one-wayness against chosen-ciphertext security in factoring-based encryption. Lect. Notes Comput. Sci. 2006, 4284, 252–266. [Google Scholar]
  9. Rabin, M.O. Digital Signatures and Public Key Functions as Intractable as Factorization. Technical Report MIT/LCS/TR-212. 1979. Available online: http://publications.csail.mit.edu/lcs/pubs/pdf/MIT-LCS-TR-212.pdf (accessed on 19 November 2020).
  10. Williams, H.C. A modification of the RSA public-key encryption procedure. IEEE Trans. Inform. Theory 1980, 26, 726–729. [Google Scholar] [CrossRef]
  11. Goldwasser, S.; Micali, S.; Rivest, R.L. A digital signature scheme secure against adaptive chosen-message attacks. SIAM J. Comput. 1988, 17, 281–308. [Google Scholar] [CrossRef]
  12. Hofheinz, D.; Kiltz, E. Practical Chosen Ciphertext Secure Encryption from Factoring. Eurocrypt 2009, 2009, 312–332. [Google Scholar]
  13. Kiltz, E.; O’Neill, A.; Smith, A. Instantiability of RSA-OAEP under chosen-plaintext attack. J. Cryptol. 2017, 30, 889–919. [Google Scholar] [CrossRef] [Green Version]
  14. Bellare, M.; Rogaway, P. Optimal asymmetric encryption. Eurocrypt Lncs 1995, 950, 92–111. [Google Scholar]
  15. Dieulefait, L.; Jiménez Urroz, J. Small primitive roots and malleability of RSA moduli. J. Comb. Number Theory 2010, 2, 171–179. [Google Scholar]
  16. Coppersmith, D. Finding a Small Root of a Bivariate Integer Equation; Factoring with High Bits Known, Advances in cryptology, EUROCRYPT ’96. Lect. Notes Comput. Sci. 1996, 1070, 178–189. [Google Scholar]
  17. Martín, S.; Morillo, P.; Villar, J.L. Computing the order of points on an elliptic curve modulo N is as difficult as factoring N. Appl. Math. Lett. 2001, 14, 341–346. [Google Scholar]
  18. Kunihiro, N.; Koyama, K. Equivalence of counting the number of points on elliptic curve over the ring Z n and factoring n. Lect. Notes Comput. Sci. 1998, 1043, 47–58. [Google Scholar]
  19. Schoof, R. Elliptic Curves Over Finite Fields and the Computation of Square Roots modulo p. Math. Comput. 1985, 44, 483–494. [Google Scholar]
  20. Ankeny, N.C. The least quadratic non residue. Ann. Math. 1952, 55, 65–72. [Google Scholar] [CrossRef]
  21. Lenstra, H.W., Jr. Factoring integers with elliptic curves. Ann. Math. 1987, 126, 649–673. [Google Scholar] [CrossRef] [Green Version]
  22. De Weger, B. Cryptanalysis of RSA with small prime difference. Appl. Algebra Engrg. Commun. Comput. 2002, 13, 17–28. [Google Scholar] [CrossRef] [Green Version]
  23. Erra, R.; Grenier, C. The Fermat Factorization Method Revisited. 2009. Available online: https://eprint.iacr.org/2009/318.pdf (accessed on 19 November 2020).
Publisher’s Note: MDPI stays neutral with regard to jurisdictional claims in published maps and institutional affiliations.

Share and Cite

MDPI and ACS Style

Dieulefait, L.V.; Urroz, J. Factorization and Malleability of RSA Moduli, and Counting Points on Elliptic Curves Modulo N. Mathematics 2020, 8, 2126. https://doi.org/10.3390/math8122126

AMA Style

Dieulefait LV, Urroz J. Factorization and Malleability of RSA Moduli, and Counting Points on Elliptic Curves Modulo N. Mathematics. 2020; 8(12):2126. https://doi.org/10.3390/math8122126

Chicago/Turabian Style

Dieulefait, Luis V., and Jorge Urroz. 2020. "Factorization and Malleability of RSA Moduli, and Counting Points on Elliptic Curves Modulo N" Mathematics 8, no. 12: 2126. https://doi.org/10.3390/math8122126

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