1. Trang chủ
  2. » Luận Văn - Báo Cáo

1246 On the heuristic guess of 2-dimension lattice attack on low private exponent RSA.docx

11 0 0
Tài liệu đã được kiểm tra trùng lặp

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Tiêu đề On the heuristic guess of 2-dimension lattice attack on low private exponent RSA
Tác giả Tran Dinh Long, Nguyen Dinh Thuc, Tran Dan Thu
Trường học University of Ho Chi Minh City
Chuyên ngành Cryptography
Thể loại article
Năm xuất bản 2023
Thành phố Ho Chi Minh City
Định dạng
Số trang 11
Dung lượng 63,08 KB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

ON THE HEURISTIC GUESS OF 2-DIMENSION LATTICE ATTACK ONLOW PRIVATE EXPONENT RSA TRAN DINH LONG * , NGUYEN DINH THUC ** , TRAN DAN THU ** ABSTRACT In two dimension lattice attack on low p

Trang 1

ON THE HEURISTIC GUESS OF 2-DIMENSION LATTICE ATTACK ON

LOW PRIVATE EXPONENT RSA

TRAN DINH LONG * , NGUYEN DINH THUC ** , TRAN DAN THU **

ABSTRACT

In two dimension lattice attack on low private exponent RSA cryptosystem, the reasonable and non-provable guess shows that the private exponent d could be recovered by finding a shortest vector of a 2-dimension lattice by Gaussian reduction algorithm The paper considers the determination of the attack by giving a precise interval of private d where the heuristic guess in 2-dimension lattice attack on RSA holds and gives a proof for that heuristic guess.

Keywords: lattice, lattice reduction algorithm, RSA cryptosystem.

TÓM TẮT

Về dự đoán trong cách tấn công dùng dàn hai chiều vào hệ mã

RSA có khóa riêng nhỏ

Trong việc tấn công bằng dàn hai chiều vào hệ mã RSA có khóa riêng nhỏ,một dự đoán hợp lí nhưng không được chứng minh chỉ ra rằng khóa riêng d của hệ mã RSA có thể tìm được bằng cách tìm một vector ngắn nhất của một dàn hai chiều bởi thuật toán Gauss Bài viết này khảo sát tính tất định của việc tấn công trên bằng cách chỉ ra một khoảng chính xác sao cho nếu khóa riêng d nằm trong khoảng

đó thì việc tấn công RSA bằng dàn hai chiều luôn thành công, đồng thời đưa ra cách chứng minh chặt chẽ cho điều này.

Từ khóa: dàn, thuật toán tìm cơ sở thu gọn của dàn, hệ mã hóa RSA.

Besides constructing new variants of RSA, cryptanalysing on RSA cryptosystem has been concerned by many authors Some early attacks on RSA had been considered by G.J.Simmons [7], J.M.DeLaurentis [4]… A remarkable result was made by M

Wiener in 1990; by considering the continued fraction expansion of � , Wiener showed

in [8] that one can recover � in the case � < 1 � 4, where �, � and � are public key,

3 private key and the modulus of the cryptosystem, respectively Lattice reduction based attacks on RSA was first presented by Coppersmith at Eurocrypt '96 [3] Lattice reduced algorithms such as Gauss or LLL algorithms can be applied to recover the private exponent � in low exponent private key RSA cryptosystem D Boneh and G

* MSc, Faculty of Mathematics, College of Science, Hue University;

Email: trandinhlong1963@yahoo.com.vn

** Assoc, PhD, Faculty of Information Technology, Ho Chi Minh University of Science

1

Tran Dinh Long et al.

TẠP CHÍ KHOA HỌC ĐHSP TPHCM

_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

1

Trang 2

Durfee [2] considered the case where � < � 0.292, then by solving small inverse problem using LLL algorithm, one can recover � Modifying the attack of D Boneh and G Durfee, Blomer and May [1] had improved 0.292 to √6−1 − s, where s is the term can be

