Cơ sở lý thuyết

Một phần của tài liệu Nghiên cứu tấn công RSA và xây dựng công cụ phân tích RSA (Trang 74 - 78)

2. Kỹ thuật của Coppersmith

3.2. Cơ sở lý thuyết

Cho 𝑓 𝑥, 𝑦 =𝑥 𝐴+𝑦 −1

𝑒 . Điều ta cần là tìm 𝑥0 và 𝑦0 thỏa:

𝑓 𝑥0, 𝑦0 ∈ ℤ trong đó, 𝑥0 < 𝑒𝛿 và 𝑦0 < 𝑒0.5

Năm 2000, D.Boneh và G.Durfee đã giới thiệu một cách giải bài toán ngược này. Thực chất, phương pháp giải này dựa trên kỹ thuật của Coppersmith với một số cải thiến về mặt hiệu quả.

Hình sau minh họa cách giải bài toán ngược.

𝑓 𝑥, 𝑦 𝑕1 𝑥, 𝑦 𝑕2 𝑥, 𝑦 𝑟𝑒𝑠𝑥 𝑕1, 𝑕2 𝑥0 𝑦0 Thuật toán Kết quả Sylvester Đệ quy cải tiến Phân tích

62

Định lý 3.1. (định lý Howgrave-Grahamcho đa thức 2 biến)

Đặt 𝑕 𝑥, 𝑦 ∈ ℝ 𝑥, 𝑦 là đa thức là tổng của tối đa 𝜔 đơn thức, 𝑋, 𝑌 ∈ ℝ cho trước. Giả sử có 𝑥0 < 𝑋, 𝑦0 < 𝑌 sao cho,

- 𝑕 𝑥0, 𝑦0 ∈ ℤ

- 𝑕 𝑥𝑋, 𝑦𝑌 < 1/ 𝜔

Thì 𝑕 𝑥0, 𝑦0 = 0.

Chứng minh. (tương tự như trong trường hợp một biến)

Bây giờ, đặt 𝑋 = 𝑒𝛿 và 𝑌 = 𝑒0.5. Gọi

𝑔𝑖,𝑘 𝑥, 𝑦 = 𝑥𝑖𝑓𝑘 𝑥, 𝑦 và 𝑕𝑗 ,𝑘 𝑥, 𝑦 = 𝑦𝑗𝑓𝑘 𝑥, 𝑦 Ta định nghĩa 𝑥-shifts là mọi 𝑔𝑖,𝑘, và 𝑦-shifts là mọi 𝑕𝑗 ,𝑘.

Ta biết rằng 𝑔𝑖,𝑘 𝑥0, 𝑦0 , 𝑕𝑗 ,𝑘 𝑥0, 𝑦0 ∈ ℤ ∀𝑖, 𝑗, 𝑘 và mọi tổ hợp tuyến tính nguyên 𝐺 𝑥, 𝑦 của 𝑥-shifts và 𝑦-shifts thỏa 𝐺 𝑥0, 𝑦0 ∈ ℤ. Và ta xây dựng một dàn 𝐿 bằng cách thác triển cơ sở 𝛼1, … , 𝛼𝑛 sao cho 𝛼𝑖 hoặc là 𝑥-shift hoặc 𝑦-shift. Hình sau minh họa một ma-trận thiết kế tốt của một dàn khai triển từ 𝛼 [2].

Hình 3.1. Ma-trận thác triển 𝑴 theo 𝒙-shifts và 𝒚-shifts, 𝟎 ≤ 𝒌 ≤ 𝟑,𝟎 ≤ 𝒊 ≤ 𝟑 − 𝒌,𝟎 ≤

63

