Phát sinh số khả nguyên tố kiểu tìm kiếm tăng cải tiến

Một phần của tài liệu nghien_cuu_kien_truc_va_xay_dung_he_thong_chung_thuc_tap_trung (Trang 120 - 121)

6.5.2.2 Một số thuật toán phát sinh số khả nguyên tố mạnh

Trước các phương pháp phân tích trường hợp đặc biệt, hàng loạt các đề xuất liên quan đến số nguyên tố được chọn để lập mã có một số tính chất đặc biệt đã được đưa ra. Do những tính chất đặc biệt đó đó, cơ hội để các phương pháp phân tích như trình bày ở trên thành cơng là rất nhỏ. Những số ngun tố có những tính chất đặc biệt đó được gọi là số “nguyên tố mạnh”. Lý do lịch sử cho sự cần thiết này là để bảo vệ trước các thuật tốn phân tích đặc biệt như thuật toán “rho” và 𝑝 – 1 của Pollard, 𝑝 + 1 của Williams (đã được trình bày ở Chương 5).

Một số nguyên tố 𝑝 được xem là một số nguyên tố mạnh nếu nó thỏa mãn các

điều kiện sau:

 𝑝 là một số nguyên tố lớn.

 Thừa số nguyên tố lớn nhất của 𝑝 – 1, gọi là 𝑝−, lớn.

Nghĩa là 𝑝 = 𝑎−𝑝−+ 1 với số nguyên 𝑎− và số nguyên tố lớn 𝑝−.

 Thừa số nguyên tố lớn nhất của 𝑝−− 1, gọi là 𝑝−−, lớn.

Nghĩa là 𝑝− = 𝑎−−𝑝−−+ 1 với số nguyên 𝑎−− và số nguyên tố lớn 𝑝−−.

 Thừa số nguyên tố lớn nhất của 𝑝 + 1, gọi là 𝑝+, lớn.

Nghĩa là 𝑝 = 𝑎+𝑝+– 1 với số nguyên 𝑎+ và số nguyên tố lớn 𝑝+.

“Lớn” ở đây tùy thuộc vào các phương pháp phân tích hiện tại. Thường thì kích thước của 𝑝 trên 256 bit cịn kích thước của các thừa số 𝑝−, 𝑝−−, 𝑝+ trên 100 bit. Đôi khi, một số nguyên tố gọi là mạnh nếu nó chỉ cần thỏa mãn chỉ một tập con của các điều kiện trên, ví dụ 𝑝−–mạnh nếu 𝑝− lớn, 𝑝−−–mạnh nếu 𝑝−− lớn, 𝑝+–mạnh nếu 𝑝+ lớn, 𝑝−, 𝑝+ –mạnh nếu cả 𝑝− và 𝑝−− đều lớn, 𝑝−, 𝑝−−, 𝑝+ –mạnh, hoặc

Williams và Schmid gọi 𝑝−–siêu mạnh (hoặc 𝑝−−–siêu mạnh hoặc 𝑝+–siêu mạnh) nếu 𝑎− = 2 (hoặc 𝑎−− = 2 hoặc 𝑎+ = 2) [62].

Năm 1984, Hellman và Bach còn đề nghị thêm 𝑝+− 1 chứa một thừa số nguyên tố lớn

(gọi là 𝑝+−). Tuy nhiên, các ông chưa đưa ra chứng minh nào cho đề xuất đó [29]. Năm 1978, các tác giả của hệ mã RSA đã đề xuất việc sử dụng số nguyên tố

𝑝−−–mạnh [50], và được tìm dễ dàng như sau:

Simple-StrongPrime(k, t)

Đầu vào: số nguyên 𝑘 > 0 và tham số an toàn 𝑡 ≥ 1.

Đầu ra: số khả nguyên tố mạnh 𝑘-bit

(1) Tìm một số nguyên tố ngẫu nhiên lớn 𝑝−− bằng cách kiểm tra tính nguyên tố một số nguyên ngẫu nhiên lớn.

(2) Tính 𝑝− là số nguyên tố nhỏ nhất có dạng:

𝑝− = 𝑎−−𝑝−−+ 1

với số nguyên với số nguyên 𝑎−− nào đó. Có thể tính bằng cách thế 𝑎−−= 2, 4, 6, … đến

khi 𝑝− là số nguyên tố. Sử dụng phép thử tính nguyên tố bằng xác suất như phép thử Rabin-Miller để kiểm tra tính nguyên tố của mỗi 𝑝−.

(3) Tính 𝑝 là số nguyên tố nhỏ nhất có dạng:

𝑝 = 𝑎−𝑝−+ 1

với số nguyên 𝑎− nào đó giống như cách tìm 𝑎−− ở bước (2).

Một phần của tài liệu nghien_cuu_kien_truc_va_xay_dung_he_thong_chung_thuc_tap_trung (Trang 120 - 121)

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

(168 trang)