5 made arbitrary small by considering sufficiently large modulus � High dimension lattice attacks are based on LLL algorithm while two dimension lattice attacks are based on Gaussian algorithm Lattice now is an effective tool in cryptanalysing on RSA

We wish to investigate the heuristic attack on low private exponent RSA using two dimension lattice This attack is indeed mounted from Wiener attack (see [5]) and based on Gaussian algorithm Section 2 is devoted to some basic properties of lattices The heuristic attack will be recalled in Section 3 together with our work, which considers the determination of the attack The last section gives comment about our approach to the problem

2.1 Background

A lattice of ℝ � is a discrete subgroup of (ℝ � , +), that is a subgroup of (ℝ � , +) which has the discreteness property Like vector spaces, a lattice has a basis and each element in lattice can be represented as a integral linear combination of vectors in basis If {� 1 , � 2 , … , � � } is a basis of the lattice � ⊂ ℝ �, then

� = {∑ � i � i : � 1 , � 2 , … , � � ∈ ℤ }.

i=1

The fundamental domain for � corresponding to the basis {� 1 , � 2 , … , � � } is the set

ℱ(� 1 , � 2 , … , � � ) = {� 1 � 1 + � 2 � 2 + ⋯ + � � � � : � i ∈ ℝ, 0 ≤ � i < 1}.

The n-dimension volume of ℱ(� 1 , � 2 , … , � � ) is called the determinant of � and denoted by ���(�) We have the Hadamard’s Inequality as follows

���(�) ≤ ‖� 1 ‖‖� 2 ‖ … ‖� � ‖,

where ‖�‖ is the Euclidean norm of a vector � ∈ ℝ �

Some problems on lattices sush as finding shortest vector problem, finding closest vector problem… can be easily solved when an orthogonal basis of lattice is determined Unfortunately, a lattice may not have an orthogonal basis Therefore, finding a “near orthogonal” basis, or an “optimal basis” is a problem has been concerned by many authors Two famous algorithms for finding such basis are

Gaussian and LLL algorithms, we call those algorithms as lattice reduction algorithm.

Trang 3

2.2 Gaussian algorithm

We recall Gaussian algorithm in this section For a vector � ∈ ℝ 2, we denote

‖�‖ for the Euclidean norm of � and 〈 � 1 , �2〉 for the inner product of two vectors �1, �2

∈ ℝ 2 Let � 1 , � 2be two independent vectors in ℝ 2and � ⊂ ℝ 2be the lattice spanned

by

� 1 , � 2 Gaussian algorithm is applied to basis � 1 , � 2 and yields a good basis �̅1̅, �̅̅2 for �

Input: a basis {�1 , � 2 } of a lattice � ⊂ ℝ 2

loop

if‖� 2 ‖ < ‖� 1 ‖then

swap � 1and

� 2

end if

Compute � = 〈�1 ,�2〉

‖� 1 ‖ 2

until ‖� 1 ‖ < ‖� 2 ‖

� 2 = � 2 − ⌊� + 0.5⌋� 1

�̅1 ̅ = � 1, �̅2 ̅ = � 2

Output: a reduced basis {̅�̅1 ̅, ̅�̅ 2 ̅} of �

Gaussian algorithm

�̅1 ̅ is a shortest vector in � and the angle � between �̅1 ̅ and ̅�2 ̅ satisfies |��s�|

‖�̅̅ 1 ̅‖

, so in particular we have � ≤ � ≤ 2� or │〈�̅1̅,̅�̅2̅〉│ ≤ 1 The Gaussian algorithm will

terminate in at most

‖�1‖ )] + 3 iterations [9], where 𝜆 is the second minima of

ఒ 2

�.For more details on Gaussian algorithm, we refer the reader to [8]

2.3 Properties of reduced basis in two dimension lattice case

Suppose that {�̅1̅, �̅̅2 } is the reduced basis of lattice � when applying Gaussian algorithm to a basis {� 1 , � 2 } of � We first show that �̅2 ̅ is the shortest vector which is independent to ̅�̅ 1 ̅, it means that there is no � ∈ � such that ‖�‖ < ‖� 2 ‖ and ̅�̅ 1 ̅, � are independent

