Next Article in Journal
Comparison of Different Optimization Techniques for Model-Based Design of a Buck Zero Voltage Switching Quasi-Resonant Direct Current to Direct Current Converter
Next Article in Special Issue
A Universally Composable Linkable Ring Signature Supporting Stealth Addresses
Previous Article in Journal
Diffusion Simulation on Mammograms: A Technique for Analyzing and Monitoring Breast Tumors
Previous Article in Special Issue
Revocable-Attribute-Based Encryption with En-DKER from Lattices
 
 
Font Type:
Arial Georgia Verdana
Font Size:
Aa Aa Aa
Line Spacing:
Column Width:
Background:
Article

AIOL: An Improved Orthogonal Lattice Algorithm for the General Approximate Common Divisor Problem

1
School of Computer and Cyberspace Secrity, Communication University of China (CUC), 1 Dingfuzhuang East Street, Beijing 100024, China
2
Research Center for Basic Theories of Intelligent Computing, Research Institute of Basic Theories, Zhejiang Lab, Hangzhou 311121, China
3
School of Mathematics and Information Technology, Longnan Teachers College (LNTC), 34 Longnan Road, Longnan 742500, China
4
School of Cyberspace Science and Technology, Beijing Insititute of Technology (BIT), 5 Zhongguancun South Street, Beijing 100081, China
5
Shanghai Key Laboratory of Trustworthy Computing, East China Normal University (ECNU), 3663 North Zhongshan Road, Shanghai 200062, China
*
Authors to whom correspondence should be addressed.
Mathematics 2023, 11(24), 4989; https://doi.org/10.3390/math11244989
Submission received: 8 October 2023 / Revised: 5 December 2023 / Accepted: 13 December 2023 / Published: 18 December 2023
(This article belongs to the Special Issue New Advances in Cryptographic Theory and Application)

Abstract

:
The security of several fully homomorphic encryption (FHE) schemes depends on the intractability assumption of the approximate common divisor (ACD) problem over integers. Subsequent efforts to solve the ACD problem as well as its variants were also developed during the past decade. In this paper, an improved orthogonal lattice (OL)-based algorithm, AIOL, is proposed to solve the general approximate common divisor (GACD) problem. The conditions for ensuring the feasibility of AIOL are also presented. Compared to the Ding–Tao OL algorithm, the well-known LLL reduction method is used only once in AIOL, and when the error vector r is recovered in AIOL, the possible difference between the restored and the true value of p is given. Experimental comparisons between the Ding-Tao algorithm and ours are also provided to validate our improvements.

1. Introduction

Background. The approximate common divisor (ACD) problem was first studied by Howgrave-Graham [1]. Further interest in this problem was inspired by the proposal of fully homomorphic encryption (FHE) by Van Dijk et al. [2], as well as the cryptographic constructions proposed subsequently [3,4,5]. The security of these cryptosystems depends on the hardness assumption of the ACD problem and its variants.
The ACD problem is usually formulated in two ways: the problem of the general approximate common divisor (GACD) and the problem of the partial approximate common divisor (PACD). Both of these formulations polynomially take as inputs many samples x i = p q i + r i with sufficiently small but non-zero r i and aim to work out the hidden common divisorp, while the latter is given an additional exact sample x 0 = p q 0 (i.e., r 0 = 0 ). Intuitively, the PACD problem is easier than GACD, considering that one can work out p directly if he/she knows the factorization of the additional sample x 0 , whereas the capability of integer factorization has no direct impact on the GACD problem. However, Van Dijk et al. pointed out that at present, there is no PACD algorithm that does not work for GACD [2]. And the usefulness of PACD has been demonstrated by a much more efficient construction of the FHE scheme [5], the security of which has been proven to rely on PACD rather than on GACD. The original papers [1,2] presented a few possible lattice attacks on the GACD problem, including the orthogonal lattices (OL) method, simultaneous diophantine approximation (SDA) method, and multivariate polynomial equations (MP) method. During the past decade, several related improvements and cryptanalytic works were proposed [6,7,8,9,10,11,12,13,14]. Detailed comparisons of these methods are summarized in Table 1. Further explanations on these methods are given below.
  • SDA methods. The basic idea of SDA methods is to note that if r i is small, then the fraction q i / q 0 is an instance of a simultaneous diophantine approximation to x i / x 0 ( i = 1 , 2 , , t ) . Once q 0 is determined, r 0 can be computed from r 0 x 0 ( mod q 0 ) . Hence, p = ( x 0 r 0 ) / q 0 .
  • OL methods. The common objective of OL methods is to find some short vectors that are orthogonal to certain unknown referred vector(s) v ref . The difference lies in the setting on v ref , as well as the methods for finding such short objective vectors. At EuroCrypt 2010, Van Dijk et al. [2] described two OL methods. The first is to set v ref = ( 1 , r 1 / R , , r t / R ) with R = 2 ρ , and the second is to set v ref = q = ( q 1 , , q t ) and v ref = r = ( r 1 , , r t ) . About 4 years later, the second method was further improved by Ding and Tao [7] in the sense that they used only one referred vector v ref = q . In this sequel, we mainly focus on this improved OL method. According to the shape of the basis of the working lattice L ( α ) , this kind of OL method can be further divided into two sub-categories: OL-∧, with a lower triangular matrix as the working lattice basis [8,9], and OL-∨, with an upper triangular matrix as the working lattice basis [7,9,10].
  • MP methods. The origin of MP methods can be traced back to Howgrave’s work at CaLC 2001 [1], where the PACD problem was reduced to the problem of finding small roots of multivariate polynomial equations. This idea was further extended to suit the need to solve GACD [2,11,15,16]. The core idea of MP methods is to construct a t-element polynomial Q ( X 1 , X 2 , , X t ) of degree n in the variables X i ( i = 1 , , t ) such that Q ( r 1 , , r t ) ( mod p k ) for a properly chosen n and k. Then, if | Q ( r 1 , , r t ) | < p k , the equation Q ( r 1 , , r t ) = 0 holds over the integers. Eventually, to obtain r 1 , , r t , at least t algebraic independent target vectors were needed in order to be able to perform elimination to reduce Q ( r 1 , , r t ) = 0 to a univariate polynomial equation. After then, one can compute p = gcd ( x 0 , x 1 r 1 ) easily. If we have very limited PACD samples, the MP method has advantages in computational cost. However, if sufficiently many PACD samples are available, the process of searching the required algebraic independent target vectors has a huge cost. In this case, Galbraith et al. [8] suggested the use of linear polynomials in the MP method, and this, in turn, is essentially equivalent to the orthogonal lattice method.
