Chữ ký chống chối bỏ có thể chuyển đổi

Một phần của tài liệu Tìm hiểu chữ ký số và ứng dụng của nó (Trang 73)

4.4.2.1 Giới thiệu

Việc kết hợp giữa ngƣời ký và ngƣời thẩm định cần đƣợc thực hiện trong suốt quá trình thẩm định. Nếu ngƣời ký không hợp tác hoặc không có mặt thì ngƣời nhận không thể nào sử dụng chữ ký mà anh ta nhận đƣợc. Chaum đƣa ra lƣợc đồ chữ ký mà ngƣời chứng thực đƣợc chỉ định (Designated Confirmer Scheme) để khắc phục điểm yếu này. Chữ ký chống chối bỏ có thể chuyển đổi (Convertible Undeniable Signatures) cũng là dạng chữ ký để giải quyết việc vắng mặt của ngƣời ký trong quá trình thẩm định.

Quyền thẩm định chữ ký chống chối bỏ có thể đƣợc giao cho một đại diện đƣợc chỉ định. Đại diện này có quyền thẩm định một chữ ký khi ngƣời ký vắng mặt nhƣng không thể tạo ra một chữ ký hợp lệ thay ngƣời ký. Ý tƣởng này đƣợc Boyar, Chaum và Damgard đƣa ra gọi là Chữ ký chống chối bỏ có thể chuyển đổi (Convertible Undeniable Signatures) .

4.4.2.2 Chữ ký chống chối bỏ có thể chuyển đổi [13]

Trong quá trình ký yêu cầu hai khoá bí mật (Ks1Ks2) và một khoá công khai là Kp, khoá bí mật chính Ks1 sẽ đƣợc giữ bí mật hoàn toàn và khoá bí mật thứ hai Ks2 có thể đƣợc đƣa ra khi có yêu cầu. Sau khi khoá Ks2 đƣợc công bố thì chữ ký chống chối bỏ trên tài liệu đƣợc chuyển thành chữ ký tự xác thực thông thƣờng.

Có hai loại chữ ký chống chối bỏ có thể chuyển đổi: Một là chữ ký đƣợc chuyển đổi toàn bộ; hai là chữ ký đƣợc chuyển đổi theo sự lựa chọn. Trƣờng hợp nếu ngƣời ký sử dụng cùng một khoá cho các thông điệp khác nhau thì khi khoá Ks2

đƣợc công bố thì tất cả chữ ký chống chối bỏ đƣợc chuyển thành chữ ký tự xác thực thông thƣờng. Giả sử nếu ngƣời ký sử dụng mỗi khoá cho các thông điệp khác nhau, ngƣời ký đƣợc yêu cầu nhớ khoá bí mật thứ hai Ks2 đƣợc sử dụng để tạo chữ ký m. Sau đó, khi Ks2 đƣợc công bố thì chỉ chữ ký chống chối bỏ trên thông điệp đƣợc chuyển thành chữ ký tự xác thực thông thƣờng còn các chữ ký chống chối bỏ khác thì không bị ảnh hƣởng.

a. Bước thiết lập: Chọn hai số nguyên tố lớn q, q sao cho q|(p-1) và một phần tử sinh nhóm α (mod p) của các số nguyên có bậc q.

b. Sinh khoá: Ngƣời ký thực hiện các tính toán sau:

1. Lấy ngẫu nhiên 2 số x, z Є Zq* và giữ bí mật những số này. 2. Tính y = αx

(mod p)

3. Tính u = αz

(mod p)

4. Khoá công khai Kp(y, u) và các khoá bí mật là (x, z) .

Chú ý: Lấy x = Ks1z = Ks2

c. Sinh chữ ký: Để ký lên thông điệp m, ngƣời ký thực hiện nhƣ sau: 1. Chọn hai số ngẫu nhiên t, k Є Zq*

2. Tính T = αt

(mod p)

3. Tính r = αk

(mod p)

4. Tính s = k-1 (m - xr)(mod p)

5. Chữ ký trên thông điệp m là bộ ba (T, r, s)

d. Giao thức xác thực: Lấy w = TTmv = yr rs có thể đƣợc tính từ những thông tin công khai. Chữ ký là hợp lệ nếu wz = v. Ngƣời ký chứng minh tính tƣơng đƣơng thông qua việc chứng minh logwv = logαu sử dụng giao thức zero-knowledge.

e. Giao thức chối bỏ: Chữ ký là không hợp lệ nếu tính tƣơng đƣơng wz = v không đƣợc duy trì. Ngƣời ký cần chứng minh tính không tƣơng đƣơng thông qua logarit rời rạc logwv ≠ logαu sử dụng giao thức zero-knowledge.

f. Chuyển đổi có lựa chọn: Thông qua việc công bố giá trị bí mật t, chỉ chữ ký mà đƣợc ký bởi t có thể chuyển thành chữ ký thƣờng. Ngƣời ký có thể kiểm tra bằng việc kiểm tra:

utTm = yr ss (mod p)T ≡ αt

(mod p) .

g. Chuyển đổi tổng thể: Thông qua việc công bố giá trị bí mật z, tất cả các chữ ký đƣợc ký bởi ngƣời ký với z có thể đƣợc thẩm định thông qua việc kiểm tra wz = v. h. Ví dụ: Giả sử khi còn sống, Alice ký toàn bộ tài liệu của mình bằng chữ ký chống chối bỏ. Thông tin bí mật đƣợc sử dụng để chuyển toàn bộ chữ ký của Alice sang chữ ký thƣờng do Bob, luật sƣ riêng của cô quản lý. Nếu khi cô ta chết, Bob công bố thông tin bí mật thì toàn bộ chữ ký của Alice đƣợc chuyển thành chữ ký thƣờng. Nếu Alice sử dụng các tập khoá khác nhau cho mỗi thông điệp mà cô ký thì sau khi cô qua đời, Bod chỉ có thể công bố một tập nhỏ các khoá của Alice.

Một phần của tài liệu Tìm hiểu chữ ký số và ứng dụng của nó (Trang 73)