Giải quyết bài toán bảo toàn hợp đồng trong thanh toán điện tử

Một phần của tài liệu (LUẬN văn THẠC sĩ) tìm hiểu một số sơ đồ thỏa thuận khóa bí mật và ứng dụng trong thanh toán điện tử (Trang 65 - 67)

Bên A gửi hợp đồng thanh toán cho bên B, bản hợp đồng trên đường truyền. Khi B nhận được hợp đồng có thể xảy ra các trường hợp sau:

- Thông tin trong hợp đồng đã bị xem trước (đánh cắp thông tin) - Thông tin trong hợp đồng bị sửa đổi

- Làm sao để xác định được đó có phải hợp đồng do A gửi hay không

Các vấn đề trên có thể giải quyết được bằng các phương pháp: Thỏa thuận khóa bí mật, mã hóa, chữ ký số và hàm băm

3.3.2.1. Thỏa thuận khóa:

Sơ đồ DiffieHellman: Sau khi thực hiện sơ đồ này hai bên A và B có được khóa bí

mật chung.

3.3.2.2. Chữ ký số:

Để đảm bảo tính toàn vẹn của bản hợp đồng trực tuyến khi chúng được truyền đi trên mạng trước hết ta cần một kênh truyền an toàn, với các phương pháp đảm bảo tính toàn vẹn trong giao dịch nói chung, một kỹ thuật đặc trưng quan trọng để đảm bảo tính toàn vẹn hợp đồng giao dịch là dùng chữ ký số.

Khi nội dung của bản hợp đồng bị thay đổi, thì chữ ký trên bản hợp đồng đó cũng thay đổi theo. Chữ ký số nhằm đảm bảo tính toàn vẹn, duy nhất và không bị sửa đổi dữ liệu gốc bởi người khác. Chữ ký số là bằng chứng xác thực người gửi chính là tác giả của thông điệp mà không phải là một ai khác. Không những thế khi chữ ký số được gắn với thông điệp thì đảm bảo rằng thông tin trên đường truyền sẽ không bị thay đổi, mọi sự thay đổi dù là nhỏ nhất sẽ đều bị phát hiện dễ dàng.

- Tạo chữ ký số: Dùng hàm băn MD5 băm thông điệp gốc được mã băn có độ dài cố định (128 bits). Lấy khóa bí mật của người gửi tác động lên mã băm này để tạo được chữ ký của người gửi. Đính kèm chữ ký này cùng với tài liệu ban đầu gửi cho bên nhận

- Xác thực chữ ký số: Khi bên nhận nhận được tài liệu kèm chữ ký, tách tài liệu và chữ ký.

+ Với tài liệu: Dùng hàm băm MD5 băm thông điệp được mã băm 1.

+ Với chữ ký: Bên nhận dùng khóa công khai của người gửi tác động lên chữ ký (thực chất là quá trình giải mã) thu được mã băm 2.

So sánh mã băm 1 với mã băm 2, nếu mã băm 1 bằng mã băm 2 tức là tài liệu chưa bị sửa đổi. Nếu mã băm 1 khác mã băm 2 nghĩa là tài liệu đã bị thay đổi, không còn toàn vẹn nữa.

3.3.2.4. Hàm băm:

Một thông điệp được đưa qua hàm băm sẽ tạo ra một giá trị có độ dài cố định và ngắn hơn được gọi là “đại diện” hay “bản tóm tắt’. Mỗi thông điệp đi qua một hàm băm chỉ cho duy nhất một “đại diện” và ngược lại: rất khó có thể tìm được hai thông điệp khác nhau mà có cùng “đại diện” khi đi qua cùng một hàm băm.

Thay vì phải “ký số” trên tài liệu dài, kỹ thuật thay thế ở đây là dùng hàm băm để tạo “đại điện” cho tài liệu, sau đó ký số trên tài liệu đại diện này.

Với tài liệu đầu vào (bản tin gốc) x, chỉ thu được giá trị băm duy nhất zh(x). Nếu dữ liệu trong bản tin x bị thay đổi hay bị xóa để thành bản tin x’, thì giá trị băn

) ( ) '

(x h x

h  . Như vậy mọi thay đổi trên bản hợp đồng điện tử bị thay đồi dù là nhỏ cũng sẽ bị phát hiện. Hơn nữa nội dung của bản tin gốc khó có thể suy ra từ giá trị băm của nó zh(x) .

* Băm thông điệp

Thông điệp x đưa qua hàm băm, thu được giá trị băm duy nhất =zh x 

Một phần của tài liệu (LUẬN văn THẠC sĩ) tìm hiểu một số sơ đồ thỏa thuận khóa bí mật và ứng dụng trong thanh toán điện tử (Trang 65 - 67)

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

(73 trang)