𝑀 là ma-trận tam giác, vì vậy định thức của nó có thể được xác định một cách dễ dàng. Mỗi dòng biểu diễn một phần tử 𝛼𝑖 của cơ sở, mỗi cột biểu diễn biến 𝑣𝑎𝑟𝑗 và mỗi phần tử 𝑀 𝑖 𝑗 mô tả hệ số tương ứng với 𝛼𝑖 và 𝑣𝑎𝑟𝑗. Và ta có thể lấy bất cứ 𝑚 và 𝑡 thỏa 0 ≤ 𝑘 ≤ 𝑚, 0 ≤ 𝑖 ≤ 𝑚 − 𝑘, 0 ≤ 𝑗 ≤ 𝑡.

Sắp xếp 𝑣𝑎𝑟𝑗 = {𝑥-shifts…𝑦-shifts} và 𝛼 = {𝑥-shifts…𝑦-shifts}.

𝑥-shifts 𝑦-shifts 𝑣𝑎𝑟 for 𝑖 ← 0 … 𝑚 for 𝑗 ← 0 … 𝑖 𝑣𝑎𝑟 ← 𝑥𝑖𝑦𝑗 for 𝑖 ← 0 … 𝑚 for 𝑗 ← 𝑖 + 1 … 𝑖 + 𝑡 𝑣𝑎𝑟 ← 𝑥𝑖𝑦𝑗 𝛼 for 𝑘 ← 0 … 𝑚 for 𝑖 ← 𝑘 … 0 𝛼 ← 𝑥𝑖𝑓𝑘−𝑖 for 𝑘 ← 0 … 𝑚 for 𝑗 ← 1 … 𝑡 𝛼 ← 𝑦𝑗𝑓𝑘

Hình 3.2. Phát sinh 𝒙-shifts và 𝒚-shifts.

Gọi 𝜔, 𝜔𝑥, 𝜔𝑦 lần lượt là là chiều của 𝐿, dàn thác triển từ 𝑥-shifts và dàn thác triển từ 𝑦-shifts. Ta có,

𝜔 = 𝜔𝑥 + 𝜔𝑦 𝜔𝑥 = 𝑚 + 1 𝑚 + 2 /2 𝜔𝑦 = 𝑡 𝑚 + 1

Gọi 𝑑𝑒𝑡𝑥 𝐿 , 𝑑𝑒𝑡𝑦 𝐿 lần lượt là định thức của dàn thác triển từ 𝑥-shifts và 𝑦- shifts. Ta có,

𝑑𝑒𝑡 𝐿 = 𝑑𝑒𝑡𝑥 𝐿 . 𝑑𝑒𝑡𝑦 𝐿 𝑑𝑒𝑡𝑥 𝐿 = 𝑒−𝑚𝜔3𝑥. 𝑋2𝑚𝜔3 𝑥. 𝑌𝑚𝜔3𝑥 = 𝑒𝑚 𝜔𝑥 4𝛿−1 6 = 𝑒 4𝛿−1 12 .𝑚3+𝑜 𝑚3

𝑑𝑒𝑡𝑥 𝐿 = 𝑒−𝑚𝜔2𝑦. 𝑋𝑚𝜔2𝑦. 𝑌𝜔𝑦 𝑚+𝑡+1 2 = 𝑒𝑚 𝜔𝑦 𝛿−1

2 +𝑚+𝑡+14 = 𝑒2𝛿−1 4 𝑡𝑚2+14𝑚𝑡2+𝑜 𝑡𝑚2

Tương tự như kỹ thuật Coppersmith, ta cũng có 𝑑𝑒𝑡 𝐿 < 𝑐−𝜔.𝜔 −14 . 𝜔−𝜔2

Trong trường hợp đặc biệt 𝑡 = 0, thì 𝑑𝑒𝑡 𝐿 = 𝑑𝑒𝑡𝑥 𝐿 và 𝜔 = 𝜔𝑥. Cho 𝑐 = 2, ta được,

64 𝑑𝑒𝑡 𝐿 = 𝑑𝑒𝑡𝑥 𝐿 < 2−𝜔𝑥.𝜔𝑥4−1. 𝜔𝑥−

𝜔𝑥