Among the above work, the OL algorithm by Ding and Tao [7] is ingenious due to its use of the well-known LLL algorithm twice to accurately recover the error vector r . After mapping the given GACD instances into a lattice L , the first calling of the LLL algorithm is to find suitable t z ( z = 1 , 2 ) short vectors u i ( i = 1 , 2 , , t z ) for establishing the equations
U · x = U · r for U = [ u 1 | | u t z ] ,
where u i = ( u i 1 , u i 2 , , u i t ) . Then, a new lattice L is constructed using the base vectors of the solution space of the above equation, and the second calling of the LLL algorithm is to recover the error vector r accurately. Knowing r , it is very easy to recover p, even for a primary school student, say, by using the extended Euclidean algorithm. According to Ding and Tao [7], it is an amazing thing that the first calling of the LLL algorithm over L should find multiple short vectors of appropriate length to construct the equations, and they claimed that a theoretical proof would be a very significant result. Another merit of the Ding–Tao method is that setting the related parameters is simple, and this makes the implementation of OL attacks against GACD-based cryptosystems very easy in practice. For example, the lower bound of the number of samples t depends only on γ , and the length of the short vector v depends only on t and γ .
Table 1. Comparisons of methods for GACD.
Table 1. Comparisons of methods for GACD.
Comparative ResultsSDA [8,12,17]MP [1,11,16,18]
OL Attack
OL-∧ [9]
 
OL-∨ [9]
α = 2 ρ , [OL-∧]SDA and OL-∧ with α = 2 ρ
attack have similar performances.
MP is not better than
OL-∧ with α = 2 ρ attack
for practical cryptanalysis;
both OL attacks have advantages
over the MP approach.
α is in general,
[OL-∧, OL-∨].
When ( γ ρ ) is very small,
OL-∧ with a rounding technique
is the fastest.

The cases with α in general
and rounding techniques are
more suitable for cases where
ρ is no longer extremely
smaller than η .
Motivation and Contributions. the italics should be retained With further experiments on the Ding–Tao algorithm, we find that the actual effect of the algorithm is better than they claimed. In particular, we realize that the conditions ρ < η / 2 and t ( 4 γ ) 1 / 3 could be relaxed and merged, and the second calling of the LLL algorithm could also be saved. Moreover, we find that even for failure executions of the Ding–Tao algorithm, there is a high probability that the recovered p differs from the actual value by only 1 or very small numbers. Therefore, our motivation in this work is to propose an improved OL algorithm to reduce both space and time costs for solving the GACD problem. Our main contributions are summarized as follows:
  • First, we modify the range of parameters N , t and the length of the short target vector v in the Ding–Tao algorithm so that we need to build lattice and call the LLL algorithm only once. The success rate for recovering p reaches 100 % under the merged condition
    t max 4 , 5 3 η ρ ( η ρ ) 2 1.2 ( γ + ρ ) .
    Note that this inequation also implies ρ η + 0.6 ( η + 0.6 ) 2 + 1.2 γ no matter whether ρ < η / 2 holds.
  • Second, based on the above modification, we give a proof on why, in our algorithm AIOL, the method of only calling the LLL algorithm once gives us the desired short vectors. This can be viewed as a theoretical answer to Ding and Tao’s amazing question.
  • Third, we give the possible differences between the recovered p and the actual hidden common divisor when the error vector r is recovered. Knowing these differences is, in turn, helpful for recovering p and thus expanding the scope of OL attacks.
Roadmap. The remaining contents are organized as follows. In Section 2, the formal definitions of the problems of GACD and PACD are given, and the lattice concepts and the LLL algorithm are introduced briefly. In Section 3, the orthogonal lattice-based approaches, including our improvements, for GACD are explored and developed in detail. Experiments and comparisons, as well as related discussions, are presented in Section 4. Finally, concluding remarks are given in Section 5.

2. Preliminaries

Throughout this paper, we make the following agreement on notations: capital boldface letters denote matrices, e.g., A , while lowercase bold letters denote vectors e.g., a ; let ( · , · ) and · be the inner product and the l 2 Euclidean length, respectively, and A T denote the transpose of matrix A ; and the logarithmic notation log always takes 2 as the base, while r denotes the smallest integer not less than r.
Definition 1
(ACD Distribution). Given γ , η , ρ N , let p be an η-bit odd integer. Then, the ACD distribution, D γ , ρ ( p ) , is an efficiently sampleable distribution defined as follows:
D γ , ρ ( p ) = { p q + r | q Z ( 0 , 2 γ / p ) , r Z ( 2 ρ , 2 ρ ) } .
Definition 2
(GACD Problem). Given access to an ACD distribution D γ , ρ ( p ) as an oracle, the objective of the general approximate common divisor (GACD) problem is to find p.
Definition 3
(PACD Problem). Given access to an ACD distribution D γ , ρ ( p ) as an oracle, with the restriction that the first output of D γ , ρ ( p ) is x 0 = p q 0 for some q 0 Z ( 0 , 2 γ / p ) , the objective of the partial approximate common divisor (PACD) problem is to find p.
Remark 1.
Apparently, a PACD instance is a GACD by coincidence only with a probability that is negligible with respect to ρ.
Definition 4
( δ —LLL reduction basis). Given a lattice basis B = ( b 1 , , b n ) , the corresponding Gram–Schmidt basis B * = ( b 1 * , , b n * ) , B is a reduced basis if and only if the following two conditions are satisfied:
(1)
The size condition: μ i , j = ( b i , b j * ) b j * 2 1 / 2 , for all 1 j < i n ;
(2)
The Lovász condition: b i * 2 ( δ μ i , i 1 2 ) b i 1 * 2 , for all 1 < i n , where 1 / 4 < δ < 1 .
Definition 5
(Geometric Series Assumption [19]). Given the Gram–Schmidt basis ( b 1 * , , b n * ) ,
b i * b 1 = θ i 1
for i = 1 , 2 , , n , where 3 / 4 θ < 1 is called GSA constant.
The geometric series assumption (GSA) means the length of the Gram–Schmidt basis b i * with LLL reduction decays geometrically with the quotient θ and indicates
b i *     b 1 ( i = 1 , 2 , , n ) .
Theorem 1
([20]). Given an LLL reduction lattice basis B = ( b 1 , , b n ) , ( b 1 * , , b n * ) is the corresponding Gram–Schmidt basis. The following results hold:
(1) 
b 1 α n 1 4 | det ( B ) 1 n | ;
(2) 
b j * α ( i j ) 2 b i * , for 1 j < i n ;
(3) 
b j α ( i 1 ) 2 b i * , for 1 j < i n ;
where α = 1 δ 1 4 , δ is the parameter in the Definition 4.
Theorem 2
([21]). The LLL basis reduction algorithm with the factor δ = 3 4 computes an LLL-reduced basis in polynomial time in the maximal bit-length of the coefficients of the input basis, the lattice rank n, and the space dimension m. Specifically, if b 1 , , b n is an input lattice basis, M = m a x { b 1 , , b t } , then LLL runs in
O n 5 m · ( l o g 4 3 M ) 3
bit operations under school multiplication.

3. Orthogonal Lattice (OL)-Based Approach

3.1. The Basic Idea of OL Algorithms

