1. Introduction
The security of a symmetric encryption scheme highly depends on the safety of the secret key transmission between parties involved in the communication. Other than direct interaction between parties, the utilization of asymmetric encryption schemes is the norm in modern communication. Central to the production of the public and private key pair of an asymmetric encryption scheme is the Certificate Authority (CA). Parties should have full trust in the CA to provide secure key pairs. Nevertheless, it is wise to conduct due diligence on the key pairs received. As such, for a communication topology with large participation, it is not surprising that the security of a symmetric encryption scheme will fall back on the strength of the asymmetric encryption scheme being utilized. As such, studies on the asymmetric cryptosystem utilized must be conducted to ensure that symmetric encryption remains secure.
RSA encryption/digital signing scheme is currently the world’s most widely used public-key cryptosystem. The standard RSA cryptosystem comprises three distinct algorithms: key generation, encryption, and decryption [
1]. The security of RSA is mainly based on the hardness of factoring large composite integers, which is modulus
where
p and
q are two large prime numbers of the same bit size. It is well known that RSA is not secure if the process of generating the public parameters
and the private parameters
do not satisfy certain conditions [
2,
3,
4,
5,
6]. For instance, the RSA cryptosystem is vulnerable when employing continued fractions if such decryption exponent
d is less than
, by a classical finding in [
2]. Additionally, [
3] has recovered the secret key if
and explicitly for
. Eventually, by using Coppersmith’s technique to obtain small solutions of modular univariate polynomials, ref. [
5] refined the bound to
. From then on, ref. [
4] identified that it is possible to raise the bound from
to
. The new bound is generated in part from the constraint that both primes number of
p and
q will have almost the same size of bit length. Moreover, ref. [
6] has maximized the small root bounds to small secret exponent RSA using linearization and applications. To the extent of improving the implementation of the RSA cryptosystem, many schemes with various techniques have been proposed. As a result, a lot of RSA variant cryptosystems arise [
7,
8,
9,
10,
11,
12].
The existence of RCA is the underlying motivation behind the identification of weak public keys. RCA is defined by [
13] as an entity issuing legitimate certificates being trusted by web browsers and users but contains hidden weaknesses. There is a window of vulnerability with the existing public key infrastructure between the time a rogue certificate is issued and when it is discovered. Likewise, an RCA can publish a fraudulent RSA digital certificate using these keys without users noticing its anomaly. As the weak keys satisfy the conditions established in the key generation process, the validity of these fraudulent certificates can be convincing. Hence, the cryptosystem continues to operate discreetly using the keys, i.e., suppose an adversary knows about the existence of these specific certificates, then the adversary can find the private keys corresponding to the public keys without knowing any information about the private keys.
In relation to the above, this paper discloses potential RCA methodology upon an RSA variant cryptosystem constructed from a cubic field connected to the cubic Pell equation that was invented by Murru–Saettone [
14]. Our identified conditions will allow an adversary to factor the modulus
N if the user has been provided with keys through the potential RCA methodology.
The framework of this paper is as follows. In
Section 2, we summarize the Murru–Saettone scheme.
Section 3 describes some important tools and useful lemmas, respectively. Moreover, in the
Section 4 and
Section 5, we present our main result, which says that the Murru–Saettone scheme is not secure with experimental results. Finally, we conclude the paper in
Section 6.
3. Preliminaries
In this section, we put forward preliminary concepts needed.
Definition 1. The expression of continued fractions expansion of can be written in these formswhich can also be written as . The process of calculating the continued fractions expansion would be executed in polynomial time if ξ is a rational number and thus . The convergents of ξ are the fractions denoted by for . An important result on continued fractions that will be used is the following theorem. Theorem 1. Let ξ be a positive number. Suppose that andThen is a convergent of the continued fractions expansion of ξ. The following result gives the bounds for
p, and
q in terms of
N (See [
15]).
Lemma 1. Let be the product of two unknown integers with . Then In the following, we set
. The former lemma can be used to find a good approximation for
. The following result shows that one can factor the modulus
if
is known [
15].
Proposition 1. Let be the product of two unknown integers with . Suppose that is known. Then,where Definition 2. Let and be the lower bound and the upper bound of ψ. Then we define .
The next remark shows how we can find the best current approximation values for and .
Remark 1. From Nitaj [16], we know that . This meansas . Hence, the best current approximation for is and for is . The following lemmas and theorem show conditions to be fulfilled by parameters in the equation .
Lemma 2. Let with . Let e satisfy the equation where X and Y are positive integers. If then is a convergent function of . Proof. Consider the following equation
Let
. Then, divide (
8) by
, we obtain
since
,
and
. If
, then
. As
will always be a positif value, rearranging (
9), we obtain
which satisfies Theorem 1. This terminates the proof. □
Theorem 2. Let with . Let e satisfies the equation where X, Y are positive integers. If
then N can be factored in polynomial time.
Proof. Suppose
e satisfies an equation
. Let
X,
Y and
Z satisfy the conditions in Lemma 3, then we can find the values of
X and
Y by computing
. From the values of
X and
Y, we can have the value of
Z by computing
. From the values of
Z, we define Equation (
5) as
Since,
then
Based on Proposition 1, we can factor
N in polynomial time. □
4. Generating Weak Murru–Saettone Cryptosystem Public Keys by RCA: Case
In this section, we show how a RCA can generate weak Murru–Saettone cryptosystem public key pairs. By using conditions in Lemma 3 coupled with results from Theorem 3, a RCA can build an algorithm that produces such weak Murru–Saettone cryptosystem public keys. The Algorithm 1 is as follows:
Algorithm 1. Generating weak Murru–Saettone cryptosystem public keys via Lemma 3 and Theorem 3 |
Input: Two distinct primes, p and q where Output: Weak Murru–Saettone cryptosystem public keys, ()
- 1:
Compute - 2:
Compute - 3:
Compute - 4:
Compute - 5:
Compute - 6:
Compute - 7:
Compute - 8:
Choose an integer Z randomly between and - 9:
Choose an integer - 10:
Compute - 11:
if prime number then return to Step 8. - 12:
else Assign to be all the small prime factors of - 13:
end if - 14:
Compute - 15:
ifthen return to Step 8. - 16:
else Compute - 17:
end if - 18:
Output
|
From Theorem 3, given
, a thorough user can utilize the following algorithm to determine the security of the provided key pair, whether it was generated via Algorithm 1 or not. In fact, the following algorithm will factor the modulus
. Algorithm 2 is as follows:
Algorithm 2. Factoring weak Murru–Saettone cryptosystem moduli for adversary |
Input:e and Output: - 1:
Run the continued fraction method on input to obtain the list of convergents . - 2:
fordo - 3:
Compute - 4:
Computing . - 5:
Find the two roots and by computing , . - 6:
if and is true then - 7:
return - 8:
end if - 9:
end for - 10:
return⊥
|
The following is an example to illustrate Algorithm 2 for the case .
Example 1. We use 512-bits for modulus, N in this example. Specifically, an adversary is givenandThen the adversary can compute the following parametersUsing values of e, N and A, the adversary obtain the continued fraction expansion of which areOur algorithm stops at the 13th convergent . Taking , the adversary computesUsing value of ζ, the adversary solve the Equations (5) and (1) to get S, p and q respectively.and 5. Generating Weak Murru–Saettone Cryptosystem Public Keys by RCA: Case
In this section, we show that the condition in the previous section can be extended to .
Lemma 3. Let with . Let e satisfies the equation where X and Y are positive integers. Ifthen is a convergent function of . Proof. Consider the following equation
Let
. Then, divide (8) by
, we obtain
since
,
and
. If
, then
. As
will always be a positive value, rearranging (
9), we obtain
which satisfies Theorem 1. This terminates the proof. □
Theorem 3. Let with . Let e satisfies the equation where X, Y are positive integers. If
then N can be factored in polynomial time.
Proof. Suppose
e satisfies an equation
. Let
X,
Y and
Z satisfy the conditions in Lemma 3, then we can find the values of
X and
Y by computing
. From the values of
X and
Y, we can have the value of
Z by computing
. From the values of
Z, we define Equation (
5) as
Since,
then
Based on Proposition 1, we can factor
N in polynomial time. □
Remark 2. A RCA can build an algorithm that produces such weak public keys by using Algorithm 1 by changing step 6 and 7 instead ofandrespectively. The following is an example to illustrate Algorithm 2 for the case .
Example 2. We use 512-bits for modulus, N in this example. Specifically, an adversary is givenand Then the adversary can compute the following parametersUsing values of e, N and A, the adversary obtain the continued fraction expansion of which areOur algorithm stops at the 15th convergent . Taking , the adversary computesUsing value of ζ, the adversary solve the Equations (5) and (4) to get S, p and q respectively.and Remark 3. The above examples uses two random prime numbers with and . By using the values of p and q in the examples, the adversary can easily compute the private exponent . Therefore, based on the examples, it is difficult for the user to identify that the rogue digital certificate because all the public and private parameters generated satisfy the conditions imposed during the key generation process.
6. Conclusions
We have constructed novel strategies to identify whether the Murru–Saettone RSA variant cryptosystem key pair was generated by a potential RCA. Based on our findings, if the following condition of or where Z is an approximation of satisfies, then Murru–Saettone RSA variant cryptosystem is vulnerable to an attack. An adversary will be able to successfully execute an attack in polynomial time by using continued fractions algorithm to factor the modulus N without having any information of the private keys upon the public key pair. Furthermore, by factoring modulus N, an adversary will be able to compute the value of and, finally, acquire the private key, .