1. Trang chủ
  2. » Công Nghệ Thông Tin

Phát triển một dạng lược đồ chữ ký số mới

5 8 0

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

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 5
Dung lượng 836,39 KB

Nội dung

Bài viết tiến hành đề xuất một dạng lược đồ chữ ký số mới được xây dựng trên cơ sở các bài toán phân tích một số nguyên lớn ra các thừa số nguyên tố, bài toán khai căn trong modulo hợp số. Từ dạng lược đồ mới đề xuất có thể phát triển thành một số lược đồ chữ ký số có khả năng ứng dụng được trong thực tế.

Hội thảo quốc gia lần thứ XVI: Một số vấn đề chọn lọc Công nghệ thông tin truyền thông- Đà Nẵng, 13-14/11/2013 Phát triển dạng lược đồ chữ ký số Developing a new type of digital signature scheme Lƣu Hồng Dũng1, Nguyễn Tiền Giang2, Hồ Ngọc Duy3, Nguyễn Thị Thu Thủy4 luuhongdung@gmail.com, ntgiang77@gmail.com, aimezthngocduy207@yahoo.com, thuthuynt@gmail.com Khoa Công nghệ Thông tin – Học viện Kỹ thuật Quân Cục Công nghệ Thông tin – Bộ Quốc phịng Cục Cơng nghệ Thơng tin – Bộ Quốc phòng Trƣờng Cao đẳng Kinh tế – Kỹ thuật Quảng Nam Tóm tắt—Bài báo đề xuất dạng lược đồ chữ ký số xây dựng sở tốn phân tích số ngun lớn thừa số nguyên tố, toán khai modulo hợp số Từ dạng lược đồ đề xuất phát triển thành số lược đồ chữ k‎ý số có khả ứng dụng thực tế Từ khoá: Digital Signature, Hash Function I Trong hệ thống giao dịch điện tử với dịch vụ chứng thực số dùng chung tham số {n,t}, tốn RSA(n,t) khó theo nghĩa khơng thể thực đƣợc thời gian thực Ở đó, thành viên U hệ thống tự chọn cho khóa bí mật x thỏa mãn: < x < n, tính cơng khai tham số: Digital Signature Schema, y  x t mod n ĐẶT VẤN ĐỀ Chú ý: Chữ k‎‎ý số đƣợc ứng dụng rộng rãi lĩnh vực nhƣ Chính phủ điện tử, Thƣơng mại điện tử,… hay hệ thống viễn thơng mạng máy tính Tuy nhiên, việc nghiên cứu, phát triển lƣợc đồ chữ k‎ý số cho mục đích thiết kế - chế tạo sản phẩm, thiết bị an tồn bảo mật thơng tin nƣớc vấn đề cần thiết đƣợc đặt Bài báo đề xuất phát triển dạng lƣợc đồ chữ k‎ý số dựa tốn khó đƣợc biết đến nhƣ sở để xây dựng nên hệ mật RSA danh tiếng [1] Tuy nhiên, việc sử dụng toán thủ tục hình thành tham số khóa, hình thành chữ k‎ý lƣợc đồ chữ ký RSA lƣợc đồ chữ k‎ý đề xuất hoàn tồn khác II (i) Mặc dù tốn RSA(n,t) khó, nhiên khơng phải với yℤn* việc tính RSA(n,t)(y) khó, chẳng t hạn y = x mod n với x khơng đủ lớn cách duyệt dần x = 1, 2, tìm đƣợc nghiệm (1.2) ta tìm đƣợc khóa bí mật x, tham số mật x phải đƣợc lựa chọn cho việc tính RSA(n,t)(y) khó (ii) Với lựa chọn x nêu rõ ràng khơng có ngồi U biết đƣợc giá trị x, việc biết đƣợc x đủ để xác thực U B Bài tốn phân tích số nguyên lớn thừa số nguyên tố Bài tốn phân tích số ngun lớn thừa số ngun tố (Bài tốn phân tích số) đƣợc phát biểu nhƣ sau: - Cho p, q số nguyên tố lớn mạnh; - Từ p q dễ dàng tính đƣợc: n  p  q ; - Từ n khó tìm đƣợc p q Trong hệ mật RSA, tốn phân tích số đƣợc sử dụng làm sở để hình thành cặp khóa cơng khai/bí mật Với việc giữ bí mật tham số p, q  n  , tính đƣợc khóa mật (d) từ khóa cơng khai (e) tìm đƣợc p, q từ việc phân tích modulo n Hiện tại, tốn đƣợc coi tốn khó [4,5] chƣa có giải thuật thời gian đa thức cho tốn nhƣ chƣa có cơng bố cho thấy hệ mật RSA bị phá vỡ ứng dụng thực tế việc giải tốn tham số đƣợc chọn hợp lý‎ CÁC BÀI TỐN CƠ SỞ A Bài tốn khai vành số Zn Cho cặp số nguyên dƣơng {n,t} với n tích hai số nguyên tố p q, t đƣợc chọn khoảng: < t < (p1).(q1) Khi toán khai vành số nguyên Zn hay gọi toán RSA(n,t) đƣợc phát biểu nhƣ sau: Bài toán RSA(n,t): Với số nguyên dương y ℤn*, tìm x thỏa mãn phương trình sau: x t mod n  y (1.2) (1.1) Thuật toán để giải tốn RSA(n,t) đƣợc viết nhƣ thuật tốn tính hàm RSA(n,t)(.) với biến đầu vào y cịn giá trị hàm nghiệm x phƣơng trình (1.1): x  RSA( n ,t ) ( y ) 21 Hội thảo quốc gia lần thứ XVI: Một số vấn đề chọn lọc Công nghệ thông tin truyền thông- Đà Nẵng, 13-14/11/2013 III XÂY DỰNG LƢỢC ĐỒ CHỮ KÝ SỐ DỰA TRÊN HAI BÀI TOÁN KHAI CĂN VÀ PHÂN TÍCH SỐ Chứng minh Thật vậy, ta có: s e1 mod n  (r e2  y e3 mod n) e1 mod n  k e1.e2  x e1.e3 mod n A Lược đồ dạng tổng quát Lƣợc đồ dạng tổng quát bao gồm phƣơng pháp hình thành tham số hệ thống khóa, phƣơng pháp hình thành chữ k‎ý phƣơng pháp kiểm tra tính hợp lệ chữ ký Từ dạng tổng quát này, cách lựa chọn tham số cụ thể cho phép tạo lƣợc đồ chữ k‎ý số khác 1) Phương pháp hình thành tham số khóa Dữ liệu vào: p, q, t, x Kết quả: n, y Các bƣớc thực hiện: Tính modulo n: n  p  q Hình thành khóa cơng khai: y  x t mod n  (k e1 mod n) e2  ( x e1 mod n) e3 mod n  r e2  y e3 mod n Mệnh đề đƣợc chứng minh Tính đắn phƣơng pháp hình thành kiểm tra chữ k‎ý chứng minh nhƣ sau: Đặt: e1  t , e2  f1 (M , r ) , e3  f (M , r ) ta có: u  s t mod n  s e1 mod n và: v  r f1 M ,r   y f2 M ,r  mod n  r e2  y e3 mod n Theo Mệnh đề suy ra: uv B Lược đồ chữ k‎ý LD-01 Lƣợc đồ thứ - k‎ý hiệu LD 1.01, đƣợc hình thành từ lƣợc đồ dạng tổng quát với lựa chọn: f1(M,r) = H(M), f2(M,r) = r 1) Hình thành tham số khóa Thuật toán 1.1: Input: p, q, x Output: n, t, y, H(.) [1] n  p  q Chú thích: (i) p, q: số nguyên tố phân biệt (ii) x: khóa bí mật có giá trị khoảng:  x  n (iii) t: số mũ có giá trị khoảng:  t  ( p  1)  (q  1) 2) Phương pháp hình thành chữ ký Dữ liệu vào: n, t, x, k, M – thông điệp liệu cần k‎ý Kết quả: (r,s) – chữ k‎ý U lên M Các bƣớc thực hiện: Hình thành phần thứ chữ k‎‎ý: r  k t mod n ; Hình thành phần thứ chữ k‎‎ý: s  k f1 M ,r   x f ( M ,r ) mod n [2] select H : 0,1  Z m , m  n ; [3] t   n     [4] y  x t mod n [5] return {n,t,y,H(.)}; 2) Hình thành chữ k‎ý Thuật toán 1.2: Input: n, t, x, k, M Output: (r,s) [1] r  k t mod n [2] e  H M  [3] s  k e  x r mod n [4] return (r,s); 3) Kiểm tra chữ k‎ý Chú thích: (i) k: khóa bí mật ngắn hạn có giá trị khoảng: 1 k  n (ii) f1 (.), f (.) : hàm M r 3) Phương pháp kiểm tra chữ ký Dữ liệu vào: n, t, y, (r,s), M Kết quả: Khẳng định (r,s) chữ k‎ý hợp lệ ((r,s) = true) hay (r,s) giả mạo và/hoặc M khơng cịn tồn vẹn ((r,s) = false) Các bƣớc thực hiện: Tính vế thứ phƣơng trình kiểm tra: Tính vế thứ hai phƣơng trình kiểm tra: v  r f1 M ,r   y f M ,r  mod n Nếu (u = v) (r,s) = true , ngƣợc lại thì: (r,s) = false 4) Tính đắn phương pháp hình thành kiểm tra chữ k‎ý Mệnh đề 1:  e1 , e2 , e3  ( p  1)  (q  1) (1.4) (1.5) (1.6) ‎Thuật toán 1.3: Input: n, t, y, M, (r,s) Output: (r,s) = true / false [1] e  H M  [2] u  s t mod n [3] v  r e  y r mod n [4] if ( u  v ) then {return true ;} else {return false ;} u  s t mod n Cho p, q số nguyên tố phân biệt, (1.3) n  pq , 4) Tính đắn lược đồ LD-01 Tính đắn lƣợc đồ LD 1.01 đƣợc chứng minh ,  x, k  n Nếu: y  x e mod n , r  k e1 mod n , s  k e2  x e3 mod n thì: s e1  r e2  y e3 mod n nhƣ sau: 22 Hội thảo quốc gia lần thứ XVI: Một số vấn đề chọn lọc Công nghệ thông tin truyền thông- Đà Nẵng, 13-14/11/2013 Đặt: t  e1 , e  e2 , r  e3 Từ (1.3), (1.4), (1.6) ta có: v  H r || M  Từ (1.16) (1.9) suy ra: (1.16) ve u  st mod n  s e1 mod n Đây điều cần chứng minh và: D Mức độ an toàn lược đồ đề xuất Mức độ an toàn lƣợc đồ chữ k‎ý số đƣợc đánh giá qua khả sau: - Chống cơng làm lộ khóa mật - Chống cơng giả mạo chữ ký Ở lƣợc đồ đề xuất, thực số dạng cơng làm lộ khóa mật (x) giả mạo chữ k‎ý, từ khả thành công dạng công đánh giá mức độ an tồn thiết lập số điều kiện an toàn cho lƣợc đồ đề xuất Phân tích, đánh giá mức độ an toàn sau đƣợc thực cho lƣợc đồ chữ k‎ý LD-02, việc đánh giá cho lƣợc đồ LD-01 thực theo cách tƣơng tự 1) Tấn cơng khóa mật phương pháp “vét cạn” v  r e  y r mod n  r e2  y e3 mod n Theo Mệnh đề 1, suy ra: u  v Đây điều cần chứng minh C Lược đồ chữ ký LD–02 Lƣợc đồ thứ hai - k‎ý hiệu LD-02, đƣợc hình thành từ lƣợc đồ dạng tổng quát với lựa chọn: f1(M,r) = 1, f2(M,r) = H(r||M)) 1) Hình thành tham số khóa Thuật tốn 1.4: Input: p, q, x Output: n, t, y, H(.) [1] n  p  q [2] select H : 0,1  Z m , m  n ; Thuật toán 1.7: Input: n, t, y Output: x – khóa bí mật đối tƣợng k‎ý [1] for i = to n [1.1] z  i t mod n ; [1.2] if ( z  y ) then { x  i ; break;} [2] return (x); [3] t   m     2 [4] y  x t mod n (1.7) [5] return {n,t,y,H(.)}; 2) Hình thành chữ k‎ý Thuật toán 1.5: Input: n, t, x, k, M Output: (e,s) [1] r  k t mod n (1.8) [2] e  H r || M  (1.9) [3] s  k  x e mod n (1.10) [4] return (e,s); 3) Kiểm tra chữ k‎ý ‎Thuật toán 1.6: Input: n, t, y, M, (e,s) Output: (e,s) = true / false [1] u  s t  y e mod n (1.11) [2] v  H u || M  (1.12) [3] if ( v  e ) then {return true ;} else {return false ;} Nhận xét: Nếu giá trị x khơng đủ lớn việc cơng làm lộ khóa mật Thuật tốn 1.7 hồn tồn thực đƣợc Điều kiện 1.1: Khóa bí mật x phải chọn để việc tính: x = RSA(n,t)(y) khó 2) Tấn cơng khóa mật giá trị k bị lộ Thuật toán 1.8: Input: n, t, (e,s), k, gcd(k , n)  , gcd(e,t )  Output: x – khóa bí mật đối tƣợng k‎ý [1] w  s  k 1 mod n ; [2] Euclid (e,t; a,b): a.e  b.(t )  [3] z  wa  y b mod n ; [4] return (z); Chú thích: Euclid (e,t; a,b) giải thuật Euclid mở rộng để giải phƣơng trình: a.e  b.(t )  với e, t cho trƣớc a, b nghiệm Nhận xét: Khi giá trị k bị lộ lựa chọn giá trị không hợp l‎ý dẫn đến bị lộ, việc cơng khóa mật Thuật tốn 1.8 thực đƣợc Thật vậy, với giả thiết: gcd(ki , n)  gcd(e,t )  , đó: 4) Tính đắn lược đồ LD-02 Tính đắn lƣợc đồ LD 1.01 đƣợc chứng minh nhƣ sau: Đặt: t  e1 ,  e2 , e  e3 Từ (1.7), (1.8), (1.9), (1.10) Mệnh đề 1.1 ta có: s t mod n  r  y  e mod n Từ (1.13) suy ra: r  s t  y e mod n Từ (1.11) (1.14) ta có: ur Thay (1.15) vào (1.12), ta đƣợc: (1.13) w  s  k 1 mod n  k  x e  k 1 mod n  x e mod n (1.14) Giải: a.e  b.(t )  thuật toán Euclid mở rộng đƣợc a b, ta có: (1.15) 23 Hội thảo quốc gia lần thứ XVI: Một số vấn đề chọn lọc Công nghệ thông tin truyền thông- Đà Nẵng, 13-14/11/2013 z  w a  y b mod n  x a.e  x b.( t ) mod n (e*,s*) Thuật tốn 1.9 hồn tồn thực đƣợc Thật vậy: a e b.(  t ) x mod n  x Nhƣ vậy, giá trị khóa k bị lộ giả thiết đặt ra: gcd(k , n)  gcd(e,t )  đƣợc thỏa mãn việc tính khóa mật (x) hồn tồn thực đƣợc Điều kiện 1.2: Giá trị k cần chọn để việc tính: k = RSA(n,t)(r) khó 3) Tấn cơng khóa mật giá trị k bị sử dụng lặp lại Thuật toán 1.8: Input: (e1,s1), (e2,s2), k1  k2 , gcd((e1  e2 ),t )  , gcd(s2 , n)  Output: x – khóa bí mật ngƣời k‎ý [1] w  s1  s2 1 mod n ; [2] Euclid (e1,e2,t; a,b): a.e1  e2   b.(t )  ; [3] z  wa  y b mod n ; [4] return (z); Nhận xét: Khi giá trị k bị sử dụng lại việc cơng làm lộ khóa mật Thuật tốn 1.8 thực đƣợc Thật vậy, giả sử: r1  k1 t mod n , e1  H r1 || M1  , s1  k1  x e1 mod n chữ k‎‎ý tƣơng ứng với thông điệp M r2  k t mod n , e2  H r2 || M  , s2  k  x e mod n chữ k‎‎ý tƣơng ứng với thông điệp M Với giả thiết: k1  k  k , gcd((e1  e2 ),t )  gcd(s2 , n)  , đó:   e2   y e mod n  5) Tấn công giả mạo chữ k‎ý biết {p, q} Thuật toán 1.10: Input: n, p, q, t, M, k*, y – khóa cơng khai U Output: (e*, s*) – chữ k‎ý U U* tạo [1] r*  k *t mod n ; [2] e*  H r* || M mod n ; [3] s*  k *  y e*.t mod( p1).(q1)  mod n (1.18) [4] return (e*, s*) ; Nhận xét: Nếu từ n biết {p,q} việc tính s* theo (1.18) việc tạo cặp chữ k‎ý giả mạo (e*,s*) Thuật tốn 1.10 thực Trong trƣờng hợp  1 này, kẻ giả mạo (U*) tính: e t mod( p  1).(q  1) thay cho việc tính  e *  kết (e*, s*) đƣợc công nhận 1  k 1 mod n  t   x e1e2  mod n Giải: a.(e1  e2 )  b.(t )  đƣợc a b, ta có: chữ k‎‎ý hợp lệ đối tƣợng U Điều kiện 1.5: Cần chọn {p,q} để tốn phân tích số nguyên lớn thừa số nguyên tố khó giải Trong ứng dụng thực tế, tham số {p,q} chọn theo Chuẩn X9.31 hay FIPS 186-3 Hoa Kỳ cho hệ mật RSA nhƣ sau: Chuẩn X9.31 Theo X9.31, tiêu chuẩn tham số {p,q} hệ mật RSA bao gồm: - Độ dài modulo n (nlen) là: 1024+256s (s ≥ 0) z  w   y  mod n a  e   .t  t  Điều kiện 1.4: Cần chọn t   m   2 w  s1  s21 mod n e   y mod n  k  t  r   y e  y e mod n  r  Do đó: v  H (u  || M )  H (r  || M )  e Nhƣ vậy, chữ k‎ý giả mạo (e*, s*) U* tạo nhƣng hoàn toàn thỏa mãn điều kiện thuật toán kiểm tra chữ k‎ý (Thuật toán 1.16) đƣợc cơng nhận chữ k‎ý hợp lệ đối tƣợng U (chủ thể khóa cơng khai y)  x   k  x     y u  s e  t b  x a.e1 e2 b.( t ) mod n  x Nhƣ vậy, việc cơng khóa mật (x) thành cơng khóa k bị sử dụng lặp lại giả thiết đặt đƣợc thỏa mãn Điều kiện 1.3: Giá trị k không phép lặp lại lần k‎ý khác 4) Tấn công giả mạo chữ k‎ý lựa chọn tham số t khơng hợp l‎ý Thuật tốn 1.9: Input: n, t, M, k*, y – khóa cơng khai U Output: (e*, s*) – chữ k‎ý U đối tƣợng giả mạo U* tạo [1] r*  k *t mod n ; [2] e*  H r* || M mod n ; - 2 511+128s ≤ p, q ≤ 412+128s 511+128s (s ≥ 0) |p – q| > (s ≥ 0) Các ƣớc nguyên tố p±1 q±1 (các số nguyên tố bổ trợ), k‎ý hiệu là: p1, p2 và: q1, q2 phải thỏa mãn thông số kỹ thuật đƣợc cho Bảng 2.1 dƣới đây: Bảng 2.1: Tiêu chuẩn an toàn số nguyên tố bổ trợ nlen Độ dài tối thiểu Độ dài tối p1, p2 q1, đa p1, p2 q2 q1, q2 1024 + 256.s > 100 bit ≤ 120 bit -  e    [3] s*  k *  y  t  mod n ; (1.17) [4] return (e*, s*) ; Nhận xét: Nếu  e *  cho kết giá trị nguyên  t  việc tính s* theo (1.17) việc tạo chữ k‎ý giả mạo 24 Hội thảo quốc gia lần thứ XVI: Một số vấn đề chọn lọc Công nghệ thông tin truyền thông- Đà Nẵng, 13-14/11/2013 trƣớc dạng cơng làm lộ khóa mật công giả mạo chữ k‎ý tuân thủ điều kiện an toàn đƣợc Chuẩn FIPS 186-3 Theo FIPS 186-3, tiêu chuẩn tham số {p,q} hệ mật RSA bao gồm: - 2 511+128s ≤ p, q ≤ 511+128s IV (s ≥ 0) Bài báo đề xuất dạng lƣợc đồ chữ k‎‎ý số xây dựng dựa tốn phân tích số, khai vành Zn Từ dạng lƣợc đồ đề xuất xây dựng đƣợc số lƣợc đồ chữ k‎ý số cụ thể cho mục đích ứng dụng Mức độ an tồn lƣợc đồ đề xuất đƣợc đánh giá qua số dạng công đƣợc biết đến thực tế, cho thấy lƣợc đồ sử dụng cho ứng dụng thực tế tham số hệ thống đƣợc lựa chọn hợp l‎ý Tuy nhiên, để sử dụng đƣợc thực tế, lƣợc đồ cần đƣợc cải tiến đánh giá kỹ mức độ an toàn nhƣ khía cạnh hiệu thực  nlen    100   |p – q| > Các ƣớc nguyên tố p±1 q±1 (các số nguyên tố bổ trợ), k‎ý hiệu là: p1, p2 và: q1, q2 phải thỏa mãn thông số kỹ thuật đƣợc cho Bảng 2.2 dƣới đây: Bảng 2.2: Tiêu chuẩn an toàn số nguyên tố bổ trợ Độ dài Độ dài tối Độ dài tối đa của thiểu len(p1) + len(p2) modulo p1, p2, q1, len(q1) + len(q2) n q2 Các số Các số (nlen) nguyên tố nguyên tố xác xuất chứng minh 1024 bit > 100 bit < 496 bit < 239 bit 2048 bit > 140 bit < 1007 bit < 494 bit 3072 bit > 170 bit < 1518 bit < 750 bit - KẾT LUẬN TÀI LIỆU THAM KHẢO [1] [2] [3] Những phân tích cho thấy, mức độ an toàn lƣợc đồ đề xuất phụ thuộc vào mức độ khó tốn: Bài tốn phân tích số ngun lớn thừa số nguyên tố Bài toán khai vành số nguyên Zn=p.q, p q số nguyên tố phân biệt Lƣợc đồ an toàn [4] [5] 25 R.L Rivest, A Shamir, and L Adleman, “A method for Obtaining digital signatures and public key cryptosystems”, Commun of the ACM, 21:120-126,1978 Burt Kaliski, “RSA Digital Signature Standards“, RSA Laboratories 23rd National Information Systems Security Conference, October 16-19,2000 National Institute of Standards and Technology, NIST FIPS PUB 186-3 Digital Signature Standard, U.S Department of Commerce,1994 A Menezes, P van Oorschot, and S Vanstone, “Handbook of Applied Cryptography”, CRC Press, 1996 D.R Stinson, Cryptography: Theory and Practice, CRC Press 1995 ... mod n A Lược đồ dạng tổng quát Lƣợc đồ dạng tổng quát bao gồm phƣơng pháp hình thành tham số hệ thống khóa, phƣơng pháp hình thành chữ k‎ý phƣơng pháp kiểm tra tính hợp lệ chữ ký Từ dạng tổng... Mức độ an toàn lược đồ đề xuất Mức độ an toàn lƣợc đồ chữ k‎ý số đƣợc đánh giá qua khả sau: - Chống cơng làm lộ khóa mật - Chống cơng giả mạo chữ ký Ở lƣợc đồ đề xuất, thực số dạng cơng làm lộ... đƣợc số lƣợc đồ chữ k‎ý số cụ thể cho mục đích ứng dụng Mức độ an tồn lƣợc đồ đề xuất đƣợc đánh giá qua số dạng công đƣợc biết đến thực tế, cho thấy lƣợc đồ sử dụng cho ứng dụng thực tế tham số

Ngày đăng: 18/05/2021, 11:18

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN