phân tích các số nguyên có dạng 2m-1 ra thừa số nguyên tố

13 562 1
phân tích các số nguyên có dạng 2m-1 ra thừa số nguyên tố

Đ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

PHÂN TÍCH CÁC SỐ NGUN CĨ DẠNG 2m-1 RA THỪA SỐ NGUN TỐ ĐẶT VẤN ĐỀ Bài tốn phân tích số nguyên thừa số nguyên tố đời từ lâu hút nhiều óc vĩ đại giới để giải vấn đề Ngồi ý nghĩa lý thuyết thân tốn người ta cịn phát nhiều ý nghĩa thực tiễn đặc biệt mật mã Thứ sở cho sù đời hệ mật khố cơng khai tiếng đời năm 1978, hệ mật RSA Revert Shamir Shamir Hệ mật mà độ mật dựa vào tính khó việc phân tích số N=pq (p, q nguyên tố ) thừa số Tiếp đến việc thiết kế nên tạo dãy giả ngẫu nhiên nguyên liệu đa thức nguyên thuỷ mà để tạo đa thức nguyên thuỷ bậc m điều phải giải phân tích hồn tồn với 2m-1 thừa số ngun tố Bản đồ án không xâu vào phân tích ý nghĩa nêu mà đặt nhiệm vụ giải tốn: “Phân tích số m-1 thừa số nguyên tố (với m≤200)” việc làm trung gian ứng dụng thực tiễn cụ thể Để giải vấn đề đặt đồ án này, đưa số sở lý thuyết Chương trình bầy số Mersenne Các số có dạng Mq=2q-1 (với q nguyên tố ) gọi số Mersenne nghiên cứu công phu Chương xem xét loại toán quen thuộc hơn, tốn phân tích số ngun thừa số nguyên tố Chương phần đề án, trình bày tư tưởng thuật tốn phân tích thừa số ngun tố số nguyên lớn Tiếp theo chương trình bày cách cài đặt cụ thể cho thuật toán liên quan đến việc phân tích thừa số nguyên tố, ví dụ phép : +, -, *, / luỹ thừa số lớn Chúng đặc biệt lưu ý tới việc cài đặt thuật toán Pollard thứ nhất, thuật toán hiêụ việc phân tích hợp số lớn CHƯƠNG I CÁC SỐ MERSENNE VÀ VIỆC PHÂN TÍCH 1.1 Sè Mersenne Định nghĩa Các số có dạng Mq=2q-1 (với q nguyên tố ) gọi số Mersenne Bài toán: Nếu q số nguyên tố đồng dư modulo 4(q≡3(mod 4)) Mq chia hết cho 2q+1 2q+1 nguyên tố; trường hợp này, q>3 Mq hợp số Tính chất: "Nếu Mq chia hết cho n n≡±1 (mod 8) n≡1 (mod q)" 1.2 Phép thử nguyên tố cho số Mersenne Mn=2n-1 nguyên tố Mn ước Sn-2 đó, dẫy (Sk)k>=1 định nghĩa sau: S0=4; Sk+1=Sk2-2 Cũng số Fermat, cịn có nhiều vấn đề mở số Mersenne: (1) Liệu có vô hạn số nguyên tố Mersenne không? (2) Liệu có vơ hạn số Mersenne hợp số khơng? Câu trả lời cho hai câu hỏi “có” (3) Có phải số Mersenne khơng phương khơng? CHƯƠNG II MỘT SỐ PHƯƠNG PHÁP PHÂN TÍCH SỐ 2.1 Thuật tốn sàng Eratosthenes Cho N số nguyên, thuật toán sàng Eratosthenes để phân tích N thừa số nguyên tố mơ tả sau: (1) p=1 (2) p=p+1 (3) Tính r=N mod p Nếu r>0 quay (2) Ngược lại p ước N Dừng chương trình Đây thuật tốn có tính phổ thơng biết thuật toán “tồi” thời gian tính O( N ) N có ước nhỏ việc áp dụng thuật toán lại hiệu Hơn nữa, thuật tốn lấy điểm xuất phát bước (1) p=[ N ] tiến hành bước (2) p=p-1 rõ ràng hiệu ước N “gần” với N 2.2 Phương pháp p-1: Thuật toán Pollard thứ Thuật toán kiểu p-1 thuật tốn phân tích số ngun N dựa vào phân tích p-1 với p ước ngun tố N Thuật tốn cịn gọi thuật tốn phân tích thứ Pollard, thuật tốn có tác dụng ta biết ước nguyên tố thừa số p N nói chung đặc biệt N có thừa số nguyên tố p mà p-1 gồm ước ngun tố nhỏ thuật tốn trình bày phần có hiệu Ý tưởng thuật tốn tìm cách ngẫu nhiên số a∈Z*n có bậc khơng ước p-1 Sè a tìm hiển nhiên phải thoả mãn b≡ap-1 mod N ≠1, điều có ý nghĩa N khơng ước b-1 Mặt khác, p nguyên tố nên theo định lý Fermat ta có b mod p≡(ap-1 mod N) mod p=1 b-1 ≡ mod p ta có p | gcd(b-1,N) Hai điều kéo theo p=gcd(b-1,N) Một số vấn đề chưa tường minh việc thực nói là: Do p số chưa biết nên dấu hiệu nhận biết giá trị a cần tìm a p-1 mod N#1 chưa xác định Tất nhiên điều kiện nhận biết làm “nhẹ” bớt ta thay sè p-1 chưa biết số Q giả định chọn trước tính b≡aQ mod N, N>gcd(b-1, N)>0 việc chọn thành cơng có p=gcd(b-1, N) Hiển nhiên việc giả định Q có nghĩa p-1 ước Q, trường hợp p-1 có N log q N log q ước nguyên tố nhỏ tức p-1= q1 qk k Tất nhiên số mũ khai triển Q dư thừa lựa chọn cố giảm số mũ đến mức thấp có thể, cách làm cụ thể cho việc mơ tả cụ thể thuật tốn Các bước thuật tốn Pollard (dùng để phân tích N có ước p với p1 gồm ước nguyên tố k số nguyên tố đầu tiên) Thuật toán p-1 Pollard N log q Q= q1 (2) Lấy a ngẫu nhiên Z*N, tính b≡aQ mod N (3) Xét đẳng thức b=1 - Nếu chuyển sang (4) - Ngược lại chuyển sang (6) Xét j1 xác suất sau: - Nếu gcd((a-b) mod N, N) gcd((a+b) mod N, N)>1 ước N Dừng chương trình - Ngược lại quay (1) Hiển nhiên cách duyệt dần thời gian tính thuật tốn chẳng khác thời gian tính phép sàng Trong [Pollard], tác giả J M Pollard sử dụng phương pháp gọi “phương pháp p” nhằm cần thông qua m bước duyệt m cặp khác nêu thuật toán Việc thể phương pháp mơ tả sau: Chọn dãy giả ngẫu nhiên {xi mod N:i=1,2, } xác định sau xi-1≡(xi2+a) mod N với a#0 #-2 giá trị đầu x0 tuỳ ý Thuật toán Pollard thứ hai (1) i=0 (2) i=i+1 (3) Xét gcd((x2i- xi)mod N,N)>1 - Nếu ta có gcd((x2i- xi)mod N,N) Dừng chương trình - Ngược lại quay (2) CHƯƠNG III XÂY DỰNG PHẦN MỀM PHÂN TÍCH CÁC SỐ n-1 3.1 Sơ đồ xuất phát Begin Q0 ngưỡng phân tích NhËp N (hỵp sè) Q=2 a=Random(N) a≡aQ mod N d=gcd(a-1, N)>1 Q=Q+1 T F T d lµ ­íc cđa N Q1 với a=aQ! mod N (≈∀ ước p N, có ước nguyên tố lớn p-1 Q lớn, ta lấy Q≈ N ) Thoả hiệp, khống chế số bước tìm Q Q0 khơng tìm ước N Khi ta nói N khơng phân tích thuật tốn Pollard với ngưỡng Q0 3.2 Phân tích hệ thống Căn vào sơ đồ xuất phát cần phải có quy tắc để biểu diễn số lớn máy tính, cách thực phép toán số học +, -, *, / , luỹ thừa số lớn 3.2.1 Khai báo số lớn Biểu diễn q phần số nguyên N Định nghĩa: Cho q>0 ∀N ∃ n0, n1, ,nk, với 0≤ni

Ngày đăng: 17/11/2014, 09:02

Từ khóa liên quan

Mục lục

  • CHƯƠNG I. CÁC SỐ MERSENNE VÀ VIỆC PHÂN TÍCH

    • 1.1 Sè Mersenne

    • 1.2 Phép thử nguyên tố cho các số Mersenne

    • CHƯƠNG II. MỘT SỐ PHƯƠNG PHÁP PHÂN TÍCH SỐ

      • 2.1 Thuật toán sàng Eratosthenes

      • 2.2 Phương pháp p-1: Thuật toán Pollard thứ nhất

      • 2.3 Phương pháp : Thuật toán Pollard thứ hai

      • CHƯƠNG III. XÂY DỰNG PHẦN MỀM PHÂN TÍCH CÁC SỐ 2 n-1

        • 3.1 Sơ đồ xuất phát

        • 3.2 Phân tích hệ thống

        • 3.3 Cài đặt chương trình

        • 3.4 Sơ đồ khối của các modules trong chương trình

Tài liệu cùng người dùng

Tài liệu liên quan