4.5.2.1 Ứng dụng trong ngân hàng
Tình huống đặt ra: Tại ngân hàng, khách hàng C muốn gửi vào tài khoản của mình một số tiền lớn. Trong số nhân viên của ngân hàng, có một nhân viên xấu muốn chiếm đoạt số tiền này. Khi khách hàng C muốn giao dịch số tiền của mình với khách hàng A, nhân viên xấu này tìm cách để biết được một số thông tin bí mật của A và anh ta thực hiện giả mạo mình là A. Nếu áp dụng mô hình chữ ký thông thường, khi nhân viên xấu này biết được thông tin bí mật của A (khoá bí mật) thì anh ta hoàn toàn có thể giả mạo A để lấy tiền của C.
Giả pháp: Tuy nhiên, nếu áp dụng mô hình chữ ký chống chối bỏ thì nhân viên xấu này không thể thực hiện hành vi giả mạo vì khi muốn lấy tiền của C, anh ta phải thực hiện một số thao tác thẩm định có liên quan tới C. C có thể xác định được người đang thẩm định chữ ký của mình chính là nhân viên xấu chứ không phải A và do đó phát hiện ra rằng nhân viên xấu đang giả mạo A để lấy tiền của mình.
4.5.2.2 Ứng dụng trong bảo vệ bản quyền phần mềm
Tình huống đặt ra: Một công ty phần mềm X xây dựng các phần mềm và muốn bán phần mềm của mình tới người dùng. Để đảm bảo những phần mềm của mình không bị dùng miễn phí, công ty X sẽ phải làm gì để bảo vệ bản quyền?
Giải pháp: Công ty X thực hiện ký lên mỗi sản phẩm phần mềm một chữ ký chống chối bỏ. Mỗi người dùng muốn sử dụng phần mềm của công ty X sẽ phải tương tác với công ty để kích hoạt phần mềm. Nếu là người dùng hợp lệ (đã mua bản quyền), người dùng khi tương tác với công ty sẽ gửi cho công ty license bản
quyền mà anh ta mua để công ty kiểm tra. Công ty sẽ so sánh license người dùng gửi với CSDL sẵn có, nếu tìm thấy sẽ thực hiện kích hoạt cho phần mềm hoạt động. Sử dụng chữ ký chống chối bỏ cũng có ích trong trường hợp bảo vệ khách hàng. Khi công ty đã ký lên sản phẩm phầm mềm thì không thể chối bỏ trách nhiệm của mình với phần mềm đó. Nếu phần mềm đó không đáp ứng đúng với giá trị được rao bán thì khách hàng có quyền kiện công ty với giao thức chống chối bỏ. 4.5.2.3 Ứng dụng trong mua hàng trực tuyến
Tình huống đặt ra: Một người A muốn mua hàng trực tuyến tại cửa hàng sản phẩm X. Sau khi anh ta đặt hàng, cửa hàng X sẽ cử nhân viên đến để giao hàng và nhận tiền tại nhà của A. Tuy nhiên, khi nhân viên đến giao hàng thì anh A (vì lý do nào đó), nói rằng mình không phải là người đặt mua hàng và nhân viên của X mất công đưa hàng về nhà. Những trường hợp tương tự, nếu A là người có mục đích xấu, cố tình thực hiện đặt hàng nhưng rồi không mua, có cách nào giải quyết trường hợp này?
Giải pháp: Sử dụng hệ thống đặt hàng trực tuyến có áp chữ ký chống chối bỏ. Người đặt hàng phải ký lên yêu cầu mua hàng, để sau đó anh ta sẽ không thể chối bỏ yêu cầu đặt hàng của mình.
4.5.2.4 Ứng dụng trong ký kết giao kèo thông qua hội thoại trực tuyến
Tình huống đặt ra: Những giao kèo sử dụng tài liệu việt tay được sử dụng rộng rãi. Ngày này, có những lúc giao kèo được thực hiện qua hội thoại trực tuyến với nhau (Voice-over-IP communication). Tuy nhiên, làm sau để tránh trường hợp một trong hai bên sau này phủ định rằng đã thực hiện giao kèo này?
Giải pháp: Để giải quyết điều này, hai bên sẽ phải cùng thống nhất ghi âm đoạn hội thoại và thực hiện ký lên đoạn hội thoại này. Vì có tính chống phủ định, nên đoạn hội thoại được ghi âm hoàn toàn có thể được coi là chứng cứ trong trường hợp nếu sau này một trong hai bên cố tình không công nhận sự thật về nội dung cuộc giao kèo.
4.5.2.5 Ứng dụng trong các buổi bán đấu giá
Tình huống đặt ra: Trong các buổi đấu giá, người đưa ra giá cao hơn có quyền yêu cầu chữ ký của mình chỉ cho phép một số người nhất định được phép kiểm tra.
Giải pháp: Với chữ ký chống chối bỏ, ngoài khả năng đáp ứng yêu cầu trên còn đảm bảo được một điều quan trọng là người đưa ra giá cao hơn không thể chối
bỏ chữ ký của mình (tức là yêu cầu mua) trong trường hợp anh ta “suy nghĩ lại” về giá mà anh ta đề nghị mua.
4.5.2.6 Ứng dụng của các biến thể chữ ký chống chối bỏ
- Chữ ký chống chối bỏ có thể chuyển đổi cho phép người ký có thể chuyển đổi chữ ký chống chối bỏ (một phần hoặc hoàn toàn) thành chữ ký thông thường nếu cần thiết.
- Chữ ký chống chối bỏ trên EC cho phép việc thực thi có thể được thực hiện trên những thiết bị có cấu hình thấp.
- Chữ ký chống chối bỏ với người chứng minh phân tán cho phép người ký gốc uỷ quyền cho một số người thay mặt anh ta trong quá trình thẩm định chữ ký.
- Chữ ký người thẩm định được chỉ định cho phép người ký được chỉ định những ai được phép thẩm định chữ ký.
4.5.3 Ứng dụng trong việc trình duyệt công văn, báo cáo
4.5.3.1 Đặt vấn đề
Thông thường, việc trình duyệt công văn báo cáo với những công ty hoặc cơ quan nhà nước là rất quan trọng, đặc biệt là những công ty lớn hoặc những cơ quan quan trọng. Những công văn, báo cáo này nhiều khi có giá trị kinh tế hoặc có ảnh hưởng lớn đến quyết sách của mỗi công ty hoặc cơ quan, tổ chức. Điều đó dẫn đến yêu cầu cần thiết trong việc đảm bảo an ninh an toàn đối với những công văn, báo cáo (điện tử) được trình ký.
4.5.3.2 Mô hình cụ thể
Giả sử một Viện nghiên cứu V có viện trưởng ký hiệu là Vt, và các viện phó ký hiệu là Vvp1, Vvp2, Vvp3 . Viện được tổ chức thành nhiều phòng chức năng khác nhau ký hiệu Pi: Phòng 1 phụ trách tham mưu, tổng hợp; Phòng 2 phụ trách tài chính hậu cần; Phòng 3 Phụ trách tổ chức cán bộ; và các Phòng khác.
Bài toán: Do việc đi lại, giờ giấc, tác phong làm việc của một số cán bộ trong Viện thời gian gần đây không chấp hành đúng theo quy định của Viện, phòng Tổ chức cán bộ (P3) muốn báo cáo lên Viện trưởng (Vt) và Viện phó phụ trách (Vvp1) kế hoạch kiểm tra đột xuất trong toàn Viện để báo cáo lên Lãnh đạo. P3 làm báo cáo kế hoạch kiểm tra (ký hiệu m), lãnh đạo P3 ký lên m (được chữ ký s) và sẽ gửi báo cáo (kèm chữ ký) trình lên Viện phó Vvp1 (để xin chỉ đạo) và Viện trưởng cùng 2 Viện phó khác (để báo cáo công việc). Viện phó Vvp1 duyệt báo cáo, đưa ra ý kiến chỉ đạo (ý kiến chỉ đạo ký hiệu là mcd) và ký lên toàn bộ nội dung bản kế hoạch đã chỉ đạo (chữ ký này là scd được ký lên m||s||mcd). Báo cáo sau khi có ý kiến chỉ đạo
(m||s||mcd) sẽ được gửi kèm chữ ký (scd) tới các Lãnh đạo Viện và P1, P2, P3 để tổ chức thực hiện. Các phòng khác không được phân công trong kế hoạch thì không được biết nội dung cũng như thẩm định tính đúng của kế hoạch.
Như vậy, để đảm bảo an ninh trong việc trình - duyệt - thực hiện chỉ đạo trong môi trường điện tử, ngoài việc đảm bảo yếu tố bí mật (không phân tích ở đây) thì đảm bảo tính xác thực của thông báo là điều cần thiết. Khi P3 trình duyệt báo cáo thì chỉ có Lãnh đạo Viện mới được phép thẩm định s. Khi Viện phó Vvp1 chỉ đạo kế hoạch thì chỉ có Lãnh đạo Viện, các phòng 1, 2, 3 mới được phép thẩm định scd. Tuy nhiên, sau khi có chỉ đạo của Vp1 thì các phòng 1, 2 cũng được phép thẩm định s. Như vậy, mô hình chữ ký được áp dụng ở đây phải đảm bảo các yêu cầu sau:
- Yêu cầu 1- Tính chống chối bỏ: Vì các chữ ký liên quan đến trách nhiệm của từng bộ phận.
- Yêu cầu 2- Tính chỉ định: Chỉ những người có quyền, những người tham gia kế hoạch kiểm tra mới được phép thẩm định chữ ký.
- Yêu cầu 3- Tính thứ tự (thời gian): Người nhận được báo cáo sau sẽ được quyền thẩm định chữ ký của những người đã ký trước đó.
4.5.3.3 Lựa chọn mô hình
- Để đảm bảo yêu cầu 1 và 2, Viện V sẽ áp dụng mô hình chữ ký số chống chối bỏ với người thẩm định được chỉ định.
- Để đảm bảo yêu cầu 3 sẽ bổ sung thêm một giao thức đơn giản để đảm bảo trường hợp một người nào đó giả danh là Phòng 1 hoặc 2 để được quyền thẩm định chữ ký.
a. Chọn mô hình chữ ký
Như đã phân tích, ta sẽ chọn mô hình chữ ký chống chối bỏ với người thẩm định được chỉ định để đảm bảo yêu cầu 1 và 2. Mô hình chữ ký được chọn như trình bày trong 4.4.5.3 . Các thông số, ký hiệu sẽ được chọn giống như trên, chỉ với một số chú ý về lựa chọn:
Lựa chọn 1: Trong giao thức xác thực, lược đồ cửa sập sẽ chọn như sau: - Khoá bí mật của người nhận xB Єu Zq .
- Khoá công khai của người nhận yB = gxBmod p (ở đây p = q.k +1, p và q là hai số nguyên tố; k Є Z; g là phần tử nguyên thuỷ của nhóm con Gq của Z*
p cấp q) - Giá trị ràng buộc w Є Zq..
- Ràng buộc: Alice lựa chọn r Єu Zq. Ràng buộc c = gw yBr mod p. - Bỏ ràng buộc: Alice gửi Bob (w, r).
Lựa chọn 2: Trong giao thức chối bỏ được trình bày trong 4.4.1.2, blob được chọn là blob dựa trên Logarit rời rạc: Số nguyên tố p, phần tử sinh α của Z*
p, u là số nguyên nhỏ nhất sao cho 2u không chia hết cho p-1. Cho một số e sao cho 0 ≤ e ≤
p-2 và a ≡ αe (mod p), dễ dàng tìm được bít có trọng số thấp thứ u-1 của số a.
Alice và Bob thoả thuận trước các số p và α. Lấy u như trên. Các blob được định nghĩa bởi các tập t = Z*
p , r = {0,1,2,…, p-2}, và
υ(r,s) = ru nếu t= αr (mod p) = * nếu trường hợp khác
(ở đây ru được quy định là giá trị bít có trọng số thấp thứ u của r)
Giải thích: Khi khi Alice muốn tính ràng buộc cho một bít S nào đó, Alice chọn ngẫu nhiên số r Є Z*
p sao cho ru = S và tính t = αr (mod p). Alice gửi cho Bob giá trị
t và giữ bí mật r .
b. Bổ sung giao giao thức để đản bảo yêu cầu 3
Để đảm bảo yêu cầu 3, cần bổ sung một giao thức nhỏ để P3 xác nhận chính xác Vvp1 đã chỉ đạo cho P1 (và P2) cùng phối hợp thực hiện kế hoạch. Giao thức này tránh cho việc một ai đó mạo danh để xác thực chữ ký.
Các thông số được lựa chọn như trên, các bên đều biết p, α. Để khởi đầu, P3
chọn ngẫu nhiên số x Є Z*
p , Vvp1 chọn ngẫu nhiên số e Є Z* p .
Bước 1: Vvp1 gửi e cho P3
Bước 2: P3 gửi x+e mod p cho Vvp1
Bước 3: Vvp1 tính b = αx+e mod p và gửi b cho P1,2
Bước 4: P1,2 gửi b cho P3 để P3 kiểm tra quyền thẩm định chữ ký Bước 5: P3 kiểm tra xem y.b’ =? αx+e mod p (với b’ = αe mod p)
Nếu kết quả cho giá trị đúng thì P3 thực hiện giao thức thẩm định chữ ký với P1, P2 nếu có yêu cầu.
Hình 4.1 Mô hình để P1,2 chứng tỏ với P3 quyền được thẩm định chữ ký
4.5.3.4 Nhận xét
- Mô hình xác thực trên đảm bảo được tính xác thực trong việc trình-duyệt- thực hiện chỉ đạo trên các báo cáo trong môi trường điện tử. Việc áp dụng lược đồ chữ ký chống chối bỏ với người thẩm định được chỉ định đã đảm bảo tính chống chối bỏ và tính chỉ định người được quyền thẩm định báo cáo.
- Vì trên báo cáo m có nhiều cấp ký lên, để đảm bảo người nhận báo cáo sau cùng vẫn có thể thể thẩm định được chữ ký của người ký đầu tiên (P3) thì việc áp dụng thêm một giao thức nhỏ (trong phần b của 4.5.3.3) đã đáp ứng được điều này. Để đảm bảo P1 (P2) không gửi b cho người khác, thì có thể cải tiến thêm trong bước 3 (trong phần b của 4.5.3.3) như sau: Vvp1 gửi hash(b,kUp1) thay vì gửi b.
- Việc đưa ra các lựa chọn 1 và lựa chọn 2 (trong phần a của 4.5.3.3) để tạo thuận lợi cho việc cài đặt mô hình này vào thực tế. Tính an toàn của toàn bộ lược đồ đều dựa vào vấn đề khó của bài toán DLP.
- Hiện nay, có một số đề xuất đưa ra để tăng tính an toàn của lược đồ chữ ký chống chối bỏ với người thẩm định được chỉ định ban đầu. Tuy nhiên, để áp dụng những lược đồ này vào thực tế cũng cần phải chờ đợi nghiên cứu thêm nữa vì lĩnh vực này vẫn còn mới, chưa đảm bảo tính vững chắc với thời gian.
- Việc cài đặt các thuật toán của mô hình trên là rất phức tạp, cho nên chương trình demo chỉ mô phỏng hoạt động của lược đồ chữ ký chống chối bỏ ban đầu. Chương trình được viết bằng ngôn ngữ c# với giao diện windows. Hàm băm được sử dụng là SHA1.
KẾT LUẬN