Proposition 1 Suppose that � ⊂ ℝ 2 is the lattice spanned by two independent vectors � 1 , � 2 ∈ ℝ 2 Apply Gaussian algorithm to basis {�1 , � 2 } of � and yield basis

{�̅̅ ̅, ̅�̅ ̅} If � ∈ �, � ≠ 0 satisfying ‖�‖ < ‖�̅ ̅‖ then � = s�̅ ̅ with s ∈ ℤ.

2

Trang 4

Proof Since � ∈ �, then � = s�̅1 ̅ +

��̅̅2

� ≠ 0, consider three following cases

with s, � ∈ ℤ Assume the contrary that

Trang 5

● Case 1 of |s| = 1 and |�| = 1: In this case we have

‖�‖2 = ‖s�̅1̅ + �̅�̅2‖2 = ‖�̅̅1 ± ̅�̅2 ‖2

= ‖�̅1̅‖2 + ‖�̅̅2 ‖2 ± 2〈�̅ 1̅, �̅̅2 〉

= ‖̅�̅ ‖2 + 2‖�̅̅‖2 (1 ± 〈�̅ 1̅, �̅ 2̅〉 )

2 ‖� 1 ‖ 2

Since │〈�̅̅1̅,�̅ 2̅〉│ ≤ 1, then 1 ± 〈̅�̅1̅,�̅2̅〉 ≥ 0 Hence,

‖� 1 ‖ 2 2 2 ‖� 1 ‖ 2

‖�‖2 =

‖�̅̅2 ‖2

+

2‖ �̅̅1 ‖2 (1

± 2

〈�̅1̅, ̅�̅2 〉

‖� ‖ 2 )

‖�̅̅2

‖2.

● Case 2 of |s| > 1 or |�| > 1:

If |s| = |�| then

‖�‖2 = s 2‖̅�̅1 ± �̅̅2 ‖2 ≥ s 2‖�̅2̅‖2 ≥ ‖̅�̅2 ‖2.

If |s| ≠ |�| then

‖�‖ 2 = s 2‖̅�̅1 ‖ 2 + � 2‖̅�̅2 ‖ 2 + 2s�〈�̅ 1̅, �̅̅2 〉

≥ s 2‖�̅1 ̅‖2 + � 2‖�̅̅2 ‖2 − 2|s�| |〈�̅ 1̅, �̅̅2 〉|

‖�̅̅2 ‖2 + s 2‖�̅̅1 ‖2 + (� 2 − 1)‖̅�̅ 2 ̅‖2 − 2|s�| |〈�̅ 1̅, ̅�̅2 〉|

≥ ‖̅�̅2 ‖2 + s 2‖�̅1 ̅‖2 + (� 2 − 1)‖�̅̅2‖2 − |s�| ‖�̅1 ̅‖2

= ‖�̅̅2 ‖2 + (s 2 + � 2 − |s�| − 1)‖�̅̅1 ‖2

= ‖̅�̅2 ‖2 + ((|s| − |�|) 2 + |s�| − 1)‖�̅1 ̅‖2

≥ ‖�̅̅2 ‖2

since (|s| − |�|) 2 − 1 ≥ 0

● Case 3 of s = 0: In this case, ‖�‖ = ‖��̅̅2‖ ≥ ‖�̅̅2 ‖ since � ≠ 0

Thus, all three cases above lead to ‖�‖ ≥ ‖̅�̅2 ‖, a contradiction Therefore, we must have � = 0 or � = s̅�̅ 1 ̅ ■

3 Two dimension lattice attack on RSA cryptosystem

3.1 The heuristic attack

Consider the RSA cryptosystem, where the modulus � is the product of two distinct primes � and �, � and � are public and private keys, respectively We recall the

1

argument of reasonable guess in 2-dimension lattice attack on RSA in the case � < � 4

in [6] as follows Suppose that � and � are balanced, then � = 𝑂(√�) and � = 𝑂(√�), therefore �(�) = (� − 1)(� − 1) = � + 𝑂(√�) Since �� ≡ 1(��� �(�)) then there exists

� = 𝑂(�) such that �� = 1 + ��(�) = 1 + �(� + 𝑂(√�)) It deduces that �� −

�� =

1

Trang 6

�𝑂(√�) Denote l = �� − �� then l = 𝑂(�√�) Consider the lattice � ⊂ ℝ2 spanned

by two vector �1 = (�, √�) and �2 = (�, 0), then � contains � = ��1 − ��2 = (l,

�√�) Since

1 3

‖�‖ = √l2 + ��2 ≈ �√� and (��l(�)) 2 = � 4, then � could be a shortest vector in

� if

Trang 7

3 1 1

�√� < � 4, or � < � 4 So in the case � < � 4, one can find out � by Gaussian reduced basis

algorithm and hence, the private key � could be recovered

3.2 Experimental study

In our experiments, two balanced primes �and � are generated then both shortest vector in L as well � are computed We discovered many cases where the heuristic guess above does not holds In the argument in section 3.1, the relation 𝑂 could miss

1

some constants, then some factor in the condition� < � 4 could be ignored We are thus

1

led to the following problem: find a constant α such that if � < α� 4 then � is a

shortest

vector in �

4 The determination of the heuristic attack

Consider the RSA cryptosystem as mentioned in 3.1 Assume that � and � are balanced, as in [2] we use the condition 1 √� < �, � < 2√� for this Typically, we can suppose that 1 < �, � < �(�) = (� − 1)(� − 1) Since �� ≡ 1(��� �(�)), then

�� = 1 +

��(�) with � ∈ ℤ We firstly estimate � and �� − �� as follows

Proposition 2 Suppose that � = �� is the product of two distinct primes and

�,

and � are positive integers satisfying 1 < �, � < �(�) and �� = 1 + ��(�) Then a) � < �.

b) |�� − ��| < 5 � �.

2

Proof The proof is straightforward as follows.

a) Since � < �(�) then 1 + ��(�) = �� < ��(�) Hence, � < �

− 1

�(�)

< �

b) We have �� = 1 + ��(�) = 1 + �(� − 1)(� − 1) = 1 + �(� + 1 − �

− �)

Denote � = � then � = �√�, � = 1 √� and 1 < � < 2 Then

|�� − ��| = |�(� + � − 1) − 1| < |�(� + �)| = � �(� + 1)

It is easy to check that � 1 5 for all � ∈ 1 Therefore,

+

� <

|�� − ��| < �√� (� + 1) < 5 �√� < 5 �√� ■

As in 3.1, from now on we denote �1 = (�, √�), �2 = (�, 0) and consider the lattice

2

Tran Dinh Long et al.

TẠP CHÍ KHOA HỌC ĐHSP TPHCM

_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

7

Trang 8

� ⊂ ℝ2 spanned by �1, �2 Then � = ��1 − ��2 = (�� − ��, �√�) is a vector in � Apply Gaussian algorithm for basis {� 1 , � 2 } of � then yield a basis {�̅1̅, �̅̅2 } The following proposition estimates the norms of � and ̅�̅2

Proposition 3 Let �, �, � be the integers as in Proposition 2, � denote the lattice in ℝ2 spanned by two vectors �1 = (�, √�), �2 = (�, 0) and � = ��1 − ��2

= (�� −

��, �√�) ∈ � Suppose that {�̅1̅, �̅̅2} is the reduced basis when applying Gaussian

Số 2(67) năm 2015

TẠP CHÍ KHOA HỌC ĐHSP TPHCM

_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

8

Trang 9

algorithm to basis {�1 , � 2 } of � Then

a) ‖�‖ < √ 29

� �.

2

3

b) ‖�̅̅2 ‖ ≥ � 4.

Proof.