2 ⟹ 𝑒 4𝛿−1 12 .𝑚3 < 1 ⟹ 4𝛿 − 1 < 0 ⟹ 𝛿 < 1 4 Rõ ràng đây chính là chặn trên của phương pháp Wiener khi ta chỉ sử dụng 𝑥- shifts.

Ta tìm cách sử dụng 𝑦-shifts để cải tiến chặn trên 𝛿. Ta có, 𝑑𝑒𝑡 𝐿 < 2−𝜔.𝜔−14 . 𝜔−𝜔2 ⟹ 𝑒 4𝛿−1 12 𝑚3+2𝛿−1 4 𝑡𝑚2+14𝑚𝑡2 < 1 ⟹ 4𝛿 − 1 12 𝑚3 + 2𝛿 − 1 4 𝑡𝑚2 + 1 4𝑚𝑡2 < 0 Let 𝑃 𝑡 = 4𝛿 − 1 12 𝑚3 + 2𝛿 − 1 4 𝑡𝑚2 + 1 4𝑚𝑡2 Cho 𝑃 𝑡 = 0, ta được 12𝑚𝑡 +2𝛿−1 4 . 𝑚2 = 0 ⟺ 𝑡 =𝑚 1−2𝛿 2 Cho 𝑃 𝑡 ′′ =1

2𝑚 > 0. Thì 𝑃 𝑡 đạt cực tiểu tại 𝑡 = 𝑚 1−2𝛿

2

Để có thể tấn cơng RSA khi 𝑃 𝑡 < 0, ít nhất ta phải có, ∀𝑚, min 𝑃 𝑡 < 0 ⟺ 𝑚2 −1 + 4𝛿 −3

2 1 − 2𝛿 2 +3

4 1 − 2𝛿 2 < 0 ⟺ −12𝛿2 + 28𝛿 − 7 < 0 ⟺ 𝛿 <7 − 2 7

6 ≈ 0.284

Cho 𝑑 < 𝑁0.284, ta tìm đa thức 𝑕1 𝑥, 𝑦 sao cho 𝑕1 𝑥0, 𝑦0 = 0. Tuy nhiên, ta thêm một đa thức nữa để tìm 𝑥0, 𝑦0 . Từ định lý Howgrave-Graham cho đa thức 2 biến,

𝑏2 ≤ 𝑐𝜔−24 . det 𝐿 𝑏1

1𝜔−1 𝜔−1

Với 𝑏1 ≥ 𝑒−𝑚, vì mọi 𝑥-shifts và 𝑦-shifts là bội số của 𝑒−𝑚. 𝑏2 ≤ 𝑐𝜔−24 . det 𝐿 𝑒−𝑚 1 𝜔−1 < 1/ 𝜔 ⟹ 𝑐𝜔−24 . det 𝐿 𝜔−11 <𝑒 −𝑚 𝜔−1 𝜔 ⟹ det 𝐿 < 𝑒 −𝑚. 𝑐− 𝜔−1 .𝜔−24 . 𝜔−𝜔−12 < 1

Ta thấy, kết quả này không thay đổi kết quả về chặn 𝛿. Vì thế ta phải tìm một đa thức khác 𝑕2 𝑥, 𝑦 thỏa 𝑕2 𝑥0, 𝑦0 = 0.

65

Theo lược đồ như Hình 3.1. để tìm 𝑥0, 𝑦0 . Áp dụng vào phần giời thiệu, 𝑦0 tương ứng với 𝑠 = − 𝑝 + 𝑞 /2, hơn nữa 𝑁 = 𝑝𝑞, ta dễ dàng xác định 𝑝 và 𝑞. Cho đến lúc này, phương pháp của Boneh và Durfee vẫn là phương pháp heuristic, vì ta không đảm bảo được là 𝑕1 𝑥, 𝑦 và 𝑕2 𝑥, 𝑦 khơng có thừa số chung.

Một phần của tài liệu Nghiên cứu tấn công RSA và xây dựng công cụ phân tích RSA (Trang 74 - 78)

Tải bản đầy đủ (PDF)

(113 trang)