Nguyen and Stern [22] have demonstrated the usefulness of the orthogonal lattice in cryptanalysis, and this has been used in several ways to attack the ACD problem. The idea is to find the u = ( u 1 , u 2 , , u t ) L ( q , r ) that is orthogonal to both q = ( q 1 , q 2 , , q t ) and r = ( r 1 , r 2 , , r t ) . Since x i = p q i + r i , x = ( x 1 , x 2 , , x t ) is orthogonal to u , the task is to find t 1 linearly independent vectors u shorter than any vector in L ( x ) to recover q , r and therefore p.
Based on the idea of Nguyen and Stern, the current idea is to find t z ( z = 1 , 2 ) linearly independent vectors u that are only orthogonal to q . The core steps of the current OL algorithm include the following two steps.
First, find t z ( z = 1 , 2 ) linearly independent vectors u orthogonal to q , that is,
i = 1 t u i · q i = 0 .
Then, establish and solve the indefinite equation U · x = U · r for U = [ u 1 | | u t z ] .
Second, find small positive-integer solutions to the above equations. At present, the common way to find the small solutions is to construct a lattice L with a basis matrix
D = d 0 d 1 d z
and then employ the LLL algorithm to reduce the basis matrix D with the hope that the first output is the vector r . However, at present, only experimental conditions can meet this expectation, and there is still a lack of theory.
Let the general solution formula of the equations be
d = d 0 + t 1 d 1 + + t z d z
where d 0 is a special solution, t 1 , , t z are integers, and d 1 , , d z is a basis of the integer solution space for the corresponding homogeneous linear equations.
Let d L . Then,
d = k 0 d 0 + k 1 d 1 + + k z d z
where k 0 , k 1 , , k z are integers. Obviously, when k 0 = 1 , (7) = (6). Reduce the lattice D to D :
D = d 0 d 1 d z .
To facilitate finding r , consider the explicit vectors d 0 , d 1 , , d z . It is easy to deduce that only one of them is the solution to the equations.
Let d i be the solution to the equations, and if d i = d 0 , then d 0 is probably equal to r . With this in mind, Ding and Tao [7] found the conditions for which the algorithm can work well (theoretically not proved):
ρ < η 2 a n d t ( 4 γ ) 1 / 3 .
In addition, if d i d 0 , we find an interesting occurrence, which is that the recovery value p is only 1 or a very small number different from the true value p in many cases of our experiment. And our experiments lead to the following general conclusions between p and p :
Let d i = ( u i 1 , u i 2 , , u i t ) d 0 , d r u = gcd ( r 1 u i 1 , r 2 u i 2 , , r t u i t ) . Then,
p p = d r u ,
where p is the recovered value of p. Therefore, if d i d 0 , using vector d i , p can be restored. And since d r u is bounded, p can be restored by p .
In summary, one of the outputs d 1 , , d z generated by the LLL algorithm can be used to recover r under the appropriate conditions.

3.2. Our Proposal

In this part, an improved OL algorithm (Algorithm 1), AIOL, is described in detail.
Algorithm 1 (AIOL): An improved OL algorithm for GACD.
Input: The GACD parameters γ , η , ρ N , and t ACD samples { x 1 , , x t } $ D γ , ρ ( p ) , with t satisfying
t max 4 , 5 3 η ρ ( η ρ ) 2 1.2 ( γ + ρ ) .
Output: The approximate greatest common divisor p.
1. Randomly choose N ( 2 γ + η 1 , 2 γ + η ) and construct a lattice L with the basis
B = 1 x 1 1 x 2 1 x t N .
2. Reduce the lattice L by calling the LLL algorithm with δ = 3 4 . Let the reduced basis be V = [ v 1 | | v t + 1 ] , where v i = ( u i 1 , , u i t , v i ( t + 1 ) ) , ( i = 1 , 2 , , t + 1 ) .
3. Collect short vectors from V so that v i < 2 η ρ 2 log t , ( i = 1 , 2 , , t z ) , where z = 1 , 2 . Then, solve the following Diophantine equations with t unknowns r 1 , , r t :
j = 1 t u i j · r i = j = 1 t u i j · x i ( i = 1 , , t z ) .
4. Rewrite the integer solutions of (13) as follows:
d = d 0 + t 1 d 1 + + t z d z ,
where d 0 is a special solution of the Diophantine equations, t 1 , , t z are integers, and d 1 , , d z is a basis of the integer solution space for the corresponding homogeneous linear equations.
5. Let r = d 0 .
6. Compute p = gcd ( x 1 r 1 , x 2 r 2 ) .
Through the proof in the next section, it can be seen that when the condition
( η ρ ) 2 1.2 ( γ + ρ )
or, equivalently,
ρ η + 0.6 ( η + 0.6 ) 2 + 1.2 γ
holds, the AIOL algorithm will successfully recover p.

3.3. The Proof of the AIOL Algorithm

Lemma 1.
For   v L , if v < 2 η ρ 2 l o g t , then Equation (13) holds.
Proof. 
Let v = ( u 1 , u 2 , , u t , i = 1 t u i x i + u t + 1 N ) , M = 2 η ρ 2 log t ; then,
v = i = 1 t u i 2 + i = 1 t u i x i + u t + 1 N 2 < M .
Thus,
| u i | < M , i = 1 t u i x i + u t + 1 N < M ( 1 i t ) .
Since 2 γ + η 1 N 2 γ + η ,
i = 1 t u i x i 2 γ t · u 2 γ t · v 2 γ t · 2 η ρ 2 log t = 2 γ + η ρ 2 < N / 2 .
Therefore, there is no modular N operation, and u t + 1 = 0 . Thus, v = ( u 1 , u 2 , , u t , i = 1 t u i x i ) .
We also have
i = 1 t u i r i 2 ρ t · v 2 η 2 .
To prove that i = 1 t u i q i = 0 holds, suppose i = 1 t u i q i 0 , so
p i = 1 t u i q i p 2 η 1
i = 1 t u i x i = p i = 1 t u i q i + i = 1 t u i r i p i = 1 t u i q i i = 1 t u i r i 2 η 1 2 η 2 = 2 η 2 ,
but
i = 1 t u i x i + u t + 1 N = i = 1 t u i x i < M = 2 η ρ 2 log t < 2 η 2 .
This is a contradiction. The Equations (4) and (13) hold. Then, Lemma 1 holds. □
Lemma 1 gives an upper bound on the length of the desired vectors in the lattice L that makes the the Equation (13) work.
Lemma 2.
If the number t of samples satisfies
( 4 / 3 ) ( 3 t 2 ) / 4 · 2 ( γ + η ) / ( t + 1 ) 2 η ρ 2 log t ,
then LLL reduction basis vectors are valid for the construction of Equation (13).
Proof. 
According to Theorem 1, we consider the ( t 1 ) -th LLL reduction basis vector v t 1 , whose length can be estimated as below:
v t 1 α ( t 1 ) / 2 v t * , ( ( 3 ) o f T h e o r e m   1 ) = ( 4 / 3 ) ( t 1 ) / 2 v t * , ( α = 4 / 3 a s δ 1 ) ( 4 / 3 ) ( t 1 ) / 2 v 1 , ( G S A ) ( 4 / 3 ) ( t 1 ) / 2 · ( 4 / 3 ) t / 4 · | B | 1 / ( t + 1 ) , ( ( 1 ) o f T h e o r e m   1 ) ( 4 / 3 ) ( 3 t 2 ) / 4 · 2 ( γ + η ) / ( t + 1 ) , ( | B | 2 ( γ + η ) ) .
Therefore, by Lemma 1, Equation (13) holds when (24) is true. □
Lemma 2 estimates the length of the ( t 1 ) -th vector output by the LLL algorithm and makes it fall within the range required by Lemma 1. Thus, the vectors found can be used to construct Equation (13).
Based on the above two lemmas, the following theorem can be obtained.
Theorem 3.
When GACD parameters satisfy
( η ρ ) 2 1.2 ( γ + ρ )
or
ρ η + 0.6 ( η + 0.6 ) 2 + 1.2 γ ,
and the number of samples satisfy
t max 4 , 5 3 η ρ ( η ρ ) 2 1.2 ( γ + ρ ) ,
then the equation
j = 1 t u i j · r i = j = 1 t u i j · x i ( i = 1 , , t z )
holds.
Proof. 
From Condition (24), we can obtain that the length of the LLL reduction basis vectors satisfies Lemma 2. Thus, the LLL reduction basis vectors are valid for the construction of Equation (13). Combining the above two lemmas, we simplify the inequation and ignore some small terms to obtain the following bound of sample numbers t. The specific process is as follows. We take the logarithm base 2 on both sides of (24) to obtain:
3 t 2 4 log 4 3 + γ + η t + 1 η ρ 2 log t .
Removing some smaller items of (26), log 4 3 0.4 , we have
0.3 t + γ + η t + 1 η ρ ,
By sorting out Formula (27), we obtain
0.3 t 2 ( η ρ 0.3 ) t + ( γ + η ) 0 ,
Then,
0.3 t 2 ( η ρ ) t + ( γ + η ) 0 ,
By solving Inequality (29), when
Δ = ( η ρ ) 2 1.2 ( γ + ρ ) 0 ,
we can give a lower bound on t
t 5 3 η ρ ( η ρ ) 2 1.2 ( γ + ρ ) .
Here, Conditions (15) and (16) are equivalent. By organizing Formula (16) into an inequality regarding ρ , we can obtain
ρ 2 2 ( η + 0.6 ) ρ 1.2 γ 0 .
Notice that Δ = 4 ( η + 0.6 ) 2 + 4.8 γ 0 ; thus, solving Inequality (32) gives an upper bound on ρ , ρ η + 0.6 ( η + 0.6 ) 2 + 1.2 γ .
In summary, when Conditions (16) and (31) hold, the algorithm can recover p successfully. Note that the condition t 4 comes from the third step of AIOL, where we need to collect at least 2 short vectors to build the required Diophantine equations. Then, the condition
t max 4 , 5 3 η ρ ( η ρ ) 2 1.2 ( γ + ρ ) .
is true. Hence, Theorem 3 holds. □
Theorem 3 gives a lower bound on the number of samples t. If the parameters γ , η , and ρ meet Conditions (15) or (16), the error term r i can be established, and the secret number p can be determined.

