Dựa trên thuật toán tính toán giá trị modulo của Barrett và định lý Karatsuba và Ofman, nhóm tác giả đã đề xuất thuật toán modulo dựa trên số nguyên tố p “đặc biệt” đảm bảo độ an toàn [r]
(1)ĐỀ XUẤT DẠNG THAM SỐ CHO CÁC HỆ MẬT CĨ ĐỘ AN TỒN DỰA TRÊN BÀI TỐN LOGARIT RỜI RẠC TRÊN TRƯỜNG GF(P)
Hồng Văn Việt1*, Vũ Bá Nhã2
Tóm tắt: Khi sử dụng hệ mật khóa cơng khai RSA, Elgamal, Diffie-Helman, việc quan tâm hàng đầu tính an tồn quan tâm người ứng dụng tính hiệu chúng Bài báo đề xuất dạng tham số nguyên tố p với mục tiêu hỗ trợ việc tính tốn nhanh GF(p) mà không ảnh hưởng đến độ an tồn hệ mật có độ an tồn dựa toán logarit rời rạc trường
Từ khóa: Mật mã khóa cơng khai, Logarith rời rạc, Giao thức trao đổi khóa 1 ĐẶT VẤN ĐỀ
Trong thực tế, sử dụng hệ mật khóa cơng khai RSA, Elgamal, Diffie-Helman, ngồi việc quan tâm hàng đầu tính an tồn quan tâm người ứng dụng tính hiệu chúng Nhiều nghiên cứu có tính hệ thống tập trung vào vấn đề tìm thuật tốn nhanh cho phép tính modulo vành phát triển nhiều kết tốt thuật tốn Barrett [1], đó, kể đến việc tìm loại modulo đặc biệt hỗ trợ cho việc tính tốn nhanh điển hình số nguyên tố NIST (National Institute of Standards and Technology) đưa vào chuẩn FIPS 186-2 [2] để dùng cho ứng dụng hệ mật đường cong elliptic Đối với ứng dụng hệ mật có độ an tồn dựa tốn logarit rời rạc trường GF(p) ngồi điều kiện bắt buộc việc sử dụng phần mềm LINUX (freesoftware) số ngun tố p phải có 64 bít cao chưa có cơng bố liên quan đến tham số p nhằm hỗ trợ tính toán nhanh phép rút gọn GF(p) Trong này, chúng tơi tập trung tìm dạng tham số nguyên tố p với mục tiêu hỗ trợ việc tính tốn nhanh GF(p) mà khơng ảnh hưởng đến độ an tồn hệ mật có độ an tồn dựa toán logarit rời rạc trường với mục đích khuyến cáo người dùng sử dụng chúng cao đưa chúng vào chuẩn để sử dụng
(2)2 PHÉP RÚT GỌN TRÊN GF(p)
Trong ứng dụng mật mã thường xuyên phải thực phép tốn rút gọn số ngun theo modulo , thực chất tính Hiển nhiên phép rút gọn thực thơng qua phép chia cho , nhiên việc làm phải trả chi phí cao cho việc tính tốn Bằng cách “tránh” việc chia Barrett đưa thuật toán chi phí thấp
2.1 Chi phí tính tốn cho số phép toán số học
Theo Donald E Knuth [4] số phép tốn (cịn gọi chi phí) cho số phép toán số học theo thuật toán Karatsuba Ofman [5] số nguyên k-bít sau:
Phép nhân: ; Phép chia là:
Thuật toán Karatsuba Ofman dựa kết sau:
Định lý Karatsuba-Ofman “Để nhân hai số nguyên k-bits cần tiến hành nhân cặp số nguyên -bít”
Rút gọn theo thuật toán Barrett [4] Thuật toán Barrett
Input: p, b ≥ 3, k = , ≤ z < , m = Output: z mod p
1 q ←
2 r ←
3 if r < then while r ≥ p do: return (r)
Chi phí tính tốn cho phép rút gọn thuật toán Barrett đánh giá kết
Kết 1. Chi phí tính tốn cho thuật toán rút gọn Barrett theo modulo gồm k ký tự chi phí hai phép nhân hai số nguyên k ký tự
Chứng minh
(3)2.2 Rút gọn với giá trị p đặc biệt
Định nghĩa 1. Cho b số tự nhiên lớn bất kỳ, số nguyên tố p = (1) gọi có dạng đặc biệt a < (2)
Thuật toán đề xuất. (rút gọn theo modulo p dạng đặc biệt) Input: p = , b ≥ 3, a < , ≤ z <
Output: z mod p
1 r ← z mod ; q ← u ← q.a
3 ;
4
5 while r ≥ p do: return (r)
Kết sau cho ta chi phí tính tốn cho phép rút gọn thuật tốn
Kết 2. Chi phí tính tốn cho thuật toán rút gọn theo modulo p đặc biệt gồm k ký tự chi phí cho ba phép nhân hai số nguyên ký tự
Chứng minh
Để thực thuật toán cần đến hai phép nhân số lớn, q.a bước v.a bước
Từ điều kiện z < nên q số k ký tự từ a < nên q.a tích số k ký tự với số ký tự Đương nhiên tích số phạm vi ký tự nên giá trị v bước số ký tự dẫn đến v.a tích hai số ký tự giá trị tích số k ký tự Biết phép nhân số k ký tự với số ký tự hai phép nhân hai số ký tự thuật toán cần tính phép nhân hai số bít theo định lý Karatsuba - Ofman kết chứng minh
Từ hai kết 2, với việc dùng thuật toán nhân hai số nguyên A Karatsuba Y.Ofman (chi phí cho phép nhân hai số nguyên k ký tự chi phí cho phép nhân hai số ký tự) ta đưa kết luận sau
Kết luận 3. Việc dùng modulo p đặc biệt giúp cho phép rút gọn theo modulo nhanh gấp hai lần so với thuật toán Barrett
3 SỰ TỒN TẠI CÁC THAM SỐ p AN TỒN CĨ DẠNG ĐẶC BIỆT
(4)Theo FIPS 186-3 (xem [FIPS 186-3]) tham số p cần thỏa mãn điều kiện sau: có độ dài bít L cấp số g q ước p-1 có độ dài N Cặp (L,N) gọi cặp kích thước an toàn cho cặp tham số (p,q) cho bảng sau:
Bảng 1. Bảng tiêu chuẩn kích thước an toàn cho cặp tham số nguyên tố (p,q) theo FIPS 186-3
L 1024 2048 2048 3072
N 160 224 256 256
3.2 Sự tồn số lượng tham số p an tồn có dạng đặc biệt
Biết số p thỏa mãn q|(p-1) số có dạng p = x.q+1, theo định nghĩa số đặc biệt p = với a < Lấy b = với ký hiệu đưa bảng ta có đẳng thức sau:
(3) Và từ điều kiện a < ta có giá trị x đẳng thức thỏa mãn bất đẳng thức sau:
≤ x ≤ (4)
Như vậy, ứng với q số số nguyên x, ký hiệu X(q), khoảng coi xấp xỉ
X(q) ≈ = ≈ = (5)
Theo định lý Gauss số số nguyên tố không vượt giá trị B nguyên dương cho trước vô lớn tương đương với B/ln(b) nên áp dụng cho B= với số lượng số nguyên dạng xét (là X(q)) ước lượng số số nguyên tố an toàn theo FIPS 186-3 có dạng đặc biệt ứng với q cụ thể, ký hiệu P(q,L), cho xấp xỉ sau:
P(q,L) ≈ (6)
Cũng theo lập luận số số nguyên tố M bít q, ký hiệu Q(M), xấp xỉ
Q(M) ≈ /N.ln2 (7)
Tóm lại, số cặp số nguyên tố (p,q), ký hiệu PQ(L,M), an tồn theo chuẩn kích thước (L,M) FIPS186-3 có dạng đặc biệt đánh giá theo xấp xỉ sau:
(5)4 SINH CÁC CÁC THAM SỐ p AN TỒN CĨ DẠNG ĐẶC BIỆT
4.1 Thuật tốn sinh tham số p an tồn dạng đặc biệt
Input: L, N hai số nguyên dương (theo cột bảng 1)
Output: (p, q) cặp số nguyên tố an toàn theo độ dài tương ứng theo FIPS 186-3 q ← random
2 if (q is not prime) theo goto
3 A ← ; B ←
4 x ← random[A,B] p ← x.q+1
6 if (p is not prime) theo goto return (p,q)
4.2 Một số nguyên tố an tồn có dạng đặc biệt
Chúng tơi tiến hành lập trình việc tìm số nguyên tố an tồn theo bảng có dạng đặc biệt với hai cặp kích thước an tồn (2048, 256)
4.2.1 Năm số nguyên tố 256 bít nhỏ
q1=5789604461865809771178549250434395392663499233282028201972879 2003956564820063 (77 chữ số thập phân);
q2=5789604461865809771178549250434395392663499233282028201972879 2003956564820109 (77 chữ số thập phân);
q3=5789604461865809771178549250434395392663499233282028201972879 2003956564820243 (77 chữ số thập phân);
q4=5789604461865809771178549250434395392663499233282028201972879 2003956564820301 (chữ số thập phân);
q5=5789604461865809771178549250434395392663499233282028201972879 2003956564820411 (77 chữ số thập phân)
4.2.2 Năm số nguyên tố 256 bít lớn
q6=1157920892373161954235709850086879078532699846656405640394575 84007913129639319 (78 chữ số thập phân);
q7=1157920892373161954235709850086879078532699846656405640394575 84007913129639349 (78 chữ số thập phân);
(6)q9=1157920892373161954235709850086879078532699846656405640394575 84007913129639579 (78 chữ số thập phân);
q10=115792089237316195423570985008687907853269984665640564039457 584007913129639747 (78 chữ số thập phân);
4.2.3 Năm số nguyên tố dạng = với a bé
p1 = x.q1+1 = 2^2048
138441224256463474494751806501400240793138520098245865364088363425 02307659775 (77 chữ số thập phân);
p2 = x.q2+1 = 2^2048 -
686405949565644617865073628170900851970817784601328600317444475424 25877544959 (77 chữ số thập phân);
p3 = x.q3+1 = 2^2048 -
261887571908610414182146332870252355390956232329435101550074921405 1900762882047 (79 chữ số thập phân);
p4 = x.q4+1 = 2^2048 -
580148414323731028338788336031427275960429339966331099676290726024 994199502847 (78 chữ số thập phân);
p5 = x.q5+1 = 2^2048 -
152617534634815156849759046908136345244027269278114472517976381780 1947650850815 (79 chữ số thập phân)
5 KẾT LUẬN
Dựa thuật tốn tính tốn giá trị modulo Barrett định lý Karatsuba Ofman, nhóm tác giả đề xuất thuật tốn modulo dựa số nguyên tố p “đặc biệt” đảm bảo độ an tồn theo chuẩn FIPS 168-3 có thời gian tính tốn nhỏ so với thuật tốn Barrett Bài báo chứng minh tồn số ngun tố p dạng đặc biệt (lập trình tính tốn số cặp giá trị ví dụ mục 4.2) Thuật toán ứng dụng vào giao thức thiết lập khóa làm giảm thời gian tính tốn để hình thành khóa bí mật chung chia sẻ, vậy, báo có ý nghĩa thực tế cao, đặc biệt hệ thống đòi hỏi thời gian thực
TÀI LIỆU THAM KHẢO
(7)[2] Digital Signature Standard (DSS) “Federal Information Processing Standards Publication 186-2” National Institute of Standards and Technology, June 2000
[3] Digital Signature Standard (DSS) “Federal Information Processing Standards Publication 186-3” National Institute of Standards and Technology, June 2009
[4] Donald E Knuth “The Art of Computer Progamming (second edition)” Addison-Weslay Publishing Company 1978
[5] A Karatsuba and Y.Ofman “Multiplication of multidigit numbers on automata” Soviet Physics-Doclady 7: pp 595-596 1963
ABSTRACT
A SPECIAL FORM OF PRIME PARAMETER P BASED ON THE DISCRETE LOGARITHM PROBLEM OF GF (P) FILED When using public key cryptosystems such as RSA, Elgamal, Diffie-Helman, etc., we are not concern only about the safety but also on their effectiveness The paper proposes a special form of prime parameter p with the aim of supporting fast computation on GF (p) filed, without compromising the safety of the public key cryptosystems based on discrete logarithm problem of GF (p) filed
Keywords: Public key cryptosystems, Discrete logarithm problem, Key Exchange protocols
Nhận ngày 08 tháng năm 2017 Hoàn thiện ngày 06 tháng năm 2017 Chấp nhận đăng ngày 01 tháng năm 2017