Khắc phục lỗi và nâng cao tính hiệu quả cho các lược đồ chữ ký số dựa trên hai bài toán khó

7 20 0
Khắc phục lỗi và nâng cao tính hiệu quả cho các lược đồ chữ ký số dựa trên hai bài toán khó

Đang tải... (xem toàn văn)

Thông tin tài liệu

Bài viết đề xuất một lược đồ chữ ký số mới dựa trên hai bài toán khó mà thuật toán ký hiệu quả hơn lược đồ Rabin-Schnorr. Mời các bạn cùng tham khảo bài viết để nắm chi tiết nội dung kiến thức.

KHẮC PHỤC LỖI VÀ NÂNG CAO TÍNH HIỆU QUẢ CHO CÁC LƯỢC ĐỒ CHỮ KÝ SỐ DỰA TRÊN HAI BÀI TỐN KHĨ Lều Đức Tân1 , Hồ Kim Giàu2 Học viện Kỹ thuật Mật mã Học viện Kỹ thuật Qn sự; Trường Sĩ quan Thơng tin Tóm tắt—Các lược đồ chữ ký số dựa hai tốn khó tăng tính an tồn lược đồ dựa tốn khó trường hợp hai tốn khó giải Những năm qua có nhiều nghiên cứu đề xuất lược đồ chữ ký số dựa hai tốn khó tốn logarit rời rạc phân tích số Trong đó, kể đến hai lược đồ cơng bố Rabin-Schnorr RSA-Schnorr [1] Trong báo này, số lỗi dẫn đến việc giả mạo chữ ký lược đồ phụ thuộc vào tốn khó hai lược đồ trên, đồng thời đưa nhược điểm dẫn đến tính khơng hiệu lược đồ Ngồi ra, báo đề xuất lược đồ chữ ký số dựa hai tốn khó mà thuật toán ký hiệu lược đồ Rabin-Schnorr Từ khóa—Chữ ký số, logarit rời rạc, phân tích số, hai tốn khó I GIỚI THIỆU Chữ ký số dùng để xác thực nguồn gốc tính tồn vẹn thơng tin Các thuật tốn chữ ký số thường dựa hai hệ mật phổ biến RSA Elgamal Hệ mật RSA dựa độ khó tốn phân tích thừa số ngun tố Elgamal dựa độ khó tốn logarit rời rạc Các lược đồ chữ ký số có độ an tồn dựa tính khó hai tốn khó quan tâm từ năm 1994 L Harn đề xuất [2] liên tục sau cơng bố vào năm 2008 ba tác giả E S Ismail, N M F Tahat R R Amad [3], E S Dermova năm 2009 [4], S Vishnoi Shrivastava năm 2012 [5], Binh V Do, Minh H Nguyên, Nikolay A Moldovyal, năm 2013 [1], Cùng với chúng phân tích thực chất độ an tồn chúng phân tích N Y Lee T Hwang lược đồ Harn công bố năm 1996 [6], phân tích Shin-Yan Chiou Yi-Xuan He giao thức Vishnoi Shrivastava công bố năm 2013 [7] Tóm lại cịn hai lược đồ đưa [1] nghĩa với việc có độ an tồn dựa tính khó hai tốn khó lược đồ Rabin-Schnorr RSA-Schnorr Trong báo chúng tơi trình bày hai nội dung là: • Chỉ số lỗi dẫn đến việc dễ giả mạo dẫn đến việc phụ thuộc vào tốn khó hai lược đồ Rabin-Schnorr RSA-Schnorr Tiếp đến nhược điểm dẫn đến tính khơng hiệu lược đồ • Cơng bố lược đồ Williams-Rabin-Schnorr với thuật toán ký hiệu hẳn thuật toán ký lược đồ Rabin-Schnorr Phần lại báo tổ chức sau: Trong phần 2, chúng tơi trình bày số kết làm sở cho việc đánh giá tính hiệu thuật tốn chữ ký số Phần giới thiệu, phân tích lỗi hai lược đồ Rabin-Schnorr RSA-Schnorr, đưa lược đồ sửa đổi tương ứng; phần đề xuất lược đồ WR-Schnorr cách thay lược đồ Rabin Rabin-Schnorr lược đồ WilliamsRabin (WR); cuối kết luận tài liệu tham khảo II MỘT SỐ KẾT QUẢ GIÁ TÍNH HIỆU QUẢ Các kết trình bày mục bạn đọc tìm tài liệu [8], [9], [10] A Một số ký hiệu • Tác giả liên hệ: Hồ Kim Giàu Email: hkgiau@gmail.com Đến tòa soạn: 2/2020, chỉnh sửa: 4/2020, chấp nhận đăng: 4/2020; SỐ 01 (CS.01) 2020 LÀM CƠ SỞ CHO VIỆC ĐÁNH • len(a) : Số bít tối thiểu để biểu diễn nhị phân số nguyên dương a, gọi độ dài a tM (N ): Chi phí trung bình cho phép nhân hai số N-bít TẠP CHÍ KHOA HỌC CƠNG NGHỆ THƠNG TIN VÀ TRUYỀN THƠNG 50 • • • • • • • tRed (N ): Chi phí trung bình cho phép rút gọn số 2N-bít theo modulo N-bít tm (N ): Chi phí trung bình cho phép nhân rút gọn theo modulo n với len(n) = N texp (N, L): Chi phí trung bình cho phép tính ae mod n với len(e) = N len(n) = L tinv (N ): Chi phí trung bình cho phép tính a−1 mod n với len(n) = N tH : Chi phí trung bình cho phép tính hàm H: {0, 1}∞ → {0, 1}h tgcd (N ): Chi phí trung bình cho phép tính gcd(a, b) với len(a), len(b) ≤ N tJacobi (N ): Chi phí trung bình cho phép tính ( na ) với len(n) = N Bảng I KÍCH THƯỚC TƯƠNG ĐƯƠNG VỀ ĐỘ AN TOÀN CỦA CÁC THAM SỐ RSA VÀ DL N L III PHÂN • • • • • tm (L) = 3log2 (L/N ) × tm (N ) (1) tm (2N ) ì tm (N ) (2) ã c biệt Theo phương pháp bình phương-nhân texp (N, L) = 1.5 × N × tm (L) Theo phương pháp nhị phân tinv (N ) = tgcd (N ) = tJacobi (N ) ≈ N tM (N ) (4) Cơng thức Garner Cho n = p.q tích hai số nguyên tố khác Khi với a ∈ Zn , ký hiệu ap = a mod p, aq = a mod q , thì: với c = q.(q −1 mod p) (5) (6) giá trị a xác định từ (ap , aq ) ký hiệu CRT (ap , aq ) D Bảng kích thước tương đương độ an toàn tham số RSA logarit rời rạc (DL) Tham số L = len(p) DL L = len(n) RSA Tham số N = len(q ) DL SỐ 01 (CS.01) 2020 512 15360 RABIN-SCHNORR RSA-SCHNORR TÍCH HAI LƯỢC ĐỒ VÀ Kích thước modulo L Tập thông báo M = {0, 1}∞ Tập chữ ký S = N × N Hàm tóm lược H:{0, 1}∞ → {0, 1}h Giá trị h gọi độ dài tóm lược Số nguyên tố p có dạng p = 2.n + với len(p) = L Hợp số n có dạng n = q.q hai số nguyên tố lẻ khác cho việc phân tích n thừa số khó (với lược đồ Rabin-Schnorr q, q ≡ (mod 4)) Phần tử sinh g có cấp n Tham số mật x ∈ g (nhóm cyclic sinh g GF(p)) tham số công khai y = g x mod p (với lược đồ RSA-Schnorr thêm số mũ mật d, số mũ công khai e thỏa mãn e.d mod φ(n) = với φ số Euler) Khi khóa ký khóa kiểm tra chữ ký: (3) √ a = (c(ap − aq ) + aq ) mod n 384 8192 Mỗi thành viên tương ứng với tham số sau: C Một số quy đổi tm (N ) = 3.tM (N ) 256 3072 1) Các tham số: Hai lược đồ Rabin-Schnorr RSA-Schnorr có chung tham số miền là: • Theo phương pháp Karatsuba thì: tM (N ) = O(N ln3/ln2 ) (phép toán bit) Theo phương pháp Mongomegy Barrett thì: tRed (N ) = 2.tM (N ) tinv (N ) = tgcd (N ) = tJacobi (N ) = O(N ) (phép toán bit) 224 2048 A Lược đồ Rabin-Schnorr RSA-Schnorr [1] • B Một số kết 160 1024 • • Trong lược đồ Rabin-Schnorr là: (p, n, q, q , x) (p, n, y) Trong lược đồ RSA-Schnorr là: (p, n, q, q , d, x) (p, n, e, y) 2) Lược đồ Rabin-Schnorr: Thuật toán 1,2 Thuật toán 1: Thuật toán tạo chữ ký người có khóa ký (p, n, q, q , x) Input: m ∈ M Output: (r, s) ∈ S k ∈R (0, n) u ← g k mod p r ← H(m||u) a ← (k − x.r) mod n a a if (( q ) = −1) or (( q ) = −1) then goto sq ← a(q+1)/4 mod q ; sq ← a(q +1)/4 mod q s ← CRT (sq , sq ) return (r, s) 3) Lược đồ RSA-Schnorr: Thuật tốn 3,4 TẠP CHÍ KHOA HỌC CÔNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG 51 Thuật toán 2: Thuật toán kiểm tra chữ ký người có khóa kiểm tra (p, n, y) Input: (m, (r, s)) ∈ M × S Output: "Accept" chữ ký hợp lệ "Reject" trường hợp ngược lại a ← s2 mod n u ← g a y r mod p r ← H(m||u) If (r = r ) then return "Accept" Else return "Reject" Thuật toán 3: Thuật toán tạo chữ ký người có khóa ký (p, n, q, q , d, x) Input: m ∈ M Output: (r, s) ∈ S k ∈R (0, n) u ← g k mod p r ← H(m||u) a ← (k − x.r) mod n s ← ad mod p return (r, s) Thuật toán 4: Thuật tốn kiểm tra chữ ký người có khóa kiểm tra (p, n, e, y) Input: (m, (r, s)) ∈ M × S Output: "Accept" chữ ký hợp lệ "Reject" trường hợp ngược lại a ← se mod n u ← g a y r mod p r ← H(m||u) If (r = r ) then return "Accept" Else return "Reject" B Một số phân tích đề nghị sửa đổi cho hai lược đồ Rabin-Schnorr RSA-Schnorr 1) Các lỗi lược đồ Rabin-Schnorr RSASchnorr: Lược đồ Rabin-Schnorr có hai lỗi sau: • Lỗi thứ Xuất phát từ "Nếu (r, s) chấp nhận thuật tốn kiểm tra M (r, −s) chấp nhận" Như sơ đồ dễ giả mạo • Lỗi thứ hai Nếu gcd(s, n) = ước n Trong trường hợp lược đồ cịn dựa vào tốn logarit rời rạc Để tránh lỗi đề nghị bước bước thuật toán ký sửa đổi sau: a ← (k − x.r) mod n; if (gcd(a, n) = 1) then goto s ← CRT (sq , sq ); if (s ≥ n/2) then goto s = n − s Tương ứng với việc sửa bước thuật toán ký SỐ 01 (CS.01) 2020 thuật tốn kiểm tra bổ thêm điều kiện (s < n/2) Lược đồ RSA-Schnorr có lỗi gống hệt lỗi thứ hai lược đồ Rabin-Schnorr theo cần sửa đổi bước thuật toán ký lược đồ giống sửa lược đồ Rabin-Schnorr Chú ý Với n tích hai số nguyên tố khác q q ta có: (gcd(a, n) = 1) ⇔ (a mod q = 0) (a mod q = 0) 2) Nâng cao tính hiệu cho lược đồ RabinSchnorr RSA-Schnorr: Xuất phát từ lược đồ ElGamal, lược đồ phát triển DSA, GOST, Schnorr, nhằm đạt tính hiệu cao có chung giải pháp đưa thêm vào tham số miền N vừa đủ lớn cho tốn tìm logarit nhóm g có kích thước N-bít "khó" Khi lược đồ cải biên có hai đặc điểm: • Thứ Kích thước chữ ký 2.N bít • Thứ hai Các phép tính lũy thừa có số mũ N-bít Trong hai lược đồ trình bày ln có kích thước nhóm L - Nếu phép lũy thừa thuật toán kiểm tra thường có số mũ (L - 1)-bít phép lũy thừa thuật tốn ký điểu khiển Chúng tơi có số khuyến nghị sau: • Thứ Đưa vào tham số miền N giống cải biên cụ thể lấy tương ứng với L theo bảng I, bước thuật toán ký nên k ∈R (2N −1 , 2N ) Tương tự tham số mật x cần x ∈R (2N −1 , 2N ) Tham số h = N • Thứ hai Số mũ cơng khai e nên có dạng 2t + 1, chí lấy cố định 216 + khuyến cáo lược đồ RSA • Thứ ba Đối với lược đồ Rabin-Schnorr, người ký tính sẵn lưu tham số mật giá trị c = q.(q −1 mod p) mod n Khi chi phí cho việc tính CRT (x, y) tm (L) C Các lược đồ sau sửa đổi 1) Các tham số: Các tham số cho lược đồ RabinSchnorr RSA-Schnorr giống nêu mục III-A1 với số bổ sung sau: • Hàm tóm lược H:{0, 1}∞ → {0, 1}N • Tham số mật x ∈R (2N −1 , 2N ) • Số mũ cơng khai e = 216 + dùng cho RSASchnorr • Tham số mật người ký c = q.(q −1 mod p) dùng cho Rabin-Schnorr Khi khóa ký khóa kiểm tra chữ ký: • Trong lược đồ Rabin-Schnorr là: (p, n, q, q , x, c) (p, n, y) TẠP CHÍ KHOA HỌC CƠNG NGHỆ THƠNG TIN VÀ TRUYỀN THƠNG 52 Trong lược đồ RSA-Schnorr là: (p, n, q, q , d, x) (p, n, e, y) 2) Lược đồ Rabin-Schnorr sửa đổi: Thuật tốn 5,6 • Thuật toán 5: Thuật toán tạo chữ ký người có khóa ký (p, n, q, q , x, c) Input: m ∈ M Output: (r, s) ∈ S k ∈R (2N −1 , 2N ) u ← g k mod p r ← H(m||u) a ← (k − x.r) mod n aq ← a mod q; aq ← a mod q if ((aq = 0) or (aq = 0)) then goto (thay cho gcd(a, n) = 1) a a if (( q ) = −1) or (( q ) = −1) then goto sq ← (aq )(q+1)/4 mod q ; sq ← (aq )(q +1)/4 mod q s ← (c.(sq − sq ) + sq ) mod n 10 if (s ≥ n/2) then s ← n − s 11 return (r, s) Thuật toán 7: Thuật tốn tạo chữ ký người có khóa ký (p, n, q, q , d, x) Input: m ∈ M Output: (r, s) ∈ S k ∈R (2N −1 , 2N ) u ← g k mod p r ← H(m||u) a ← (k − x.r) mod n aq ← a mod q ; aq ← a mod q if ((aq = 0) or (aq = 0)) then goto (thay cho gcd(a, n) = 1) sq ← (aq )d mod q mod q ; sq ← (aq )d mod q mod q s ← (c.(sq − sq ) + sq mod n return (r, s) Thuật toán 8: Thuật tốn kiểm tra chữ ký người có khóa kiểm tra (p, n, e, y) Input: (m, (r, s)) ∈ M × S Output: "Accept" chữ ký hợp lệ "Reject" trường hợp ngược lại e a ← s mod n u ← g a y r mod p r ← H(m||u) If (r = r ) then return "Accept" Else return "Reject" Thuật toán 6: Thuật toán kiểm tra chữ ký người có khóa kiểm tra (p, n, y) Input: (m, (r, s)) ∈ M × S Output: "Accept" chữ ký hợp lệ "Reject" trường hợp ngược lại if (s ≥ n/2) then return "Reject" a ← s2 mod n u ← g a y r mod p r ← H(m||u) If (r = r ) then return "Accept" Else return "Reject" 3) Lược đồ RSA-Schnorr sửa đổi: Thuật tốn 7,8 D So sánh chi phí cặp lược đồ gốc sửa đổi Do sửa đổi nêu mục III-B2 nhằm tăng tính hiệu chủ yếu thuật toán tạo chữ ký đánh giá cặp thuật tốn Trong phân tích chúng tơi ln giả thiết cặp thuật tốn sử dụng việc lưu giá trị c để tính CRT dùng chung số mũ e Chứng minh Sự khác hai thuật toán tham số k thuật tốn số L-bít, cịn thuật tốn Nbít chi phí cho việc tính giá trị g k mod p hai thuật toán theo công thức (3) 1, 5.L.tm (L) 1, 5.N.tm (L) Đối với thuật toán sửa đổi có thêm việc kiểm tra ((aq = 0) or (aq = 0)) có chi phí 2.tRed ( L2 ) < tm (L) Biết xác suất để ( aq ) = −1 (hoặc tương tự ( qa )=-1) 0,5 nên để qua bước thuật toán (tương tự bước thuật tốn 5) trung bình cần thực lần kiểm tra ( aq ) = −1 or ( qa ) = −1 Như hiệu chi phí thuật tốn 4.(1, 5.L−(1, 5.N +1)).tm (L) = 4.(1, 5.(L−N )− 1).tm (L) Và điều cần chứng minh Lập luận hoàn toàn tương tự cặp lược RSASchnorr ta có Mệnh đề Chi phí thuật tốn ký lược đồ RSASchnorr sửa đổi RSA-Schnorr Mệnh đề Chi phí thuật tốn ký lược đồ RabinSchnorr sửa đổi Rabin-Schnorr là: (1, 5.(L − N ) − 1).tm (L) 4.(1, 5.(L − N ) − 1).tm (L) Từ (7) (8) ta tính chi phí (theo đơn vị tm (L)) tiết kiệm sử dụng lược đồ sửa SỐ 01 (CS.01) 2020 (7) TẠP CHÍ KHOA HỌC CƠNG NGHỆ THÔNG TIN VÀ TRUYỀN THÔNG (8) 53 đổi so với lược đồ ban đầu cho bảng Bảng II CHI PHÍ TIẾT KIỆM ĐƯỢC KHI LƯỢC ĐỒ SỬA ĐỔI ỨNG VỚI CẶP (L, N) CHO TRONG BẢNG I N L Rabin-Schnorr RSA-Schnorr 160 1024 5180 1295 224 2048 10940 2735 256 3072 16892 4223 384 8192 46844 11711 512 15360 89084 22271 IV LƯỢC ĐỒ WR-SCHNORR Lược đồ WR-Schnorr mà đưa phần thay lược đồ Rabin RabinSchnorr lược đồ Williams-Rabin (WR) Williams công bố vào năm 1980 [11] Cơ sở để lược đồ WR ưu việt hẳn Rabin thuật toán tạo chữ ký cho bổ đề trình bày mục IV-A A Kết bổ trợ Bổ đề Cho n = p.q với p ≡ (mod 8), q ≡ (mod 8) hai số nguyên tố Khi với a ∈ Z∗n giá trị b xác định theo công thức sau: a a a ∈ QR(n) ( ) = 1, ( ) = p q  −2a ∈ QR(n) ( a ) = 1, ( a ) = −1  p q  (9) b=  2a ∈ QR(n) ( a ) = −1, ( a ) =  p q  a a −a ∈ QR(n) ( ) = −1, ( ) = −1 p q  Sẽ thoả mãn: 1) b b ( ) = ( ) = p q B Lược đồ WR-Schnorr Tham số miền Tham số miền giống Rabin-Schnorr sửa đổi thêm: • q ≡ (mod 8) q ≡ (mod 8) • Tập chữ ký S = {±1} × {±1} × N × N Lược đồ WR-Schnorr trình bày thuật tốn 9, 10 Thuật tốn 9: Thuật tốn tạo chữ ký người có khóa ký (p, n, q, q , c, x) Input: m ∈ {0, 1}∞ Output: (u, v, r, s) ∈ {±1} × {±1} × N × N k ∈R (2N −1 , 2N ) w ← g k mod p r ← H(m||w) a ← (k − x.r) mod n aq ← a mod q; aq ← a mod q if ((aq = 0) or (aq = 0)) then goto (thay cho gcd(a, n) = 1) aq aq u ← ( q ); v ← ( q ) if (u = v) then a ← 2.a mod n if (v = −1) then a ← n − a 10 sq ← a(q+1)/4 mod q; sq ← a(q +1)/4 mod q 11 s ← (c.(sq − sq ) + sq ) mod n 12 if (s ≥ n/2) then s ← n − s 13 return (u, v, r, s) Thuật toán 10: Thuật toán kiểm tra chữ ký người có khóa kiểm tra (p, n, q, q , x) Input: (m, (u, v, r, s)) ∈ M × S Output: "Accept" chữ ký hợp lệ "Reject" trường hợp ngược lại if (s ≥ n/2) return "Reject" b ← s2 mod n if (u = v) then b ← b/2 mod n if (v = −1) then b ← n − b w ← g b y r mod p r ← H(m||w) If (r = r ) then return "Accept" Else return "Reject" 2) Hơn ký hiệu: C Tính đắn lược đồ WR-Schnorr rp = b(p+1)/4 , rq = b(q+1)/4 c = q.(q −1 mod p) (10) Mệnh đề Lược đồ WR-Schnorr đắn giá trị: r = (c.(rp − rq ) + rq ) mod n (11) Thỏa mãn r2 ≡ b (mod n) (12) SỐ 01 (CS.01) 2020 Tính đắn lược đồ WR-Schnorr cho kết sau Chứng minh Giả sử (u, v, r, s) chữ ký tạo từ thuật toán người giữ tham số mật (p, n, q, q , c, x) lên thông báo m Nếu ký hiệu a = (k − x.r) mod n (giá trị TẠP CHÍ KHOA HỌC CƠNG NGHỆ THƠNG TIN VÀ TRUYỀN THƠNG 54 tính bước qua bước 6), b giá trị a tính sau bước Với tác động bước bước ta có: b=a ⇔ u = v = b = −2.a ⇔ u = v = −1 b = 2.a ⇔ u = −1 v = b = −a ⇔ u = −1 v = −1 ⇔ u = v = a = −b/2 ⇔ u = v = −1 a = b/2 ⇔ u = −1 v = a = −b ⇔ u = −1 v = −1 Mệnh đề Lược đồ WR-Schnorr có độ an tồn dựa vào tính khó giải đồng thời hai tốn phân tích số toán logarit rời rạc Từ hai kết giá trị b tính sau bước thuật tốn 10 giá trị a tính bước thuật toán hay b = (k − x.r) mod n Như giá trị w tính bước thuật tốn 10 w ≡ g b y r ≡ g (k−x.r) y r ≡ g k (mod p) giá trị w tính bước thuật tốn Điều dẫn đến hai giá trị r tính bước thuật tốn r tính bước thuật toán 10 trùng nhau, hay đầu thuật toán 10 "Accept" Mệnh đề chứng minh D Tính hiệu lược đồ Williams-Rabin Biết hai lược đồ chữ ký dựa hai tốn khó Rabin-Schnorr sửa đổi RSA-Schnorr sửa đổi thuật tốn ký lược đồ thứ hai hiệu thuật tốn kiểm tra chữ ký ngược lại Để có kết luận tính hiệu lược đồ thành lập thực so sánh thuật tốn ký với lược đồ thứ hai so sánh thuật toán kiểm tra với lược đồ thứ Kết chop mệnh đề sau Mệnh đề Chi phí cho thuật toán thứ j , ký hiệu Tj (j = 5, 6, 7, 8, 10) Ta có: T9 − T7 = 2.tJacobi (L/2) (13) T10 = T6 (14) Chú ý, b/2 mod n = SỐ 01 (CS.01) 2020 (b + n) b b lẻ E Tính an tồn lược đồ WR-Schnorr Lặp lại việc chứng minh tính an tồn lược đồ Rabin-Schnorr [1] ta có kết sau Theo bổ đề giá trị s tính bước 11 thỏa mãn: s2 mod n = b Bây ký hiệu ngược lại b giá trị tính bước thuật tốn 10 cịn a giá trị b tính sau bước thuật tốn ta có: a=b nên phép tốn bỏ qua công thức V KẾT LUẬN Trong báo này, chúng tơi phân tích số lỗi xảy hai lược đồ chữ ký số Rabin-Schnorr RSA-Schnorr, đồng thời đưa khuyến nghị sửa đổi cho hai lược đồ để hạn chế lỗi Ngồi ra, chúng tơi cịn đề xuất thuật toán chữ ký số cách thay lược đồ Rabin Rabin-Schnorr lược đồ Williams-Rabin Lược đồ đề xuất có thuật tốn tạo chữ ký hiệu lược đồ Rabin-Schnorr mà đảm bảo độ an toàn dựa hai tốn khó TÀI LIỆU THAM KHẢO [1] B V Do, M H Nguyen, and N A Moldovyan, “Digital signature schemes from two hard problems,” in Multimedia and Ubiquitous Engineering Springer, 2013, pp 817–825 [2] L Harn, “Public-key cryptosystem design based on factoring and discrete logarithms,” IEE Proceedings-Computers and Digital Techniques, vol 141, no 3, pp 193–195, 1994 [3] E S Ismail, N Tahat, and R R Ahmad, “A new digital signature scheme based on factoring and discrete logarithms,” Journal of mathematics and statistics, vol 4, no 4, pp 222–225, 2008 [4] E S Dermova, “Information authentication protocols on two hard problems ph d dissertation,” Ph.D dissertation, St Petersburg State Electrotechnical University St Petersburg, Russia, 2009 [5] S Vishnoi and V Shrivastava, “A new digitalsignature algorithm based on factorization and discrete logarithm problem,” 2012 [6] N.-Y Lee and T Hwang, “Modified harn signature scheme based on factorising and discrete logarithms,” IEE Proceedings-Computers and Digital Techniques, vol 143, no 3, pp 196–198, 1996 [7] S Chiou and Y He, “Remarks on new digital signature algorithm based on factorization and discrete logarithm problem,” International Journal of Computer Trends and Technology (IJCTT), vol 4, pp 3322–3324, 2013 [8] J Katz, A J Menezes, P C Van Oorschot, and S A Vanstone, Handbook of applied cryptography CRC press, 1996 [9] R Crandall and C B Pomerance, Prime numbers: a computational perspective Springer Science & Business Media, 2006, vol 182 [10] D Hankerson, A J Menezes, and S Vanstone, Guide to elliptic curve cryptography Springer Science & Business Media, 2006 [11] H Williams, “A modification of the rsa public-key encryption procedure (corresp.),” IEEE Transactions on Information Theory, vol 26, no 6, pp 726–729, 1980 b chẵn TẠP CHÍ KHOA HỌC CƠNG NGHỆ THƠNG TIN VÀ TRUYỀN THÔNG 55 FIX BUGS AND ENHANCE EFFICIENCY FOR THE DIGITAL SIGNATURE SCHEME BASED ON TWO HARD PROBLEMS Abstract: Digital signature schemes based on two hard problems will be higher security than the scheme based on a single hard problem in case one of the two hard problems was solved In recent years, many researchers have proposed the digital signature scheme based on the discrete logarithm problem and integer factorization problem In particular, two published schemes are Rabin-Schnorr and RSA-Schnorr [1] In this paper, we point out some bugs that lead to the possibility of forging signatures or schemes depending only on a single hard problem of the two proposed schemes, and the disadvantages leading to inefficiency of these schemes In addition, this paper proposes a new digital signature scheme based on SỐ 01 (CS.01) 2020 two hard problems that it is more efficient than the Rabin-Schnorr scheme in the signing algorithm Keywords: Digital signature, discrete logarithm problem, integer factorization problem, two hard problems Lều Đức Tân Tiến sĩ tốn học, cơng tác Học viện Kỹ thuật Mật mã, nghỉ hưu Hướng nghiên cứu chính: tốn học mật mã Hồ Kim Giàu Tốt nghiệp Đại học Khoa học - Tự nhiên, TP Hồ Chí Minh năm 2005 Nhận Thạc sỹ Học viện Bưu Viễn thơng TP Hồ Chí Minh năm 2011 Đơn vị công tác: Trường Đại học Thông tin liên lạc, Khánh Hoà Hiện làm nghiên cứu sinh Học viện Kỹ thuật Quân Email: hkgiau@gmail.com Hướng nghiên cứu nay: An toàn bảo mật thơng tin TẠP CHÍ KHOA HỌC CƠNG NGHỆ THƠNG TIN VÀ TRUYỀN THÔNG 56 ... thuật toán 10 "Accept" Mệnh đề chứng minh D Tính hiệu lược đồ Williams-Rabin Biết hai lược đồ chữ ký dựa hai toán khó Rabin-Schnorr sửa đổi RSA-Schnorr sửa đổi thuật toán ký lược đồ thứ hai hiệu. .. tích số lỗi xảy hai lược đồ chữ ký số Rabin-Schnorr RSA-Schnorr, đồng thời đưa khuyến nghị sửa đổi cho hai lược đồ để hạn chế lỗi Ngồi ra, chúng tơi cịn đề xuất thuật toán chữ ký số cách thay lược. .. tra chữ ký ngược lại Để có kết luận tính hiệu lược đồ thành lập thực so sánh thuật tốn ký với lược đồ thứ hai so sánh thuật toán kiểm tra với lược đồ thứ Kết chop mệnh đề sau Mệnh đề Chi phí cho

Ngày đăng: 07/11/2020, 09:42

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

  • Đang cập nhật ...

Tài liệu liên quan