PHÂN TÍCH
CÁC SỐ NGUYÊN
CÓ DẠNG 2
n
-1
RA THỪA SỐ NGUYÊN TỐ
ĐẶT VẤN ĐỀ
•
Bài toán phân tích số nguyên ra thừa số
nguyên tố đã được ra đời từ rất lâu và đã cuốn
hút nhiều bộ óc vĩ đại nhất trên thế giới để giải
quyết vấn đề về nó.
•
Ngoài ý nghĩa lý thuyết của bản thân bài toán
người ta còn phát hiện nhiều ý nghĩa thực tiễn
đặc biệt là trong mật mã.
ĐẶT VẤN ĐỀ
•
Nhiệm vụ chính của đề án là giải quyết bài
toán: “Phân tích các số nguyên có dạng 2
n
-1
ra thừa số nguyên tố (với n
≤
200)”.
•
Chương 1 sẽ trình bầy về các số Mersenne.
Chương 2 đề cập đến bài toán phân tích số
nguyên ra thừa số nguyên tố. Chương 3 là phần
cơ bản của đề án, trong đó trình bày các tư
tưởng của thuật toán phân tích ra thừa số
nguyên tố của những số nguyên lớn.
CHƯƠNG I. CÁC SỐ MERSENNE
VÀ VIỆC PHÂN TÍCH
•
Các số có dạng M
q
=2
q
-1 (với q là nguyên tố )
được gọi là các số Mersenne.
•
Nếu q là một số nguyên tố đồng dư modulo
4(q≡3(mod 4)) thì M
q
chia hết cho 2q+1 khi và
chỉ khi 2q+1 là nguyên tố; trong trường hợp
này, nếu q>3 thì M
q
là hợp số.
•
Nếu M
q
chia hết cho n thì n
≡
±
1 (mod 8) và
n
≡
1 (mod q)
Phép thử nguyên tố cho các số
Mersenne
•
M
n
=2
n
-1 là nguyên tố khi và chỉ khi M
n
là
ước của S
n-2
.
trong đó, dẫy (S
k
)
k>=1
được định nghĩa như
sau:
S
0
=4; S
k+1
=S
k
2
-2
CHƯƠNG II. MỘT SỐ PHƯƠNG
PHÁP PHÂN TÍCH SỐ
•
Thuật toán sàng Eratosthenes
•
Phương pháp p-1: Thuật toán
Pollard thứ nhất
•
Phương pháp ρ: Thuật toán Pollard
thứ hai
Thuật toán sàng
Eratosthenes
(1) p = 1.
(2) p = p+1.
(3) Tính r = N mod p
—
Nếu r > 0 quay về (2).
—
Ngược lại p là ước của N.
Dừng chương trình.
Phương pháp p-1: Thuật toán
Pollard thứ nhất
(1) Q= , i=1,j=0.
(2) Lấy a ngẫu nhiên trong Z
*
N
, tính b
≡
a
Q
mod N.
(3) Xét đẳng thức b=1. Nếu đúng chuyển sang (4).
Ngược lại chuyển sang (6).
(4) Xét j<log
qi
N. Nếu đúng thì j=i+1, Q=Q|qi, quay về (3).
Ngược lại: chuyển sang (5).
(5) Xét i<k. Nếu đúng thì : i=i+1, j=0, nếu b
≠
1 thì Q=Q.q
i
. Quay về
(4). Ngược lại quay về (1).
(6) Xét gcd (b-1, N)>1. Nếu đúng có ước của n là
gcd (b-1,N). Dừng chương trình. Ngược lại quay về (4)...
q
N
k
q
N
k
log
log
...
2
2
Phương pháp
ρ
: Thuật toán
Pollard thứ hai
(1) i=0
(2) i=i+1
(3) Xét gcd((x
2i
- x
i
)mod N,N)>1
- Nếu đúng, ta có gcd((x
2i
- x
i
)mod N,N).
Dừng chương trình.
- Ngược lại quay về (2).