Chữ ký chống chối bỏ với người chứng minh phân tán

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 77 - 79)

4.4.3.1 Giới thiệu

Với các lược đồ chữ ký chống chối bỏ có thể chuyển đổi thông thường, người ký phải uỷ quyền cho người đại diện để thẩm định chữ ký khi anh ta vắng mặt. Tuy nhiên, điều này yêu cầu người ký phải hoàn toàn tin vào người được uỷ quyền. Nếu không tin vào một người, anh ta có thể uỷ quyền cho n người đại diện khác nhau sao cho khi thẩm định cần ít nhất k trong số n người phối hợp. Quá trình

ký giống như ký chữ ký chống chối bỏ thông thường. Người ký phân phối khoá Ks2

cho n đại diện mà anh ta chọn. Trong quá trình thẩm định, người thẩm định cần tương tác với k trong số n người đại diện.

Ý tưởng về việc phân phối quyền trong quá trình thẩm định được đề xuất bởi Ben-Or, Goldwasser và Wigderson. Sau đó, Pedersen đề xuất một phương pháp thực thi hiệu quả hơn. Ông sử dụng lược đồ chia sẻ bí mật của Shamir để phân phối khoá bí mật thứ hai cho n đại diện. Đây gọi là giao thức phân phối quyền (distributed prover protocol ) bởi vì ít nhất k trong số n đại diện sẽ cần cho quá trình thẩm định. Thủ tục thẩm định cho phép k người thẩm định chữ ký mà không cần tìm thông tin bí mật. Việc phối hợp giữa k người chỉ cần thiết trong giai đoạn thiết lập khi khoá bí mật được phân phối.

4.4.3.2 Ký với người chứng minh phân tán [24]

a. Sinh khoá: Người ký thực hiện:

1. Chọn 2 số nguyên tố lớn p, q sao cho q chia hết (p-1) 2. Chọn một phần tử sinh α cho nhóm con Gq

3. Chọn các thành phần bí mật x, z Є Zq*

4. Tính y = αx và u = αz

5. Khoá công khai là (p, q, α, y, u), khoá bí mật thứ nhất (Ks1) là x, khoá bí mật thứ hai (Ks2) là z.

b. 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)

c. Người ký phân phối bí mật: Người ký phân phối bí mật của mình với mỗi đại

diện i với i = |1…n, như sau:

1. Chia sẻ zi = f(xi) cho mỗi đại diện sử dụng: f(x) = f0 + f1 x + …+ fk-1 xk-1, với

f0 = z, fi (với i = 1…k-1) là được chọn ngẫu nhiên và xi là mã định danh của người đại diện.

2. Tính hi = α zi và công khai hi. Đây là thông tin công khai, tương ứng với bí mật chia sẻ zi.

d.Thẩm định chia sẻ bên phía người đại diện: Mỗi người đại diện i, khi nhận được

được thông tin chia sẻ sẽ thực hiện các thao tác sau: 1. Tính hi = Πj=0k-1 (α f j) xij cho i = 1, …, n 2. Kiểm tra xem hi = α zi

3.Nếu không bằng thì công khai zi và dừng. Nếu bằng thì chấp nhận chia sẻ. Mặc dù tất cả hi là thông tin công khai, nếu người đại diện không thể lấy được thông tin công khai thì hi có thể được tính như bước 1.

e. Thẩm định được phân tán: Cho thông điệp m, chữ ký của nó là (T, r, s). Cả người

ký và người thẩm định có thể tính w = TTm và v = yr rs . Người thẩm định phải tương tác với mỗi người trong k đại diện theo giao thức tương tác. Chú ý k đại diện có thể là bất kỳ tập con của n.

1. Người thẩm định chọn a, b Є Z, tính ch = wa αb và gửi ch cho người chứng minh i.

2. Người chứng minh i chọn một số ngẫu nhiên ri Є Z và tính hi1 = chri

hi2 = hi1 zi. Người chứng minh gửi hi1 và hi2 cho người thẩm định. (adsbygoogle = window.adsbygoogle || []).push({});

3. Người thẩm định gửi a, b cho người chứng minh. 4. Người chứng minh i gửi ri cho người thẩm định.

5. Người thẩm định tập hợp k số trong ri và tính hi1 = (wa αb)r i và hi2ai ri-1 Nếu Πk

i=1 hi2ai ri-1 = va Tb và hi1 = (wa αb)r i với i = 1, …, n thì người thẩm định chấp nhận chữ ký.

Ở đây, ai là số định danh đặc biệt của đại diện thứ i và được tính như sau:

f. Giao thức chối bỏ phân tán: Giao thức chối bỏ tương tự với quá trình thẩm định,

trừ một việc là người chứng minh sẽ cần chứng minh bất đẳng thức Πk

i=1 hi2ai ri-1 ≠va Tb cho người thẩm định. Nếu bất đẳng thức này đúng thì người thẩm định từ chối chữ ký.

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 77 - 79)