Chuẩn chữ ký số DSS

Một phần của tài liệu Xây dựng hệ thống bảo mật internet banking ngân hàng công thương ở Việt Nam (Trang 30)

Chuẩn chữ ký số (Digital Signature Standard-DSS) đƣợc đề xuất năm 1991 và đƣợc chấp nhận vào năm 1994 để sử dụng trong một số lĩnh vực giao dịch ở Mỹ [3]. DSS dựa vào lƣợc đồ chữ ký ElGamal với một vài sửa đổi.

Để bảo đảm an toàn, số nguyờn tố p cần phải đủ lớn, tối thiểu từ 512 bit trở lờn. Tuy nhiờn, chữ ký theo lƣợc đồ ElGamal cú độ dài gấp đụi p tớnh theo số bit,

mà trong một số ứng dụng cú dựng cỏc thẻ thụng minh (smart card) lại mong muốn cú chữ ký ngắn nờn giải phỏp sửa đổi là: lấy độ dài p là một bội số của 64 bit (từ

512 đến 1024 bit), trong chữ ký (,  ), cỏc số ,  cú độ dài biểu diến ngắn, chẳng hạn là 160 bit, khi đú độ dài của chữ ký là 320 bit. Điều này đƣợc thực hiện bằng cỏch dựng một nhúm con cyclic Zq

* của Zp

* thay cho chớnh bản thõn Zp

* , do đú mọi tớnh toỏn vẫn đƣợc thực hiện trong Zp* nhƣng cỏc dữ liệu và thành phần dữ liệu lại thuộc Zq*

.

Sơ đồ DSS đƣợc mụ tả nhƣ sau:

Giả sử p là số nguyờn tố 512 bit sao cho bài toỏn logarit rời rạc trong Zp là khú, q là một ƣớc nguyờn tố của p-1, q cú độ dài 160 bit. Giả sử   Zp*

là một căn bậc q của 1 mod p. Đặt P = Zq*, A = Zq*  Zq* và định nghĩa:

K = {(p, q, , a, ) : a  Zq

*

,   a

mod p}

Với K = (p, q, , a, ), khúa bớ mật là K' =a, khúa cụng khai là K''= (p, q, ,

). Cho x  Zp* , ta chọn một số ngẫu nhiờn bớ mật k, 0 ≤ k ≤q-1, ta định nghĩa chữ

ký số sigK'(x, k) = (,) , trong đú  = (k

mod p) mod q,  = (x + a) k-1 mod q. Kiểm thử lại chữ ký số verK''(x, , ) là đỳng khi và chỉ khi: (e1e2 mod p)

mod q = , trong đú e1 = x-1

mod q, e2 = -1

mod q. Chỳ ý rằng phải cú   0 mod q để cú đƣợc -1

mod q trong kiểm thử.

Một phần của tài liệu Xây dựng hệ thống bảo mật internet banking ngân hàng công thương ở Việt Nam (Trang 30)

Tải bản đầy đủ (PDF)

(93 trang)