intTypePromotion=1
zunia.vn Tuyển sinh 2024 dành cho Gen-Z zunia.vn zunia.vn
ADSENSE

Xây dựng một phương pháp sinh số nguyên tố tất định

Chia sẻ: Thi Thi | Ngày: | Loại File: PDF | Số trang:9

35
lượt xem
1
download
 
  Download Vui lòng tải xuống để xem tài liệu đầy đủ

Trong bài báo này, chúng tôi đề xuất một thuật toán sinh số nguyên tố tất định. Thuật toán này được xây dựng dựa trên một số thuật toán sinh số nguyên tố đã có. Điều quan trọng là lực lượng số nguyên tố được tạo ra bằng thuật toán mới sẽ lớn hơn so với lực lượng các số nguyên tố được tạo ra từ thuật toán trước đó, và thuật toán mới này còn đưa ra “kiểu bằng chứng” về tính nguyên tố của nó.

Chủ đề:
Lưu

Nội dung Text: Xây dựng một phương pháp sinh số nguyên tố tất định

Công nghệ thông tin & Khoa học máy tính<br /> <br /> XÂY DỰNG MỘT PHƯƠNG PHÁP<br /> SINH SỐ NGUYÊN TỐ TẤT ĐỊNH<br /> Lê Văn Tuấn*, Bùi Thế Truyền<br /> Tóm tắt: Trong bài báo này, chúng tôi đề xuất một thuật toán sinh số nguyên tố<br /> tất định. Thuật toán này được xây dựng dựa trên một số thuật toán sinh số nguyên<br /> tố đã có. Điều quan trọng là lực lượng số nguyên tố được tạo ra bằng thuật toán<br /> mới sẽ lớn hơn so với lực lượng các số nguyên tố được tạo ra từ thuật toán trước<br /> đó, và thuật toán mới này còn đưa ra “kiểu bằng chứng” về tính nguyên tố của nó.<br /> Từ khóa: Mật mã khóa công khai, Chữ ký số.<br /> <br /> 1. MỞ ĐẦU<br /> Số nguyên tố được ứng dụng rất nhiều trong thực tế, đặc biệt chúng là một trong những<br /> tham số quan trọng trong các hệ mã khoá công khai, chẳng hạn như: Hệ mã RSA, hệ mã<br /> Elgamal hay hệ mã ECC ... Hơn nữa số nguyên tố còn là tham số của các hệ chữ ký số được<br /> xây dựng trên nền tảng hệ mật khóa công khai. Vì thế, việc xây dựng những thuật toán mới<br /> để sinh các số nguyên tố hiệu quả hơn các thuật toán đã có là một nhu cầu rất cần thiết.<br /> Trên thực tế thường sử dụng hai phương pháp sinh số nguyên tố phổ biến, đó là<br /> “phương pháp xác suất” và “phương pháp chứng minh được”. Những phương pháp sinh số<br /> nguyên tố này đã được áp dụng trong một số chuẩn của thế giới như: [ANSI X9.31], [FIP<br /> 186.3], [TCVN 7635; 2007], [ISO/IEC 18032;2004], v.v.. Các số nguyên tố được sinh ra<br /> theo phương pháp thứ nhất khác với phương pháp thứ hai là không đưa ra được “bằng<br /> chứng để chứng minh chúng là số nguyên tố” cho nên bài viết này chỉ quan tâm đến<br /> phương pháp sinh số nguyên tố thứ hai. Nếu như toàn bộ các thuật toán sinh số nguyên tố<br /> được đưa ra trong các tiêu chuẩn nêu trên chỉ dựa vào “bằng chứng kiểu p-1” thì trong bài<br /> này sẽ đưa thêm kiểu “bằng chứng p+1” để thiết kế một thuật toán sinh số nguyên tố<br /> chứng minh được với bằng chứng kiểu p± 1.<br /> 2. CƠ SỞ TOÁN HỌC<br /> 2.1. Một số khái niệm và định lý<br /> Định nghĩa 2.1[2]. Biểu diễn NAF (non-adjacent form) của số nguyên dương m, theo<br /> công thức sau:<br /> k 1<br /> m= m 2<br /> i 0<br /> i<br /> i<br /> (2.1)<br /> <br /> với mi  {0,1,1}, mk1  0 và không có hai số hạng cùng dấu liền nhau. Giá trị k được gọi<br /> là độ dài của NAF.<br /> Định lý 2.1[2].<br /> (i) Với mọi m nguyên dương tồn tại duy nhất NAF và được ký hiệu là NAF(m).<br /> (ii) Gọi k là độ dài của NAF(m) thì length(m) + 1≤k<br /> (iii) Số các mi khác 0 của NAF(m), ký hiệu là w(NAF(m)), xấp xỉ length(m)/3.<br /> - Cho tập ℤN ={0,1,…,N1} trên đó xác định hai phép toán cộng và nhân rút gọn theo<br /> modulo N. Đặc biệt nếu p là số nguyên tố thì ℤp là một trường.<br /> Đặc số của trường là số nguyên dương nhỏ nhất n sao cho:<br /> <br /> <br /> <br /> <br /> 146 L.V. Tuấn, B.T. Truyền, “Xây dựng một phương pháp sinh số nguyên tố tất định.”<br /> Nghiên cứu khoa học công nghệ<br /> n<br /> <br /> 1  0 .<br /> i 1<br /> (2.2)<br /> <br /> Vành ℤN[x]/(x2D).<br /> Định nghĩa 2.1. Cho đa thức f(ℤN[x]/(x2D))* ta gọi số nguyên dương nhỏ nhất e sao<br /> cho fe mod (N,x2D)ℤN là bậc mở rộng của f theo modulo x2D và ký hiệu là<br /> ExOrd( N,x 2 D) f  .<br /> -Phép toán trong (ℤN[x]/(x2D))*<br /> Giả sử đa thức u+vx thuộc (ℤN[x]/(x2D))*, được ký hiệu là (u,v). Giả sử (u,v), (a,b),<br /> (a’,b’)∈ (ℤN[x]/(x2D))* . Phép nhân tổng quát giữa (a,b) với (a’,b’)(ℤN[x]/(x2D))*<br /> được xác định như sau:<br /> (u,v)= (a,b).(a’,b’)= (a+bx).(a’+b’x)= (aa’+ab’x+ba’x+bb’x2). Rút gọn biểu thức<br /> (aa’+ab’x+ba’x+ bb’x2) theo modulo x2D, được kết quả như sau: (u,v)=<br /> (aa’+bb’D)+(ab’+a’b)x<br /> Trong đó các giá trị u và v được rút gọn theo modulo N, theo công thức sau:<br /> u = (aa’+bb’D) mod N và v = (ab’+a’b) (mod N) (2.3)<br /> Trong trường hợp (u,v) = (a,b)2, khi đó (u,v)= (a,b).(a,b)= (a+bx).(a+bx)=<br /> a.a+abx+bax+b2x2, kết quả này sau khi rút gọn theo modulo x2D thu được :<br /> a2+b2D+2abx. Khi đó các giá trị u, v được rút gọn theo modulo N theo công thức sau:<br /> u = (a2+b2D) mod N và v = (2ab) mod N. (2.4)<br /> 2<br /> Trong trường hợp (u,v)= (a,b).(a’,1)= (ax+b).(a’x+1)= aa’x +ax+ ba’x+b= (ba’+a)x +<br /> aa’D+b. Khi đó u, v được xác định qua công thức sau:<br /> U=(ba’+a) mod N, v= aa’D+b Mod N (2.5)<br /> Ứng dụng biểu diễn NAF để tính (a,b)m ∈(ℤN[x]/(x2D))*<br /> Thuật toán 2.1. (NAF) . Đầu vào: (a,b) ∈(ℤN[x]/(x2D))*, m là số nguyên dương có<br /> k 1<br /> NAF(m) = m 2<br /> i 0<br /> i<br /> i<br /> . Đầu ra: (u,v) =(a,b)m (mod (N,D)).<br /> <br /> 1. (u,v) = (1,0);<br /> 2. for (k > j  0) {(u,v) ≡ (u,v)2 (mod (N,D));<br /> if (mj==1) (u,v) ≡ (u,v)(a,b) (mod (N,D));<br /> if (mj==1) (u,v) ≡ (u,v)(a,b) (mod (N,D));}<br /> 3. return (u,v)<br /> Định lý 2.2[1]:<br /> ∗<br /> N là số nguyên tố lẻ và q là một ước của N-1, a∈ . Khi đó:<br /> N 1<br /> q<br /> ii) Số a thặng dư bậc q theo modul N khi và chỉ khi a  1 modulo N.<br /> ii) Số thặng dư bậc q theo modulo N là<br /> Định lý 2.3[1]:<br /> <br /> <br /> <br /> <br /> Tạp chí Nghiên cứu KH&CN quân sự, Số 42, 04 - 2016 147<br /> Công nghệ thông tin & Khoa học máy tính<br /> <br /> Cho q là số nguyên tố, khi đó mọi số nguyên N trong tập các số dạng N=Aq2+Bq+1 với<br /> 0A, B0. Nếu N thoả mãn với hai điều kiện sau:<br /> N 1<br /> (i) Tìm được a∈ ∗<br /> thỏa mãn a mod N = 1<br /> N 1<br /> q<br /> và gcd( a  1, N )<br /> =1 (2.6)<br /> 2<br /> (ii) B - 4A là số không chính phương thì n nguyên tố.<br /> Định lý 2.4[2]:<br /> Cho q là số nguyên tố, khi đó mọi số nguyên N trong tập các số dạng N=Aq2+Bq-1 với<br /> 0A, B
ADSENSE

CÓ THỂ BẠN MUỐN DOWNLOAD

 

Đồng bộ tài khoản
2=>2