3.4. The Complexity of the AIOL Algorithm

In the AIOL algorithm, the dominant computation is the LLL reduction of the lattice. Since only one appropriate set of N and t needs to be used at a time, the most complex calculations required of the AIOL algorithm are a single LLL lattice reduction. According to Theorem 2, the complexity of running the LLL lattice reduction algorithm is polynomial in γ , η , and t for δ = 3 4 . More specifically, let L be a lattice of rank t + 1 with the basis b 1 , , b t + 1 and b i     2 γ + η + 1 , ( i = 1 , , t + 1 ) . Then the number of bit operations needed by the LLL basis reduction in AIOL for δ = 3 4 is
O ( t + 1 ) 6 · ( l o g 4 3 2 γ + η + 1 ) 3 ,
or, equivalently,
O ( t + 1 ) 6 · ( γ + η + 1 ) 3
under school multiplication, where t satisfies Formula (11).
Remark 2.
The above analysis suggests that the asymptotical complexity of our AIOL algorithm is higher than that of the Ding–Tao algorithm, where the bit complexity is O ( t + 1 ) 6 · ( γ + 1 ) 3 under school multiplication (in [7], this complexity is given by O ( t + 1 ) 6 · ( 2 ( γ + 1 ) ) 3 . Here, we omit the constant 2 considering the effects of the leading symbol O). The reason is that in AIOL, the lattice parameter N is set to γ + η bits, which is much bigger than in the Ding–Tao algorithm, where N is set to γ bits.

4. Experiments and Comparisons

In this section, we conduct experiments on our algorithm AIOL, as well as the Ding–Tao algorithm. The experimental environment is specified as follows: an Intel Core i5-1235U CPU processor (1.30 GHz) with 16 GB of memory, Windows 10 OS, and Maple 2021 coding language.
The experiments are organized as follows. To test the effects of relaxation on conditions of the error length ρ and the required number of samples t, we adopted the following settings on the related parameters:
  • We fixed η = 160 , i.e., the bit-length of the hidden common divisor p;
  • Let γ = 300 , 400 , 500 , 1000 , 1500 , and 2000, respectively;
  • For each case of setting on the bit-length of GACD samples γ , we ran the Ding–Tao algorithm and our AIOL algorithm 100 times for different ρ (resp., t) around the upper (resp., lower) bound of ρ (resp., t) given by the Ding–Tao Condition (9) and our Condition (11) and Condition (16), respectively.
  • Then, for each case, we collected the success rate of recovering the hidden common divisor p, as well as the maximal ρ (resp., the minimal t) that enables the related algorithms work. That is, ρ m a x and t m i n represent the upper bound of ρ and the lower bound of t, respectively, when the corresponding algorithm can be used to recover p successfully.
The results of the first experiments are summarized in Table 2, where the symbol ‘–’ indicates that in this case, the related algorithm failed to work out. We can see that:
  • The overall success rate of our algorithm is 100%, which is observably higher than that of the Ding–Tao algorithm under the same settings of ρ , γ and a similar scale of t. Moreover, even for bigger settings of ρ in AIOL, the success rates are still higher than those obtained by the Ding–Tao algorithm for the smaller settings of ρ (intuitively, the bigger the value of ρ , the more errors are involved in the given ACD samples, and this, in turn, means more difficulty in solving the given GACD instances).
  • The condition on ρ given by the Ding–Tao Condition (9) is irrelevant when considering that, for γ = 300 and γ = 1000 , the maximal values of ρ to ensure the Ding–Tao algorithm has a high success rate are 103 and 30, respectively. These are, respectively, either observably bigger or smaller than the given bound 79 < η / 2 .
  • The condition on ρ given by AIOL is relaxed to the case of ρ > η / 2 . And this condition is tight in the sense that for all these cases, the maximal values of ρ to ensure the success of AIOL are almost same with the bound given by (16).
  • The condition on t given by the Ding–Tao Condition (9) is rigorous in the sense that for even small values of t, our tests of the Ding–Tao algorithm failed, whereas the condition on t given by (11) in AIOL is loose since for even small t, our algorithm still works well. At present, we have no idea how to give a tight bound on choosing t for the AIOL algorithm.
Remark 3.
Our experiments also indicate that the running time of AIOL becomes longer with an increase in the parameters γ , η , ρ . Under the same settings of γ and ρ, decreasing t will reduce the computational cost significantly. This is the reason why our AIOL algorithm runs much faster than the Ding–Tao algorithm for the above experimental GACD instances.

5. Conclusions

Interest in the general approximate common divisor (GACD) problem has been excited by the possibility of building fully homomorphic encryptions over integers, though many such kinds of cryptographic constructions have been broken. In fact, from even an abstract point of view, the GACD problem can be viewed as a learning-with-error (LWE) version of the greatest common divisor (GCD) problem over the 1-dimensional lattice Z . Although we know that all lattice problems are easy to solve at low dimensions, more efforts are still needed to tackle the GACD problem. In this paper, an improved orthogonal lattice algorithm, AIOL, is proposed for solving the GACD problem. Compared with Ding and Tao’s OL method, the parameter conditions applicable to AIOL are relaxed, and the experiments show that the success rate of AIOL is enhanced observably.

Author Contributions

Conceptualization, Y.R., L.W. and Z.C.; methodology, Y.R., L.W. and Z.C.; validation, Y.P. and L.W.; writing—original draft preparation, Y.R.; writing—review and editing, Y.R. and L.W.; code implementation, Y.R. and L.W.; supervision and project administration, Y.P. All authors have read and agreed to the published version of the manuscript.

Funding

This work was supported in part by the National Key Research and Development Program of China (Grant No. 2020YFA0712300), the National Defense Basic Scientific Research program of China (Grant No. JCKY2020602B008), and the National Natural Science Foundation of China (Grant No. 62272040, 62132005).

Data Availability Statement

Available on request from the corresponding author.

Conflicts of Interest

The authors declare no conflict of interest.

