Chữ ký chống chối từ và một số lược đồ phát triển

14:34 | 03/04/2007 | GP MẬT MÃ
Chữ ký số là một lĩnh vực rất quan trọng của mật mã hiện đại nói chung và của mật mã khóa công khai nói riêng. Chữ ký số được nghĩ đến ngay từ khi người ta phát minh ra mật mã khoá công khai, người ta muốn dùng nó để khẳng định tính toàn vẹn của một thông báo và nguồn gốc của thông báo đó.


Lược đồ Chữ ký số là phương pháp ký thông báo được l­ưu dư­ới dạng số. Chữ ký số của một người trên một thông báo là những số được tạo ra theo lược đồ nói trên. Chữ ký số và thông báo đư­ợc ký có thể truyền trên mạng máy tính nếu chúng được lưu dưới dạng điện tử.
Một l­ược đồ Chữ ký số gồm 2 thành phần: một thuật toán ký và một thuật toán kiểm tra. Người ta có thể ký thông báo x nhờ thuật toán ký (bí mật) Sig của mình. Chữ ký thu đ­ược y = sig(x) sau đó có thể được kiểm tra nhờ thuật toán kiểm tra công khai Ver. Khi cho cặp (x,y), thuật toán kiểm tra sẽ trả lời “đúng” hoặc “sai” phụ thuộc vào việc chữ ký có đích thực không.
Tuy đều là chữ ký nhưng có sự khác nhau cơ bản giữa chữ ký truyền thống và Chữ ký số.
Chữ ký viết tay truyền thống (gắn với tài liệu) đ­ược dùng để chỉ ra cá nhân tương ứng với nó. Nói chung, nó tỏ ra yếu trong việc khẳng định tính toàn vẹn của một thông báo. Đối với Chữ ký số, việc sử dụng l­ược đồ an toàn chẳng những xác thực được cá nhân đã ký lên thông báo mà còn khẳng định được tính toàn vẹn của thông báo đó.
Về việc ký tài liệu: với chữ ký truyền thống, chữ ký là bộ phận vật lý của tài liệu đư­ợc ký. Trong khi đó, Chữ ký số không gắn một cách vật lý với thông báo được ký, nó gắn với thông báo một cách lô gíc.
Về việc kiểm tra: chữ ký truyền thống đ­ược kiểm tra bởi những “chuyên gia” bằng cách so sánh nó với những chữ ký đã được xác thực. Tuy nhiên, ph­ương pháp này không an toàn vì nó dễ bị giả mạo bởi chữ ký của ng­ười khác. Ngược lại, Chữ ký số có thể đ­ược kiểm tra bởi “ngư­ời bất kỳ” bằng cách dùng thuật toán kiểm tra đã biết công khai.
Điều khác nhau cơ bản nữa giữa chữ ký tay truyền thống và Chữ ký số là trong thông báo điện tử được ký số “bản sao” của thông báo đồng nhất với bản gốc trong khi bản sao của tài liệu giấy thường là khác với bản gốc. Đặc điểm này dẫn đến việc phải có giải pháp để ngăn chặn một thông báo bị sử dụng lại khi dùng Chữ ký số. Một hướng giải quyết là phải làm sao để thông báo tự nó phải chứa thông tin ngăn chặn người nhận sử dụng lại nhiều lần.
Cho đến nay, có ba lược đồ Chữ ký số đạt được độ an toàn cao, được ứng dụng rất rộng rãi và có hiệu quả. Đó là lược đồ chữ ký RSA, ElGamal và lược đồ chữ ký dựa trên đường cong elliptic.
Tuy nhiên trong thực tiễn, có những hoàn cảnh mà ở đó người ta không thể dùng Chữ ký số này được. Thay vào đó, người ta dùng Chữ ký chống chối từ.
Chữ ký chống chối từ được Chaum và Van Antwerpen đề xuất năm 1989. Nếu như đối với Chữ ký số thông thường, thuật toán kiểm tra được công khai hóa và ai cũng có thể kiểm tra tính đúng đắn của chữ ký tương ứng thì đối với chữ ký chống chối từ, không ai có thể làm việc này nếu không có sự cộng tác của người ký.
Có thể nói Chữ ký chống chối từ có một vị trí đặc biệt, nó ở một nơi nào đó giữa Chữ ký số thông thường và phép Chứng minh tri thức không.
Vào năm 1987, Uriel Feige, Amos Fiat và Adi Shamir là những người đầu tiên dùng phép chứng minh tri thức không như là phép chứng minh nhận dạng. Đặc điểm cơ bản của phép Chứng minh tri thức không là phép chứng minh dùng để thuyết phục bên nhận rằng những điều người chứng minh đưa ra là đúng đắn nhưng lại không cho phép bên nhận đi thuyết phục người khác về điều đó. Ngược lại, Chữ ký số thông thường lại cho phép người bất kỳ đã bị thuyết phục đi thuyết phục người khác và việc thuyết phục này diễn ra cũng đơn giản bằng cách cung cấp bản sao của chữ ký.
Trong các ứng dụng, Chữ ký chống chối từ có tác dụng bảo vệ lợi ích riêng của người ký. Nó bảo đảm cho việc chữ ký không bị bên nhận dùng sai mục đích, cũng như những việc làm của bên nhận để thuyết phục người khác về sau này. Nó cũng thuyết phục bên nhận rằng tất cả những người giữ Chữ ký chống chối từ đều có thể yêu cầu sự hợp tác của người ký và người ký không thể trả lời sai vì họ luôn luôn thuyết phục một người bất kỳ rằng một chữ ký tin cậy là đáng tin cậy và một chữ ký không tin cậy là không tin cậy. Ví dụ rõ ràng nhất về tác dụng của Chữ ký chống chối từ là chống sự sao chép trái phép phần mềm. Sản phẩm phần mềm của A có kèm theo Chữ ký chống chối từ được bán cho B. Sau đó B không thể giả danh A để bán cho C vì khi C thực hiện kiểm tra chữ ký, sự hợp tác của B là vô nghĩa (nếu B chịu hợp tác thì câu trả lời trong giao thức sẽ là “chữ ký không tin cậy”). Chỉ có sự hợp tác của A mới mang lại sự khẳng định tin cậy cho C.
Đối với người nhận, các Chữ ký chống chối từ có ưu thế hơn so với phép Chứng minh tri thức không ở chỗ bên nhận nắm được điều gì đó mà sau này, trong những hoàn cảnh nhất định, có thể được sử dụng để thuyết phục người khác. Mặc dù vậy, điều này phụ thuộc vào sự đáp ứng của người ký trong việc tiếp tục xác nhận chữ ký. Nếu người ký không thể đáp ứng đầy đủ các điều kiện trong giao thức hoặc từ chối hợp tác thì bên nhận không thể sử dụng chữ ký. Việc từ chối hợp tác xác nhận chữ ký có thể do người ký muốn chối bỏ trách nhiệm của mình hoặc cũng có thể do người ký quá bận rộn với công việc. Chẳng hạn, nếu chữ ký chống chối từ trên sản phẩm phần mềm là của Giám đốc công ty thì Giám đốc không thể thường xuyên cộng tác với khách hàng để kiểm tra chữ ký được.
Người ta đã đề xuất Lược đồ chữ ký người xác nhận được chỉ định để giải quyết điểm yếu này và nâng cao độ tin cậy của lược đồ chữ ký chống chối từ. Giao thức này đòi hỏi có ba bên tham gia: người nhận, người ký và người xác nhận. Người ký và người xác nhận có khoá công khai và chúng được người nhận chấp thuận. Ở giao thức ký, người ký đã tạo ra được một Chữ ký chống chối từ như là nó được ký bởi người xác nhận. Nếu giao thức kiểm tra được tiến hành với sự cộng tác của người ký, người nhận bị thuyết phục rằng chữ ký này do người ký tạo ra và chữ ký đó có thể được kiểm tra bởi người xác nhận. 
Trong giao thức xác nhận, với sự hợp tác của người xác nhận, người kiểm tra (có thể là chính người nhận hoặc là một người khác. Trong tình huống B gửi cho A thông báo cho phép rút một số tiền ở tài khoản của B thì người kiểm tra có thể là nhân viên của ngân hàng) bị thuyết phục rằng chữ ký là tin cậy, nhưng cũng không cho phép người kiểm tra một mình tiếp tục đi thuyết phục người khác.
Trong Lược đồ chữ ký người xác nhận, người xác nhận có khả năng xác nhận hoặc từ chối chứng thực độ tin cậy của chữ ký gốc nhưng họ không có khả năng giả mạo chữ ký.
Tuy nhiên, trong nhiều lược đồ Chữ ký người xác nhận, bản thân người ký không thể xác nhận chữ ký của mình là tin cậy. Nếu người xác nhận từ chối cộng tác thì dẫn đến việc không thể kiểm tra chữ ký. Trong thực tế, sự tin cậy của các bên tham gia giữ vai trò rất quan trọng, vì vậy giảm sự rắc rối cho các bên là cần thiết cả về phương diện kỹ thuật cũng như tiết kiệm chi phí trong giao dịch.
Lược đồ chữ ký người xác nhận không thể chối từ gắn cả chức năng kiểm tra chữ ký của cả người ký và của cả người xác nhận. Lược đồ này là sự biến đổi của lược đồ chữ ký người xác nhận. Nó đem lại sự linh hoạt đối với người ký, người nhận cũng như người xác nhận được chỉ định - người thường được tin cậy trong thực tế. Ở đây, người nhận có thể kiểm tra chữ ký thông qua sự hợp tác của người ký hoặc của người xác nhận. Hơn nữa, lược đồ này còn có thể phát triển thành lược đồ chữ ký người xác nhận không thể chối từ “mù” (nghĩa là người ký không quan tâm đến nội dung cần ký).
Các Chữ ký số này đem lại lợi ích trong nhiều ứng dụng, ví dụ như thiết kế hệ thống trả tiền trước (micropayment) đối với các mạng lớn bao gồm nhiều dịch vụ. Trong mô hình này, giấy chứng nhận trả tiền trước (thường là số tiền nhỏ) có chữ ký người xác nhận không thể chối từ mù của người quản lý liên hợp các công ty (thuộc tính “mù” được đưa vào để đảm bảo tính riêng tư của người sử dụng). Để truy cập tới các dịch vụ trực tuyến, người sử dụng phải chứng minh giấy chứng nhận trả tiền trước là tin cậy đối với người cung cấp dịch vụ - người có vai trò người xác nhận trong lược đồ chữ ký.
Sự thuận lợi của dịch vụ trả tiền trước (micropayment) là nó giảm bớt quá trình tiến hành công việc mua bán, giao dịch khi mua một sản phẩm có trị giá nhỏ. Ngoài ra, mô hình áp dụng Chữ ký không thể chối từ mù ngăn ngừa sự kinh doanh không hợp pháp giấy chứng nhận trả tiền trước và bảo vệ tính riêng tư của người sử dụng. Nó có khả năng ngăn cản người cung cấp dịch vụ và người sử dụng thông đồng thiết lập các Giấy chứng nhận cho phép truy cập tới các dịch vụ trực tuyến. Bởi vì Giấy chứng nhận chỉ có thể được kiểm tra với sự giúp đỡ của người quản lý liên hợp các công ty hoặc những người được ủy nhiệm.

Chúng tôi hy vọng rằng, khi Thương mại điện tử, Chính phủ điện tử,…phát triển mạnh ở nước ta, Chữ ký số nói chung và Chữ ký chống chối từ nói riêng sẽ được ứng dụng rộng rãi. Đến lượt nó, việc ứng dụng này sẽ thúc đẩy khoa học mật mã phát triển lên những đỉnh cao mới

Tin cùng chuyên mục

Tin mới