Chương 6. Một số giao thức bảo mật thông dụng khác
6.5. Thanh toán điện tử an toàn
Thanh toán điện tử an toàn SET (Secure Electronic Transaction) là một giao thức chuẩn để đảm bảo an toàn thanh toán cho các thẻ
tín dụng trên một mạng truyền thông không tin cậy, nhất là trên Internet.
Bản thân SET không phải là một hệ thống thanh toán mà thực ra là một tập hợp giao thức và thủ tục cho phép người dùng có thể thực hiện cơ chế sẵn có của một hệ thống thanh toán thẻ một cách an toàn trong môi trường mở.
SET được phát triển bởi SETco, một công ty an ninh mạng do VISA và MasterCard chỉ đạo, kể từ 1996 và sau đó một số công ty khác như GTE, IBM, Microsoft, Netscape, RSA và VeriSign cũng tham gia. SET cơ bản dựa trên chuẩn X.509 với một số tiêu chuẩn mở rộng. Phiên bản đầu tiên hoàn thành vào tháng 5 năm 1997 và bản dùng thử lần đầu tiên thử nghiệm vào tháng 7 năm 1998.
SET cho phép các bên đối tác nhận dạng ra nhau (thông tin nhận dạng đã mã hóa) và sau đó trao đổi thông tin một cách an toàn. SET dùng một thuật toán cho phép người bán hàng thay thế một chứng thư cho một số của thẻ tín dụng của người sử dụng.
Bản thân người bán hàng không bao giờ cần biết đến số của thẻ tín dụng mà người dùng (người mua) gửi đến, mà vẫn kiểm tra được việc thanh toán trả tiền mặt khác bảo vệ được cho chủ thẻ và nhà phát hành thẻ khỏi bị lừa đảo.
Ngày nay SET thực tế đã trở thành giao thức tiêu chuẩn cho việc thanh toán trên Internet giao dịch giữa người bán hàng, người mua và các công ty phát hành thẻ. Một hệ thống SET bao gồm các thành viên sau đây:
- Chủ thẻ
- Người bán hàng - Nhà phát hành thẻ - Nơi chấp nhận thẻ
- Cổng thanh toán
- Tổ chức chứng thực điện tử
Hệ thống giao diện của SET có 3 thành phần:
- Giao diện ví điện tử: được cài đặt trong thẻ/máy tính của người trả tiền (người mua).
- Giao diện ở máy tính/máy đọc thẻ của người nhận tiền (người bán).
- Giao diện tại máy chủ của ngân hàng phát hành thẻ liên kết với máy chủ ngân hàng có tài khoản của người nhận tiền.
6.5.2. Hoạt động thanh toán
Quy trình thanh toán diễn ra như sau:
1. Khách hàng yêu cầu và nhận được một tài khoản thẻ tín dụng từ một ngân hàng có hỗ trợ thanh toán điện tử và SET.
2. Khách hàng nhận một chứng thư số X509v3 do ngân hàng ký xác nhận.
3. Người bán cũng có chứng thư số của họ 4. Khách hàng lập phiếu đặt hàng
5. Người bán gửi một bản sao chứng thư của mình để cho khách hàng có thể kiểm tra xác minh rằng đấy là một của hàng hợp lệ
6. Gửi phiếu đặt hàng và lệnh chi trả
7. Người bán yêu cầu kiểm tra sự cho phép chi trả 8. Người bán xác nhận phiếu đặt hàng
9. Người bán gửi hàng hóa hay dịch vụ đến cho người mua 10. Người bán yêu cầu chi trả
Trong tiêu dùng trực tiếp khi người mua đưa thẻ để trả tiền, người bán cắm vào máy để máy đọc và ghi lại toàn bộ thông tin đã mã hóa gửi đến cho ngân hàng cấp thẻ. Tại đấy các thông tin được giải mã, ngân hàng nhận diện (tài khoản) của người trả tiền và của người nhận tiền, nếu đúng sẽ thông báo chấp nhận thanh toán và bộ phận kế toán thực hiện việc chuyển khoản từ tài khoản người trả tiền đến tài khoản người nhận tiền. Khi thực hiện xong (hoặc chấp nhận thực hiện) bộ phận kế toán tại ngân hàng thông báo cho cả hai bên người trả tiền và người nhận tiền là giao dịch đã hoàn thành.
Nói chung hiện nay các ngân hàng đang thực hiện giao dịch thanh toán thẻ tín dụng qua mạng đều tin tưởng vào hệ thống SET vì hệ thống này đảm bảo việc nhận dạng chính xác các đối tác trả tiền và nhận tiền đồng thời không cho phép người nhận tiền giải mã để nắm được thông tin trong thẻ của người trả tiền, điều này giảm bớt nguy cơ bị trộm thông tin thẻ (pharming).
6.5.3. Chữ ký song hành
Sáng tạo độc dáo của SET là phương pháp sử dụng chữ ký song hành (Dual signature). Chữ ký song hành cũng có chức năng tương tự như chữ ký điện tử là xác nhận người phát hành thông tin và sự toàn vẹn thông tin.
Muốn vậy SET tổ chức kết nối để so sánh hai bản tin được gửi cho hai hòm thư khác nhau. Giả sử người mua chỉ gửi thông tin mua hàng OI (Order Information) cho người bán hàng và thông tin trả tiền PI (Payment Information) cho ngân hàng, như vậy người bán không biết gì về thông tin tài khoản của người mua, ngân hàng cũng không cần biết về thông tin hàng hóa. Giá trị băm của thông tin mua hàng và của thông tin trả tiền được mã hóa bởi các khóa riêng (khác nhau) của người mua hàng thành một cặp chữ ký, cặp chữ ký đó được gắn cả vào từng thông điệp OI và PI để gửi cho cả người bán và ngân hàng. Người bán giải mã giá trị băm của OI để kiểm tra và lưu giá trị băm của PI làm chứng từ đối chiếu nếu sau này cần thiết,
nhưng không biết nội dung của PI. Ngược lại ngân hàng giải mã được giá trị băm của PI để kiểm tra nhưng lại không thể biết nội dung của OI.
SET là một hệ thống thanh toán đảm bảo được các yêu cầu: xác nhận được các đối tác tham gia giao dịch, không thể chối bỏ, thông tin thanh toán minh bạch và được bảo mật an toàn, thực hiện thanh toán nhanh.
Tuy nhiên vì các chi tiết giao dịch và đối tác đều được lưu ít nhất là trên bộ phận kế toán ngân hàng cho nên việc thanh toán không đảm bảo được bí mật, riêng tư cho người mua và người bán.