References

  1. Howgrave-Graham, N. Approximate integer common divisors. In Cryptography and Lattices; Silverman, J., Ed.; Springer: Berlin/Heidelberg, Germany, 2001; Volume 2146, pp. 51–66. [Google Scholar]
  2. Van Dijk, M.; Gentry, C.; Halevi, S.; Vaikuntanathan, V. Fully homomorphic encryption over the integers. In Advances in Cryptology–EUROCRYPT 2010; Gilbert, H., Ed.; Lecture Notes in Computer Sciences; Springer: Berlin/Heidelberg, Germany, 2010; Volume 6110, pp. 24–43. [Google Scholar]
  3. Coron, J.S.; Naccache, D.; Tibouchi, M. Public Key Compression and Modulus Switching for Fully Homomorphic Encryption over the Integers. In EUROCRYPT’12D; Pointcheval, D., Johansson, T., Eds.; Springer: Berlin/Heidelberg, Germany, 2012; Volume 7237, pp. 446–464. [Google Scholar]
  4. Cheon, J.H.; Stehlé, D. Fully Homomorphic Encryption over the Integers Revisited. In EUROCRYPT’15; Oswald, E., Fischlin, M., Eds.; Springer: Berlin/Heidelberg, Germany, 2015; Volume 9056, pp. 513–536. [Google Scholar]
  5. Coron, J.S.; Mandal, D.; Tibouchi, N.M. Fully homomorphic encryption over the integers with shorter public keys. In Advances in Cryptology-CRYPTO 2011; Rogaway, P., Ed.; Lecture Notes in Computers Sciences; Springer: Berlin/Heidelberg, Germany, 2011; Volume 6841, pp. 487–504. [Google Scholar]
  6. Chen, Y.; Nguyen, P.Q. Faster algorithms for approximate common divisors: Breaking fully homomorphic encryption challenges over the integers. In Advances in Cryptology-EUROCRYPT 2012; Springer: Berlin/Heidelberg, Germany, 2012; pp. 502–519. [Google Scholar]
  7. Ding, J.; Tao, C. A New Algorithm for Solving the Approximate Common Divisor Problem and Cryptanalysis of the FHE based on GACD. Iacr Cryptol. Eprint Arch. 2014, preprint. [Google Scholar]
  8. Galbraith, S.; Gebregiyorgis, S.; Murphy, S. Algorithms for the approximate common divisor problem. LMS J. Comput. Math. 2016, 19, 58–72. [Google Scholar] [CrossRef]
  9. Xu, J.; Sarkar, S.; Hu, L. Revisiting orthogonal lattice attacks on approximate common divisor problems. Theor. Comput. Sci. 2022, 911, 55–69. [Google Scholar] [CrossRef]
  10. Yu, X.; Wang, Y.; Xu, C.; Takagi, T. Studying the Bounds on Required Samples Numbers for Solving the General Approximate Common Divisors Problem. In Proceedings of the 2018 5th International Conference on Information Science and Control Engineering, Zhengzhou, China, 20–22 July 2018. [Google Scholar]
  11. Cohn, H.; Heninger, N. Approximate common divisors via lattices. In Proceedings of the ANTS X: Proceedings of the Tenth Algorithmic Number Theory Symposium, San Diego, CA, USA, 9–13 July 2012; Volume 1, pp. 271–293. [Google Scholar]
  12. Gebregiyorgis, S. Algorithms for the Elliptic Curve Discrete Logarithm Problem and the Approximate Common Divisor Problem. PhD Thesis, The University of Auckland, Auckland, New Zealand, 2016. [Google Scholar]
  13. Cheon, J.H.; Cho, W.; Hhan, M. Algorithms for CRT-variant of approximate greatest common divisor problem. J. Math. Cryptol. 2020, 14, 397–413. [Google Scholar] [CrossRef]
  14. Cho, W.; Kim, J.; Lee, C. Extension of simultaneous Diophantine approximation algorithm for partial approximate common divisor variants. IET Inf. Secur. 2021, 15, 417–427. [Google Scholar] [CrossRef]
  15. Takayasu, A.; Kunihiro, N. Better Lattice Constructions for Solving Multivariate Linear Equations, Modulo Unknown Divisors; Boyd, C., Simpson, L., Eds.; Springer: Berlin/Heidelberg, Germany, 2013; Volume 7959, pp. 118–135. [Google Scholar]
  16. Takayasu, A.; Kunihiro, N. Better Lattice Constructions for Solving Multivariate Linear Equations Modulo Unknown Divisors. IEICE Trans. 2014, 6, 1259–1272. [Google Scholar] [CrossRef]
  17. Lagarias, J.C. The computational complexity of simultaneous Diophantine approximation problems. SIAM J. Comput. 1985, 14, 196–209. [Google Scholar] [CrossRef]
  18. Lepoint, T. Design and Implementation of Lattice-Based Cryptography. In Cryptography and Security; Ecole Normale Supérieure de Paris (ENS Paris): Paris, France, 2014. [Google Scholar]
  19. Schnorr, C.-P. Lattice reduction by random sampling and birthday methods. In Proceedings of the STACS 2003, 20th Annual Symposium on Theoretical Aspects of Computer Science, Berlin, Germany, 27 February–1 March 2003; pp. 145–156. [Google Scholar]
  20. Hoffstein, J.; Pipher, J.; Silverman, H.H. An Introduction to Mathematical Cryptography, 2nd ed.; Springer: Berlin/Heidelberg, Germany, 2014. [Google Scholar]
  21. Nguyen, P.Q.; Valle, B. The LLL Algorithm: Survey and Applications; Springer: Berlin/Heidelberg, Germany, 2009. [Google Scholar]
  22. Nguyen, P.Q.; Stern, J. The Two Faces of Lattices in Cryptology. In Cryptography and Lattices; Silverman, J., Ed.; Springer: Berlin/Heidelberg, Germany, 2001; pp. 146–180. [Google Scholar]
Table 2. Experiments and comparisons: conditions on ρ , t and success rate ( η = 160 ).
Table 2. Experiments and comparisons: conditions on ρ , t and success rate ( η = 160 ).
γDing–TaoAIOL
ρ (9) ρ max t (9) t min succ % ρ (16) ρ max t (11) t min succ %
300791031111 82 % 1371373517 100 %
40079911212 87 % 1341343419 100 %
50079801313 90 % 1311313923 100 %
100079301616 89 % 1221225433 100 %
150079191151156040 100 %
200079211091097246 100 %
Disclaimer/Publisher’s Note: The statements, opinions and data contained in all publications are solely those of the individual author(s) and contributor(s) and not of MDPI and/or the editor(s). MDPI and/or the editor(s) disclaim responsibility for any injury to people or property resulting from any ideas, methods, instructions or products referred to in the content.

Share and Cite

MDPI and ACS Style

Ran, Y.; Pan, Y.; Wang, L.; Cao, Z. AIOL: An Improved Orthogonal Lattice Algorithm for the General Approximate Common Divisor Problem. Mathematics 2023, 11, 4989. https://doi.org/10.3390/math11244989

AMA Style

Ran Y, Pan Y, Wang L, Cao Z. AIOL: An Improved Orthogonal Lattice Algorithm for the General Approximate Common Divisor Problem. Mathematics. 2023; 11(24):4989. https://doi.org/10.3390/math11244989

Chicago/Turabian Style

Ran, Yinxia, Yun Pan, Licheng Wang, and Zhenfu Cao. 2023. "AIOL: An Improved Orthogonal Lattice Algorithm for the General Approximate Common Divisor Problem" Mathematics 11, no. 24: 4989. https://doi.org/10.3390/math11244989

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