CHƯƠNG 3 LƯỢC ĐỒ CHỮ KÝ SỐ RSA
3.4 Lƣợc đồ chữ ký số dùng mật mã khoá công khai
3.4.3 Phân loại lƣợc đồ chữ ký số
Dựa vào các kỹ thuật sinh chữ ký số, có thể chia lược đồ chữ ký số làm hai lớp tổng quát [6]:
Các lược đồ chữ ký kèm theo bản rõ
Các lược đồ chữ ký tự khôi phục thông điệp gốc a) Lƣợc đồ chữ ký kèm theo bản rõ
True , nếu y = sigk’(x) Verk’’(x ;y) =
False, nếu y sigk’(x)
Loại lược đồ này dùng phổ biến trong thực tế. Chúng dựa vào các hàm băm mật mã hơn là các hàm thừa tuỳ biến và ít bị các tấn công giả mạo hơn.
Định nghĩa: Lược đồ chữ ký số mà yêu cầu phải có thông điệp gốc là đầu vào cho thuật toán chứng thực chữ ký được gọi là lược đồ chữ ký số kèm theo bản rõ.
Ví dụ như các lược đồ chữ ký DSA, ELGAMAL, SCHNORR.
Thuật toán sinh khoá:
Mỗi cá thể A chọn một khoá k = (k’; k”) K, Sigk’ là thuật toán ký với khoá k (mỗi Sigk” là một ánh xạ 1-1 từ Mh tới Ms)
Thuật toán Verk” tương ứng là một ánh xạ từ MhxMs đến tập hợp {True, False} sao cho:
Với m Mh, s Ms; ở đây m = h(P) với P M. Verk” được gọi là thuật toán kiểm thử để chứng thực chữ ký, h là hàm một chiều từ M đến Mh (Mh
là tập hợp các trị băm).
Với khoá k = (k’; k”), trong đó khoá công khai của A là k”; khoá riêng của A là k’
Thuật toán sinh chữ ký:
Cá thể A thực hiện:
True , nếu y = sigk’(x) Verk’’(x ;y) =
False, nếu y sigk’(x) P
m s
h Sigk’
M
Mh
Ms
True False Mh Ms Verk’’
a)Quy trình ký
b)Quy trình chứng thực
Hình 3.1: Tổng quan về lược đồ chữ ký có kèm bản rõ
i) Chọn một khoá k = (k’; k”) K ii) Tính m = h(P) và s = Sigk’(m)
iii) Chữ ký của A cho thông điệp P là s, P và s được gửi đến B.
Thuật toán chứng thực chữ ký:
Xác thực đúng khoá công khai của A là k”:
i) Tính m = h(P) và u = Verk”(m; s)
ii) Chấp nhận chữ ký của A nếu và chỉ nếu u = True
Các thuộc tính sau là yêu cầu cần thiết cho các thuật toán ký và chứng thực:
Với mỗi khoá k = (k’;k”) K, Sigk’ được tính toán hiệu quả
Verk” cần tính toán một cách hiệu quả
Không một cá thể nào khác ngoại trừ A có thể tìm được bản rõ P M và một s Ms sao cho Verk”(m; s) = True, ở đây m = h(P)
b) Lƣợc đồ chữ ký tự khôi phục thông điệp gốc
Có đặc điểm là thông điệp được ký có thể được phục hồi từ ngay chữ ký đó và thường được dùng để ký các thông điệp nhỏ.
Định nghĩa: Lược đồ chữ ký số không đòi hỏi phải có thông điệp gốc làm đầu vào để xác minh chữ ký được gọi là lược đồ chữ ký tự khôi phục thông điệp gốc, trong trường hợp này thông điệp gốc sẽ được phục hồi chính từ chữ ký của nó.
Ví dụ các lược đồ chữ ký tự khôi phục thông điệp gốc là các lược đồ chữ ký khoá công khai RABIN, RSA..
Thuật toán sinh khoá:
Mỗi cá thể tạo một khoá riêng dùng để ký thông điệp và một khoá công khai tương ứng để các cá thể khác dùng trong xác minh chữ ký.
Mỗi cá thể A chọn một khoá k = (k’; k”) K, Sigk’ là thuật toán ký với khoá k (mỗi Sigk’ làmột ánh xạ 1-1 từ Mr tới Ms).
R là một hàm sao cho R(M) = MR và có nghịch đảo là R-1
Thuật toán Ver k” tương ứng là một ánh xạ từ Ms đến MR sao cho:
Verk”Sigk’ là ánh xạ đồng nhất trên MR, k K. Verk” gọi là thuật toán chứng thực được xây dựng sao cho có thể tính toán khi không biết gì đến khoá riêng của người ký thông điệp.
Cặp khoá k = (k’; k”), trong đó khoá công khai của A là k”; khoá riêng của A là k’.
Thuật toán sinh chữ ký:
Cá thể A ký một thông điệp P M với chữ ký s. Một cá thể B bất kỳ có thể các minh chữ ký và phục hồi thông điệp P từ chữ ký đó. Để sinh chữ ký, cá thể A thực hiện:
i) Chọn một khoá k = (k’; k”) K
ii) Tính m = R(P) và s = Sigk’(m) (R là nghịch đảo của nó là R-1 là các hàm được công khai)
iii) Chữ ký của A cho thông điệp P là s, và s được gửi đến B Thuật toán chứng thực chữ ký
Để xác thực chữ ký, B làm như sau:
i) Xác thực đúng khoá công khai của A là k”
ii) Tính m = Verk”(s)
iii) Xác minh rằng m MR (nếu m MR thì từ chối chữ ký) iv) Phục hồi thông điệp P từ m bằng cách tính R-1(m)
Hình 3.2 là biểu đồ tổng quan của lược đồ chữ ký số tự khôi phục thông điệp gốc.
Các thuộc tính sau là yêu cầu cần thiết cho các thuật toán ký và chứng thực:
Với mỗi khoá k = (k’;k”) K, Sigk’ được tính hiệu quả.
Verk” cũng có hiệu lực tính toán.
Không một cá thể nào khác ngoại trừ A có thể tìm được một s MS sao cho Verk” (s) MR
Chú ý:
Hầu hết các lược đồ chữ ký số tự khôi phục thông điệp gốc được áp dụng cho các thông điệp có chiều dài cố định (dùng các hàm băm trước khi ký), trong khi các chữ ký số kèm theo bản rõ được áp dụng với các thông điệp có chiều dài tuỳ ý.
P
m s
Sigk’
M
Mh
Ms
R
Hình 3.2: Tổng quan về lược đồ chữ ký tự khôi phục thông điệp gốc
Một lược đồ chữ ký số tự khôi phục thông điệp gốc bất kỳ luôn có thể chuyển thành một lược đồ chữ ký số kèm theo bản rõ bằng cách dùng một hàm băm đơn giản sau đó ký lên trị băm. Thông điệp lúc này yêu cầu phải có để xác minh chữ ký, một sơ đồ thích hợp cho từ hình 3.2 và được minh hoạ trong hình 3.3