Tải bản đầy đủ - 34 (trang)
5 Phương pháp phân tích bằng sàng trường số

5 Phương pháp phân tích bằng sàng trường số

Tải bản đầy đủ - 34trang

28



2.5



Phương pháp phân tích bằng sàng trường số



Đây là phương pháp phân tích số lớn được xem là mạnh nhất trong thời gian

gần đây, đặc biệt là khi n có trên 110 chữ số thập phân, tức là n > 10110 ,

và ước bé nhất của nó có trên 48 chữ số (chính là những số hay được dùng

trong RSA hiện nay). Các bước chuẩn bị cho thực hiện thuật toán này như

sau.

• Lấy số tự nhiên d ≈



log(n)

log log(n)



và m =





d

n .



• Khai triển số n theo cơ số m,

n = md + ad−1 md−1 + · · · + a0



0 ≤ ai < m.



• Đa thức tương ứng với khai triển này là

f (x) = xd + ad−1 xd−1 + · · · + a0 .

• Lấy α là một nghiệm của đa thức nêu trên và xét trường mở rộng Q[α].

Để cho dễ hình dung quy trình thực hiện thuật toán, ta xét một ví dụ cụ thể

là phân tích số n = 2501. Ta có d = 2, vì



log(2501)

≈ 1.950217066,

log log(2501)



m=





2501 = 50.



Do 2501 = 502 + 1, nên ta có đa thức tương ứng là f (x) = x2 + 1. Đa thức

này có nghiệm là i cho nên ta sẽ xem xét trường mở rộng trường Q[i].



29

Ta để ý rằng trong vành Z/2510Z phần tử 50 có vai trò giống như

là i, vì 502 ≡ −1 mod 2501. Điều này đưa ta đến việc thiết lập ánh xạ

h : Z[i] → Z, từ tập các số nguyên đại số Z[i] vào tập các số nguyên thông

thường, theo công thức h(a + bi) = a + b · 50, và khi ấy ta có đẳng thức sau

h(αβ ) ≡ h(α)h(β ) mod 2501



với mọi α, β ∈ Z[i].



Nhắc lại rằng ta gọi một số nguyên là mịn (hay là “vụn”) nếu như nó

phân tích được thành tích của các số nguyên tố nhỏ. Mục tiêu trước mắt của

chúng ta là tìm các số nguyên đại số mịn trong Z[i], mà ảnh của nó (trong

phép ánh xạ h) cũng là mịn trong Z (nói chung, việc tìm những số này là

vô cùng khó khăn cho nên ta hiểu vì sao cho đến nay RSA vẫn được xem

là có độ an toàn cao).

Ta ký hiệu những số như vậy là αi , và ta muốn tìm một tập con của

chúng, mà ta sẽ đánh số là α1 , α2 , · · · , αr , sao cho tích của chúng là một số

“chính phương” trong Z[i] (nghĩa là, α1 α2 · · · αr = β 2 ∈ Z[i]), còn tích các

ảnh của chúng lại là một số chính phương thông thường, tức là

h(α1 )h(α2 ) · · · h(αr ) = t 2 ∈ Z.

Nếu có được những số này, ta sẽ phân tích được số n theo nhận xét sau đây.

Do

[h(β )]2 = h(β )h(β ) = h(β 2 ) = h(α1 .α2 · · · αr ) = h(α1 )h(α2 ) · · · h(αr ) = t 2 .

ˆ ) và tˆ

nên sau khi rút gọn h(β ) và t theo modulo n ta sẽ được hai số h(β

thoả mãn đẳng thức

ˆ )

h(β



2



≡ tˆ2



mod n.



(2.1)



30

và suy ra

ˆ ) − tˆ h(β

ˆ ) + tˆ ≡ 0

h(β



mod n.



(2.2)



ˆ ) không đồng dư với ±tˆ theo modulo n, thì từ đẳng thức trên ta

Nếu h(β

suy ra mỗi thừa số ở vế trái sẽ chứa một ước số của n, hay nói cách khác

ˆ ) − tˆ, n cho ta một ước (không tầm thường) của số n.

gcd h(β

Tóm lại, bài toán trở thành việc đi tìm các số nguyên đại số α1 , α2 , · · · , αr

sao cho biểu thức (2.1) được thoả mãn.



2.6



Khả năng phân tích số bằng các “chip” chuyên dụng



Như đã nêu, hiện nay phương pháp được xem là hiệu quả nhất đối với bài

toán phân tích các số lớn là thuật toán sử dụng sàng trường số. Chính bằng

phương pháp này mà gần đây (năm 1999) người ta đã phân tích được hợp

số với độ dài kỷ lục là 155 chữ số thập phân (512 bit nhị phân), nhưng cũng

mất nhiều tháng ròng và với số lượng máy tính khổng lồ. Cho nên hệ mã

RSA chuẩn mực, với độ dài chìa khoá 1024 bit nhị phân (khoảng 308 chữ

số thập phân), được người ta xem là an toàn tuyệt đối trong vòng 15-20

năm nữa.

Thế nhưng gần đây (khoảng tháng 2/2003) Adi Shamir (một trong ba

đồng tác giả đã công bố phát minh hệ mã RSA) tuyên bố rằng ông đã

cùng các cộng sự tại phòng Tin học và Toán ứng dụng của Viện nghiên

cứu khoa học Weizmann (Israel) thiết kế ra “con chip đặc thù” cho việc

phân tích một số ra các thừa số nguyên tố, có sức mạnh phi thường và có



31

khả năng bẻ được hệ mã RSA chuẩn hiện nay. Một công cụ “đặc chủng”

kiểu này cũng đã từng được biết đến trước đây, đó là hệ thống quang điện

tử TWINKLE, sử dụng các thành phần khá đắt tiền và khó chế tạo. Hệ

thống mới của Shamir và các đồng nghiệp, gọi tắt là TWIRL, có nhiều

điểm giống với TWINKLE, nhưng không chứa các thành phần quang học

đắt tiền, khó kiếm mà được thiết lập dựa trên công nghệ VLSI (Very large

scale integration - Tích hợp quy mô rất lớn) phổ biến hiện nay. Về bản chất

nó là một hệ thống tích hợp một lượng khổng lồ các bộ vi xử lý chạy trên

tần số 1GHz.

Cho tới lúc này, “con chip đặc thù” TWIRL mới chỉ nằm trên sơ đồ,

chưa được triển khai trong thực tế, nhưng một số đánh giá sơ bộ cho thấy:

để phân tích một số có độ dài 512 bit nhị phân (như đã nói ở trên) chỉ cần

một máy tính chuyên dụng (thiết lập trên cơ sở con chip TWIRL) trị giá

khoảng 10 ngàn USD, làm việc trong vòng 10 phút. Nếu nhớ rằng công

việc này đã từng đòi hỏi hàng ngàn máy tính mạnh làm việc trong nhiều

tháng ròng rã, ta thấy ngay sức mạnh của con chip chuyên dụng. Tuy nhiên,

cũng theo các đánh giá này, muốn phân tích một số có độ dài gấp đôi như

thế, tức là khoảng 1024 bit nhị phân (như chìa khoá thông thường của một

hệ mã RSA chuẩn hiện nay), thì phải cần tới một máy chuyên dụng trị giá

khoảng 10 triệu USD, làm việc liên tục trong thời gian 1 năm. Như vậy, giả

sử cứ theo cái đà này mà tiếp tục được, thì để bẻ được hệ mã RSA với độ

dài khoá 2048 bit nhị phân thì phải cần tới máy tính chuyên dụng trị giá 10

tỷ USD, làm việc liên tục trong 52560 năm!



Tài liệu bạn tìm kiếm đã sẵn sàng tải về

5 Phương pháp phân tích bằng sàng trường số

Tải bản đầy đủ ngay(34 tr)

×