a) It follows from the Proposition 2 that

‖�‖ = √(�� − ��)2 + (�√�)2 <

√ 5

2

2

�√�)

+ (�√�)

√2 9

= 2

�√�.

b) We have ���(�) = |��� (� √�)| = �√�.

According Hadamard inequality, ���(�) ≤ ‖�̅̅1‖ ‖�̅̅2 ‖ It yields that

�√� ≤ ‖�̅̅1‖ ‖̅�̅2‖ ≤ ‖�̅̅2‖2.

3

Therefore, � 4 ≤ ‖̅�̅2 ‖ ■

Proposition 4 Under the assumptions in Proposition 3, if is a vector in

satisfying � = s� with s ∈ ℤ then s = ±1.

Proof.

Note that g��(�, �) = 1 since �� = 1 + �(� − 1)(� − 1)

Since � ∈ � then � = ��1 + ��2 = (�� + ��, �√�) with

�, � ∈ ℤ It follows from � = s� that

{�� − �� = s(�� + ��)�√� = s�√�.

Thus,

and

Replace � from (2) into (1) implies that

�s� − �� = s�� + s��,

or

It deduces from (2) and (3) that s is a common divisor of � and � Combining this with g��(�, �) = 1 leads to s = ±1.■

(

2

Trang 10

2 1

Proposition 5 Under the assumptions in Proposition 2, if � < � 4 then is a

√29

shortest vector in �.

Proof According to Proposition 2 and Proposition 3 we have

‖�‖ = √(�� − ��) 2 + (�√�)2

< √(

2 �√�)2

+ (�√�)

= √29 �√�

2

≤ �4√� 2

√29

3

= � 4

≤ ‖�̅̅2 ‖.

It follows from Proposition 1 that � = s�̅1 ̅ and then deduces from Proposition

2 that s = ±1 Therefore, � = ±�̅1 ̅ is a shortest vector in �.■

2 1 The paper shows that in the case � <

√29 � 4 then the private key � in RSA

crytpsystem can be recovered from the vector � = (�� − ��, �√�) which is found by

Gaussian algorithm The constant 2

√29 can be larged depending on some conditions If

we use the condition � < � < 2� for the balance of � and � then we obtain � < √�,

� <

√2� and � + � < (1 + √2)√� By similar argument, if � <

√4+2 2 � 4 then � is a shortest

vector in �

1

As mentioned above, if � < � 4 then the heuristic guess in 2-dimension lattice attack on RSA does not always holds However, experiments have showned that if

1

� ≈ � 4 then that heuristic guess still holds in many cases We constructed RSA cryptosystems where �, � are two consecutive 32-bit primes and the private exponent �

3 1 1

satisfying �holds4 < � < � 4 then the percentage of the cases where the heuristic guess

4

is 65% This arises an following open problem: find out some extra condition which ensures the heuristic guess in 2-dimension lattice attack on RSA

Số 2(67) năm 2015

TẠP CHÍ KHOA HỌC ĐHSP TPHCM

_ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _ _

10

5

2

Trang 11

1 J Blomer and A May (2003), “New partial key explosure attacks on RSA”, CRYPTO, Vol 2729 of Lecture Notes in Computer Science, pp 27-43, Springer

2 D Boneh and G Durfee (1999), “Cryptanalysis of RSA with private key d less than

� 0.292”, Proceedings of Eurocrypt'99.

3 D Coppersmith, M Franklin, J Patarin, and M Reiter (1996), “Low exponent RSA

with related messages”, Proceedings of Eurocrypt 96.

4 J M DeLaurentis (1984), “A further weakness in the common modulus protocol for

the RSA crypto algorithm”, Cryptologia, 8(3):253-259.

5 M Jason Hinek (2009), Cryptanalysis of RSA and its variants, Chapman and

Hall_CRC, pp.71-72

6 Phong Q Nguyen (2008), “Public key cryptanalysis”, Recent trends in cryptography,

Contemporary Mathematics series, AMS-RSME.

7 G J Simmons (1983), “A weak privacy protocol using the RSA crypto algorithm”,

Cryptologia, 7(2):180-182.

8 M Wiener (1990), “Cryptanalysis of short RSA secret exponents”, IEEE

Transactions on Information Theory, 36:553-558.

9 C P Schorr, Gittertheori und Kryptographie (1994), Ausarbreitung, Johann-

Wolfgang-Goethe-Univesitat Franfurt, Main

(Received: 14/01/2015; Revised: 28/01/2015; Accepted: 12/02/2015)

Ngày đăng: 05/01/2023, 22:50

Nguồn tham khảo

Tài liệu tham khảo Loại Chi tiết
1. J. Blomer and A. May (2003), “New partial key explosure attacks on RSA”, CRYPTO, Vol. 2729 of Lecture Notes in Computer Science, pp. 27-43, Springer Sách, tạp chí
Tiêu đề: New partial key explosure attacks on RSA
Tác giả: J. Blomer and A. May
Năm: 2003
2. D. Boneh and G. Durfee (1999), “Cryptanalysis of RSA with private key d less than� 0.292 ”, Proceedings of Eurocrypt'99 Sách, tạp chí
Tiêu đề: Cryptanalysis of RSA with private key d less than�0.292”
Tác giả: D. Boneh and G. Durfee
Năm: 1999
3. D. Coppersmith, M. Franklin, J. Patarin, and M. Reiter (1996), “Low exponent RSA with related messages”, Proceedings of Eurocrypt 96 Sách, tạp chí
Tiêu đề: Low exponent RSA with related messages”
Tác giả: D. Coppersmith, M. Franklin, J. Patarin, and M. Reiter
Năm: 1996
4. J. M. DeLaurentis (1984), “A further weakness in the common modulus protocol for the RSA crypto algorithm”, Cryptologia, 8(3):253-259 Sách, tạp chí
Tiêu đề: A further weakness in the common modulus protocol forthe RSA crypto algorithm”, "Cryptologia
Tác giả: J. M. DeLaurentis
Năm: 1984
5. M. Jason Hinek (2009), Cryptanalysis of RSA and its variants, Chapman and Hall_CRC, pp.71-72 Sách, tạp chí
Tiêu đề: Cryptanalysis of RSA and its variants
Tác giả: M. Jason Hinek
Năm: 2009
6. Phong Q. Nguyen (2008), “Public key cryptanalysis”, Recent trends in cryptography, Contemporary Mathematics series, AMS-RSME Sách, tạp chí
Tiêu đề: Public key cryptanalysis”, Recent trends in cryptography,"Contemporary Mathematics series
Tác giả: Phong Q. Nguyen
Năm: 2008
7. G. J. Simmons (1983), “A weak privacy protocol using the RSA crypto algorithm”, Cryptologia, 7(2):180-182 Sách, tạp chí
Tiêu đề: A weak privacy protocol using the RSA crypto algorithm”,"Cryptologia
Tác giả: G. J. Simmons
Năm: 1983
8. M. Wiener (1990), “Cryptanalysis of short RSA secret exponents”, IEEE Transactions on Information Theory, 36:553-558 Sách, tạp chí
Tiêu đề: Cryptanalysis of short RSA secret exponents”, "IEEE Transactions on Information Theory
Tác giả: M. Wiener
Năm: 1990
9. C. P. Schorr, Gittertheori und Kryptographie (1994), Ausarbreitung, Johann- Wolfgang-Goethe-Univesitat Franfurt, Main.( Received: 14/01/2015; Revised: 28/01/2015; Accepted: 12/02/2015) Sách, tạp chí
Tiêu đề: Gittertheori und Kryptographie (1994)", Ausarbreitung, Johann- Wolfgang-Goethe-Univesitat Franfurt, Main.(
Tác giả: C. P. Schorr, Gittertheori und Kryptographie
Năm: 1994

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN

🧩 Sản phẩm bạn có thể quan tâm

w