Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

149
-1- ĐẠI HỌC QUỐC GIA HÀ NỘI TRƯỜNG ĐẠI HỌC CÔNG NGHỆ HOÀNG PHƯƠNG BẮC MỘT SCÔNG CCÔNG NGHTHÔNG TIN DÙNG TRONG THANH TOÁN ĐIỆN TLUẬN VĂN THẠC SĨ Hà Nội - 2009

Transcript of Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

Page 1: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-1-

ĐẠI HỌC QUỐC GIA HÀ NỘI

TRƯỜNG ĐẠI HỌC CÔNG NGHỆ

HOÀNG PHƯƠNG BẮC

MỘT SỐ CÔNG CỤ CÔNG NGHỆ THÔNG TIN

DÙNG TRONG THANH TOÁN ĐIỆN TỬ

LUẬN VĂN THẠC SĨ

Hà Nội - 2009

Page 2: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-2-

LỜI CAM ĐOAN

Tôi xin cam đoan toàn bộ nội dung bản luận văn “Một số công cụ công

nghệ thông tin dùng trong thanh toán điện tử” là do tôi tự sưu tầm, tra cứu và

tìm hiểu theo tài liệu tham khảo và làm theo hướng dẫn của người hướng dẫn

khoa học .

Nội dung bản luận văn chưa từng được công bố hay xuất bản dưới bất kỳ

hình thức nào và cũng không được sao chép từ bất kỳ một công trình nghiên cứu

nào. Các nguồn lấy từ tài liệu tham khảo đều được chú thích rõ ràng, đúng quy

định.

Nếu sai tôi xin hoàn toàn chịu trách nhiệm.

Hà nội, tháng 09 năm 2009

Người cam đoan

Hoàng Phương Bắc

Page 3: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-3-

LỜI CẢM ƠN

Lời đầu tiên, tôi xin được gửi lời cảm ơn chân thành và sâu sắc tới PGS.TS

Trịnh Nhật Tiến, người thầy đã cho tôi những định hướng và ý kiến quý báu

trong suốt quá trình hoàn thành luận văn.

Tôi xin cảm ơn các thầy, cô trong khoa Công Nghệ Thông Tin cùng các

thầy cô trong trường Đại học Công Nghệ - ĐHQGHN đã giảng dạy, truyền đạt

cho tôi những kiến thức quý báu trong những năm học qua.

Tôi xin được gửi lời cảm ơn sâu sắc tới gia đình và bạn bè, những người

luôn kịp thời động viên, khích lệ giúp đỡ tôi vượt qua những khó khăn để tôi có

thể hoàn thành nhiệm vụ của mình.

Do còn hạn chế về nhiều mặt nên luận văn không thể tránh khỏi những

thiếu sót. Rất mong nhận được sự chỉ bảo, góp ý của Thầy, cô và các bạn.

Hà Nội, Tháng 9 năm 2009

Học viên

Hoàng Phương Bắc

Page 4: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-4-

MỤC LỤC LỜI CAM ĐOAN ........................................................................................................2

LỜI CẢM ƠN .............................................................................................................3

MỤC LỤC...................................................................................................................4

BẢNG CHỮ VIẾT TẮT..............................................................................................9

DANH MỤC HÌNH VẼ.............................................................................................10

MỞ ĐẦU...................................................................................................................12

CHƯƠNG 1 MỘT SỐ KHÁI NIỆM CƠ BẢN.....................................................14

1.1. CÁC KHÁI NIỆM TRONG TOÁN HỌC...............................................................14

1.1.1. Số nguyên tố và nguyên tố cùng nhau.......................................................14

1.1.2. Đồng dư thức ...........................................................................................14

1.1.3. Không gian Zn và Zn* ................................................................................15

1.1.4. Khái niệm phần tử nghịch đảo trong Zn ....................................................15

1.1.5. Khái niệm nhóm, nhóm con, nhóm Cyclic................................................16

1.1.6. Bộ phần tử sinh ........................................................................................16

1.1.7 Bài toán đại diện........................................................................................17

1.1.8. Hàm một phía và hàm một phía có cửa sập...............................................17

1.1.9. Độ phức tạp tính toán ...............................................................................18

1.2. TỔNG QUAN VỀ AN TOÀN THÔNG TIN...........................................................19

1.2.1. Tại sao phải đảm bảo an toàn thông tin.....................................................19

1.2.2. Một số vấn đề rủi ro mất an toàn thông tin................................................20

1.2.2.1. Xâm phạm tính bí mật. ......................................................................20

1.2.2.2. Xâm phạm tính toàn vẹn ....................................................................21

1.2.2.3. Xâm phạm tính sẵn sàng....................................................................21

1.2.2.4. Giả mạo nguồn gốc giao dịch ............................................................22

1.2.2.5. Chối bỏ giao dịch ..............................................................................22

1.2.2.6. Các hiểm họa đối với hệ thống giao dịch ...........................................22

1.2.3. Chiến lược đảm bảo an toàn thông tin ......................................................25

1.3. TỔNG QUAN VỀ THANH TOÁN ĐIỆN TỬ ........................................................27

1.3.1. Khái niệm Thương mại điện tử .................................................................27

1.3.2. Vấn đề thanh toán điện tử.........................................................................27

Page 5: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-5-

1.4. CÔNG CỤ CNTT DÙNG TRONG THANH TOÁN ĐIỆN TỬ .............................29

1.4.1 Hạ tầng cơ sở bảo đảm an toàn thông tin ...................................................29

1.4.1.1. Tường lửa..........................................................................................29

1.4.1.2. Mạng riêng ảo...................................................................................29

1.4.1.3 Hạ tầng mật mã hóa công khai............................................................30

1.4.2. Một số tiện ích dùng trong thanh toán điện tử...........................................31

1.4.2.1. Thanh toán bằng các loại thẻ .............................................................31

1.4.2.2. Thanh toán bằng séc điện tử ..............................................................31

1.4.2.3. Thanh toán bằng tiền điện tử..............................................................32

CHƯƠNG 2 HẠ TẦNG CƠ SỞ BẢO ĐẢM AN TOÀN THÔNG TIN............33

2.1. HẠ TẦNG MẠNG MÁY TÍNH...............................................................................33

2.1.1. Mạng Lan, Wan, Intranet, Extranet và Internet ........................................33

2.1.1.1. Mạng cục bộ ( LAN) .........................................................................33

2.1.1.2. Mạng diện rộng- WAN......................................................................35

2.1.1.3. Mạng Intranet, Extranet .....................................................................35

2.1.1.4. Mạng Internet ....................................................................................36

2.1.2. Một số dịch vụ internet (internet services) ................................................37

2.1.2.1. World Wide Web – WWW................................................................37

2.1.2.2. Thư điện tử – Email...........................................................................37

2.1.2.3. Truyền, tải tập tin – FTP....................................................................38

2.1.2.4. Tán gẫu – Chat ..................................................................................38

2.1.2.5. Làm việc từ xa – Telnet .....................................................................38

2.1.2.6. Nhóm tin tức – Usenet, newsgroup ...................................................39

2.1.2.7. Dịch vụ danh mục (Directory Services) .............................................39

2.1.3 Các nhà cung cấp dịch vụ trên Internet ......................................................39

2.1.3.1. Nhà cung cấp dich vụ ISP (Internet Service Provider) .......................39

2.1.3.2. Nhà cung cấp dịch vụ IAP (Internet Access Provider) .......................39

2.1.3.3. Nhà cung cấp dịch vụ ICP (Internet Content Provider) .....................40

2.1.3.4. Cấp phát tên miền (Internet Domain Name Provider) ........................40

2.1.3.5. Cho thuê máy chủ web - hosting (Server Space Provider)..................40

Page 6: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-6-

2.2. HẠ TẦNG ĐẢM BẢO AN TOÀN THÔNG TIN....................................................41

2.2.1 Tường lửa..................................................................................................41 2.2.2 Mạng riêng ảo ...........................................................................................43

2.2.2.1. VPN truy nhập từ xa..........................................................................43 2.2.2.2. VPN điểm tới điểm............................................................................45

2.2.3 Các giao thức đảm bảo an toàn truyền tin .................................................48 2.2.3.1. Giao thức SSL ...................................................................................48 2.2.3.2. Giao thức SHTTP ..............................................................................48 2.2.3.3. Giao thức IPSec.................................................................................49 2.2.3.4. Giao thức TCP/IP ..............................................................................49 2.2.3.5. Giao thức bảo mật SET......................................................................50

2.2.4. Công nghệ xây dựng PKI .........................................................................51 2.2.4.1. Công nghệ OpenCA ..........................................................................51 2.2.4.2. Công nghệ SSL..................................................................................52 2.2.4.3. Giao thức truyền tin an toàn tầng liên kết dữ liệu (Data Link)............55 2.2.4.4. Giao thức truyền tin an toàn tầng ứng dụng(Application). .................56 2.2.4.5. Một số công nghệ bảo đảm an toàn thông tin trên thế giới .................58

2.3. HẠ TẦNG MẬT MÃ KHÓA CÔNG KHAI (PKI) ................................................59

2.3.1. Khái niệm về PKI .....................................................................................59 2.3.2. Hiện trạng sử dụng chứng chỉ số trên thế giới và ở Việt Nam ...................60 2.3.3. Các thành phần kỹ thuật cơ bản của PKI ..................................................62

2.3.3.1. Mã hóa ..............................................................................................62 2.3.3.2. Chữ ký số ..........................................................................................65 2.3.3.3. Chứng chỉ khóa công khai ( Chứng chỉ số) ........................................75

2.3.4. Các đối tượng cơ bản của hệ thống PKI....................................................80 2.3.4.1. Chủ thể và các đối tượng sử dụng ......................................................80 2.3.4.2. Đối tượng quản lý chứng chỉ số .........................................................81 2.3.4.3. Đối tượng quản lý đăng ký chứng chỉ số............................................82

2.3.5. Các hoạt động cơ bản trong hệ thống PKI.................................................83 2.3.5.1. Mô hình tổng quát của hệ thống PKI .................................................83 2.3.5.2. Thiết lập các chứng chỉ số .................................................................83 2.3.5.3. Khởi tạo các EE (End Entity) ............................................................83 2.3.5.4. Các hoạt động liên quan đến chứng chỉ số .........................................84

2.3.6 Những vấn đề cơ bản trong xây dựng hệ thống CA ...................................87 2.3.6.1. Các mô hình triển khai hệ thống CA..................................................87 2.3.6.2. Những chức năng bắt buộc trong quản lý PKI ...................................92

Page 7: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-7- CHƯƠNG 3 MỘT SỐ TIỆN ÍCH DÙNG TRONG THANH TOÁN ĐIỆN TỬ..95

3.1. THẺ THANH TOÁN ...............................................................................................95

3.1.1. Giới thiệu về thẻ thông minh ....................................................................95

3.1.1.1. Khái niệm thẻ thông minh .................................................................95

3.1.1.2. Phân loại thẻ thông minh ...................................................................95

3.1.1.3. Các chuẩn trong thẻ thông minh ........................................................97

3.1.1.4. Phần cứng của thẻ thông minh ...........................................................98

3.1.1.5. Hệ điều hành của thẻ thông minh.....................................................100

3.1.2. Các giao thức với thẻ thông minh ...........................................................104

3.1.2.1. Giao thức truyền thông với thẻ thông minh......................................104

3.1.2.2 Giao thức xác thực với thẻ thông minh .............................................110

3.1.3. Thẻ thanh toán........................................................................................112

3.1.3.1. Luồng giao dịch trên ATM ..............................................................112

3.1.3.2. Chu trình giao dịch trên POS...........................................................113

3.1.3.3. Quy trình thực hiện các giao dịch thẻ tín dụng: ................................117

3.2.TIỀN ĐIỆN TỬ .......................................................................................................119

3.2.1. Giới thiệu về tiền điện tử ........................................................................120

3.2.1.1. Khái niệm tiền điện tử .....................................................................120

3.2.1.2. Cấu trúc tiền điện tử ........................................................................120

3.2.1.3. Phân loại tiền điện tử .......................................................................121

3.2.1.4. Tính chất của tiền điện tử ................................................................122

3.2.1.5. Các giao thức với tiền điện tử .........................................................124

3.2.2. Một số vấn đề đối với tiền điện tử ..........................................................128

3.2.2.1. Vấn đề ẩn danh người dùng .............................................................128

3.2.2.2. Vấn đề giả mạo và tiêu một đồng tiền nhiều lần...............................128

3.2.3. Lược đồ CHAUM-FIAT-NAOR ...........................................................129

3.2.3.1 Giao thức rút tiền..............................................................................130

3.2.3.2 Giao thức thanh toán.........................................................................131

3.2.3.3 Giao thức gửi....................................................................................131

3.2.3.4. Đánh giá ..........................................................................................131

3.2.3.5. Chi phí.............................................................................................132

3.2.3.6. Tấn công..........................................................................................132

Page 8: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-8-

3.2.4. Lược đồ BRAND ...................................................................................133

3.2.4.1. Khởi tạo tài khoản ...........................................................................133

3.2.4.2. Giao thức rút tiền.............................................................................134

3.2.4.3. Giao thức thanh toán........................................................................135

3.2.4.4. Giao thức gửi...................................................................................136

3.2.4.5. Đánh giá ..........................................................................................136

3.2.5. Một số hệ thống tiền điện tử ...................................................................137

3.2.5.1. Hệ thống FIRST VIRTUAL ............................................................137

3.2.5.2. Hệ thống tiền điện tử DIGICASH ....................................................139

3.5.2.3. Hệ thống MILLICENT ....................................................................142

3.5.2.4. Hệ thống MONDEX ........................................................................144

3.5.2.5. Hệ thống PAYWORD .....................................................................145

KẾT LUẬN .............................................................................................................148

TÀI LIỆU THAM KHẢO........................................................................................149

Page 9: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-9-

BẢNG CHỮ VIẾT TẮT

ARLs Authority Revocation Lists

ATTT An toàn thông tin

BIN Bank Identification Number

CA Certificate Authority

CRLs Certificate Revocation Lists

DES Data Encryption Standard

DNS Domain Name System

DSS Digital Signature Standard

EE End Entity

HTTPS Secure Hypertext Transaction Standard

IIN Issuer Identification Number

ISPs Internet Service Providers

NSPs Network Service Providers

POS Point of Sale

PIN Personal Identification Number

PKC Public Key Certificate

PKI Public Key Infrastructure

SET Secure Electronic Transaction

RA Registration Authorities

SSL Secure Socket Layer

TLS Transport Layer Security

TMĐT Thương mại điện tử

TTĐT Thanh toán điện tử

Page 10: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-10-

DANH MỤC HÌNH VẼ

Hình 1.1: Các lớp bảo vệ thông tin. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 25

Hình 1.2 : Một hệ thống mạng riêng ảo . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 291

Hình 2.1 : Mạng cục bộ LAN . . . . . . . . .. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 33

Hình 2.2 : Các topology mạng cục bộ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 34

Hình 2.3: Mạng diện rộng (WAN) . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 35

Hình 2.4 : Kiến trúc mạng Internet . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 36

Hình 2.5: Bức tường lửa. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 41

Hình 2.6 : Máy phục vụ uỷ quyền (Proxy server). . . . . . . . . . . . . . . . . . . . . . . . 42

Hình 2.7 : Mô hình VPN truy nhập từ xa . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44

Hình 2.8 : Mô hình VPN cục bộ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 45

Hình 2.9: Mô hình VPN mở rộng . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46

Hình 2.10: Vị trí SSL trong mô hình OSI . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52

Hình 2.11: Hệ mã hóa khóa đối xứng . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 63

Hình 2.12: Hệ mã hóa khóa công khai . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 64

Hình 2.13: Chữ ký số . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 65

Hình 2.14: Mô hình quá trình ký có sử dụng hàm băm . . . . . . . . . . . . . . . . . . . 67

Hình 2.15: Quá trình kiểm thử . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 67

Hình 2.16: Mô hình ký của loại chữ ký khôi phục thông điệp . . . . . . . . . . . . . .67

Hình 2.17: Sơ đồ chữ ký một lần của Schnorr . . . . . . . . . . . . . . . . . . . . . . . . . . 70

H ình 2.18: Sơ đồ chữ ký mù . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .73

Hình 2.19: Sơ đồ chữ ký mù dựa trên chữ ký RSA . . . . . . . . . . . . . . . . . . . . . . 74

Hình 2.20: Các đối tượng và hoạt động cơ bản trong hệ thống PKI . . . . . . . . . 83

Hình 2.21: Kiến trúc CA phân cấp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .87

Hình 2.22: Kiến trúc CA mạng lưới . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .89

Hình 2.23: Kiến trúc CA danh sách tin cậy . . . . . . . . . . . . . . . . . . . . . . . . . . . .91

Page 11: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-11-

Hình 3.1: Các điểm tiếp xúc theo chuẩn ISO 7816-2 . . . . . . . . . . . . . . . . . . . . 98

Hình 3.2: Cấu trúc file trong thẻ thông minh . . . . . . . . . . . . . . . . . . . . . . . . . ..100

Hình 3.3: Cấu trúc file EF . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .102

Hình 3.4: Cấu trúc của APDU phản hồi . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106

Hình 3.5: Mã trả về của SW1, SW2 . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 106

Hình 3.6: Mã hoá bit trực tiếp . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .107

Hình 3.7: Đảo bit . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .107

Hình 3.8: Lệnh ghi dữ liệu vào thẻ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108

Hình 3.9: Lệnh đọc dữ liệu từ thẻ . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 108

Hình 3.10: Cấu trúc của một khối truyền . . . . . . . . . . . . . . . . . . . . . . . . . . . . 109

Hình 3.11: Thẻ thông minh xác thực thực thể ngoài . . . . . . . . . . . . . . . . . . . 110

Hình 3.12: Thực thể ngoài xác thực thẻ thông minh . . . . . . . . . . . . . . . . . . . 111

Hình 3.13: Luồng giao dịch trên ATM . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 112

Hình 3.14: Quy trình cấp phép . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 117

Hình 3.15: Quy trình giao dịch thẻ tín dụng . . . . . . . . . . . . . . . . . . . . . . . . . . 118

Hình 3.16: Mô hình giao dịch của hệ thống tiền điện tử cùng ngân hàng . . . 124

Hình 3.17: Mô hình giao dịch của hệ thống tiền điện tử liên ngân hàng . . . 126

Page 12: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-12-

MỞ ĐẦU

Trong những thập kỷ gần đây, sự phát triển mạnh mẽ của Internet đã và đang làm thay đổi một cách căn bản cách thức hoạt động của nhiều lĩnh vực kinh tế - xã hội, trong đó có hoạt động thương mại. Khâu quan trọng nhất trong hoạt động TMĐT là “thanh toán”, bởi vì mục tiêu cuối cùng của cuộc trao đổi thương mại là người mua nhận được những cái gì cần mua và người bán nhận được số tiền thanh toán.

Vấn đề an toàn thông tin (ATTT) trong các giao dịch luôn là một yêu cầu cần phải có đối với mọi hoạt động thương mại, đặc biệt là hoạt động thương mại điện tử vì các quy trình giao dịch được thực hiện qua Internet - một môi trường truyền thông công cộng. Các thành tựu của ngành mật mã, đặc biệt là lý thuyết mật mã khoá công khai đã cung cấp các giải pháp ATTT cho các hoạt động thương mại, tạo cơ sở cho việc xây dựng các hệ thống thanh toán điện tử.

Cơ sở hạ tầng mã khoá công khai (PKI - Public Key Infrastructure) cùng các tiêu chuẩn và công nghệ ứng dụng của nó có thể được coi là một giải pháp tổng hợp và độc lập để giải quyết vấn đề ATTT. PKI bản chất là một hệ thống công nghệ vừa mang tính tiêu chuẩn, vừa mang tính ứng dụng được sử dụng để khởi tạo, lưu trữ và quản lý các chứng chỉ khóa công khai (Public Key Certificate) cũng như các khoá công khai và khóa bí mật (khóa riêng).

Hiện nay ở Việt Nam, việc nghiên cứu, ứng dụng và triển khai PKI nói chung và dịch vụ cung cấp chứng chỉ số nói riêng là vấn đề còn mang tính thời sự. Bằng việc sử dụng chứng chỉ và chữ ký số, những ứng dụng cho phép PKI đưa ra nhiều đặc tính đảm bảo an toàn thông tin cho người sử dụng đặc biệt là trong các giao dịch điện tử.

Mỗi mô hình thanh toán điện tử đại diện cho một phương thức thanh toán điện tử khác nhau như thanh toán bằng tiền mặt, bằng séc, bằng các loại thẻ…Mỗi phương thức thanh toán điện tử có các giao thức được xây dựng dựa trên nền tảng lý thuyết mật mã, đảm bảo cho các giao dịch thanh toán thực hiện an toàn và theo đúng quy trình. Vì vậy, mỗi phương thức thanh toán đều phải có các giao thức rõ ràng, đảm bảo an toàn cho việc giao dịch thông tin giữa các bên tham gia.

Luận văn thực hiện với mục đích nghiên cứu về hạ tầng cơ sở đảm bảo an toàn thông tin, hạ tầng mật mã khóa công khai PKI (Các thành phần kỹ thuật của PKI, các đối tượng và các hoạt động trong hệ thống PKI. . .), và một số công cụ dùng trong thanh toán điện tử (thẻ thanh toán, giải pháp và công nghệ sử dụng tiền điện tử).

Page 13: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-13-

Nội dung chính của Luận văn gồm có:

Chương 1: Các khái niệm cơ bản

Trong chương này sẽ trình bày một số khái niệm toán học, tổng quan về an toàn thông tin, một số vấn đề rủi ro mất an toàn thông tin, các chiến lược đảm bảo an toàn thông tin và tổng quan về thanh toán điện tử trong thương mại điện tử.

Chương 2: Hạ tầng cơ sở đảm bảo an toàn thông tin

Trong chương này trình bày tổng quan về hạ tầng mạng, hạ tầng đảm bảo an toàn thông tin, các giao thức đảm bảo an toàn truyền tin và hạ tầng mã hoá khóa công khai (PKI) (các thành phần kỹ thuật, các đối tượng, các hoạt động cơ bản, công nghệ và giao thức của PKI)

Chương 3: Một số tiện ích dùng trong thanh toán điện tử

Trong chương này giới thiệu một số tiện ích dùng trong thanh toán điện tử: Thẻ thanh toán (thẻ thông minh, thẻ tín dụng. . .), và một số hệ thống thanh toán bằng tiền điện tử.

Page 14: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-14-

CHƯƠNG 1 MỘT SỐ KHÁI NIỆM CƠ BẢN

1.1. CÁC KHÁI NIỆM TRONG TOÁN HỌC

1.1.1. Số nguyên tố và nguyên tố cùng nhau Số nguyên tố là số nguyên dương chỉ chia hết cho 1 và chính nó. Ví dụ: 2, 3, 5,… Các hệ mật mã thường dùng các số nguyên tố cỡ 512 bit hoặc lớn hơn. Hai số nguyên dương m và n được gọi là nguyên tố cùng nhau, nếu ước số chung

lớn nhất của chúng bằng 1, ký hiệu gcd(m, n) = 1. Ví dụ: 8 và 17 là hai số nguyên tố cùng nhau.

1.1.2. Đồng dư thức 1) Định nghĩa

Cho a và b là các số nguyên, khi đó a được gọi là đồng dư với b theo modulo n, ký hiệu là a b mod n nếu a, b chia cho n có cùng số dư. Số nguyên n được gọi là modulo của đồng dư.

Ví dụ: 5 7 mod 2 vì: 5 mod 2 = 1 và 7 mod 2 = 1

2) Tính chất

Cho a, a1, b, b1, cZ. Ta có các tính chất sau: + ab mod n nếu và chỉ nếu a và b có cùng số dư khi chia cho n + Tính phản xạ: aa mod n + Tính đối xứng: Nếu a b mod n thì ba mod n + Tính giao hoán: Nếu ab mod n và bc mod n thì ac mod n + Nếu aa1 mod n, bb1 mod n thì a+ba1+b1 mod n và aba1b1 mod n

3) Lớp tương đương

Lớp tương đương của một số nguyên a là tập hợp các số nguyên đồng dư với a theo modulo n.

Cho n cố định đồng dư với n trong không gian Z vào các lớp tương đương. Nếu a=qn +r, trong đó 0 r n thì a r mod n. Vì vậy mỗi số nguyên a là đồng dư theo modulo n với duy nhất một số nguyên trong khoảng từ 0 đến n-1 và được gọi là thặng dư nhỏ nhất của a theo modulo n. Cũng vì vậy, a và r cùng thuộc một lớp tương đương. Do đó r có thể đơn giản được sử dụng để thể hiện lớp tương đương. [1]

Page 15: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-15- 1.1.3. Không gian Zn và Zn

* Không gian các số nguyên theo modulo n: Zn là tập hợp các số nguyên không âm

nhỏ hơn n. Tức là: Zn = {0, 1, 2,… n-1}. Tất cả các phép toán trong Zn đều được thực hiện theo modulo n.

Ví dụ: Z25 ={0,1, 2,..., 24}. Trong Z25 : 12 + 20 = 7(mod 25)

Không gian Zn* là tập hợp các số nguyên p thuộc Zn sao cho ước chung lớn nhất

của p và n là 1. Tức là, Zn* = {p thuộc Zn | gcd(n, p) = 1}

Ví dụ: Z2 = { 0,1 }; Z*2 = {1} vì gcd(1, 2)=1

1.1.4. Khái niệm phần tử nghịch đảo trong Zn

1) Định nghĩa

Cho aZn. Nghịch đảo nhân của a theo modulo n là một số nguyên xZn sao cho a*x1 (mod n). Nếu tồn tại thì đó là giá trị duy nhất và a gọi là khả đảo, nghịch đảo của a ký hiệu là a-1.

2) Tính chất

+ Cho a,bZn . Phép chia của a cho b theo modulo n là tích của a và b-1 theo modulo n, và chỉ được xác định khi b có nghịch đảo theo modulo n.

+ Giả sử d=gcd(a, n). Phương trình đồng dư ax b (mod n) có nghiệm x nếu và chỉ nếu d chia hết cho b, trong trường hợp các nghiệm d nằm trong khoảng 0 đến n-1 thì các nghiệm đồng dư theo modulo n/d. [1]

Ví dụ: 4-1 = 7(mod 9) vì 4*7 1(mod 9).

Page 16: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-16- 1.1.5. Khái niệm nhóm, nhóm con, nhóm Cyclic

1) Nhóm

Nhóm là bộ các phần tử (G, *) thỏa mãn các tính chất sau:

+ Tính chất kết hợp: ( x * y ) * z = x * ( y * z )

+ Tính chất tồn tại phần tử trung gian e G: e * x= x * e = x , x G

+ Tính chất tồn tại phần tử nghịch đảo x’ G: x’ * x = x * x’ = e

2) Nhóm con

Nhóm con là bộ các phần tử ( S, * ) là nhóm thỏa mãn các tính chất sau:

1/ S G, phần tử trung gian e S

2/ x, y S => x * y S

3) Nhóm cylic

Nhóm Cyclic là nhóm mà mọi phần tử x của nó được sinh ra từ một phần tử đặc biệt g G. Phần tử này được gọi là phần tử nguyên thủy, tức là:

Với x G: n N mà gn = x.

Ví dụ: (Z+, *) là một nhóm cyclic có phần tử sinh là 1

1.1.6. Bộ phần tử sinh {g1, …, gk} được gọi là bộ phần tử sinh nếu mỗi gi là một phần tử sinh và những

phần tử này khác nhau (gi gj nếu i j).

Ví dụ: {3, 5} là bộ phần tử sinh của Z7*, bởi vì:

1 = 36 mod 7 = 56 mod 7 2 = 32 mod 7 = 54 mod 7

3 = 31 mod 7 = 55 mod 7 4 = 34 mod 7 = 52 mod 7

5 = 35 mod 7 = 51 mod 7 6 = 33 mod 7 = 53 mod 7

2 không phải là phần tử sinh của Z7*, bởi vì:

{2, 22, 23, 24, 25, 26} = {1, 4, 1, 2, 4, 1} {1, 2, 4}

Tuy nhiên {1, 2, 4} là tập con của {1, 2, 3, 4, 5, 6} = Z7*, dó đó số 2 được gọi là “phần tử sinh của nhóm G(3)”, G(3) là nhóm có 3 thành phần {1, 2, 4}.

Page 17: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-17- 1.1.7 Bài toán đại diện

Gọi g là phần tử sinh của nhóm con G(q) thuộc Zn*. Bài toán logarit rời rạc liên quan đến việc tìm số mũ a, sao cho:

a = loggh mod n (với h G (q)).

Cho k 2, 1 ai q, i = 1… k.

Bài toán đại diện là: cho h thuộc G(q), tìm {a1, …, ak}, của bộ phần tử sinh {g1, …, gk}, sao cho:

h = g1a1 * g2

a2 *… * gkak mod n.

{a1, …, ak} được gọi là đại diện (presentation).

Ví dụ: Cho tập Z23*, thì ta có thể tìm được:

Nhóm con G (11) = {1, 2, 3, 4, 6, 8, 9, 12, 13, 16, 18} với những phần tử sinh gi là: 2, 3, 4, 6, 8, 9, 12, 13, 16, 18.

{2, 3} là 2 phần tử sinh của nhóm con G (11) trong Z23*.

Bài toán đại diện là với h = 13 G (11), tìm {a1, a2} sao cho:

13 = 2a1 * 3a2 mod 23

Logarit hai vế, có a1*log(2) + a2*log(3) = log(13) mod 23.

Kết quả là: a1 = 2 và a2 =2, vì 22 * 32 = 4*9 = 36 = 13 mod 23.

Hay a1 = 7 và a2 = 11, vì 27 * 311 = 128*177147 = 13 mod 23.

1.1.8. Hàm một phía và hàm một phía có cửa sập 1) Hàm một phía

Một hàm một phía là hàm mà dễ dàng tính toán ra quan hệ một chiều, nhưng rất khó để tính ngược lại. Ví như biết x thì có thể dễ dàng tính ra f(x), nhưng nếu biết f(x) thì rất khó tính ra được x. Trong trường hợp này “khó” có nghĩa là để tính ra được kết quả thì phải mất rất nhiều thời gian để tính toán.

Ví dụ:

Tính y = f(x) = αx mod p là dễ nhưng tính ngược lại x = logα y là bài toán “khó” (bài toán logarit rời rạc)

Page 18: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-18-

2) Hàm một phía có cửa sập

F(x) được gọi là hàm một phía có cửa sập nếu tính xuôi y = f(x) thì dễ, nhưng tính ngược x = f-1(y) thì khó, tuy nhiên nếu có “cửa sập” thì vấn đề tính ngược trở nên dễ dàng. Cửa sập ở đây là một điều kiện nào đó giúp chúng ta dễ dàng tính ngược. [1]

Ví dụ:

y = f(x) =xb mod n tính xuôi thì dễ nhưng tính ngược x= ya mod n thì khó, vì phải biết a với a * b 1 (mod( (n)) trong đó (n) = (p-1)(q-1)). Nhưng nếu biết cửa sập p, q thì ta tính (n) sau đó tính a trở nên dễ dàng.

1.1.9. Độ phức tạp tính toán Độ phức tạp tính toán (về không gian hay thời gian) của một tiến trình tính toán

là số ô nhớ được dùng hay số các phép toán sơ cấp được thực hiện trong tiến trình tính toán đó. Dữ liệu đầu vào đối với một thuật toán thường được biểu diễn qua các từ trong một bảng ký tự nào đó. Độ dài của một từ là số ký tự trong từ đó.

Cho thuật toán A trên bảng ký tự Z ( tức là có các đầu vào là các từ trong Z). Độ phức tạp tính toán của thuật toán A được hiểu như một hàm số fa(n) sao cho với mỗi số n thì fa(n) là số ô nhớ, hay số phép toán sơ cấp tối đa mà A cần để thực hiện tiến trình tính toán của mình trên các dữ liệu vào có độ dài nhỏ hơn hoặc bằng n. Ta nói: thuật toán A có độ phức tạp thời gian đa thức, nếu có một đa thức p(n) sao cho với mọi n đủ lớn ta có: fa(n) p(n), trong đó fa(n) là độ phức tạp tính toán theo thời gian của A.

Bài toán P được gọi là “giải được” nếu tồn tại thuật toán để giải nó, tức là thuật toán làm việc có kết thúc trên mọi dữ liệu đầu vào của bài toán. Bài toán P được gọi là “giải được trong thời gian đa thức” nếu có thuật toán giải nó với độ phức tạp thời gian đa thức. [1]

Page 19: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-19- 1.2. TỔNG QUAN VỀ AN TOÀN THÔNG TIN

1.2.1. Tại sao phải đảm bảo an toàn thông tin Ngày nay, với sự phát triển mạnh mẽ của công nghệ thông tin thì việc ứng dụng

các công nghệ mạng máy tính trở nên vô cùng phổ cập và cần thiết.

Công nghệ mạng máy tính đã mang lại những lợi ích to lớn. Sự xuất hiện mạng Internet cho phép mọi người có thể truy cập, chia sẻ và khai thác thông tin một cách dễ dàng và hiệu quả. Việc ứng dụng các mạng cục bộ trong các tổ chức, công ty hay trong quốc gia là rất phong phú. Các hệ thống chuyển tiền của các ngân hàng hàng ngày có thể chuyển hàng tỷ đôla qua hệ thống của mình. Các thông tin về kinh tế, chính trị, khoa học xã hội được trao đổi rộng rãi. Nhất là trong quân sự và kinh tế, bí mật là yếu tố vô cùng quan trọng, do vậy các thông tin về quân sự và kinh tế được xem như là các thông tin tuyệt mật và cần được bảo vệ cẩn thận. Đó cũng là một quá trình tiến triển hợp logic, một yêu cầu thực tế tất yếu đặt ra cần phải được giải quyết. Những thông tin này khi bị lộ có thể làm thay đổi cục diện của một cuộc chiến tranh hay làm phá sản nhiều công ty và làm xáo động thị trường.

Internet không chỉ cho phép truy cập vào nhiều nơi trên thế giới mà còn cho phép nhiều người không mời mà tự ghé thăm máy tính của chúng ta. Internet có những kỹ thuật tuyệt vời cho phép mọi người truy nhập, khai thác, chia sẻ thông tin. Nhưng nó cũng là nguy cơ chính dẫn đến thông tin bị hư hỏng hoặc bị phá hủy hoàn toàn, là đối tượng cho nhiều người tấn công với các mục đích khác nhau. Đôi khi cũng chỉ đơn giản là thử tài hay đùa bỡn với người khác. Nguy hiểm hơn là các thông tin quan trọng có liên quan đến an ninh của một quốc gia, bí mật kinh doanh của một tổ chức kinh tế hay các thông tin về tài chính, lại thường là mục tiêu nhằm vào của các tổ chức tình báo nước ngoài hoặc của kẻ cắp nói chung. Thử tưởng tượng nếu có kẻ xâm nhập được vào hệ thống chuyển tiền của các ngân hàng, thì ngân hàng đó sẽ chịu những thiệt hại to lớn như mất tiền và có thể dẫn tới phá sản. Đó là chưa tính đến mức độ nguy hại, một hậu quả không thể lường trước được khi hệ thống an ninh quốc gia bị đe dọa.

Để hình dung được mức độ nguy hại mà kẻ tấn công gây ra như thế nào, chúng ta thử tìm hiểu những con số mà đội cấp cứu máy tính CERT (Computer Emegency Response Team) đã cung cấp cho chúng ta như sau: số lượng các vụ tấn công trên Internet được thông báo cho tổ chức này là ít hơn 200 vào năm 1989, khoảng 400 vào năm 1991, 1400 vào năm 1993, và 2241 vào năm 1994. [1]

Page 20: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-20-

Các vụ tấn công này có quy mô khổng lồ, có tới 100.000 máy tính có mặt trên Internet, của các công ty lớn như AT&T, IBM; của các trường đại học, các cơ quan nhà nước, các tổ chức quân sự, nhà băng,… bị tấn công. Không chỉ số lượng các cuộc tấn công tăng lên nhanh chóng, mà các phương pháp tấn công cũng liên tục được hoàn thiện. Như vậy, khi phải đối mặt với những khó khăn đó chúng ta phải giải quyết ra làm sao?

Chính vì vậy vấn đề an toàn thông tin trở thành yêu cầu chung của mọi hoạt động kinh tế xã hội và giao tiếp của con người, và là vấn đề cấp bách cần được cọi trọng và quan tâm đặc biệt.

1.2.2. Một số vấn đề rủi ro mất an toàn thông tin.

1.2.2.1. Xâm phạm tính bí mật. Các hệ thống TMĐT lưu giữ dữ liệu của người dùng và lấy lại các thông tin về

sản phẩm từ các CSDL kết nối với máy chủ Web. Ngoài các thông tin về sản phẩm, các CSDL có thể chứa các thông tin có giá trị và mang tính riêng tư.

Khi giao dịch qua internet, thông tin giao dịch được truyền đi trên mạng, những thông tin này rất có thể bị nghe nén, hay bị dò rỉ, bị đánh cắp trên đường truyền làm lộ tính bí mật của cuộc giao dịch. Trong một cuộc giao dịch điện tử nói việc đảm bảo tính bí mật luôn phải đặt lên hàng đầu.Bằng không, doanh nghiệp có thể gặp những nguy cơ như nghe trộm, giả mạo, mạo danh hay chối cãi nguồn gốc ...

Khi những thông tin nhạy cảm như thông tin cá nhân, thông tin thẻ tín dụng, thông tin giao dịch… bị lấy cắp trên đường truyền gây ra những thiệt hại không nhỏ với cả hai bên giao dịch. Một phần mềm đặc biệt, được gọi là trình đánh hơi (sniffer) đưa ra cách móc nối vào Internet và ghi lại thông tin qua các máy tính đặc biệt (thiết bị định tuyến - router) trên đường đi từ nguồn tới đích. Chương trình sniffer gần giống với việc móc nối vào đường dây điện thoại để nghe thông tin cuộc đàm thoại. Chương trình sniffer có thể đọc thông báo thư tín điện tử cũng như các thông tin TMĐT.

Tình trạng lấy cắp số thẻ tín dụng là một vấn đề quá rõ ràng, nhưng các thông tin thỏa thuận hợp đồng, hoặc các trang dữ liệu được phát hành gửi đi cho các chi nhánh của hãng có thể bị chặn xem một cách dễ dàng. Thông thường các thông tin bí mật của hãng, các thông tin trong cuộc giao kết hợp đồng còn có giá trị hơn nhiều so với một số thẻ tín dụng, các thông tin bị lấy cắp của hãng có thể trị giá đến hàng triệu đô la.

Page 21: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-21- 1.2.2.2. Xâm phạm tính toàn vẹn

Mối hiểm họa đối với tính toàn vẹn tồn tại khi một thành viên trái phép có thể sửa đổi các thông tin trong một thông báo. Các giao dịch ngân hàng không được bảo vệ, ví dụ tổng số tiền gửi được chuyển đi trên internet, là chủ thể của xâm phạm tính toàn vẹn. Tất nhiên, tính xâm phạm toàn vẹn bao hàm cả xâm phạm tính bí mật. Bởi vì một đối tượng xâm phạm (sửa đổi thông tin trái phép) có thể đọc và làm sáng tỏ thông tin. Không giống hiểm họa với tính bí mật. Các hiểm họa tới tính toàn vẹn gây ra sự thay đổi trong các hoạt động của một cá nhân hoặc một công ty, do nội dung cuộc truyền thông bị thay đổi

Phá hoại điều khiển (Cyber vandalism) là một ví dụ về xâm phạm tính toàn vẹn. Cyber vandalism phá (xóa bỏ để không đọc được) một trang web đang tồn tại. Cyber Vandalism xảy ra bất cứ khi nào, khi các cá nhân thay đổi định kỳ nội dung trang web của họ.

Tấn công toàn vẹn chính và việc sửa đổi một yêu cầu và gửi nó tới máy chủ của một công ty thực. Máy chủ thương mại không biết được tấn công này, nó chỉ kiểm tra số thẻ tin dụng của khách hàng và tiếp tục thực hiện yêu cầu.

1.2.2.3. Xâm phạm tính sẵn sàng Mục đích của xâm phạm tính sẵn sàng là phá vỡ quá trình xử lý thông thường

của máy tính hoặc chối bỏ toàn bộ quá trình xử lý.

Xâm phạm tính sẵn sàng là tấn công từ chối giao dịch. Khi khách hàng, đối tác thấy các sản phẩm hàng hóa của doanh nghiệp, nhà cung cấp…thỏa mãn các yêu cầu về sản phẩm của họ, họ muốn thỏa thuận giao kết hợp đồng với nhà cung cấp. Một kết nối giao dịch đến nhà cung cấp được thiết lập. Tấn công từ chối giao dịch sẽ ngăn cản làm chậm thậm chí từ chối sự kết nối giao dịch này. Điều này ảnh hưởng rất lớn đến hoạt động thương mại của doanh nghiệp, gây tổn thất doanh thu, thậm chí gây mất lòng tin của khách hàng- yếu tố được chú trọng hàng đầu của doanh nghiệp.

Page 22: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-22- 1.2.2.4. Giả mạo nguồn gốc giao dịch

Giao dịch trên mạng là loại hình giao dịch không biên giới, có tính chất toàn cầu. Các bên giao dịch không gặp nhau, thậm chí không hề quen biết nhau, và đây cũng chính là cơ hội để cho kẻ xấu lợi dụng để thực hiện mục đích của mình. Vì vậy, việc kiểm tra tính đúng đắn của thông tin trong giao dịch cần phải được thực hiện thường xuyên để phòng tránh những rủi ro như thông tin gây nhiễu, giả mạo hay lừa đảo.

Mặc dù đã dùng những biện pháp kỹ thuật để bảo mật thông tin trong giao dịch, song khi nhận được các thông tin người dùng vẫn phải kiểm tra tính đúng đắn, xác thực của thông tin.

1.2.2.5. Chối bỏ giao dịch Chối bỏ giao dịch được được định nghĩa là sự không thừa nhận của một trong các

thực thể tham gia truyền thông, anh ta không tham gia tất cả hoặc một phần cuộc truyền thông … Khác với giao dịch thông thường khi đối tác hai bên biết mặt nhau, thì trong giao dịch điện tử được thực hiện trong môi trường Internet … Các bên tham gia giao dịch điện tử ở cách xa nhau về địa lý, thậm chí họ có thể không biết mặt nhau thì vấn đề chối bỏ giao dịch có thể xảy ra rất cao và luật pháp cho chúng chưa nhiều, gây ra những thiệt hại to lớn cho bên tham giao dịch.

1.2.2.6. Các hiểm họa đối với hệ thống giao dịch

1) Hiểm họa với máy chủ Máy chủ là liên kết thứ 3 trong bộ ba máy khách - Internet - máy chủ (Client -

Internet-Server), bao gồm đường dẫn TMĐT giữa một người dùng và một máy chủ thương mại. Máy chủ có những điểm yếu dễ bị tấn công và một đối tượng nào đó có thể lợi dụng những điểm yếu này để phá huỷ, hoặc thu được các thông tin một cách trái phép. Hiểm hoạ đối với máy chủ bao gồm máy chủ Web, máy chủ CSDL và các phần mềm của chúng, các chương trình phụ trợ bất kỳ có chứa dữ liệu, các chương trình tiện ích được cài đặt trong máy chủ. Hiểm họa với máy chủ CSDL:

Các hệ thống TMĐT lưu giữ dữ liệu của người dùng và lấy lại các thông tin về sản phẩm từ các CSDL kết nối với máy chủ Web. Ngoài các thông tin về sản phẩm, các CSDL có thể chứa các thông tin có giá trị và mang tính riêng tư. Tính bí mật luôn sẵn sàng trong các CSDL, thông qua các đặc quyền được thiết lập trong CSDL.

Page 23: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-23-

Tuy nhiên, một số CSDL lưu giữ mật khẩu/tên người dùng một cách không an toàn, hoặc dựa vào máy chủ Web để có an toàn. Khi an toàn bị vi phạm, CSDL bị dùng bất hợp pháp, làm lộ hoặc tải về các thông tin mang tính cá nhân và quý giá. Các chương trình con ngựa thành Tơroa nằm ẩn trong hệ thống CSDL cũng có thể làm lộ các thông tin bằng việc giáng cấp các thông tin này (có nghĩa là chuyển các thông tin nhạy cảm sang một vùng ít được bảo vệ của CSDL, do đó bất cứ ai cũng có thể xem xét các thông tin này). Khi các thông tin bị giáng cấp, tất cả những người dùng, không ngoại trừ những đối tượng xâm nhập trái phép cũng có thể truy nhập. Hiểm họa với máy chủ web:

Các máy chủ Web được thiết lập chạy ở các mức đặc quyền khác nhau. Mức thẩm quyền cao nhất có độ mềm dẻo cao nhất, cho phép các chương trình thực hiện tất cả các chỉ lệnh của máy và không giới hạn truy nhập vào tất cả các phần của hệ thống, không ngoại trừ các vùng nhạy cảm và phải có thẩm quyền. Việc thiết lập một máy chủ Web chạy ở mức thẩm quyền cao có thể gây hiểm hoạ về an toàn đối với máy chủ Web. Trong hầu hết thời gian, máy chủ Web cung cấp các dịch vụ thông thường và thực hiện các nhiệm vụ với một mức thẩm quyền rất thấp. Nếu một máy chủ Web chạy ở mức thẩm quyền cao, một đối tượng xấu có thể lợi dụng một máy chủ Web để thực hiện các lệnh trong chế độ thẩm quyền.

Một trong các file nhạy cảm nhất trên máy chủ Web chứa mật khẩu và tên người dùng của máy chủ Web. Nếu file này bị tổn thương, bất kỳ ai cũng có thể thâm nhập vào các vùng thẩm quyền, bằng cách giả mạo một người nào đó. Do đó, có thể giả danh để lấy được các mật khẩu và tên người dùng nên các thông tin liên quan đến người dùng không còn bí mật nữa.

2) Hiểm họa với máy khách Cho đến khi được biểu diễn trên web, các trang web chủ yếu được biểu diễn dưới

trạng thái tĩnh. Thông qua ngôn ngữ biểu diễn siêu văn bản HTML, các trang tĩnh cũng ở dạng động một phần chứ không đơn thuần chỉ hiển thị nội dung và cung cấp liên kết các trang web với thông tin bổ sung. Việc dùng những nội dung động (active content) mang lại sự sống động cho web tĩnh nhưng đã gây ra một số rủi ro cho trong TMĐT. Gây ra những hiểm họa với máy khách. Active content được dùng trong TMĐT để đặt các khoản mục mà chúng ta muốn mua trong giỏ mua hàng và tính toán tổng số hóa đơn, bao gồm thuế bán hàng, các chi phí vận chuyển và chi phí xử lý.

Page 24: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-24-

Các nhà phát triển nắm lấy active content vì nó tận dụng tối đa chức năng của HTML và bổ sung thêm sự sống cho các trang web, làm cho trang web có tương tác với người dùng cao hơn. Nó cũng giảm bớt gánh nặng cho các máy chủ khi phải xử lý nhiều dữ liệu. Gánh nặng này được chuyển bớt sang cho máy khách nhàn dỗi của người dùng.

Active content cho các trang Web khả năng thực hiện các hoạt động trong suốt hoàn toàn đối với bất kỳ người nào xem duyệt trang Web chứa chúng. Bất kỳ ai cố tình gây hại cho một máy khách đều có thể nhúng một active content gây hại vào các trang Web. Kỹ thuật lan truyền này được gọi là con ngựa thành Tơroa.

Các cookie được dùng để nhớ các thông tin yêu cầu của khách hàng, hoặc tên người dùng và mật khẩu. Nhiều active content gây hại có thể lan truyền thông qua các cookie, chúng có thể phát hiện được nội dung của các file phía máy khách, hoặc thậm chí có thể huỷ bỏ các file được lưu giữ trong các máy khách. Trên máy tính cá nhân có lưu một số lượng lớn các cookie giống như trên Internet và một số các cookie có thể chứa các thông tin nhạy cảm và mang tính chất cá nhân.

Như vậy, các hiểm hoạ đối với máy khách khi khai thác thông tin qua Internet là lớn và rất khó nhận diện.

3) Các hiểm họa đối với kênh truyền thông Internet đóng vai trò kết nối một khách hàng với một tài nguyên TMĐT (máy

tính dịch vụ thương mại). Chúng ta đã xem xét các hiểm hoạ đối với các máy khách, máy chủ, các tài nguyên tiếp theo chính là kênh truyền thông, các kênh này được dùng để kết nối các máy khách và máy chủ.

Các thông báo trên Internet được gửi đi theo một đường dẫn ngẫu nhiên, từ nút nguồn tới nút đích. Các thông báo đi qua một số máy tính trung gian trên mạng trước khi tới đích cuối cùng và mỗi lần đi chúng có thể đi theo những tuyến đường khác nhau. Không có gì đảm bảo rằng tất cả các máy tính mà thông báo đi qua trên Internet đều an toàn. Những đối tượng trung gian có thể đọc các thông báo, sửa đổi, hoặc thậm chí có thể loại bỏ hoàn toàn các thông báo của chúng ta ra khỏi Internet. Do vậy, các thông báo được gửi đi trên mạng là đối tượng có khả năng bị xâm phạm đến tính bí mật, tính toàn vẹn và tính sẵn sàng. [3]

Page 25: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-25- 1.2.3. Chiến lược đảm bảo an toàn thông tin

Giới hạn quyền: Đây là nguyên tắc cơ bản trong an toàn nói chung. Đối với mỗi người dùng hệ thống chỉ được truy nhập vào một số tài nguyên hệ thống nhất định, đủ để dùng cho công việc của mình. Phòng thủ theo chiều sâu: phân ra thành nhiểu lớp bảo vệ. Dưới đây là hình vẽ tượng trưng cho lớp bảo vệ đó.

Hình 1.1: Các lớp bảo vệ thông tin Thông tin nằm ở tầng trong cùng, trên nó là sự giới hạn quyền truy nhập, tiếp

theo là giới hạn đăng nhập và mật khẩu, tiếp theo là mã hóa thông tin, tiếp theo là bảo vệ vât lý (khóa cửa phòng máy tính, khóa bàn phím, ổ ghi…), ngoài cùng là tường lửa.

Các phương pháp bảo đảm an toàn thông tin:

1) Kiểm soát truy nhập thông tin. Bao gồm:

+ Kiểm soát, ngăn chặn các thông tin vào ra hệ thống máy tính

+ Kiểm soát, cấp quyền sử dụng các thông tin trong hệ thống máy tính

+ Kiểm soát, tìm diệt Vius vào ra hệ thống máy tính

Công cụ, kỹ thuật sử dụng để kiểm soát truy nhập là: Mật khẩu, tường lửa, mạng riêng ảo, nhận dạng, xác thực thực thể, cấp quyền hạn.

2) Bảo mật thông tin.

Nhằm đảm bảo thông tin không bị lộ đối với người không được phép.

Công cụ, kỹ thuật sử dụng để bảo mật thông tin là: Mã hóa ( Thay đổi hình dạng dữ liệu gốc, người khác khó nhận ra), giấu tin (cất giấu dữ liệu này trong môi trường dữ liệu khác).

3) Bảo toàn thông tin

Nhằm ngăn chặn, hạn chế việc bổ sung, loại bỏ và sửa dữ liệu không được phép.

Công cụ, kỹ thuật sử dụng để bảo toàn thông tin là: Mã hóa, giấu tin, hàm băm, ký số, thủy ký.

Thông tin

Mã hóa dữ liệu

Bảo vệ bằng phương pháp

vật lí

Password đăng nhập

Quyền truy nhập

Page 26: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-26- 4) Xác thực nguồn gốc thông tin

Nhằm xác thực đúng thực thể cần kết nối, giao dịch, nguồn gốc của thông tin.

Công cụ, kỹ thuật sử dụng để xác thực nguồn gốc thông tin là: Chữ ký số, giao thức xác thực thông tin.

5) Phương pháp chống chối cãi

Nhằm xác thực đúng thực thể có trách nhiệm về nội dung thông tin.

Công cụ, kỹ thuật sử dụng để xác thực thực thể, chống chối cãi là: Chữ ký số, giao thức xác thực thông tin, truy tìm dấu vết.

6) Kiểm soát và xử lý các « lỗ hổng » an ninh.

Phát hiện và xử lý các « lỗ hổng » trong các thuật toán, các giao thức mật mã giấu tin, trong các giao thức mạng, hệ điều hành mạng và trong các ứng dụng. [1]

Page 27: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-27- 1.3. TỔNG QUAN VỀ THANH TOÁN ĐIỆN TỬ

1.3.1. Khái niệm Thương mại điện tử Ngày nay, Khi Internet phát triển mạnh mẽ và ngày càng trở nên phổ cập, thì

khái niệm TMĐT (E- commerce) không còn xa lạ với dân cư mạng nói riêng, và toàn xã hội nói chung. Đó là quá trình mua bán hàng hóa hay dịch vụ thông qua việc truyền dữ liệu giữa các máy tính trong chính sách phân phối tiếp thị thông qua mạng internet.

Bao gồm tất cả các loại giao dịch thương mại trong đó tất cả các đối tác thương mại dùng kỹ thuật công nghệ thông tin.

1.3.2. Vấn đề thanh toán điện tử Thanh toán là một trong những vấn đề phức tạp nhất của hoạt động thương mại

điện tử (TMĐT). Hoạt động TMĐT chỉ phát huy được tính ưu việt của nó khi áp dụng được hình thức thanh toán từ xa - thanh toán điện tử.

Thanh toán điện tử (electronic payment) là việc thanh toán tiền thông qua các thông điệp điện tử (electronic message) thay cho việc thanh toán bằng séc hay tiền mặt. Bản chất của mô hình thanh toán điện tử cũng là mô phỏng lại những mô hình mua bán truyền thống, nhưng từ các thủ tục giao dịch, thao tác xử lý dữ liệu rồi thực hiện chuyển khoản, tất cả đều thực hiện thông qua hệ thống máy tính được nối mạng bằng các giao thức riêng chuyên dụng. [7],[8].

Về mặt mô hình, một phương thức thanh toán nói chung là một mô tả hoạt động của một hệ thống xử lý phân tán có nhiều bên tham gia, trong đó có hai bên cơ bản là bên mua (người trả tiền) và bên bán (người được trả tiền). Các bên được đại diện bởi các máy tính của mình nối với nhau qua mạng máy tính, sử dụng chúng để thực hiện các giao thức thanh toán.

Hệ thống có thể có các tổ chức tài chính (ví dụ các ngân hàng) đại diên cho mỗi bên. Trong một số hệ thống thanh toán lại sử dụng một thực thể khác đóng vai trò là người môi giới, đảm nhiệm việc phát hành những hình thức của tiền hoặc một vật thể nào đó mang giá trị trao đổi thanh toán thường được gọi là đồng tiền số (digital coin) hoặc séc điện tử (electronic cheque) và đổi lại thành tiền mặt.

Đặc trưng của mô hình thanh toán điện tử là các bên tham gia sẽ trao đổi với nhau các chứng từ được số hoá (thành những chuỗi bit máy tính có thể dùng được). Bản chất là bên được thanh toán có thể thông qua ngân hàng của mình (tất nhiên là phải liên hệ với ngân hàng của bên thanh toán) để chuyển tiền vào tài khoản của mình. Các quá trình này sẽ được phản ánh trong các giao thức thanh toán của mỗi hệ thống.

Page 28: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-28- Có 2 mô hình thanh toán được sử dụng trong thanh toán điện tử là:

Mô hình trả sau:

Trong mô hình này, thời điểm tiền mặt được rút ra khỏi tài khoản bên mua để chuyển sang bên bán, xảy ra ngay (pay-now) hoặc sau (pay-later) giao dịch mua bán. Hoạt động của hệ thống dựa trên nguyên tắc tín dụng (credit credential). Nó còn được gọi là mô hình mô phỏng Séc (Cheque-like model)

Mô hình trả trước:

Trong mô hình này, khách hàng liên hệ với ngân hàng (hay công ty môi giới – broker) để có được chứng từ do ngân hàng phát hành. Chứng từ hay đồng tiền số này mang dấu ấn của ngân hàng, được đảm bảo bởi ngân hàng và do đó có thể dùng ở bất cứ nơi nào đã có xác lập hệ thống thanh toán với ngân hàng này.

Vì nó có thể sử dụng giống như tiền mặt, do đó mô hình này còn được gọi là mô hình mô phỏng tiền mặt (Cash-like model).

Có 2 hình thức thanh toán trong thanh toán điện tử là :

Thanh toán ngoại tuyến (off-line payment) Phiên giao dịch giữa người sử dụng và nhà cung cấp có thể diễn ra, mà không

cần đến sự tham gia của ngân hàng. Nói cách khác, nhà cung cấp tự kiểm tra tính hợp lệ của đồng tiền, mà không cần sự trợ giúp của bên thứ ba.

Thanh toán trực tuyến (online payment) Trong mỗi lần giao dịch, nhà cung cấp sẽ yêu cầu ngân hàng kiểm tra tính hợp lệ

của đồng tiền do người dùng chuyển trước khi chấp nhận thanh toán. Vì vậy, hệ thống thanh toán trực tuyến có khả năng kiểm tra được tính tin cậy của đồng tiền.

Thanh toán trực tuyến thích hợp với những giao dịch có giá trị lớn. Với hệ thống này, quá trình thanh toán và gửi tiền vào ngân hàng tách biệt nhau trong mỗi lần giao dịch. Do vậy, chi phí về thời gian cũng như tiền bạc sẽ tốn kém hơn. [3], [7], [8].

Page 29: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-29- 1.4. CÔNG CỤ CNTT DÙNG TRONG THANH TOÁN ĐIỆN TỬ

1.4.1 Hạ tầng cơ sở bảo đảm an toàn thông tin

1.4.1.1. Tường lửa Tường lửa được dùng như một hàng rào giữa một mạng (cần được bảo vệ) và

internet hoặc mạng khác (có khả năng gây ra mối đe dọa). Mạng và các máy tính cần được bảo vệ nằm bên trong bức tường lửa, các mạng khác nằm ở bên ngoài. Các bức tường lửa có các đặc điểm sau đây:

Tất cả các luồng thông tin từ trong ra ngoài, từ ngoài vào trong đều phải chịu sự quản lý của nó.

Chỉ có các luồng thông tin được phép đi qua nó.

Bức tường lửa tự bảo vệ mình.

Các bức tường lửa hoạt động ở tầng ứng dụng. Chúng cũng có thể hoạt động ở tầng mạng và tầng vận tải. Các site của công ty khác nhau phải có một bức tường lửa cho mỗi kết nối ngoài với internet. Đảm bảo một phạm vi an toàn không thể phá vỡ. Ngoài ra, mỗi bức tường lửa trong công ty phải tuân theo chính sách an toàn.

1.4.1.2. Mạng riêng ảo Mạng riêng ảo VPN (Virtual Private Network) là giải pháp công nghệ cho phép

thiết lập mạng dùng riêng trên nền mạng công cộng sẵn có bằng cơ chế mã hóa, tạo ra các “đường hầm ảo” thông suốt và bảo mật.

Bảo mật của VPN còn được hỗ trợ bằng công nghệ thẻ thông minh và sinh trắc học. Micrsoft đã tích hợp một giao thức khác gọi là EAP-TLS trong Windows, chuyên trách công việc này cho VPN truy cập từ xa.

EAP-TLS là chữ viết tắt của Extensible Authentication Protocol - Transport Layer Security (giao thức thẩm định quyền truy cập có thể mở rộng - bảo mật lớp truyền dẫn). Kết nối dựa trên giao thức này đòi hỏi có một chứng nhận người dùng (user certificate) trên cả máy khách và máy chủ IAS của mạng VPN. Đây là cơ chế có mức độ an toàn nhất ở cấp độ người dùng.

Page 30: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-30-

Một mạng VPN điển hình bao gồm mạng LAN chính tại trụ sở (Văn phòng chính), các mạng LAN khác tại những văn phòng từ xa, các điểm kết nối (như "Văn phòng" tại gia) hoặc người dùng (Nhân viên di động) truy cập đến từ bên ngoài. [3]

1.4.1.3 Hạ tầng mật mã hóa công khai Nhu cầu sử dụng dịch vụ chữ ký số trong đời sống xã hội đang ngày được quan

tâm. Để có thể triển khai dịch vụ này thì cần phải có một cơ sở hạ tầng mật mã hóa công khai (PKI) hoàn chỉnh, ổn định.

Khái niệm PKI đã được thế giới biết đến từ hơn 20 năm nay, hiện đang được coi là giải pháp tốt nhất trong việc bảo mật, xác thực và toàn vẹn dữ liệu trong các giao dịch điện tử với các ứng dụng trực tuyến như ngân hàng điện tử, thanh toán điện tử, ký số tài liệu, xác thực đăng nhập…

Hàng triệu người trên khắp thế giới đã truy cập vào các website để thực hiện các tác vụ như thanh toán ngân hàng, mua bán trực tuyến… và PKI được sử dụng để đảm bảo an toàn cho các phiên giao dịch đó.

Tại Việt Nam, giao dịch điện tử cũng đã được phát triển mạnh mẽ cả ở khối Nhà nước cũng như khối thương mại – doanh nghiệp, và đi kèm theo đó là nhu cầu cần có ứng dụng chữ ký số (chữ ký điện tử), nhiều Bộ, ngành đã và đang chuẩn bị triển khai các dịch vụ công trực tuyến bắt buộc phải sử dụng chữ ký số mới đạt yêu cầu dịch vụ hoàn chỉnh, điển hình như thuế điện tử (e-tax) của Tổng cục Thuế, ngân hàng điện tử (e-banking) của Ngân hàng Nhà nước, chứng nhận nguồn gốc xuất xứ điện tử (e-certificate of origin) của Bộ Công Thương…

Cơ sở hạ tầng khoá công khai PKI có thể hiểu là một tập hợp các công cụ, phương tiện và các giao thức đảm bảo an toàn truyền tin cho các giao dịch trên mạng máy tính công khai. Đó là nền móng mà trên đó các ứng dụng, các hệ thống an toàn bảo mật thông tin được thiết lập. [2], [13].

Hình 1.2 : Một hệ thống mạng riêng ảo

Page 31: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-31- 1.4.2. Một số tiện ích dùng trong thanh toán điện tử

1.4.2.1. Thanh toán bằng các loại thẻ 1) Thẻ tín dụng

Thanh toán bằng thẻ tín dụng là phương thức được sử dụng rộng rãi nhất hiện nay trên Internet. Để thực hiện giao dịch, người mua hàng chỉ việc cung cấp số hiệu thẻ và thời hạn sử dụng của tấm thẻ, người bán sẽ chuyển các thông tin này đến ngân hàng để xác nhận giao dịch. Phương thức thanh toán này chủ yếu thực hiện thanh toán theo kiểu trực tuyến.

Ưu điểm: Đây là phương thức thanh toán đơn giản và dễ sử dụng.

Nhược điểm: Kiểu thanh toán này không an toàn cho cả hai bên mua và bán, không cho phép ẩn danh, chi phí cao và không cho phép thanh toán nhỏ lẻ.

2) Thẻ “tiền mặt”

Thẻ “tiền mặt” được phát triển đáp ứng nhu cầu giảm việc giữ tiền mặt của khách hàng và mong muốn phương tiện thanh toán thuận tiện và linh hoạt hơn. Thẻ “tiền mặt” được phân loại theo đặc điểm vật lý thành hai loại: thẻ từ và thẻ thông minh.

Thẻ từ, đã tồn tại khá lâu, sử dụng các vạch từ để lưu trữ thông tin, trong khi thẻ thông minh sử dụng công nghệ vi mạch để lưu trữ thông tin, khắc phục nhược điểm về tính an toàn của thẻ từ. Thẻ thông minh được thiết kế nhằm ngăn chặn tình trạng giả mạo và làm sai lệch các thông tin được lưu giữ.

1.4.2.2. Thanh toán bằng séc điện tử Séc điện tử chính là một hình thức thể hiện của séc giấy. Nói cách khác, séc điện

tử bao gồm tất cả các thông tin trên séc giấy truyền thống nhưng có thể chuyển được bằng thư điện tử (e-mail), có khuôn dạng đặc biệt được gửi trên Internet. Bên trong bức thư điện tử là tất cả các thông tin giống như trên một tấm séc giấy gồm tên người hưởng, số tiền, ngày thanh toán, số tài khoản người trả tiền và ngân hàng của người trả. Séc điện tử được “ký” bằng chữ ký điện tử của người gửi và được mã hoá bằng khoá công khai của người nhận. Nó cũng gồm một xác nhận số từ ngân hàng của người gửi xác nhận rằng số tài khoản là hợp lệ và thuộc về người ký tờ séc này.

Page 32: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-32- 1.4.2.3. Thanh toán bằng tiền điện tử

Đây là phương tiện thanh toán được sử dụng trong thương mại điện tử. Tiền điện tử e-cash (còn gọi là tiền mặt số, xu điện tử…) có các thông tin giống như trên tiền mặt thông thường: nơi phát hành, giá trị bao nhiêu và số seri duy nhất.

Người tiêu dùng có thể mua tiền mặt điện tử và lưu trữ nó trong một ví tiền số (digital wallet hoặc electronic purse) trên một đĩa nhớ. Ví tiền số gồm bàn phím và màn hình. Nó có thể được kết nối tới tài khoản ngân hàng của người tiêu dùng và có thể nạp thêm tiền bất cứ lúc nào.

Người dùng có thể tiêu tiền số tại bất kỳ cửa hàng nào chấp nhận tiền mặt điện tử, mà không phải mở tài khoản hay chuyển đi số thẻ tín dụng. [3],[7],[8].

Page 33: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-33-

CHƯƠNG 2 HẠ TẦNG CƠ SỞ BẢO ĐẢM AN TOÀN THÔNG TIN

2.1. HẠ TẦNG MẠNG MÁY TÍNH

2.1.1. Mạng Lan, Wan, Intranet, Extranet và Internet

2.1.1.1. Mạng cục bộ ( LAN) Các mạng cục bộ (Local area networks-LANs) nối kết các máy tính và các thiết

bị xử lý thông tin khác trong một khu vực hạn chế, như văn phòng, lớp học, tòa nhà, nhà máy sản xuất, hay nơi làm việc khác. LANs đã trở nên thông dụng trong nhiều tổ chức đối với việc cung cấp các khả năng mạng viễn thông nối kết nhiều người dùng trong các văn phòng, bộ phận, và các nhóm làm việc khác.

LANs sử dụng nhiều phương tiện viễn thông, như dây điện thoại thông thường, cáp đồng trục, hay thậm chí các hệ thống vô tuyến để nối các trạm máy vi tính và các thiết bị ngoại vi với nhau. Để giao tiếp qua mạng, mỗi PC thường có một bo mạch được gọi là một card giao tiếp mạng. Phần lớn LANs dùng một máy vi tính mạnh hơn có dung lượng đĩa cứng lớn, được gọi là file server hay máy chủ mạng, chứa chương trình hệ điều hành mạng kiểm soát viễn thông, cách dùng và chia sẻ tài nguyên mạng. Ví dụ, nó phân phối các bản sao các tập tin dữ liệu thông thường và các bộ phần mềm đến các máy vi tính khác trong mạng và kiểm soát truy cập đến các máy in và các thiết bị ngoại vi khác đã được chia sẻ.

Hình 2.1 : Mạng LAN cho phép chia sẻ

tài nguyên phần cứng, phần mềm và dữ liệu

Page 34: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-34- Topo mạng cục bộ

Topo (hay topology) mạng là sơ đồ vật lý của một mạng cục bộ.

Mạng LAN đầu tiên sử dụng kiểu kênh/tuyến (Bus). Dây cáp mạnh tạo thành một kênh duy nhất và các máy trạm nối vào đó. Để giải quyết tranh chấp, mạng bus sử dụng vài loại kỹ thuật quản lý tranh chấp. Kỹ thuật này nhằm loại bỏ dữ liệu bị hỏng do tranh chấp. Mạng có ưu điểm là thiết kế đơn giản nhưng khó kiểm soát và không thể đưa thêm một trạm vào giữa mạng.

Kiểu hình sao (Star) giải quyết vấn đề mở rộng mạng bằng cách đưa vào một bộ tập trung là Hub, nhờ đó việc bổ sung thêm người sử dụng khá đơn giản nhưng độ tin cậy thấp vì tất cả máy tính phụ thuộc vào máy chủ trung tâm.

Kiểu vòng (Ring) tạo ra cách duy nhất để chống tình trạng tranh chấp, một trạm làm việc chỉ có thể truyền dữ liệu khi sở hữu một thẻ bài, là đơn vị đặc biệt chạy vòng trong mạng này.

Hình 2.2 : Các topology mạng cục bộ (vòng, sao, tuyến)

Page 35: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-35- 2.1.1.2. Mạng diện rộng- WAN

Các mạng viễn thông bao phủ một phạm vi địa lý rộng lớn được gọi là mạng diện rộng (wide area network-WAN). Các mạng bao phủ một thành phố lớn hay phạm vi thủ đô (metropolitan area network-MAN) cũng có thể được bao gồm trong loại này. Các mạng lớn như vậy đã trở nên cần thiết cho việc thực hiện các hoạt động hàng ngày của nhiều tổ chức kinh doanh và chính phủ và những người dùng cuối của nó. Ví dụ, WAN được dùng bởi nhiều công ty đa quốc gia để chuyển và nhận thông tin giữa các nhân viên, khách hàng, nhà cung cấp, và các tổ chức khác qua nhiều thành phố, vùng, quốc gia và thế giới. Hình minh họa một ví dụ của một mạng diện rộng toàn cầu cho một công ty đa quốc gia lớn.

Hình 2.3: Mạng diện rộng (WAN)

2.1.1.3. Mạng Intranet, Extranet - Intranet : Là mạng cục bộ dành cho các nhân viên bên trong tổ chức.

+ Mạng riêng gồm nhiều LAN & WAN. + Sử dụng các giao thức để liên lạc như : TCP/IP, IPX/SPX... + Thường có Firewalls nếu có kết nối Internet.

- Extranet : Dạng mở rộng của Intranet, cho phép kết nối từ ngoài vào. + Một kiểu mạng Intranet mở rộng. + Dành cho giao tiếp với khách hàng, đại lý bên ngoài.

Page 36: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-36- 2.1.1.4. Mạng Internet - Internet : kết nối nhiều LAN, tạo khả năng truy cập mở trên toàn cầu.

+ Mạng cộng đồng diện rộng, sử dụng giao thức TCP/IP + Gồm nhiều Intranet kết nối bằng đường điện thoại, vệ tinh... + Mỗi máy tính trong mạng có một địa chỉ IP duy nhất.

Các mạng xương sống được kiểm soát bởi các Nhà cung cấp dịch vụ mạng (Network Service Providers - NSPs) như MCI, Sprint, UUNET/MIS… Mỗi mạng xương sống xử lý hơn 300 terabytes/tháng. Các mạng con đến từ các Nhà cung cấp dịch vụ Internet (Internet Service Provider - ISPs) trao đổi dữ liệu với NSP tại các điểm truy cập mạng (Network Access Points - NAPs). Hình sau đây minh họa các kết nối giữa ISP, NAP và các mạng xương sống.

Hình 2.4 : Kiến trúc mạng Internet

Khi người sử dụng gửi một yêu cầu lên Internet từ máy tính của mình, nó sẽ theo

mạng ISP, di chuyển qua một hay nhiều mạng xương sống và băng qua mạng ISP khác đến máy tính chứa thông tin quan tâm. Câu trả lời cho yêu cầu đó sẽ theo thứ tự lộ trình tương tự. Bất kỳ yêu cầu và kết quả trả lời nào cũng đều không theo lộ trình định sẵn. Thật vậy, chúng bị tách ra thành các gói và mỗi gói lại theo những lộ trình khác nhau. Những lộ trình này được xác định bởi các máy tính đặc biệt gọi là Router. Các Router có những bản đồ mạng trên Internet có thể cập nhật được cho phép chúng xác định đường đi cho các gói tin.

Page 37: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-37- 2.1.2. Một số dịch vụ internet (internet services)

2.1.2.1. World Wide Web – WWW Đây là dịch vụ thông dụng nhất trên Internet. Để sử dụng dịch vụ này, người

dùng cần có một trình duyệt web thường được gọi là browser. Hai trình duyệt thông dụng nhất hiện nay là Internet Explorer của công ty Microsoft và Netscape Navigator của công ty Netscape.

Để truy cập vào một trang web, chúng ta cần phải biết địa chỉ (URL – Uniform Resource Location) của trang web đó. Ví dụ: Để truy cập vào trang web của công ty Microsoft, ta gõ vào: http://www.microsoft.com/

Trong mỗi trang web truy cập vào, chúng ta có thể thấy được văn bản, hình ảnh, âm thanh, … được trang trí và trình bày hết sức đẹp mắt. Ngoài ra, để có thể di chuyển tới các trang web khác, chúng ta có thể sử dụng các siêu liên kết (hyperlink). Do con trỏ chuột thường thay đổi hình dạng ngang qua một đối tượng có chứa hyperlink nên đây là cách đơn giản để nhận diện chúng.

Sự ra đời của www là một bước ngoặt lớn của mạng Internet, nó tạo cơ hội cho chúng ta truy cập đến một kho thông tin khổng lồ với hàng triệu triệu trang web. Điều này mở ra nhiều cơ hội và thách thức lớn cho công việc của chúng ta trong hiện tại và tương lai. Dịch vụ này sử dụng giao thức HTTP (Hypertext Transfer Protocol).

2.1.2.2. Thư điện tử – Email Email (Electronic mail) là dịch vụ trao đổi các thông điệp điện tử bằng mạng

viễn thông. Các thông điệp này thường được mã hóa dưới dạng văn bản ASCII. Tuy nhiên, chúng ta cũng có thể gửi các tập tin hình ảnh, âm thanh cũng như các tập tin chương trình kèm theo email. Email là một trong những dịch vụ ban đầu của Internet và được sử dụng rất rộng rãi. Chiếm phần lớn lưu lượng trên mạng Internet là email.

Giao thức thường dùng để gửi/nhận email là SMTP (Simple Mail Transfer Protocol)/POP3 (Post Office Protocol 3).

Để sử dụng dịch vụ email, chúng ta cần phải có:

Địa chỉ email. Một địa chỉ email thường có dạng name@domainname. Ví dụ, trong địa chỉ email [email protected], hpbac đóng vai trò là tên hộp thư (name), gmail.com là tên miền (domain name).

Page 38: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-38-

Tên đăng nhập và mật khẩu để truy cập vào hộp thư: Điều này đảm bảo rằng chỉ có chính chúng ta mới có thể đọc và gửi các thư của chính mình.

Địa chỉ email được quản lý bởi 1 mail server. Tại Việt Nam, các nhà cung cấp dịch vụ email thường là các ISP như VNPT, FPT, SaigonNet,... Do đó, tên miền trong các địa chỉ email của chúng ta thường có dạng : hcm.vnn.vn, hcm.fpt.vn, saigonnet.vn,… Tuy nhiên, có rất nhiều website trên Internet cung cấp dịch vụ email miễn phí. Thông dụng nhất vẫn là Yahoo, Hotmail, Gmail…

2.1.2.3. Truyền, tải tập tin – FTP FTP (File Transfer Protocol) là dịch vụ dùng để trao đổi các tập tin giữa các máy

tính trên Internet với nhau. FTP thường được dùng để truyền (upload) các trang web từ những người thiết kế đến các máy chủ. Nó cũng thường được dùng để tải (download) các chương trình và các tập tin từ các máy chủ trên mạng về máy của người sử dụng.

2.1.2.4. Tán gẫu – Chat Dịch vụ tán gẫu cho phép người dùng có thể trao đổi trực tuyến với nhau qua

mạng Internet. Cách thông dụng nhất là trao đổi bằng văn bản. Nếu đường truyền tốt, chúng ta có thể trò chuyện tương tự như nói chuyện điện thoại. Nếu máy có gắn webcam, ta còn có thể thấy hình của người đang nói chuyện từ bất kỳ nơi nào trên thế giới. Ngoài ra, hiện nay nhiều trang web cũng gắn chức năng diễn đàn trao đổi thảo luận, cho phép người sử dụng tạo ra các phòng chat, và tán gẫu bằng văn bản hoặc giọng nói.

2.1.2.5. Làm việc từ xa – Telnet Dịch vụ telnet cho phép người sử dụng kết nối vào 1 máy tính ở xa và làm việc

trên máy đó. Nhờ dịch vụ này, người ta có thể ngồi tại máy tính ở nhà và kết nối vào máy ở cơ quan để làm việc như đang ngồi tại cơ quan vậy.

Để sử dụng dịch vụ này, cần phải có 1 chương trình máy khách (telnet client program). Và máy chủ để kết nối phải bật dịch vụ Telnet server. Chẳng hạn, nếu máy khách sử dụng hệ điều hành windows, chúng ta có thể gọi lệnh Start/ Run và gõ dòng lệnh sau : telnet <tên máy chủ telnet>, và nhập vào user name và password để đăng nhập.

Page 39: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-39- 2.1.2.6. Nhóm tin tức – Usenet, newsgroup

Dịch vụ usenet hay newsgroup là dịch vụ cho phép người sử dụng tham gia vào các nhóm tin tức, để đọc và tham gia trao đổi, thảo luận theo từng chủ đề với mọi người trên thế giới. Chúng ta không phải tốn phí khi gia nhập các nhóm tin tức, có thể viết và gửi bài vào một chủ đề nào đó, để mọi người cùng đọc và thảo luận.

Để sử dụng dịch vụ này, cần phải có 1 chương trình máy khách (newsreader). Sử dụng chương trình này chúng ta có thể tìm kiếm các chủ đề quan tâm, tìm đọc các bài trao đổi, cũng như tham gia viết bài và tạo ra các chủ đề mới nếu muốn.

2.1.2.7. Dịch vụ danh mục (Directory Services) Dịch vụ danh mục giúp cho người ta có thể tiếp xúc và sử dụng tài nguyên trên

máy chủ ở bất cứ nơi nào trong mạng mà không cần biết vị trí vật lý của chúng. Dịch vụ danh mục rất giống với dịch vụ hỗ trợ danh mục điện thoại cung cấp số điện thoại khi đưa vào tên của một người. Với tên duy nhất của một người, máy chủ, hay tài nguyên, dịch vụ danh mục sẽ trả về địa chỉ mạng và thông tin khác gắn liền với tên đó.

Bình thường thì người ta sử dụng dịch vụ danh mục một cách gián tiếp thông qua giao diện ứng dụng. Một ứng dụng có thể tương tác với dịch vụ danh mục thông qua tên tài nguyên mà người sử dụng tạo ra để sau đó tham chiếu đến tài nguyên thông qua tên này.

2.1.3 Các nhà cung cấp dịch vụ trên Internet

2.1.3.1. Nhà cung cấp dich vụ ISP (Internet Service Provider) Là nhà cung cấp các dịch vụ trên Internet, như là : www, ftp, e-mail, chat,

newsletter, telnet, netphone… Các dịch vụ này có thể có hoặc không tùy theo nhà cung cấp dịch vụ.

Các cá nhân, tổ chức muốn gia nhập vào mạng Internet cần phải đăng ký với một ISP để có tài khoản (account) kết nối Internet và có thể sử dụng được các dịch vụ của nhà cung cấp đó.

2.1.3.2. Nhà cung cấp dịch vụ IAP (Internet Access Provider) Là nhà cung cấp dịch vụ kết nối truy cập Internet. Các ISP phải đăng ký với IAP

để có đường kết nối truy cập Internet quốc tế. Ở mỗi nước, có thể có nhiều ISP nhưng chỉ có 1 vài IAP. Thông thường các IAP cũng là các ISP, nhưng không phải ISP nào cũng là IAP. Ở nước ta, nhà cung cấp đường truyền Internet lớn nhất là VNPT.

Page 40: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-40- 2.1.3.3. Nhà cung cấp dịch vụ ICP (Internet Content Provider)

Là các nhà cung cấp nội dung lên Internet, như là : các cơ quan thông tấn báo chí, các tổ chức doanh nghiệp, chính phủ… Việc cung cấp nội dung lên Internet, tùy thuộc vào chính sách của mỗi quốc gia, có thể phải xin phép hoặc không.

Hiện nay, có rất nhiều cơ quan, tổ chức cung cấp các thông tin, tài nguyên lên mạng một cách miễn phí. Chẳng hạn, chúng ta có thể tìm thấy rất nhiều nội dung quý giá từ các kho học liệu mở, thư viện điện tử của các trường đại học, cao đẳng, các tổ chức chính phủ, phi chính phủ, các cơ quan thông tấn, báo chí, các doanh nghiệp…

2.1.3.4. Cấp phát tên miền (Internet Domain Name Provider) Tên miền là một dạng tài nguyên trên Internet, được gắn với một địa chỉ IP dùng

để xác định duy nhất một vị trí trên mạng Internet. Vì vậy, cần có một cơ quan làm nhiệm vụ cấp phát tên miền, theo nguyên tắc “ai đăng ký trước thì được” – tức là tên miền mới phải không trùng với một tên miền nào đã đăng ký trước, và phải đóng một khoản phí theo quy định. Thường đây là mức phí để lưu giữ tên miền trong một khoảng thời gian nào đó.

Hiện nay, InterNIC là cơ quan cấp phát tên miền quốc tế. Ở mỗi nước có một tổ chức chịu trách nhiệm cấp phát tên miền đặc trưng cho nước đó.

2.1.3.5. Cho thuê máy chủ web - hosting (Server Space Provider) Các tổ chức, đơn vị muốn thiết lập 1 website và đưa thông tin lên Internet, cần

phải mua một tên miền và thuê 1 máy chủ để lưu trữ website (gọi là hosting). Nhà cung cấp dịch vụ cho thuê không gian máy chủ để lưu trữ website được gọi là Server Space Provider.

Khi chọn máy chủ hosting, cần phải xem kỹ tính năng của server có đáp ứng được yêu cầu kỹ thuật của website đã thiết kế hay không, chủ yếu là server chạy trên nền hệ điều hành nào, cơ sở dữ liệu và các ngôn ngữ script mà server hỗ trợ. Ví dụ : với cấu hình “Windows + SQL Server, Access + ASP” nghĩa là server chạy hệ điều hành Windows, hỗ trợ CSDL SQL Server và Access, các trang web có thể sử dụng ngôn ngữ lập trình (server script) là ASP.

Giá cả thuê máy chủ còn thay đổi tùy theo không gian thuê nhiều hay ít, và băng thông mạng (bandwidth) hay lưu lượng truyền tối đa có thể tiếp nhận. Ngoài ra, cũng cần lưu ý các dịch vụ hỗ trợ khác, như là : có hỗ trợ upload, download bằng ftp, có theo dõi tình hình website, quản lý bảo mật, sao lưu và khắc phục sự cố…[3],[15].

Page 41: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-41- 2.2. HẠ TẦNG ĐẢM BẢO AN TOÀN THÔNG TIN

2.2.1 Tường lửa Bức tường lửa (firewall) là một phần mềm hoặc phần cứng cho phép những

người sử dụng mạng máy tính của một tổ chức có thể truy cập tài nguyên của các mạng khác (thí dụ, mạng Internet), nhưng đồng thời ngăn cấm những người sử dụng khác, không được phép, từ bên ngoài truy cập vào mạng máy tính của tổ chức. Một bức tường lửa sẽ có những đặc điểm sau:

+ Tất cả giao thông từ bên trong mạng máy tính của tổ chức và ngược lại đều phải đi qua đó.

+ Chỉ các giao thông được phép, theo qui định về an toàn mạng máy tính của tổ chức, mới được phép đi qua.

+ Không được phép thâm nhập vào chính hệ thống này. Về cơ bản, bức tường lửa cho phép những người sử dụng mạng máy tính (mạng

được bức tường lửa bảo vệ) truy cập toàn bộ các dịch vụ của mạng bên ngoài trong khi cho phép có lựa chọn các truy cập từ bên ngoài vào mạng trên cơ sở kiểm tra tên và mật khẩu của người sử dụng, địa chỉ IP hoặc tên vùng (domain name)... Thí dụ, một nhà sản xuất chỉ cho phép những người sử dụng có tên vùng (domain name) thuộc các công ty đối tác là khách hàng lâu năm, truy cập vào website của họ để mua hàng. Như vậy, công việc của bức tường lửa là thiết lập một rào chắn giữa mạng máy tính của tổ chức và bên ngoài (những người truy cập từ xa và các mạng máy tính bên ngoài). Nó bảo vệ mạng máy tính của tổ chức tránh khỏi những tổn thương do những kẻ tin tặc, những người tò mò từ bên ngoài tấn công. Tất cả mọi thông điệp được gửi đến và gửi đi đều được kiểm tra đối chiếu với những quy định về an toàn do tổ chức xác lập. Nếu thông điệp đảm bảo được các yêu cầu về an toàn, chúng sẽ được tiếp tục phân phối, nếu không sẽ bị chặn đứng lại. [3]

Hình 2.5: Bức tường lửa.

Page 42: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-42-

Một trong các loại bức tường lửa phổ biến nhất là phần mềm máy phục vụ uỷ quyền (proxy server*), gọi tắt là proxy. Proxy là phần mềm máy phục vụ, thường được đặt trên một máy tính chuyên dụng, kiểm soát toàn bộ các thông tin được gửi đến từ một nơi nào đó trên Internet và ngược lại. Nó cung cấp các dịch vụ trung gian, đóng vai người thông ngôn giữa mạng Internet và mạng nội bộ của tổ chức. Khi một người sử dụng trên mạng máy tính của tổ chức muốn "nói chuyện" với một người sử dụng của tổ chức khác, trước tiên anh ta phải nói chuyện với ứng dụng proxy trên máy phục vụ, tiếp đó proxy sẽ nói chuyện với máy tính của người sử dụng kia. Tương tự như vậy, khi một máy tính ở bên ngoài muốn nói chuyện với một máy tính trong mạng của tổ chức cũng phải nói thông qua proxy trên máy phục vụ

Hình 2.6 : Máy phục vụ uỷ quyền (Proxy server).

Ưu điểm cơ bản của việc sử dụng proxy trong an toàn mạng đó là các thông tin

về mạng máy tính của tổ chức, các thông tin về người sử dụng (như tên, địa chỉ mạng máy tính của tổ chức)... được bảo mật, bởi thực tế, các hệ thống bên ngoài chỉ giao tiếp với máy phục vụ proxy chứ không trực tiếp giao tiếp với máy tính của người sử dụng. Bằng việc ngăn chặn người sử dụng trực tiếp thông tin với Internet, thông qua proxy, các tổ chức có thể hạn chế việc truy cập vào một số loại website có nội dung không tốt hoặc ảnh hưởng đến lợi ích của tổ chức như khiêu dâm, bán đấu giá, hay giao dịch chứng khoán...

Sử dụng proxy còn tạo điều kiện tăng khả năng thực thi của Web bằng cách lưu trữ các thông tin, các trang web thường được yêu cầu, để giảm thời gian tải các thông tin lên mạng và các chi phí cho việc truyền dữ liệu. Ngoài ra, proxy còn đóng vai trò quan trọng trong việc quản trị mạng. Nó cho phép theo dõi hoạt động của các máy tính thông qua việc ghi chép địa chỉ IP của máy tính, ngày giờ thực hiện giao dịch, thời gian giao dịch, dung lượng (số byte) của các giao dịch... Các ưu điểm này khẳng định vai trò không thể thiếu của proxy nói riêng và các bức tường lửa (firewall) nói chung trong an toàn mạng máy tính của các doanh nghiệp và các tổ chức.

Page 43: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-43- 2.2.2 Mạng riêng ảo

Mạng riêng ảo (Virtual Private Network – VPN) là một giải pháp hiệu quả cho phép truyền thông dữ liệu một cách an toàn với chi phí thấp, giảm nhờ các công việc quản lý hoạt động của mạng, linh hoạt trong việc truy nhập từ xa. Có nhiều phương án triển khai VPN, nhưng ngày nay người ta nói nhiều đến hai giải pháp cơ bản là VPN dựa trên giao thức IPSec và MPLS-VPN. Cả hai giải pháp này đều tương đối mềm dẻo trong xây dựng, cho phép giảm chi phí vận hành, duy trì quản lý đơn giản, có khả năng mở rộng tới các vùng địa lí khác nhau một cách linh hoạt và không hạn chế. [3].

Mạng riêng ảo VPN cung cấp nhiều khả năng ứng dụng khác nhau. Yêu cầu cơ bản đối với VPN là phải điều khiển được quyền truy nhập của khách hàng, các nhà cung cấp dịch vụ cũng như các đối tượng bên ngoài khác. Dựa vào hình thức ứng dụng và những khả năng mà mạng riêng ảo mang lại, có thể phân thành hai loại như sau:

- VPN truy nhập từ xa (Remote Access VPN);

- VPN điểm tới điểm (Site-to-Site VPN).

Trong đó mạng VPN điểm tới điểmlại được chia thành hai loại là:

- VPN cục bộ (Intranet VPN);

- VPN mở rộng (Extranet VPN).

2.2.2.1. VPN truy nhập từ xa

Các VPN truy nhập từ xa cung cấp khả năng truy nhập từ xa cho người sử dụng (hình 2.7). Tại mọi thời điểm, các nhân viên hay chi nhánh văn phòng di động có thể sử dụng các phần mềm VPN để truy nhập vào mạng của công ty thông qua gateway hoặc bộ tập trung VPN (bản chất là một server). Giải pháp này vì thế còn được gọi là giải pháp client/server. VPN truy nhập từ xa là kiểu VPN điển hình nhất, bởi vì chúng có thể được thiết lập vào bất kỳ thời điểm nào và từ bất cứ nơi nào có mạng Internet.

VPN truy nhập từ xa mở rộng mạng công ty tới những người sử dụng thông qua cơ sở hạ tầng chia sẻ chung, trong khi những chính sách mạng công ty vẫn duy trì. Chúng có thể dùng để cung cấp truy nhập an toàn cho những nhân viên thường xuyên phải đi lại, những chi nhánh hay những bạn hàng của công ty. Những kiểu VPN này được thực hiện thông qua cơ sở hạ tầng công cộng bằng cách sử dụng công nghệ ISDN, quay số, IP di động, DSL hay công nghệ cáp và thường yêu cầu một vài kiểu phần mềm client chạy trên máy tính của người sử dụng.

Page 44: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-44-

Một hướng phát triển khá mới trong VPN truy nhập từ xa là dùng VPN không dây (Wireless), trong đó một nhân viên có thể truy nhập về mạng của họ thông qua kết nối không dây. Trong thiết kế này, các kết nối không dây cần phải kết nối về một trạm không dây (Wireless Terminal) và sau đó về mạng của công ty. Trong cả hai trường hợp (có dây và không dây), phần mềm client trên máy PC đều cho phép khởi tạo các kết nối bảo mật, còn được gọi là đường hầm. [3], [15].

Một vấn đề quan trọng là việc thiết kế quá trình xác thực ban đầu để đảm bảo yêu cầu được xuất phát từ một nguồn tin cậy. Thường thì giai đoạn ban đầu này dựa trên cùng một chính sách về bảo mật của công ty. Chính sách này bao gồm một số qui trình kỹ thuật và các ứng dụng chủ, ví dụ như Remote Authentication Dial-In User Service (RADIUS), Terminal Access Controller Access Control System Plus (TACACS+).

Hình 2.7 : Mô hình VPN truy nhập từ xa

Các ưu điểm của VPN truy nhập từ xa so với các phương pháp truy nhập từ xa truyền thống là:

- VPN truy nhập từ xa không cần sự hỗ trợ của nhân viên mạng bởi vì quá trình kết nối từ xa được các ISP thực hiện.

- Giảm được các chi phí cho kết nối từ khoảng cách xa bởi vì các kết nối khoảng cách xa được thay thế bởi các kết nối cục bộ thông qua mạng Internet.

- Cung cấp dịch vụ kết nối giá rẻ cho những người sử dụng ở xa. - Do kết nối truy nhập là nội bộ nên các modem kết nối hoạt động ở tốc độ cao

hơn so với cách truy nhập khoảng cách xa. - VPN cung cấp khả năng truy nhập tốt hơn đến các site của công ty

bởi vì chúng hỗ trợ mức thấp nhất của dịch vụ kết nối. Mặc dù có nhiều ưu điểm nhưng mạng VPN truy nhập từ xa vẫn còn

những nhược điểm cố hữu đi cùng như: - VPN truy nhập từ xa không hỗ trợ các dịch vụ đảm bảo QoS; - Nguy cơ bị mất dữ liệu cao do các gói có thể phân phát không đến nơi hoặc bị

mất. - Do thuật toán mã hoá phức tạp nên tiêu đề giao thức tăng một cách đáng kể.

Page 45: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-45- 2.2.2.2. VPN điểm tới điểm

VPN điểm tới điểm (Site-to-Site hay LAN-to-LAN) là giải pháp kết nối các hệ thống mạng ở những nơi khác nhau với mạng trung tâm thông qua VPN. Trong tình huống này, quá trình xác thực ban đầu cho người sử dụng sẽ là quá trình xác thực giữa các thiết bị. Các thiết bị này hoạt động như Cổng an ninh (Security Gateway), truyền lưu lượng một cách an toàn từ Site này đến Site kia. Các thiết bị định tuyến hay tường lửa với hỗ trợ VPN đều có khả năng thực hiện kết nối này. Sự khác nhau giữa VPN truy nhập từ xa và VPN điểm tới điểm chỉ mang tính tượng trưng. Nhiều thiết bị VPN mới có thể hoạt động theo cả hai cách này.

VPN điểm tới điểm có thể được xem như một VPN cục bộ hoặc mở rộng xét từ quan điểm quản lý chính sách. Nếu hạ tầng mạng có chung một nguồn quản lý, nó có thể được xem như VPN cục bộ. Ngược lạii, nó có thể được coi là mở rộng. Vấn đề truy nhập giữa các điểm phải được kiểm soát chặt chẽ bởi các thiết bị tương ứng.

1) VPN cục bộ

VPN cục bộ là một dạng cấu hình tiêu biểu của VPN điểm tới điểm được sử dụng để bảo mật các kết nối giữa các địa điểm khác nhau của một công ty (hình 2.8). Nó liên kết trụ sở chính, các văn phòng, chi nhánh trên một cơ sở hạ tầng chung sử dụng các kết nối luôn được mã hoá bảo mật. điều này cho phép tất cả các địa điểm có thể truy nhập an toàn các nguồn dư liệu được phép trong toàn bộ mạng của công ty.

Hình 2.8 : Mô hình VPN cục bộ

Page 46: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-46-

VPN cục bộ cung cấp những đặc tính của mạng WAN như khả năng mở rộng, tính tin cậy và hỗ trợ cho nhiều kiểu giao thức khác nhau với chi phí thấp nhưng vẫn đảm bảo tính mềm dẻo. Những ưu điểm chính của giải pháp VPN cục bộ bao gồm:

- Các mạng cục bộ hay diện rộng có thể được thiết lập thông qua một hay nhiều nhà cung cấp dịch vụ;

- Giảm được số nhân viên kỹ thuật hỗ trợ trên mạng đối với những nơi xa;

- Do kết nối trung gian được thực hiện thông qua Internet, nên nó có thể dễ dàng thiết lập thêm một liên kết ngang hàng mới;

- Tiết kiệm chi phí từ việc sử dụng đường hầm VPN thông qua Internet kết hợp với các công nghệ chuyển mạch tốc độ cao.

Tuy nhiên giải pháp mạng cục bộ dựa trên VPN cũng có những nhược điểm đi cùng như:

- Do dữ liệu được truyền “ngầm” qua mạng công cộng như Internet nên vẫn còn những mối đe dọa về mức độ bảo mật dữ liệu và chất lượng dịch vụ (QoS);

- Khả năng các gói dữ liệu bị mất trong khi truyền dẫn vẫn còn khá cao;

- Trường hợp cần truyền khối lượng lớn dữ liệu như đa phương tiện với yêu cầu tốc độ cao và đảm bảo thời gian thực là thách thức lớn trong môi trường Internet.

2) VPN mở rộng

VPN mở rộng được cấu hình như một VPN điểm tới điểm , cung cấp đường hầm bảo mật giữa các khách hàng, nhà cung cấp và đối tác thông qua một cơ sở hạ tầng mạng công cộng (hình 2.9). Kiểu VPN này sử dụng các kết nối luôn được bảo mật và nó không bị cô lập với thế giới bên ngoài như các trường hợp VPN cục bộ hay truy nhập từ xa.

Hình 2.9: Mô hình VPN mở rộng

Page 47: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-47-

Giải pháp VPN mở rộng cung cấp khả năng điều khiển truy nhập tới những nguồn tài nguyên mạng cần thiết để mở rộng tới những đối tượng kinh doanh. Sự khác nhau giữa VPN cục bộ và VPN mở rộng là sự truy nhập mạng được công nhận ở một trong hai đầu cuối của VPN.

Những ưu điểm chính của mạng VPN mở rộng bao gồm:

- Chi phí cho VPN mở rộng thấp hơn nhiều so với các giải pháp kết nối khác để cùng đạt được một mục đích như vậy;

- Dễ dàng thiết lập, bảo trì và thay đổi đối với mạng đang hoạt động.

- Do VPN mở rộng được xây dựng dựa trên mạng Internet nên có nhiều cơ hội trong việc cung cấp dịch vụ và chọn lựa giải pháp phù hợp với các nhu cầu của từng công ty;

- Các kết nối Internet được nhà cung cấp dịch vụ Internet bảo trì nên có thể giảm được số lượng nhân viên kỹ thuật hỗ trợ mạng, và do vậy giảm được chi phí vận hành của toàn mạng.

Bên cạnh những ưu điểm trên, giải pháp VPN mở rộng cũng còn những nhược điểm đi cùng như:

- Vấn đề bảo mật thông tin gặp khó khăn hơn trong môi trường mở rộng như vậy, và điều này làm tăng nguy cơ rủi ro đối với mạng cục bộ của công ty;

- Khả năng mất dữ liệu trong khi truyền qua mạng công cộng vẫn tồn tại;

- Việc truyền khối lượng lớn dữ liệu với yêu cầu tốc độ cao và thời gian thực vẫn còn là một thách thức lớn cần giải quyết. [1], [2], [3].

Page 48: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-48- 2.2.3 Các giao thức đảm bảo an toàn truyền tin

2.2.3.1. Giao thức SSL Giao thức SSL của Netscape và giao thức truyền siêu văn bản an toàn (S-HTTP)

của CommerceNet là hai giao thức cho phép truyền thông tin an toàn qua Internet. SSL và S-HTTP cho phép các máy khách và máy chủ quản lý các hoạt động mã hoá và giải mã trong một phiên Web an toàn.

SSL nằm ở đỉnh tầng TCP/IP của giao thức Internet, cung cấp một bắt tay an toàn, ở đó máy khách và máy chủ trao đổi một khối dữ liệu ngắn gọn các thông báo.

Khóa SSL có hai độ dài là 40 bit và 128 bit. Chúng chỉ ra độ dài của khoá phiên riêng, được sinh ra cho mọi giao dịch có mã hoá.

2.2.3.2. Giao thức SHTTP S-HTTP là một mở rộng của HTTP, cung cấp một số đặc tính an toàn, trong đó

có xác thực máy khách và máy chủ, mã hoá và chống chối bỏ yêu cầu/đáp ứng. Giao thức này được CommerceNet Consortium phát triển, hoạt động ở tầng ứng dụng. Nó cung cấp mã hoá đối xứng để thiết lập xác thực máy khách/máy chủ và các tóm lược thông báo nhằm đảm bảo tính toàn vẹn dữ liệu. Máy khách và máy chủ có thể dùng các kỹ thuật S-HTTP một cách riêng lẻ.

S-HTTP thiết lập các chi tiết an toàn thông qua header (phần đầu trong gói tin) của gói đặc biệt. Header định nghĩa kiểu kỹ thuật an toàn, cụ thể là mã khoá riêng, xác thực máy chủ, xác thực máy khách và đảm bảo tính toàn vẹn thông báo.

Một khi máy khách và máy chủ thoả thuận được các thiết lập an toàn bắt buộc giữa chúng, tất cả các thông báo trong phiên giao dịch sau này được đóng gói an toàn trong một phong bì an toàn (secure envelope). Đây là một tiện ích an toàn đóng gói thông báo và đảm bảo tính bí mật, toàn vẹn và xác thực máy khách/máy chủ. Nhờ đó, mọi thông báo chuyển tiếp trên mạng hoặc Internet được mã hoá, không ai có thể đọc trộm. Mọi sửa đổi trên thông báo đều bị phát hiện, nhờ vào kỹ thuật toàn vẹn.

SHTTP cung cấp một mã phát hiện thông báo bị sửa đổi. Người ta dùng chứng chỉ số do một CA (Certificate authority - được công nhận) phát hành để xác thực các máy khách và máy chủ. Phong bì an toàn bao gồm tất cả các đặc tính an toàn trên.

Page 49: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-49- 2.2.3.3. Giao thức IPSec

IPsec (IP security) bao gồm một hệ thống các giao thức để bảo mật quá trình truyền thông tin trên nền tảng Internet Protocol (IP). Bao gồm xác thực và/hoặc mã hoá (Authenticating and/or Encrypting) cho mỗi gói IP trong quá trình truyền thông tin. IPsec cũng bao gồm những giao thức cung cấp cho mã hoá và xác thực.

IPsec có một tính năng cao cấp hơn SSL và các phương thức khác hoạt động tại các tầng trên của mô hình OSI. Với một ứng dụng dùng IPsec mã (code) không bị thay đổi, nhưng nếu ứng dụng đó bắt buộc dùng SSL và các giao thức bảo mật trên các tầng trên trong mô hình OSI thì đoạn mã ứng dụng đó sẽ bị thay đổi lớn.

IPsec đã được giới thiệu và cung cấp các dịch vụ bảo mật:

Mã hoá quá trình truyền thông tin.

Đảm bảo tính nguyên vẹn của dữ liệu.

Phải được xác thực giữa các giao tiếp.

Chống quá trình replay trong các phiên bảo mật.

2.2.3.4. Giao thức TCP/IP Mã hóa và chữ ký số có thể bảo vệ các gói thông tin, tránh bị trộm cắp hoặc làm

trễ. Tuy nhiên, TCP có trách nhiệm kiểm soát các gói tại các nút cuối. Phát hiện những thay đổi trên đường truyền. Tại đích, khi lắp ráp các gói theo đúng trật tự ban đầu, nó phát hiện được ngay các gói bị mất, hay những gói không đúng cấu trúc. Trách nhiệm lúc này của TCP là yêu cầu máy khách gửi lại dữ liệu. Điều này có nghĩa là không có giao thức an toàn máy tính đặc biệt nào (ngoại trừ TCP/IP) được dùng như một biện pháp đối phó, chống tấn công từ chối.

TCP/IP là một hệ thống giao thức - một tập hợp các giao thức hỗ trợ việc lưu truyền trên mạng. Ra đời trước khi có mô hình OSI (International Standards Organization). Các tầng trong bộ giao thức TCP/IP không giống hệt các tầng trong OSI. Bộ giao thức TCP/IP có 5 tầng: vật lý, liên kết dữ liệu, mạng, giao vận và ứng dụng. Bốn tầng đầu tiên cung cấp các chuẩn vật lý giao tiếp mạng, liên mạng và chức năng giao vận tương ứng với 4 tầng đầu tiên trong mô hình OSI. [1],[2],[4].

Page 50: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-50- 2.2.3.5. Giao thức bảo mật SET

Hiện nay, trong việc thanh toán qua mạng, các tổ chức tín dụng và các nhà cung cấp dịch vụ xử lý thanh toán thẻ tín dụng trên thế giới áp dụng công nghệ bảo mật cao cấp là SET (Secure Electronic Transaction).

- SET là một nghi thức tập hợp những kỹ thuật mã hoá và bảo mật nhằm mục đích đảm bảo an toàn cho các giao dịch mua bán trên mạng. Đây là một kỹ thuật bảo mật, mã hóa được phát triển bởi VISA, MASTER CARD và các tổ chức khác trên thế giới. Mục địch của SET là bảo vệ hệ thống thẻ tín dụng, tạo cho khách hàng, doanh nghiệp, ngân hàng, các tổ chức tài chính sự tin cậy khi giao dịch mua bán trên Internet.

- Ngoài ra, SET thiết lập một phương thức hoạt động phối hợp tương hỗ (method of interoperability) nhằm bảo mật các dịch vụ qua mạng trên các phần cứng và phần mềm khác nhau.

Một sự khác biệt điển hình giữa SET và SSL là SSL không bao gồm một chứng thực khách hàng yêu cầu phần mềm đặc biệt (được gọi là ví số - digital wallet) tại máy tính cá nhân của họ. SSL được thiết lập trong trình duyệt, do đó không cần một phần mềm đặc biệt nào. Trong khi đó, Visa và MasterCard chấp nhận các thông điệp chỉ khi chúng tuân thủ giao thức SET.

Tuy nhiên, SET không phổ biến nhanh như nhiều người mong đợi do tính phức tạp, thời gian phản hồi chậm, và sự cần thiết phải cài đặt ví số ở máy tính của khách hàng. Nhiều ngân hàng ảo và cửa hàng điện tử duy trì giao thức SSL, thậm chí một số cửa hàng điện tử, như Wal-Mart Online, đi theo cả hai giao thức SSL và SET. Ngoài ra, theo một cuộc khảo sát do Forrest Research thực hiện, chỉ có 1% kế hoạch kinh doanh điện tử di chuyển sang SET. [4],[15].

Tóm lại SET được thiết lập để bảo mật những thông tin về cá nhân cũng như thông tin về tài chính trong quá trình mua bán và giao dịch trên mạng.

Page 51: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-51- 2.2.4. Công nghệ xây dựng PKI

2.2.4.1. Công nghệ OpenCA OpenCA là dự án đồ sộ, có mục đích xây dựng PKI hoàn chỉnh, chuyên nghiệp, OpenCA được phát triển liên tục từ năm 1999. Từ năm 2001, OpenCA đã bắt đầu được sử dụng cho các đơn vị cỡ vừa và lớn.

OpenCA sử dụng giao diện web, hỗ trợ hầu hết các web Browser chính, hỗ trợ sản phẩm mã nguồn mở.

Các Module chương trình trong OpenCA.

- Giao tiếp công cộng: Giao diện web để người sử dụng có thể truy cập qua Internet. Người dùng có thể đăng kí xin cấp chứng chỉ trực tiếp qua Module này.

- Giao tiếp LDAP: Danh bạ các khoá công khai, người dùng lấy khoá công khai từ Module này để mã hoá tài liệu, trước khi gửi đến đơn vị dùng openCA.

- Giao tiếp RA: Đơn vị điều hành RA sử dụng Module này để cập nhật các thông tin cá nhân của người xin cấp chứng chỉ.

- Giao tiếp OCSP: Module hỗ trợ kiểm tra chứng chỉ còn hiệu lực hay không. OCSP có tác dụng như việc công bố CRL, nhưng tính năng ưu việt hơn CRL.

- Giao tiếp CA: Module kí số riêng rẽ, cho phép CA làm theo nguyên tắc an ninh - tách biệt khỏi mạng công cộng, để bảo vệ tối đa khoá bí mật. Điều này khiến cho openCA trở nên an toàn hơn các phần mềm CA khác có trên thị trường hiện nay.

Các tính năng ưu việt khác của OpenCA, ngoài tính năng thiết yếu của PKI.

- Đăng nhập bằng chứng chỉ.

- Hệ thống quản lý mềm dẻo.

- Sử dụng được các tính năng của X.509 mở rộng.

- OpenCA là phần mềm mã nguồn mở miễn phí, có tài liệu chi tiết đầy đủ.

OpenCA được thiết kế cho một hạ tầng phân tán. Nó có thể không chỉ điều khiển một CA offline và một RA online, mà còn giúp ta xây dựng một cấu trúc thứ bậc với nhiều mức khác nhau. OpenCA không phải là một giải pháp nhỏ cho các nghiên cứu vừa và nhỏ. Nó hỗ trợ tối đa cho các tổ chức lớn như các trường đại học, các công ty lớn.

Page 52: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-52- 2.2.4.2. Công nghệ SSL

SSL là giao thức đa mục đích, được thiết kế để tạo ra các giao tiếp giữa hai chương trình ứng dụng trên một cổng định trước (Socket 443), nhằm mã hoá toàn bộ thông tin gửi / nhận. Giao thức SSL được hình thành và phát triển đầu tiên năm 1994 bởi nhóm nghiên cứu Netscape, dẫn dắt bởi Elgamal và nay đã trở thành chuẩn bảo mật cài đặt trên Internet.

SSL được thiết kế độc lập với tầng ứng dụng, để đảm bảo tính bí mật, an toàn và chống giả mạo luồng thông tin qua Internet giữa hai ứng dụng bất kỳ, thí dụ giữa Webserver và các trình duyệt (Browsers), do đó được sử dụng rộng rãi trong nhiều ứng dụng khác nhau trên môi trường Internet.

Toàn bộ cơ chế và hệ thống thuật toán mã hoá trong SSL được phổ biến công khai, trừ khoá phiên (Session key) được sinh ra tại thời điểm trao đổi giữa hai ứng dụng là ngẫu nhiên và bí mật đối với người quan sát trên mạng máy tính. Ngoài ra, giao thức SSL còn đòi hỏi người dùng phải được chứng thực bởi đối tượng thứ ba (CA) thông qua chứng chỉ số (Digital Certificate) dựa trên mật mã công khai (ví dụ RSA).

Hình 2.10 : Vị trí SSL trong mô hình OSI SSL được thiết kế như là một giao thức riêng cho vấn đề bảo mật, có thể hỗ trợ cho nhiều ứng dụng. Giao thức SSL hoạt động bên trên TCP / IP và bên dưới các ứng dụng tầng cao hơn như là HTTP (HyperText Transfer Protocol), LDAP (Lightweight Directory Access Protocol) hoặc IMAP (Internet Messaging Access Protocol). Hiện nay SSL được sử dụng chủ yếu cho các giao dịch trên Web.

SSL cho phép một Server (có hỗ trợ SSL) tự xác thực với một Client (cũng hỗ trợ SSL), ngược lại cho phép Client tự xác thực với Server. SSL cho phép cả hai máy thiết lập một kết nối được mã hoá.

Page 53: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-53-

- Chứng thực SSL Server: cho phép Client xác thực được Server muốn kết nối. Trình duyệt sử dụng kỹ thuật mã hóa công khai để chắc chắn rằng chứng chỉ và public ID của Server là có giá trị, được cấp phát bởi một CA (trong danh sách các CA tin cậy của Client).

- Chứng thực SSL Client: cho phép Server xác thực được Client muốn kết nối. Server cũng sử dụng kỹ thuật mã hoá khoá công khai để kiểm tra chứng chỉ của Client và public ID là đúng, được cấp phát bởi một CA (trong danh sách các CA tin cậy của Server).

- Mã hoá kết nối: tất cả các thông tin trao đổi giữa Client và Server được mã hoá trên đường truyền, nhằm nâng cao khả năng bảo mật. Điều này rất quan trọng đối với cả hai bên, khi có các giao dịch mang tính riêng tư. Ngoài ra, tất cả các dữ liệu được gửi đi trên một kết nối SSL đã được mã hoá, còn được bảo vệ nhờ cơ chế tự động phát hiện các xáo trộn, thay đổi trong dữ liệu.

Hai tầng trong Giao thức SSL.

- Record Protocol là tầng thấp nhất của SSL Nó được dùng để đóng gói một số giao thức ở mức cao hơn. Một trong những giao thức được đóng gói là SSL.

- Handshake Protocol là giao thức cho phép Server và Client xác thực lẫn nhau. Chúng thoả thuận thuật toán mã hoá và khoá mật trước khi thực hiện gửi hoặc nhận dữ liệu.

Ưu điểm và hạn chế của SSL.

- Ưu điểm của SSL:

Tính năng mạnh nhất của SSL / TLS là chúng xác định được mối quan hệ với các tầng giao thức khác trong hệ thống kiến trúc mạng OSI. Tại mức cao nhất là phần mềm ứng dụng hoặc các trình duyệt. Chạy phía dưới các ứng dụng này là giao thức tầng ứng dụng, bao gồm Telnet, FTP, HTTP…Bên dưới nữa là giao thức SSL và các thuật toán mã hoá được sử dụng để kết nối. Bên dưới SSL là tầng giao vận. Hầu hết các trường hợp đó là TCP / IP.

Giao thức SSL là duy nhất không phụ thuộc vào giao thức mạng. SSL không phụ thuộc vào các tầng giao thức, cho nên SSL trở thành một nền tảng độc lập hay là một thực thể mạng độc lập.

Page 54: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-54- Giao thức SSL ngăn chặn cách thức tấn công từ điển. Cách thức này sử dụng từ điển để phá khoá trong hệ mã hoá. SSL khắc phục được điều này bởi cho phép không gian khoá là rất lớn đối với hệ mã hoá được sử dụng. SSL cung cấp hai mức độ tin cậy: 40 bit và 128 bit tuỳ thuộc khả năng của browser. SSL 128 bit và SSL 40 bit: ý nói độ dài của khoá phiên dùng để mã hoá dữ liệu sau khi đã định danh và được thiết lập bằng giải thuật mã hóa khoá công khai (RSA hoặc Diffie-Hellman). Độ dài của khoá phiên càng lớn thì độ bảo mật càng cao. SSL 128 bit có độ tin cậy lớn, theo RSA phải mất hàng tỉ năm mới có thể giải mã được bằng các kỹ thuật hiện nay. Cách thức tấn công từ điển có thể bị ngăn chặn bởi sử dụng phương pháp số nonce (nonce number). Số này được sinh ngẫu nhiên, được Server sử dụng, nonce number là một số không thể bị phá khoá.

Giao thức SSL bảo vệ chính nó với đối tác thứ 3. Đó là các Client xâm nhập bất hợp pháp dữ liệu trên đường truyền. Client xâm nhập này có thể giả mạo Client hoặc Server, SSL ngăn chặn giả mạo này bằng cách dùng khoá riêng của Server và sử dụng chứng chỉ số. Phương thức “Bắt tay” trong TLS cũng tương tự. Tuy nhiên, TLS tăng cường sự bảo mật bằng cách cho phép truyền phiên bản giao thức, số hiệu phiên làm việc, hệ mã hoá và cách thức nén được sử dụng. TLS bổ xung thêm hai thuật toán “băm” không có trong SSL.

- Hạn chế của SSL:

Giao thức SSL, giống như bất kỳ công nghệ nào, cũng có những hạn chế. Vì SSL cung cấp các dịch vụ bảo mật, ta cần quan tâm tới các giới hạn của nó. Giới hạn của SSL thường nằm trong ba trường hợp sau:

Đầu tiên là do những ràng buộc cơ bản của bản thân giao thức SSL. Đây là hệ quả của việc thiết kế SSL và ứng dụng chịu sự tác động của nó. Thứ hai là giao thức SSL cũng thừa kế một vài điểm yếu từ các công cụ mà nó sử dụng, cụ thể là các thuật toán ký và mã hoá. Nếu các thuật toán này sẵn có điểm yếu, SSL cũng không thể khắc phục chúng. Thứ ba là các môi trường, trong đó SSL được triển khai cũng có những thiếu sót và giới hạn.

Mặc dù trong thiết kế của nó đã xét đến mối quan hệ với rất nhiều ứng dụng khác nhau, SSL rõ ràng được tập trung vào việc bảo mật các giao dịch Web. SSL yêu cầu một giao thức vận chuyển tin cậy như TCP. Đó là yêu cầu hoàn toàn hợp lý trong các giao dịch Web, vì bản thân HTTP cũng yêu cầu TCP. Tuy nhiên, điều này cũng có nghĩa là SSL không thể thực thi mà sử dụng một giao thức vận chuyển không kết nối như UDP. Vì vậy, giao thức SSL có thể hoạt động hiệu quả với phần lớn các ứng dụng thông thường. Và thực tế là hiện nay SSL đang được sử dụng cho rất nhiều ứng dụng bảo mật, bao gồm truyền file, đọc tin trên mạng, điều khiển truy cập từ xa...

Page 55: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-55- SSL bị lỗi khi hỗ trợ dịch vụ bảo mật đặc biệt là “non-repudiation” (không thể chối bỏ). Non-repudiation kết hợp chữ ký số tương ứng với dữ liệu, khi được sử dụng một cách hợp lý, nó ngăn ngừa bên tạo và ký dữ liệu từ chối hay phủ nhận điều đó. Giao thức SSL không cung cấp các dịch vụ “non-repudiation”, do đó sẽ không phù hợp với các ứng dụng yêu cầu dịch vụ này.

SSL có phiên làm việc tồn tại quá lâu trong quá trình “Bắt tay”, khoá phiên được khởi tạo giữa Client và Server sử dụng trong suốt quá trình kết nối. Khi khoá này còn tồn tại, mỗi khi thông điệp được gửi, xuất hiện lỗ hổng bảo mật trong kết nối, cho phép kẻ lạ xâm nhập. Giao thức TLS khắc phục được lỗi này bằng cách thay đổi khoá cho mỗi phiên làm việc. [3],[4].

2.2.4.3. Giao thức truyền tin an toàn tầng liên kết dữ liệu (Data Link). Trong mô hình OSI, tầng liên kết dữ liệu là tầng đầu tiên có thể can thiệp vào được bằng phần mềm (thông qua trình điểu khiển thiết bị của hệ điều hành). Vì vậy, nó đáng được khảo sát trước tiên - để đảm bảo an toàn thông tin ở mức thấp nhất. Tất nhiên tầng vật lý trong mô hình OSI còn thấp hơn, nhưng nhìn chung nó nằm ngoài phạm trù của mật mã học, vì mật mã học với mục đích đảm bảo an toàn thông tin trong trường hợp thông tin đã bị truy cập trái phép ở mức vật lý.

Trong mạng riêng của một tổ chức, đại đa số kết nối ở tầng liên kết dữ liệu đều dùng chuẩn Ethernet, hoặc tương thích Ethernet, nên chuyên đề này tập trung vào Ethernet như đại diện của tầng liên kết dữ liệu.

1/. Các nguy cơ đe dọa an toàn truyền tin trên mạng Ethernet.

- MAC flooding

Mỗi Switch có bộ nhớ để lưu trữ danh sách các địa chỉ MAC tương ứng với mỗi cổng của Switch. Kẻ tấn công có thể tạo ra nhiều địa chỉ MAC giả, vượt quá giới hạn cho phép của Switch, khiến cho nó phải quảng bá (Broadcast) mọi thông tin tới tất cả các cổng thay vì chỉ gửi đến đúng cổng cần gửi. Như vậy kẻ phá hoại có thể nghe trộm toàn bộ thông tin gửi trên mạng Ethernet.

- Port stealing

Kẻ tấn công nhận địa chỉ MAC trùng với địa chỉ của nạn nhân, do đó thông tin có thể không được gửi tới nạn nhân, mà lại gửi cho kẻ tấn công.

- ARP spoofing

Gói tin ARP giả mạo có thể sửa đổi bảng quy đổi giữa địa chỉ tầng mạng và địa chỉ tầng liên kết dữ liệu – sửa đổi hoàn toàn theo ý của kẻ tấn công. Như vậy, thông tin tầng mạng có thể bị trung chuyển cho kẻ tấn công, trước khi tới người nhận, Đó là hình thức tấn công nguy hiểm - MITM.

Page 56: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-56- 2/. Các giải pháp an ninh cho mạng Ethernet.

- Switch thông minh

Các Switch thông minh có khả năng hiểu các Header của dữ liệu đi qua và có thể điều khiển các hoạt động từ xa. Nếu được chỉnh cấu hình phù hợp, các Switch này có thể ngăn chặn hoàn toàn các cuộc tấn công kiểu MAC flooding và Port stealing. Những cuộc tấn công loại này chỉ có thể ngăn chặn được bằng cách đó. Vì thế, muốn mạng Ethernet được an toàn, sử dụng các Switch thông minh là điều bắt buộc.

- Phần mềm bảo vệ

Các Switch dù cao cấp đến mức nào cũng không đủ để hoàn thiện an ninh cho mạng Ethernet. Nguyên nhân là có các thông tin được giữ riêng ở Client, các Switch không nắm được các thông tin này. Hơn nữa, sau này IPSec được áp dụng rộng rãi thì các thông tin đều được mã hóa trước khi truyền đi và Switch sẽ không có cách nào phân tích được những dữ liệu từ tầng mạng trở lên. Ví dụ như khi bảo vệ ARP tại Switch, thiết bị lọc các gói ARP trái phép cần phải hiểu được sự phân bổ địa chỉ IP động trong giao thức DHCP. Khi giao thức này được mã hóa qua IPSec thì Switch sẽ có được thông tin cần thiết để phân biệt gói ARP trái phép với gói ARP hợp lệ.

Vì vậy, bên cạnh Switch thông minh, triển khai các hệ thống phần mềm bảo vệ trên các máy trạm cũng là điều bắt buộc.

2.2.4.4. Giao thức truyền tin an toàn tầng ứng dụng(Application). Tầng ứng dụng là tầng cao nhất theo mô hình OSI, các ứng dụng sử dụng dịch vụ do các tầng dưới cung cấp, vì thế được thừa kế tất cả đặc tính an toàn của các tầng dưới. Nếu kẻ tấn công không thể phá mã được tầng dưới, thì dữ liệu của các tầng trên cũng được đảm bảo.

Vì tính thừa kế, nên hầu hết các ứng dụng chỉ cần sử dụng giao thức TLS bên dưới, là việc truyền tin tầng ứng dụng đã trở nên an toàn:

+ Các ứng dụng trao đổi với nhau bằng địa chỉ IP: CARP kết hợp với IPSec đủ để đảm bảo an toàn truyền tin cho ứng dụng.

+ Các ứng dụng trao đổi với nhau bằng tên miền: kết hợp CARP và SSL, hoặc kết hợp CARP, IPSec và DNSSEC, đủ đảm bảo an toàn truyền tin cho ứng dụng.

Vì có thể tận dụng các giao thức thấp hơn, nên hầu hết các giao thức truyền tin tầng ứng dụng không áp dụng mật mã vào bảo vệ, mà đơn giản là yêu cầu các giao thức tầng thấp hơn phải sử dụng mật mã.

Page 57: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-57- Cũng có ngoại lệ trong các trường hợp sau, giao thức truyền tin tầng ứng dụng không thừa kế được những đặc tính an toàn của các giao thức tầng thấp hơn:

+ Ứng dụng có nhu cầu “Quảng bá” (Broadcast): Ứng dụng cần phải gửi thông điệp quảng bá, vì không mã hoá thông điệp quảng bá nên kẻ tấn công có thể đọc được thông điệp. Khi quảng bá, ứng dụng không biết trước ai có thẩm quyển trả lời thông điệp, nên kẻ tấn công có thể tự nhận là người có thẩm quyền. Trường hợp này xảy ra ở các giao thức tự động như DHCP, Router Discovery...

+ Ứng dụng có nhu cầu “Tiếp sức” (Relay): Thông điệp cần phải trung chuyển qua các trạm trước khi đến đích. Ứng dụng có thể dựa vào các tầng dưới để đảm bảo thông điệp được chuyển an toàn đến trạm trung chuyển, nhưng nếu trạm trung chuyển bị kẻ tấn công kiểm soát, thì thông điệp sẽ bị lộ. Trường hợp này xảy ra ở các giao thức như DHCP, Email...

Bảo vệ DHCP:

Hiện nay dự án Ethsec có đề xuất về việc ứng dụng mật mã khoá công khai để bảo vệ DHCP, nhưng chưa được chuẩn hoá nên tạm thời chưa triển khai được

Bảo vệ các giao thức Router Discovery

Hiện nay chưa có biện pháp bảo vệ bằng mật mã khoá công khai, nếu muốn đảm bảo an ninh, người vận hành mạng có thể cấu hình bằng tay các bộ định tuyến thay vì sử dụng các giao thức tự động.

Bảo vệ E-mail

SMTP là giao thức truyền thư điện tử được sử dụng để vận chuyển các Email trên thế giới. SMTP phải dùng các trạm trung chuyển để gửi thư, nên các tầng bảo vệ bên dưới không thể đảm bảo an toàn việc truyền Email.

Thế giới đang sử dụng đồng thời 2 phương thức đảm bảo an toàn cho Email là PGP và S/MIME. PGP không sử dụng X.509 nên ta chỉ quan tâm đến S/MIME.

S/MIME

PKI và S/MIME giúp cho người dùng dễ dàng phát hiện được sự giả mạo thư điện tử. S/MIME có 2 vấn đề tách rời là kí và mã hoá.

Người gửi có thể kí thông điệp bằng khoá riêng của họ, mọi người đều có thể biết được bức thư không bị mạo danh bởi một kẻ khác.

Người gửi có thể mã hoá thông điệp bằng khoá công khai của người nhận, do đó chỉ đích thân người nhận mới có thể đọc được thông điệp đó. [2][3],[4]

Page 58: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-58- 2.2.4.5. Một số công nghệ bảo đảm an toàn thông tin trên thế giới WPA: Công nghệ mật mã trên mạng không dây.

Trong tương lai, công nghệ mật mã này sẽ được hỗ trợ bởi tất cả các thiết bị không dây. WPA phụ thuộc vào phần cứng kết nối mạng không dây, nên chỉ khi nào đã lựa chọn phần cứng mới có thể đi sâu nghiên cứu chi tiết.

Ethsec: Công nghệ mật mã trên mạng Ethernet.

Ethsec là hệ thống mới, đang phát triển, nhưng nó là giải pháp duy nhất ứng dụng mật mã cho việc đảm bảo an toàn truyền tin trên mạng Ethernet. Các hệ thống quan trọng cần phải xem xét nghiêm túc các điểm yếu của mạng Ethernet.

IPSec:

Công nghệ đảm bảo an toàn truyền tin tầng mạng này là thành phần bắt buộc trong mạng thế hệ tiếp theo - IPv6, và cũng được sử dụng cho IPv4, chủ yếu cho VPN. Tầng mạng là tầng cơ sở trong truyền tin nên thường được kèm sẵn trong các hệ điều hành. Tuy tính năng của IPSec chưa hoàn thiện, nhưng các hệ điều hành chính đều hỗ trợ IPSec, nên ta sẽ không gặp nhiều khó khăn khi triển khai IPSec trên diện rộng.

SSL/TLS: Giao thức thế hệ mới.

TLS là giao thức thế hệ mới do IETF phát hành, thay thế SSL của Netscape. TLS có nhiều điểm ưu việt hơn hẳn nên tương lai sẽ hoàn toàn thay thế SSL. Hiện tại thư viện OpenSSL hỗ trợ cả SSL cũng như TLS, đây là thư viện tốt nhất hiện nay, đồng thời cũng là phần mềm mã nguồn mở. Việc sử dụng TLS phụ thuộc vào từng ứng dụng nghiệp vụ cụ thể của đơn vị.

S/MIME: Giao thức thư điện tử.

Giao thức an toàn thư điện tử S/MIME hiện được hỗ trợ bởi tất cả các phần mềm thư điện tử chính. Vì thế sẽ không gặp trở ngại gì khi đưa vào sử dụng. Trong các phần mềm thư điện tử chính, Thunderbird là phần mềm mã nguồn mở miễn phí, có hỗ trợ S/MIME và chạy trên hầu hết các hệ điều hành. Các nghiên cứu sơ bộ đánh giá Thunderbird có đủ tính năng phù hợp cho hệ thống truyền tin an toàn. [15]

Page 59: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-59- 2.3. HẠ TẦNG MẬT MÃ KHÓA CÔNG KHAI (PKI)

Trong phần này, ta sẽ tìm hiểu những vấn đề cơ bản của hệ thống PKI. Những nội dung được trình bày trong phần này sẽ cho ta một cái nhìn tổng quan về các mô hình hệ thống PKI. Ta cũng hiểu rõ hơn về các đối tượng của hệ thống và các hoạt động cơ bản cần thực hiện để quản lý hệ thống PKI. Song song với quá trình tìm hiểu các nội dung này, ta sẽ có các định nghĩa, các khái niệm và thuật ngữ được sử dụng đối với hệ thống PKI.

Khái quát về hệ thống PKI.

Các dịch vụ và phạm vi ứng dụng của PKI.

Các đối tượng cơ bản của hệ thống PKI.

Các hoạt động cơ bản của việc quản lý hệ thống PKI.

Cấu trúc các thông điệp PKI.

2.3.1. Khái niệm về PKI PKI có thể hiểu là: Tập hợp các công cụ, phương tiện cùng các giao thức bảo

đảm an toàn truyền tin cho các giao dịch trên mạng máy tính công khai. Đó là nền móng mà trên đó các ứng dụng, các hệ thống an toàn bảo mật thông tin được thiết lập.

Theo nghĩa đầy đủ, PKI gồm 3 phần chính:

Phần 1: Tập hợp công cụ, phương tiện, giao thức bảo đảm an toàn thông tin.

Phần 2: Hành lang pháp lý: Luật giao dịch điện tử, các Qui định dưới luật.

Phần 3: Các tổ chức điều hành giao dịch điện tử (CA, RA, LRA,…).

Ba thành phần trên thiết lập một Hệ thống tin cậy trên mạng máy tính công khai.

Hệ thống có các khả năng sau:

Bảo đảm bí mật các thông tin truyền trên mạng: thực thể không được cấp quyền không thể xem trộm bản tin.

Bảo đảm toàn vẹn các thông tin truyền trên mạng: thực thể không được cấp quyền không có thể sửa đổi bản tin.

Bảo đảm xác thực các thông tin truyền trên mạng: thực thể nhận bản tin có thể định danh được thực thể gửi bản tin và ngược lại.

Bảo đảm hỗ trợ các yêu cầu chống chối cãi. [13],[14]

Nhờ những khả năng đó, trên hệ thống này, các thực thể không biết mặt nhau, từ xa có thể tiến hành các giao dịch trong niềm tin cậy lẫn nhau.

Page 60: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-60- 2.3.2. Hiện trạng sử dụng chứng chỉ số trên thế giới và ở Việt Nam

Trong PKI, phần 3 có tổ chức cấp phát và quản lý chứng chỉ số (CA). Tổ chức này có nhiệm vụ cấp phát và quản lý chứng chỉ khóa công khai (Public Key Certificate), gọi tắt là chứng chỉ số (Digital Certificate). Chứng chỉ khóa công khai dùng trong phần 1, để bảo vệ thông tin.

Chứng chỉ khóa công khai là giấy chứng nhận quyền sở hữu của khóa công khai. Đó là một chứng từ để “chống chối cãi” trong giao dịch điện tử.

Các đơn vị chứng thực (CA) được xây dựng ở nhiều qui mô, cấp độ khác nhau. Từ các cơ quan chính phủ đến các tổ chức doanh nghiệp, cá nhân đều có thể xây dựng CA, tùy thuộc vào yêu cầu sử dụng.

Các CA có thể được xây dựng với mục đích chuyên dụng hoặc thương mại. CA chuyên dụng được áp dụng trong phạm vi một cơ quan nhà nước, một tổ chức, một doanh nghiệp hoặc có thể là do cá nhân tự xây dựng. Những đối tượng sử dụng CA chuyên dụng được cấp chứng chỉ bởi CA đó và qui định tin tưởng nhau trong phạm vi CA.

CA thương mại được xây dựng nhằm mục đích thương mại, kinh doanh dịch vụ xác thực điện tử. Những đối tượng sử dụng chứng chỉ của CA thương mại phải có thỏa thuận pháp lý tin tưởng CA thương mại đó và tin tưởng những đối tượng khác được cấp chứng chỉ bởi CA.

Hiện trên thế giới có một số CA lớn, được thành lập vào những năm 90, với mục đích thương mại như Verisign, Entrust, RSA…

Ở Việt Nam cho đến nay, 4 nghị định có liên quan đã được Thủ tướng chính phủ ban hành nhằm hướng dẫn thi hành Luật giao dịch điện tử. Việc xây dựng Hệ thống Chứng thực điện tử là một trong số các nhân tố quan trọng của Chính phủ điện tử cũng như trong giao dịch thương mại. Chúng ta đang từng bước xây dựng hệ thống này.

Page 61: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-61- Các luật pháp, nghị định hướng dẫn bao gồm:

Về luật pháp, hiện ta đã có Luật giao dịch điện tử năm 2005 số 51/2005/QH11

đã được Quốc hội nước CHXHCN Việt nam thông qua ngày 29 tháng 11 năm 2005, có

hiệu lực thi hành từ ngày 01 tháng 3 năm 2006. Nhằm cụ thể hoá việc thi hành Luật

giao dịch điện tử, Ủy ban thường vụ quốc hội cũng đã đề xuất xây dựng các Nghị định

bao gồm:

Nghị định 57/2006/NĐ-CP “Về thương mại điện tử” – Ngày 09/06/2006

Nghị định 26/2007/NĐ-CP “Qui định chi tiết thi hành luật giao dịch điện tử về

chữ ký số và dịch vụ chứng thực chữ ký số” – Ngày 15/02/2007

Nghị định 27/2007/NĐ-CP “Về giao dịch điện tử trong hoạt động tài chính” –

Ngày 23/02/2007

Nghị định 35/2007/NĐ-CP “Về giao dịch điện tử trong hoạt động Ngân

hàng”– Ngày 08/03/2007

Với các luật và nghị định trên, việc áp dụng chữ ký số, chứng chỉ số đã có một

hành lang pháp lý khá đầy đủ để áp dụng. Nhìn ở một khía cạnh khác, các luật và nghị

định cũng tạo một sức ép lên việc áp dụng chữ ký số, chứng chỉ số nhằm đảm bảo an

toàn khi giao dịch điện tử. Tạo một bước chuyển biến đầu tiên từ "cần thiết áp dụng"

sang "bắt buộc áp dụng" nhằm nâng cao hơn nữa tính pháp lý trong giao dịch điện tử.

Các đơn vị nhà nước, tổ chức doanh nghiệp cũng đã và đang xây dựng hệ thống chứng

thực chuyên dùng, đáp ứng cho yêu cầu nội bộ. [15]

Trung tâm Chứng thực điện tử Quốc gia: Bộ Thông tin và Truyền thông

(MIC) đang xây dựng trung tâm chứng thực điện tử quốc gia RootCA (CA gốc).

Page 62: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-62- 2.3.3. Các thành phần kỹ thuật cơ bản của PKI

2.3.3.1. Mã hóa

1/. Khái niệm mã hóa

Mã hóa là công cụ cơ bản của việc đảm bảo an toàn dữ liệu. Ở thời kỳ sơ khai, con người đã sử dụng nhiều phương pháp để bảo vệ các thông tin bí mật, nhưng tất cả các phương pháp đó chỉ mang tính nghệ thuật hơn là khoa học. Ban đầu, mật mã học được sử dụng phổ biến cho quân đội, qua nhiều cuộc chiến tranh, vai trò của mật mã ngày càng quan trọng và mang lại nhiều thành quả không nhỏ như các hệ mã cổ điển Caeser, Playfair,…Chúng đã là nền tảng cho mật mã học này nay.

Ngày nay, khi toán học được áp dụng cho mật mã học thì lịch sử của mật mã học đã sang trang mới. Việc ra đời các hệ mã hóa đối xứng không làm mất đi vai trò của các hệ mật mã cổ điển mà còn bổ sung cho ngành mật mã nhiều phương pháp mã hóa mới. Từ năm 1976, khi hệ mật mã phi đối xứng (mật mã khóa công khai) ra đời, nhiều khái niệm mới gắn với mật mã học đã xuất hiện: chữ ký số, hàm băm, mã đại diện, chứng chỉ số. Mật mã học không chỉ áp dụng cho quân sự mà còn cho các lĩnh vực kinh tế xã hội khác (giao dịch hành chính, thương mại điện tử).

Hiện nay có nhiều phương pháp mã hóa khác nhau, mỗi phương pháp có ưu, nhược điểm riêng. Tùy theo yêu cầu của môi trường ứng dụng nào, người ta có thể dùng phương pháp này hay phương pháp kia. Có những môi trường cần phải an toàn tuyệt đối bất kể thời gian và chi phí. Có những môi trường lại cần giải pháp dung hòa giữa bảo mật và chi phí.

Các thông điệp cần chuyển đi và cần được bảo vệ an toàn gọi là bản rõ (plaintext), và được ký hiệu là P. Nó có thể là một dòng các bít, các file, âm thanh số hoá,... Bản rõ được dùng để lưu trữ hoặc để truyền đạt thông tin. Trong mọi trường hợp bản rõ là thông điệp cần mã hoá. Quá trình xử lý một thông điệp trước khi gửi được gọi là quá trình mã hoá (encryption). Một thông điệp đã được mã hoá được gọi là bản mã (ciphertext), và được ký hiệu là C. Quá trình xử lý ngược lại từ bản mã thành bản rõ được gọi là quá trình giải mã (decryption).[1]

Page 63: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-63-

Hệ mật mã là tập hợp các thuật toán, các khóa nhằm che dấu thông tin tin

cũng như làm rõ nó.

Hệ mật mã được định nghĩa là bộ năm ( P,C,K,E,D), trong đó:

P là tập hữu hạn các bản rõ có thể

C là tập hữu hạn các bản mã có thể

K là tập hữu hạn khóa có thể

E là tập các hàm lập mã

D là tập các hàm giải mã. Với mỗi kK có một hàm lập mã EkE (Ek:P C) và một

hàm giải mã Dk D (Dk: C P) sao cho Dk (Ek (x)) = x , x P.

Hiện nay các hệ mật mã được phân làm hai loại chính là: Hệ mật mã đối xứng

và hệ mật mã phi đối xứng (hay còn gọi là hệ mật mã khóa công khai).

Một số hệ mật mã đối xứng là: Caesar, IDEA, DES, Triple DES.

Một số hệ mật mã công khai là: RSA, Elgamal, ECC.

2/. Hệ mã hóa khóa đối xứng.

Hình 2.11 : Hệ mã hóa khóa đối xứng

Page 64: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-64- * Ưu điểm của hệ mã hóa khóa đối xứng:

- Tốc độ mã hóa nhanh.

- Sử dụng đơn giản: chỉ cần dùng một khoá cho cả 2 bước mã và giải mã.

* Nhược điểm của hệ mã hóa khóa đối xứng: - Các phương mã hoá cổ điển đòi hỏi người mã hoá và người giải mã phải

cùng chung một khoá. (Chính xác là biết khóa này “dễ dàng” xác định khoá kia). Khi đó khoá phải được giữ bí mật tuyệt đối. Mặt khác 2 người cùng giữ chung một bí mật thì “khó” “bí mật”.

- Vấn đề quản lý và phân phối khoá là khó khăn và phức tạp khi sử dụng hệ mã hoá cổ điển. Người gửi và người nhận phải luôn luôn thông nhất với nhau về vấn đề khoá. Việc thay đổi khoá là rất “khó” và dễ bị lộ.

- Khuynh hướng cung cấp khoá dài, lại phải được thay đổi thường xuyên cho mọi người, trong khi vẫn duy trì cả tính an toàn và chi phí, sẽ cản trở rất nhiều tới việc phát triển hệ mật mã cổ điển.

3/. Hệ mã hóa khóa công khai

Hình 2.12: Hệ mã hóa khóa công khai

* Ưu điểm của hệ mã hóa khóa công khai:

- Dùng cặp khóa để mã hóa nên không cần bảo mật khóa mã hóa, chỉ cần bảo mật khóa giải mã.

- Có thể dùng mã hóa khóa công khai để tạo chữ ký điện tử, chứng chỉ số.

* Nhược điểm của hệ mã hóa khóa công khai: - Tốc độ mã hóa / giải mã chậm, “khó” thực hiện việc mã hóa các bản tin dài.

Page 65: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-65- 2.3.3.2. Chữ ký số

1/. Khái niệm chữ ký số

Với thỏa thuận thông thường trên giấy, hai đối tác xác nhận sự đồng ý bằng cách kí tay vào cuối các hợp đồng. Bằng cách nào đó người ta phải thể hiện đó là chữ kí của riêng họ và kẻ khác không thể giả mạo. Mọi cách sao chép chữ kí trên giấy thường dễ bị phát hiện, vì bản sao có thể phân biệt được với bản gốc.

Các giao dịch hợp tác trên mạng cũng được thực hiện theo cách tương tự, nghĩa là hai đối tác trên hai nút mạng cũng phải kí vào Bản thỏa thuận. Chỉ khác là văn bản truyền trên mạng được biểu diễn dưới dạng “số” (chỉ dùng chữ số 0 và 1), ta gọi nó này là “văn bản số” (điện tử). Do đó chữ kí trên “văn bản số” khác với chữ kí trên văn bản giấy thông thường.

Việc giả mạo và sao chép lại đối với “văn bản số” là việc hoàn toàn dễ dàng, không thể phân biệt được bản gốc với bản sao. Như vậy “chữ kí” ở cuối “văn bản số” không thể chịu trách nhiệm đối với toàn bộ nội dung văn bản loại này. Do đó Chữ kí thể hiện trách nhiệm đối với toàn bộ “văn bản số” phải là “chữ kí” được kí trên từng bit của văn bản loại này. Bản sao của “chữ kí số” có tư cách pháp lí.

Chữ kí thông thường được kiểm tra bằng cách so sánh nó với chữ kí gốc. Ví dụ, ai đó kí một tấm séc để mua hàng, người bán phải so sánh chữ kí trên mảnh giấy với chữ kí gốc nằm ở mặt sau của thẻ tín dụng để kiểm tra. Dĩ nhiên, đây không phải là phương pháp an toàn vì nó dễ dàng bị giả mạo.

“Chữ kí số” có thể được kiểm tra chính xác nhờ dùng một thuật toán kiểm tra công khai. Như vậy, bất kỳ ai cũng có thể kiểm tra được chữ kí số. Việc dùng một sơ đồ chữ kí an toàn có thể sẽ ngăn chặn được khả năng giả mạo.

Hình 2.13 : Chữ ký số

Page 66: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-66-

Đại diện thông điệp

Vì “Chữ kí số ” được kí trên từng bit của “văn bản số”, nên độ dài của nó ít nhất cũng bằng văn bản cần kí. Như vậy sẽ tốn kém chỗ nhớ cũng như thời gian “kí” và thời gian truyền “Chữ kí số ”. Trên thực tế thay vì kí trên “văn bản số”, người ta kí trên “Đại diện” của nó.

Để ký trên “văn bản số” dài, đầu tiên phải tạo “đại diện” của văn bản nhờ “Hàm băm ”.

Hàm băm là một quá trình sử dụng thuật toán băm để tính toán một số, được gọi là giá trị băm, từ một thông báo có độ dài bất kỳ. Hàm băm là hàm của thông báo, nó chính là dấu vân tay cho một thông báo vì nó gần như duy nhất đối với mỗi thông báo. Do sinh ra các thuật toán băm chất lượng tốt, khả năng xảy ra tình trạng hai thông báo khác nhau có cùng kết quả băm là vô cùng nhỏ. Mã hoá băm là một cách thích hợp để phát hiện nếu thông báo bị sửa đổi trong quá trình chuyển tiếp, bởi vì người nhận sẽ tính toán giá trị băm của thông báo nhận được và so sánh với giá trị băm của thông báo gốc để phát hiện ra thông báo có bị sửa hay không

Hàm băm có đầu vào là thông báo M với đồ dài bất kỳ, đầu ra là một mã băm H(M) có độ dài cố định. Đôi khi người ta gọi đầu ra của hàm băm là tóm lược thông báo. Mã hàm băm là một hàm của tất cả các bit có trong thông báo, đồng thời nó cung cấp khả năng phát hiện lỗi: Nếu A thay đổi một hoặc nhiều bít bất kỳ trong thông báo thì mã băm cũng thay đổi theo

Mục đích của hàm băm là tạo ra một “dấu vân tay ” cho một file, một thông báo, hoặc một khối dữ liệu.

Một thông điệp được đưa qua hàm băm sẽ tạo ra xâu bit với độ dài cố định và ngắn hơn được gọi là “Đại diện”. Mỗi thông điệp đi qua 1 hàm băm chỉ cho duy nhất 1 “Đại diện”. Ngược lại, “khó” tìm được 2 thông điệp khác nhau mà có cùng một “Đại diện” (ứng với cùng 1 hàm băm).

Hàm băm kết hợp với “chữ ký số” ở trên sẽ tạo ra một loại “chữ ký điện tử ” vừa an toàn (không thể cắt / dán), vừa có thể dùng để kiểm tra tính toàn vẹn của thông điệp.

Page 67: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-67- * Người gửi: Tạo ra “chữ ký số”. Đưa thông điệp cần gửi qua hàm băm tạo ra “Đại diện”. Mã hoá “Đại diện” bằng khoá riêng (private) của người gửi để tạo ra “chữ ký số”. Mã hoá thông điệp và chữ ký bằng khoá công khai (public) của người nhận, gửi đi. * Người nhận: Định danh người ký, kiểm tra tính toàn vẹn của thông điệp. Giải mã thông điệp bằng khoá riêng của mình, giải mã chữ ký bằng khoá công khai của người gửi để lấy “Đại diện” ra. Cho thông điệp qua hàm băm để tạo ra “Đại diện” mới. So sánh “Đại diện” mới với “Đại diện” nhận được. Nếu chúng giống nhau thì người nhận có thể vừa định danh được người gửi, vừa kiểm tra tính toàn vẹn của thông điệp.[1].

Phân loại chữ ký điện tử. Chữ ký “điện tử” được chia làm 2 lớp, lớp chữ ký kèm thông điệp (message

appendix) và lớp chữ ký khôi phục thông điệp (message recovery). Chữ ký kèm thông điệp: Đòi hỏi thông điệp ban đầu là đầu vào

của giải thuật kiểm tra. Ví dụ: chữ ký Elgamal.

Hình 2.14 : Mô hình quá trình ký có sử dụng hàm băm

Hình 2.15 : Quá trình kiểm thử

Chữ ký khôi phục thông điệp: Thông điệp ban đầu có thể khôi phục từ chữ ký.

Ví dụ: Chữ ký RSA.

Hình 2.16 : Mô hình ký của loại chữ ký khôi phục thông điệp

Page 68: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-68- 2/. Sơ đồ chữ ký RSA.

Thuật toán Sinh khóa cho chữ ký RSA (do người A thực hiện)

1. Sinh hai số nguyên tố lớn p và q có giá trị xấp xỉ nhau

2. Tính n = p.q, và (n) = (p-1).(q-1)

3. Chọn một số ngẫu nhiên b, 1 < b < (n), sao cho gcd(b, (n)) = 1

4. Sử dụng thuật toán Euclide để tính số a, 1 < a < (n), sao cho a.b ≡ 1 (mod (n))

5. Khóa kiểm thử là (n, b), Khóa ký là (a)

Thuật toán Ký và Kiểm thử chữ ký

(i). Ký: (do người A thực hiện)

a. Sử dụng khóa ký (a) theo thuật toán trên

b. Chọn một bản mã x, trong khoảng [1, n-1]

c. Tính: y = xa mod n

d. Nhận được chữ ký y

(ii). Kiểm thử: (do người B thực hiện)

a. Lấy khóa kiểm thử (n, b). Khóa này được công khai.

b. Nếu x yb mod n TRUE, ngược lại FALSE [2]

Page 69: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-69- 3/. Sơ đồ chữ ký DSS.

Phương pháp Digital Signature Standard (DSS) là sự cải tiến của phương pháp ElGamal. Phương pháp này được công bố trên Federal Register vào ngày 19 tháng 5 năm 1994 và chính thức trở thành phương pháp chuẩn từ ngày 1 tháng 12 năm 1994.

Thuật toán Sinh khóa cho chữ ký DSS (do người A thực hiện) 1. Chọn một số nguyên tố q trong khoảng 2159 < q < 2160

2. Chọn một số t (0 t 8), và chọn một số nguyên tố p (2511+64t<p<2512+64t) sao cho p chia hết cho (q–1)

3. Chọn 1 phần tử sinh trong nhóm Cyclic có cấp là q

4. Chọn một số ngẫu nhiên a (1 a q–1)

5. Tính = a mod p

6. Khóa kiểm thử là (p, q, , ), Khóa ký là (a)

Thuật toán Ký và Kiểm thử chữ ký

(i). Ký: (do người A thực hiện với văn bản x) a. Chon ngẫu nhiên một số nguyên k (0 < k < q)

b. Tính r = (k mod p) mod q c. Tính k-1 mod q d. Tính s = k-1 (m + ar) mod q e. Chữ ký của A trên x là (r, s)

(ii). Kiểm thử: (do người B thực hiện)

a. Lấy khóa kiểm thử (p, q, , ). Khóa này được công khai.

b. Kiểm tra 0 < r < q và 0 < s < q, ngược lại FALSE

c. Tính w = s-1 mod q d. Tính u1 = w.m (mod q) và u2 = r.w (mod q)

e. Tính v = (u1u2 mod p) mod q

f. Nếu v = r TRUE, ngược lại FALSE [2]

Page 70: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-70-

1. Sinh khoá - Người dùng, giả sử là Alice, chọn Sk Zq ngẫu nhiên làm khóa bí mật

- Tính ksk gP mod p làm khóa công khai

2. Ký: Giả sử Alice cần ký lên thông điệp m - Alice lấy ngẫu nhiên r Zq

* - Tính x = gr mod p - Tính c = H(m||x) - Tính y = (r + cSk) mod q - Chữ ký trên thông điệp m là cặp (c, y)

3. Kiểm tra chữ ký: Ver = true x = gr mod p và c = H(m||x)

4/. Chữ ký Schnorr (Chữ ký một lần)

Sơ đồ chữ ký dùng một lần (one-time signature) là một khái niệm vẫn còn khá mới mẻ song rất quan trọng, đặc biệt là trong một số mô hình về tiền điện tử.

Với sơ đồ chữ ký dùng một lần của Schnorr, những người dùng trong cùng hệ thống có thể chia sẻ một số ngẫu nhiên g và hai số nguyên tố p và q sao cho: q|(p-1), q1 và gq 1 mod q. Sơ đồ ký như sau:

Hình 2.17: Sơ đồ chữ ký một lần của Schnorr

Nhận xét:

Số r không được dùng quá một lần để tạo ra các chữ ký khác nhau.

Giả sử Alice sử dụng r để ký hai thông điệp m và m’, tạo ra hai chữ ký là (c, y) và (c’, y’). Khi đó, ta có:

kkk S

ccScrcSr

ccyy

')'()(

''

Như vậy, nếu Alice sử dụng r quá một lần cho hai thông điệp khác nhau, bất kỳ ai có hai thông điệp trên đều có thể giải mã được khóa bí mật Sk. Vì vậy, sơ đồ chữ ký loại này được gọi là sơ đồ chữ ký dùng một lần. Chữ ký dùng một lần được áp dụng trong các hệ thống tiền điện tử. [2],[9]

Page 71: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-71- 5/. Chữ ký ủy nhiệm:

Hệ chữ ký này dành cho các trường hợp mà người chủ chữ ký bị ốm không có khả năng làm việc hay đã đi vắng đến một nơi không có phương tiện mạng máy tính cần thiết để ký. Vì vậy chữ ký ủy nhiệm được tạo ra để người ký có thể ủy nhiệm cho một người nào đó ký thay. Tất nhiên chữ ký ủy nhiệm phải có các thuộc tính riêng thêm vào:

Chữ ký ủy nhiệm là phần phân biệt với chữ ký thường, và người được ủy nhiệm không thể tạo được chữ ký chủ (chữ ký của người chủ).

Chữ ký ủy nhiệm cũng có chức năng chứng thực như chữ ký chủ, chỉ có người chủ và người được ủy nhiệm mới có thể tạo được chữ ký này. Người nhận được văn bản có thể hoàn toàn tin tưởng vào chữ ký đó như chữ ký chủ.

- Người chủ có thể xác định được danh tính người ký từ một chữ ký ủy nhiệm.

- Người được ủy nhiệm không thể chối cãi được nếu đã ký một văn bản ủy nhiệm hợp lệ (tức là anh ta không thể chối đổ cho ai khác hay chính người chủ đã ký mà lại nói anh ta ký).

6/. Chữ ký không thể phủ nhận (chống chối bỏ):

Chữ ký không thể phủ nhận do David Chaum và Hans Van Antwerpen phát minh năm 1989. Ở đây, thuật toán kiểm định đòi hỏi phải có sự tham gia của người ký. Thực chất đây là chữ ký có tính chất không thể chuyển giao được (Untranferable): Chỉ có ý nghĩa với người nhận là người có trao đổi làm ăn với người ký, khi chuyển nó cho một người khác thì không có tác dụng nữa (không thể kiểm định được chữ ký nữa). Các văn bản có chữ ký này không nhằm vào mục đích đem đi công bố ở nơi khác mà chỉ có tính chất giấy phép. Vì thế nếu sao chép là mất ý nghĩa.

Chữ ký không thể phủ nhận được dùng trong việc bán sản phẩm phần mềm: Các hãng phần mềm sẽ bán các sản phẩm của mình có chữ ký chứng tỏ bản quyền. Việc kiểm định đòi hỏi phải liên lạc với hãng này. Nếu như có một ai đó bán phần mềm sao chép thì lúc đó người mua đòi kiểm định sẽ bị lộ ngay vì không thực hiện được. [9]

Page 72: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-72- 7/. Chữ ký nhóm:

Tình huống thực tế minh họa cho chữ ký này như sau: Một công ty có nhiều

máy tính nối với nhau trong một mạng cục bộ, các máy tính này được đặt trong một số

phòng ban bộ phận. Mỗi phòng chỉ có một máy in mà chỉ các cán bộ của phòng mới

được in ra. Vì vậy người ta muốn một cơ chế để việc in này có thể thực hiện mà việc

kiểm soát không cho người ngoài phòng in được, trong khi mỗi yêu cầu in lại không

cần nêu rõ tên người yêu cầu để tránh xâm phạm tính riêng tư của từng công việc.

Như vậy một hệ chữ ký sẽ được thiết lập sao cho chỉ có những người nằm trong

một nhóm người nào đó – trong cùng phòng – là có thể tạo ra được chữ ký mà người

kiểm định – trong ví dụ trên là máy in hay chương trình quản lý máy in – kiểm tra và

chấp nhận. Chữ ký này chỉ nói lên người ký nằm trong nhóm đó mà thôi chứ không

nói lên đích xác đó là người nào nên giữ được tính riêng tư của từng người ký. Tuy

nhiên hệ chữ ký đặc biệt này còn có một tính chất đặc biệt nữa là: nếu cần thiết, một

người thẩm quyền có thể “mở” được một chữ ký ra để xem ai cụ thể trong nhóm đã ký.

Ứng dụng của nó là nếu chương trình quản lý máy in cho thấy có người đã quá lạm

dụng thì trưởng phòng có thể dùng quyền hạn của mình để “cảnh báo” những chữ ký

lên những yêu cầu in tốn kém đó, sau đó có biện pháp phạt người lạm dụng như là nộp

tiền phạt. Khả năng này làm cho tất cả mọi người phải biết điều độ với máy in của

công ty, nếu không muốn bị nêu tên cảnh báo.[5]

Page 73: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-73- 8/. Chữ ký mù:

Chữ ký mù được được Chaum giới thiệu vào năm 1983. Chữ ký mù là để người ký tạo ra chữ ký trên một văn bản mà chính người ký cũng không biết nội dung - không biết nội dung nhưng vẫn tạo được chữ ký hợp lệ. Đặc trưng của nó là: Chỉ có duy nhất người chủ của chữ ký mới có khả năng tạo ra chữ ký hợp lệ cho một văn bản và chữ ký cho một văn bản đó có thể được kiểm tra tính đúng đắn bởi bất cứ ai. Chữ ký mù được áp dụng trong kỹ thuật bỏ phiếu từ xa và hệ thống e-money ẩn danh.[6]

Giả sử Alice muốn mua quyển sách Q với giá 50$ từ Bob. Giả sử hai người cùng dùng dịch vụ của một ngân hàng. Giao thức giao dịch gồm ba giai đoạn sau:

Rút tiền (Withdrawal):

- Alice tạo tiền điện tử C (với thông tin: số serial, giá trị của C, ví dụ 50$). - Alice yêu cầu ngân hàng ký “mù” lên C. - Giao thức ký thành công, thì ngân hàng sẽ trừ 50$ trong tài khoản của Alice.

Tiêu tiền (Spending):

- Alice đưa C đã ký của ngân hàng cho Bob và yêu cầu quyển sách Q. - Bob kiểm tra chữ ký C, nếu chữ ký không hợp lệ thì Bog kết thúc giao thức.

Gửi tiền (Deposit):

- Bob lấy C từ Alice và gửi cho ngân hàng. - Ngân hàng xác thực chữ ký trên C.

+ Nếu chữ ký là hợp lệ, ngân hàng sẽ kiểm tra xem C đã được tiêu trước đó chưa.

+ Nếu C chưa được tiêu, thì ngân hàng sẽ cộng thêm tiền vào tài khoản của Bob.

Nếu việc gửi tiền thành công, Bob sẽ gửi quyển sách Q cho Alice.

Bob khó thể biết C từ tài khoản nào. Khi Bog gửi C vào tài khoản của mình, ngân hàng cũng khó thể biết đồng tiền đó nhận từ Alice vì nó đã được ký “mù”. Như vậy tiền điện tử C không lưu vết của những ai đã “tiêu” nó.

Khi ký mù lên văn bản x, các bước được tiến hành như sau:

Hình 2.18 : Sơ đồ chữ ký mù

1/ Làm mù x: A làm mù x bằng một hàm: z = Blind(x) và gửi z cho B.

2/ Ký: B ký trên z bằng hàm y = Sign(z) = Sign(Blind(x)) và gửi lại y cho A.

3/ Xoá mù: A tiến hành xoá mù trên y bằng hàm

Sign(x) = UnBlind(y) = UnBlind(Sign(Blind(x))).

Page 74: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-74-

Lấy p,q là các số nguyên tố lớn, n=p*q, Ø(n) = (p-1)*(q-1), ab = 1 mod Ø(n),

r là một số ngẫu nhiên € Zn

1/ Làm mù x: A làm mù x bằng một hàm: Blind(x) = x*rb mod n=z

và gửi z cho B.

r được chọn sao cho tồn tại phần tử nghịch đảo r-1(mod n)

2/ Ký: B ký trên z bằng hàm Sign(z) = Sign(Blind(x)) = za mod n=y

và gửi lại y cho A.

3/ Xoá mù: A tiến hành xoá mù y bằng thuật toán:

UnBlind(y) = UnBlind(Sign(Blind(x))) = y/r mod n = sign(x).

Chữ ký mù dựa trên chữ ký RSA: Bài toán đặt ra là giả sử A muốn lấy chữ ký của B trên x nhưng không muốn cho B biết x.

Quá trình thực hiện được tiến hành như sau:

Hình 2.19 : Sơ đồ chữ ký mù dựa trên chữ ký RSA

Ví dụ:

Giả sử ông A gửi ông B thông điệp x=8. Ông B ký lên thông điệp x đã được làm mù, thông điệp được ký sẽ gửi lại ông A, ông A xoá mù.

1/ Theo ví dụ ở phần chữ ký RSA, khi ký trên x=8 thì chữ ký là:

Sign(x)= xamod n= 87 mod 15 = 2=y.

2/ Quy trình “ký mù”: ba bước.

Bước 1 (làm mù): làm mù x=8

Blind(x)=x * rb(mod n) = 8 * 57(mod 15)=8*78125(mod 15)

= 625000 mod 15 = 10 = z

với r = 5 là số ngẫu nhiên Z15.

Bước 2 (ký): ký trên z

y =Sig(z)= za (mod n) = 107(mod 15)= 10000000 (mod 15) = 10.

Bước 3 (xoá mù): xoá mù y= 10

UnBlind(y)= y / r (mod n) = 10 / 5 (mod 15) = 2.(Bởi vì 2*5(mod 15)=10)

Page 75: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-75- 2.3.3.3. Chứng chỉ khóa công khai ( Chứng chỉ số) 1/. Khái niệm

Việc sử dụng mã hóa hay ký số chỉ giải quyết được vấn đề bảo mật và xác thực thông điệp. Tuy nhiên “khó” thể đảm bảo rằng người ký là đối tác thật. Trong nhiều trường hợp cần thiết phải “chứng minh” bằng phương tiện điện tử danh tính của ai đó. Ví dụ phải “chứng minh” rằng người người ký là “chủ đích thực” hiện thời của chìa khóa ký.

Một cách giải quyết là dùng “Chứng chỉ số” để xác nhận “chủ đích thực” hiện thời của khóa công khai.

Chứng chỉ khóa công khai (Public Key Certificate) (gọi tắt là chứng chỉ số) là giấy chứng nhận khóa công khai cho một thực thể.

Chứng chỉ số là kết quả của dự án phát triển chuẩn thư mục X.500 của ITU-T phát triển vào cuối những năm thập niên 90. Chứng chỉ số được ITU-T đặc tả trong tài liệu X.509 và dần được thay đổi qua các phiên bản cho phù hợp với thực tế. Hiện nay Chứng chỉ X.509 phiên bản 3 được sử dụng trong các hệ thống xác thực.

Một nơi có thể chứng nhận các thông tin của một thực thể là đúng, nó được gọi là cơ quan xác thực chứng chỉ (Certificate Authority - CA). Đó là một đơn vị có thẩm quyền xác nhận định danh và cấp các chứng chỉ số. CA có thể là một đối tác thứ ba độc lập hoặc tổ chức tự vận hành một hệ thống tự cấp các chứng chỉ cho nội bộ.

Các phương pháp để xác định định danh phụ thuộc vào các chính sách mà CA đặt ra. Chính sách lập ra phải đảm bảo việc cấp chứng chỉ số phải đúng đắn, ai được cấp và mục đích dùng vào việc gì. Thông thường, trước khi cấp một chứng chỉ số, CA sẽ công bố các thủ tục cần thiết phải thực hiện cho các loại chứng chỉ số.

Chứng chỉ số chứa khóa công khai, được gắn với một tên duy nhất của một đối tượng (như tên của một cá nhân hay máy dịch vụ). Chứng chỉ số giúp ngăn chặn việc sử dụng khóa công khai cho việc giả mạo. Chỉ có khóa công khai được chứng thực bởi chứng chỉ số sẽ làm việc với khóa bí mật tương ứng. Nó được sở hữu bởi đối tượng với định danh đã được ghi trong chứng chỉ số. [13],[14].

Ngoài khóa công khai, chứng chỉ số còn chứa thông tin về đối tượng như tên mà nó nhận diện, hạn dùng, tên của CA cấp chứng chỉ số, mã số… Quan trọng nhất là chứng chỉ số phải có “chữ ký số” của CA đã cấp chứng chỉ đó. Giống như chứng chỉ đã được “đóng dấu”, để cho người dùng khóa công khai có thể kiểm tra.

Page 76: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-76- Một người muốn sử dụng Hệ mã hóa khóa công khai để mã hóa thông báo và gửi cho người nhận, người gửi phải có bản sao khóa công khai của người nhận. Một người muốn kiểm tra chữ ký số của người khác, họ phải có bản sao khóa công khai của người ký.

Chúng ta gọi cả hai thành viên (mã hóa thông báo và kiểm tra chữ ký số) là những người sử dụng khóa công khai.

Khi khóa công khai được gửi đến người sử dụng khóa công khai, thì không cần thiết phải giữ bí mật khóa công khai này. Tuy nhiên, người sử dụng khóa công khai phải đảm bảo rằng khóa công khai được sử dụng đúng là của đối tác. Nếu kẻ phá hoại dùng khóa công khai khác thay thế cho khóa công khai hợp lệ, thì nội dung thông báo đã mã hóa có thể bị lộ, chữ ký số có thể bị làm giả. Rõ ràng khóa công khai cần phải được xác thực trước khi dùng.

Đối với nhóm thành viên nhỏ, yêu cầu trên có thể được thỏa mãn dễ dàng.Ví dụ trường hợp hai người quen biết nhau, khi người này muốn truyền thông an toàn với người kia, họ có thể có được bản sao khóa công khai của nhau bằng cách trao đổi các đĩa nhớ có ghi các khóa công khai của từng người. Như vậy đảm bảo rằng các khóa công khai được lưu giữ an toàn trên mỗi hệ thống cục bộ của từng người. Đây chính là hình thức phân phối khóa công khai thủ công.

Phân phối khóa công khai thủ công như trên là không thực tế hoặc không thỏa đáng khi số lượng người dùng là quá lớn và nơi làm việc phân tán. Hệ thống cấp chứng chỉ khóa công khai giúp cho việc phân phối khóa công khai có hệ thống và chuẩn mực.

2/. Hệ thống cấp chứng chỉ khóa công khai

CA phát hành các chứng chỉ cho những người nắm giữ cặp khóa công khai và khóa riêng. Chứng chỉ gồm có khóa công khai và thông tin dùng để nhận dạng duy nhất chủ thể (subject) của chứng chỉ. Chủ thể của chứng chỉ có thể là một người, thiết bị, hoặc một thực thể có nắm giữ khóa riêng tương ứng. Khi chủ thể của chứng chỉ là một người hoặc một thực thể nào đó, chủ thể thường được nhắc đến như là một thực thể (subscriber) của CA. Các chứng chỉ được CA ký, bằng khóa riêng của CA.

Một khi các chứng chỉ số được thiết lập, công việc của người sử dụng khóa công khai rất đơn giản. Giả thiết rằng, họ đã có khóa công khai của CA một cách bí mật (ví dụ: thông qua phân phối khóa công khai thủ công) và tin cậy CA phát hành các chứng chỉ hợp lệ. Nếu người dùng cần khóa công khai của một thuê bao nào đó của CA, anh ta có thể thu được khóa công khai của thuê bao bằng cách tìm trong bản sao chứng chỉ của họ, lấy ra khóa công khai. Tất nhiên trước đó anh ta phải kiểm tra chữ ký trên chứng chỉ có đúng là của CA không.

Page 77: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-77-

Hệ thống cấp chứng chỉ như trên là đơn giản và kinh tế khi được thiết lập trên diện rộng và tự động, bởi vì một trong các đặc tính quan trọng của chứng chỉ là:

“Các chứng chỉ có thể được phát hành mà không cần phải bảo vệ thông qua các dịch vụ an toàn truyền thông để đảm bảo xác thực và toàn vẹn”.

Chúng ta không cần giữ bí mật khóa công khai, như vậy chứng chỉ không phải là bí mật. Hơn nữa, ở đây không đòi hỏi các yêu cầu về tính xác thực và toàn vẹn do các chứng chỉ tự bảo vệ. Chữ ký của CA trong chứng chỉ đã cung cấp tính xác thực và toàn vẹn. Người dùng khóa công khai trong các chứng chỉ như trên được gọi là thành viên tin cậy.

Kẻ truy nhập trái phép định làm giả chứng chỉ khi chứng chỉ này đang lưu hành cho những người sử dụng khóa công khai, họ sẽ phát hiện ra việc làm giả, bởi vì chữ ký của CA có thể được kiểm tra chính xác. Chính vì thế các chứng chỉ khóa công khai được phát hành theo cách không an toàn, ví dụ như thông qua các máy chủ, các hệ thống thư mục, các giao thức truyền thông không an toàn.

3/. Lợi ích của chứng chỉ khóa công khai

Chứng chỉ số ra đời giải quyết rất nhiều vấn đề quan trọng trong các mô hình xác thực, đảm bảo an toàn cho hệ hệ thống. Dưới đây là các lợi ích khi sử dụng công nghệ xác thực bằng chứng chỉ số.

* Đảm bảo tính xác thực

Như đã đề cập ở phần trên Xác thực là dịch vụ quan trọng nhất của chứng chỉ số. Khi người gửi, gửi một thông tin kèm chứng chỉ số, người nhận - có thể là đối tác kinh doanh, tổ chức hoặc cơ quan chính quyền - sẽ xác định rõ được danh tính của người gửi. Có nghĩa là dù không nhìn thấy người gửi, nhưng qua hệ thống chứng chỉ số mà người gửi và người nhận cùng sử dụng, người nhận sẽ biết chắc chắn đó đúng là người cần giao dịch chứ không phải là một người khác. Xác thực là một tính năng rất quan trọng trong việc thực hiện các giao dịch điện tử qua mạng, cũng như các thủ tục hành chính với cơ quan pháp quyền. Các hoạt động này cần phải xác thực rõ người gửi thông tin để sử dụng tư cách pháp nhân. Đây chính là nền tảng của một Chính phủ điện tử, môi trường cho phép công dân có thể giao tiếp, thực hiện các công việc hành chính với cơ quan nhà nước hoàn toàn qua mạng. Có thể nói, chứng chỉ số là một phần không thể thiếu, là phần cốt lõi của Chính phủ điện tử.

Page 78: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-78-

* Chống giả mạo Khi chúng ta gửi đi một thông tin, có thể là một dữ liệu hoặc một email, có sử dụng chứng chỉ số, người nhận sẽ kiểm tra được thông tin của chúng ta có bị thay đổi hay không. Bất kỳ một sự sửa đổi hay thay thế nội dung của thông điệp gốc đều sẽ bị phát hiện. Địa chỉ mail của chúng ta, tên domain... đều có thể bị kẻ xấu làm giả để đánh lừa người nhận để lây lan virus, ăn cắp thông tin quan trọng. Tuy nhiên, chứng chỉ số thì không thể làm giả, nên việc trao đổi thông tin có kèm chứng chỉ số luôn đảm bảo an toàn.

* Chống chối cãi nguồn gốc Khi sử dụng một chứng chỉ số, chúng ta phải chịu trách nhiệm hoàn toàn về những thông tin mà chứng chỉ số đi kèm. Trong trường hợp người gửi chối cãi, phủ nhận một thông tin nào đó không phải do mình gửi (chẳng hạn một đơn đặt hàng qua mạng), chứng chỉ số mà người nhận có được sẽ là bằng chứng khẳng định người gửi là tác giả của thông tin đó. Trong trường hợp chối cãi, CA cung cấp chứng chỉ số cho hai bên sẽ chịu trách nhiệm xác thực nguồn gốc thông tin, chứng tỏ nguồn gốc thông tin được gửi.

* Bảo vệ Website Khi Website của chúng ta sử dụng cho mục đích thương mại điện tử hay cho

những mục đích quan trọng khác, những thông tin trao đổi giữa chúng ta và khách hàng của chúng ta có thể bị lộ. Để tránh nguy cơ này, chúng ta có thể dùng chứng chỉ số SSL Server để bảo mật cho Website của mình.

Chứng chỉ số SSL Server sẽ cho phép chúng ta lập cấu hình Website của mình theo giao thức bảo mật SSL (Secure Sockets Layer). Loại chứng chỉ số này sẽ cung cấp cho Website của chúng ta một định danh duy nhất nhằm đảm bảo với khách hàng của chúng ta về tính xác thực và tính hợp pháp của Website. Chứng chỉ số SSL Server cũng cho phép trao đổi thông tin an toàn và bảo mật giữa Website với khách hàng, nhân viên và đối tác của chúng ta thông qua công nghệ SSL mà nổi bật là các tính năng:

+ Thực hiện mua bán bằng thẻ tín dụng + Bảo vệ những thông tin cá nhân nhạy cảm của khách hàng + Đảm bảo hacker không thể dò tìm được mật khẩu

* Bảo vệ phần mềm

Nếu chúng ta là một nhà sản xuất phần mềm, chắc chắn chúng ta sẽ cần những ''con tem chống hàng giả'' cho sản phẩm của mình. Đây là một công cụ không thể thiếu trong việc áp dụng hình thức sở hữu bản quyền. Chứng chỉ số Nhà phát triển phần mềm sẽ cho phép chúng ta ký vào các applet, script, Java software, ActiveX control, các file dạng EXE, CAB, DLL... Như vậy, thông qua chứng chỉ số, chúng ta sẽ đảm bảo tính hợp pháp cũng như nguồn gốc xuất xứ của sản phẩm. Hơn nữa người dùng sản phẩm có thể xác thực được chúng ta là nhà cung cấp, phát hiện được sự thay đổi của chương trình (do vô tình hỏng hay do virus phá, bị crack và bán lậu...).

Page 79: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-79-

* Phân phối khóa an toàn

Làm thế nào để có được một khóa công khai của đối tượng bất kỳ? Xét một ví dụ như Alice và Bob muốn trao đổi bí mật với nhau, như thế Alice phải có được khóa công khai của Bob để thực hiện việc mã hóa thông điệp. Nếu như việc phân phối khóa công khai của Bob cho Alice không được bảo vệ thì một bên thứ ba là Oscar có thể thay khóa công khai của Bob bằng khóa công khai của mình để thực hiện tấn công ở giữa.

Chứng chỉ số đưa ra một cách giải quyết vấn đề này. Thông qua chữ ký của mình, nhà phát hành chứng chỉ xác thực mỗi một đối tượng ứng với một cặp khóa bí mật, công khai tương ứng. Trong ví dụ trên Alice có thể thu nhận được khóa công khai của Bob bằng cách lấy chứng chỉ của Bob tại các nơi chứa chứng chỉ. Alice hoàn toàn tin tưởng vào khóa công khai này vì nó đã được nhà phát hành chứng chỉ đảm bảo.

Các chứng chỉ có thể được lưu trữ tại các vị trí không được bảo vệ. Vì bất kỳ thay đổi thông tin nào trên chứng chỉ(cả thông tin định danh và khóa công khai trên chứng chỉ) đều có thể bị phát hiện, Và bên nhận hoàn toàn có thể kiểm tra được sự thay đổi này một cách dễ dàng, bằng thuật toán kiểm tra chữ ký của nhà phát hành trên chứng chỉ. Tương tự như thế, chứng chỉ cũng không cần phân phối trên các kênh truyền được bảo vệ. Chính hai yếu tố này làm cho việc phân phối khóa trở nên đơn giản. Và quá trình phân phối khóa hoàn toàn có thể diễn ra một cách an toàn thông qua mạng công khai như Internet.

* Xử lý độc lập tại máy khách

Chứng chỉ là một cấu trúc mở, tùy từng ứng dụng mà ta thêm các trường thông tin cho những mục đích riêng biệt. Như vậy khi các chương trình client sử dụng chứng chỉ ngoài việc xác thực, chúng còn có thể quyết định các hành vi của mình dựa vào các trường dữ liệu có trên chứng chỉ.

Một ví dụ rất điển hình là máy rút tiền tự động ATM. Nó sử dụng chứng chỉ số để xác thực khách hàng. Ngân hàng phát hành chứng chỉ để quản lý các khách hàng, với mỗi khách hàng tương ứng với một chứng chỉ. Trên chứng chỉ có nhiều thông tin điều khiển, mà thông tin quan trọng nhất là thông tin về tổng tiền của người khách hàng. Mỗi khi khách hàng yêu cầu rút tiền từ các máy ATM, thì việc xử lý hoàn toàn không cần phải liên hệ với hệ thống trung tâm của ngân hàng. Dựa vào các trường thông tin trên chứng chỉ, hệ thống trên ATM hoàn toàn có thể giao dịch với khách hàng mà vẫn đảm bảo chính xác và an toàn.

Xử lý tại client là một yếu tố quan trọng vì nó giúp cho việc xây dựng các hệ thống đơn giản mà vẫn đảm bảo an toàn. Các giải thuật mã hóa công khai là một gánh nặng tính toán cho các hệ thống trung tâm, vì chúng phải xử lý các con số có giá trị rất lớn. Việc xử lý tại client đồng nghĩa với việc các hệ thống trung tâm được giảm bớt gánh nặng xử lý. Như thế hệ thống sẽ tránh được các nguy cơ về an ninh như nghẽn mạch hay từ chối dịch vụ. [1],[2],[3].

Page 80: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-80- 2.3.4. Các đối tượng cơ bản của hệ thống PKI Dưới góc độ các hoạt động quản lý hệ thống PKI, những đối tượng tham gia vào hệ thống PKI bao gồm: các đối tượng sử dụng (EE), các đối tượng quản lý chứng chỉ số (CA), các đối tượng quản lý đăng ký (RA), và các hệ thống lưu trữ. [13], [14].

2.3.4.1. Chủ thể và các đối tượng sử dụng Khái niệm chủ thể được sử dụng để chỉ đối tượng được ghi tên trong trường subject của một chứng chỉ số. Tuy nhiên, để tránh nhầm lẫn chủ thể với tên một trường của chứng chỉ số, ta nên dùng cụm từ đối tượng sử dụng. Ta cần lưu ý: Một chủ thể có thể là một CA hoặc một EE, đây là do đặc tính của quá trình cấp phát chứng chỉ số. Chứng chỉ số có thể được cấp cho CA hoặc EE. Tuy nhiên, ta chỉ gọi các EE là đối tượng sử dụng vì chỉ những thẻ cấp cho đối tượng loại này mới được sử dụng trực tiếp trong các dịch vụ an toàn an ninh. Chứng chỉ số cấp cho các CA chủ yếu được dùng để hình thành mối tin cậy giữa chúng.

Có một điều quan trọng mà ta cần lưu ý là khái niệm đối tượng sử dụng không chỉ bao hàm những người sử dụng các dịch vụ mà còn là chính bản thân các dịch vụ đó. Đây là một điều hiển nhiên bởi vì các trình ứng dụng an toàn an ninh được đề cập đến ở đây là những dịch vụ dựa trên chứng chỉ số. Điều này sẽ ảnh hưởng đến những giao thức mà các hoạt động của hệ thống PKI sử dụng. Ví dụ, một phần mềm ứng dụng có thể biết chắc những trường mở rộng nào của một chứng chỉ số là cần thiết trong khi một người sử dụng phần mềm đó thì lại hầu như không biết về những thông tin này. Trong một số trường hợp cho phép, ta có thể coi các đối tượng sử dụng là những đối tượng không thuộc loại các đối tượng quản lý hệ thống PKI.

Tất cả các đối tượng sử dụng ít nhất phải có khả năng quản lý và truy cập một cách an toàn đến các thông tin sau:

- Tên của chính đối tượng đó.

- Khóa riêng của đối tượng đó.

- Tên của CA được chính đối tượng này tin tưởng (trusted CA).

- Khóa công khai của CA này.

Trong quá trình triển khai, các đối tượng sử dụng những phương tiện lưu trữ an toàn để lưu các thông tin ngoài những thông tin tối thiểu kể trên (chứng chỉ số của đối tượng, các thông tin cho các dịch vụ cụ thể). Việc lưu trữ thông tin dưới hình thức như trên được gọi là môi trường an toàn cá nhân.

Page 81: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-81- 2.3.4.2. Đối tượng quản lý chứng chỉ số Đối tượng quản lý chứng chỉ số (CA) không nhất thiết phải là một bên thứ ba

thực sự nếu xét dưới góc độ của các đối tượng trong một tổ chức. Nghĩa là, CA thực

chất lại thuộc về cùng một tổ chức chứa các đối tượng sử dụng mà nó hỗ trợ. Ngoài ra,

ta cũng sử dụng khái niệm CA để chỉ đối tượng được nêu tên trong trường issuer của

chứng chỉ số.

Khi cần phân biệt phần mềm hoặc các công cụ phần cứng được sử dụng bởi

CA ta sử dụng khái niệm công cụ của CA. Khái niệm này bao hàm các thành phần làm

việc theo cả chế độ off-line lẫn on-line. Trong đó, chỉ có thành phần off-line là biết

được khóa riêng của CA.

Ta sử dụng khái niệm CA gốc để chỉ một CA được một đối tượng sử dụng nào

đó được tin cậy một cách trực tiếp. Ta hiểu khái niệm trực tiếp có nghĩa là việc tin cậy

có thể được đảm bảo mà không cần thêm một CA nào nữa. Nói cách khác, đây là CA

cuối cùng trên nhánh xác thực. Khi đó, việc lấy thông tin về khóa công khai của CA

gốc cần phải được thực hiện thông qua những phương thức riêng, nghĩa là việc trao

đổi thông tin không được thực hiện trên đường truyền thông dùng để truyền các chứng

chỉ số. Ở đây có thể sử dụng những phương pháp phân phát thông tin dựa trên giấy tờ

và thư tín. Ta cũng cần lưu ý một điều là CA gốc không nhất thiết phải nằm trên đỉnh

của một cây phân cấp biểu diễn hệ thống. Điều cần quan tâm là CA gốc được tin cậy

trực tiếp bởi một hoặc một số đối tượng sử dụng.

Một CA thứ cấp nếu xét trên phương diện của các đối tượng sử dụng thì là bất

kỳ CA nào khác với CA gốc. Thông thường, một CA thứ cấp sẽ không là CA gốc của

bất kỳ đối tượng sử dụng nào. Tuy nhiên, điều này không phải là hoàn toàn bắt buộc.

Page 82: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-82- 2.3.4.3. Đối tượng quản lý đăng ký chứng chỉ số Tổ chức quản lý đăng ký chứng chỉ số là RA. Trong nhiều môi trường hoạt động, việc tách riêng RA khỏi CA là một việc cần thiết. RA có thể có một số chức năng như sau:

Xác thực cá nhân.

Phân phát các chứng chỉ số.

Thông báo hủy bỏ.

Gán tên cho các đối tượng.

Sinh khóa.

Lưu trữ các cặp khóa riêng và khóa công khai.

RA có thể được coi là một thành phần không bắt buộc. Tuy nhiên, khi RA đứng độc lập thì CA phải đảm nhận những chức năng trên. Nghĩa là các chức năng mà CA có được cho các đối tượng phải giống như trong trường hợp CA và RA đứng độc lập.

Về bản chất, RA cũng là một đối tượng sử dụng. Tất cả các RA đều được xác thực và có các khóa riêng dùng trong việc tạo chữ ký số cho các thông tin mà nó cấp phát. Trong một số trường hợp, các đối tượng sử dụng có thể liên hệ trực tiếp với CA quản lý mình mặc dù trong hệ thống vẫn có mặt RA. Ví dụ, trong các thủ tục đăng ký và xác thực ban đầu, nó phải liên hệ trực tiếp với CA để cập nhật thông tin về chứng chỉ số của mình.

Page 83: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-83- 2.3.5. Các hoạt động cơ bản trong hệ thống PKI

2.3.5.1. Mô hình tổng quát của hệ thống PKI Trong sơ đồ dưới đây là các đối tượng của hệ thống PKI và mối quan hệ giữa

chúng trên cơ sở các hoạt động quản lý PKI. Mối liên hệ được thể hiện bằng các thông điệp được truyền đi giữa các đối tượng trong hệ thống. [13],[14]

Hình 2.20 : Các đối tượng và hoạt động cơ bản trong hệ thống PKI

Dựa trên các thông điệp được định nghĩa (sẽ được trình bày chi tiết trong các phần sau) và xét ở một mức khái quát, các hoạt động của hệ thống quản lý PKI có thể được phân thành các nhóm sau.

2.3.5.2. Thiết lập các chứng chỉ số

Các chứng chỉ số được tạo ra trên cơ sở một số thông tin cơ bản (đối tượng phát hành, đối tượng sử dụng, thuật toán tạo chữ ký số, thời hạn lưu hành…) và một số thông tin mở rộng. Song song với quá trình tạo ra một chứng chỉ số mới, ta cũng cần tiến hành một số bước phụ trợ. Ta có thể kể đến việc tạo lập hoặc cập nhật danh sách các thẻ bị hủy bỏ, việc đăng tải thông tin về khóa công khai của CA, lưu chứng chỉ số vừa tạo được….

2.3.5.3. Khởi tạo các EE (End Entity)

Quá trình này đòi hỏi một số bước cơ bản như sau: Trước tiên, đối tượng này phải thu thập được thông tin về khóa công khai của CA gốc. Điều này giúp cho các thông điệp được truyền đi giữa đối tượng đó và CA gốc được đảm bảo an toàn và cũng là một phương thức để xác thực EE Sau đó, EE phải thu thập thông tin về các tùy chọn được hỗ trợ bởi đối tượng quản lý PKI. Điều này rất quan trọng vì nó ảnh hưởng đến giao thức hoạt động và các thông điệp mà EE truyền đi hay nhận về.

Page 84: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-84- 2.3.5.4. Các hoạt động liên quan đến chứng chỉ số

Có nhiều hoạt động liên quan tới chứng chỉ số và được phân thành: - Đăng ký và xác thực ban đầu Trong quá trình này, trước tiên, EE phải thông báo cho CA hoặc RA biết về sự hiện diện của mình trong hệ thống. Đối tượng được thông báo có quyền ưu tiên cao hơn là CA sẽ cấp phát cho EE này một chứng chỉ số khi nó chấp nhận yêu cầu. Kết quả của quá trình này là một CA sẽ tạo ra một chứng chỉ số cho EE ứng với khóa công khai mà EE này cung cấp khi đăng ký. Đồng thời, CA này cũng gửi chứng chỉ số này đến cho hệ thống lưu trữ. Trong một hệ PKI lớn, hệ thống lưu trữ có vai trò quan trọng và có tính độc lập cao đối với CA. Nếu xét một cách chi tiết, giai đoạn này gồm nhiều bước nhỏ hơn. Có thể, nó sẽ bao gồm cả công đoạn khởi tạo các công cụ của EE. Ví dụ, để có thể được sử dụng trong công đoạn kiểm chứng đường dẫn đến các chứng chỉ số, các công cụ của EE phải được khởi tạo một cách an toàn với khóa công khai của một CA nào đó. Ngoài ra, một EE còn cần phải được khởi tạo với cặp khóa của chính nó. - Cập nhật thông tin về cặp khóa Mỗi đối tượng tham gia vào hệ thống PKI đều phải có một cặp khóa gồm khóa khóa công khai và khóa riêng. Tất cả các cặp khóa này cần phải được cập nhật một cách thường xuyên vì các cặp khóa này có thể được thay bằng cặp khóa mới. Việc thay đổi thông tin của các cặp khóa này có thể là do chúng đã hết hạn sử dụng hoặc đã bị lộ. Như vậy, để đảm bảo tất cả các đối tượng có liên quan nắm được thông tin mới nhất về cặp khóa của mình, đối tượng sở hữu cặp khóa phải tạo các thông điệp cập nhật cặp khóa để gửi đến cho các đối tượng có liên quan. - Cập nhật thông tin về chứng chỉ số Mỗi chứng chỉ số được cấp phát cho các đối tượng sử dụng chỉ có tác dụng trong một khoảng thời gian đã định. Khi các chứng chỉ số này hết hạn và đối tượng sử dụng muốn tiếp tục có được chứng chỉ số của mình thì CA quản lý đối tượng ấy sẽ tạo ra một chứng chỉ số mới cho đối tượng và phải làm nhiệm vụ cập nhật thông tin về chứng chỉ số này. Trong trường hợp không có sự thay đổi nào về các tham số môi trường của hệ thống PKI, các CA có thể chỉ cần “làm tươi” các chứng chỉ số này.

- Cập nhật thông tin về cặp khóa của CA

Cũng giống như đối với các EE, cặp khóa của CA cũng cần được cập nhật thường xuyên. Tuy nhiên, do vai trò và các mối liên hệ của CA trong hệ thống có nhiều khác biệt và phức tạp hơn nên ta cần phải có những cơ chế thích hợp để thực hiện công việc này. Ví dụ, CA phải gửi được thông tin về cặp khóa công khai của mình tới tất cả các EE mà nó quản lý theo kiểu multicast. Ngoài ra, nó còn phải gửi thông tin này đến các CA khác có liên quan.

Page 85: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-85- - Yêu cầu xác thực ngang hàng

Khi diễn ra quá trình trao đổi thông tin giữa các CA ngang hàng, một CA có thể sẽ yêu cầu CA còn lại gửi cho mình một chứng chỉ số ngang hàng. Chứng chỉ số ngang hàng này về bản chất cũng giống với các chứng chỉ số dành cho các EE. Trường subject của chứng chỉ số ngang hàng dùng để chỉ CA được cấp thẻ còn trường issuer được dùng để chỉ CA cấp phát thẻ.

Trong các loại chứng chỉ số ngang hàng, ta phân ra làm hai loại như sau: Nếu hai CA thuộc về vùng quản lý khác nhau, ta có chứng chỉ số ngang hàng liên miền. Nếu hai CA thuộc cùng một vùng quản lý thì ta gọi đó là chứng chỉ số ngang hàng nội miền.

Đối với các chứng chỉ số ngang hàng, ta có một số chú ý sau:

Trong nhiều hệ thống PKI, nếu không có những định nghĩa chi tiết hơn, các chứng chỉ số ngang hàng thường được hiểu là chứng chỉ số ngang hàng liên miền.

Việc phát hành các chứng chỉ số ngang hàng không nhất thiết phải được tiến hành ở cả hai CA. Nghĩa là có cả trường hợp một CA được xác thực bởi một CA khác mà không có theo chiều ngược lại.

- Cập nhật chứng chỉ số ngang hàng

Việc cập nhật chứng chỉ số ngang hàng cũng giống với việc cập nhật chứng chỉ số cho các đối tượng sử dụng. Tuy nhiên, các đối tượng có liên quan đến quá trình này chỉ là các CA.

- Phát hành thẻ và danh sách thẻ bị hủy bỏ

Có những hoạt động của hệ thống quản lý PKI sẽ dẫn đến việc tạo ra các chứng chỉ số hoặc danh sách các chứng chỉ số bị hủy bỏ. Ta có hai hoạt động tiểu biểu thuộc loại này là: phát hành chứng chỉ số và phát hành danh sách chứng chỉ số bị hủy bỏ.

Khi CA phát hành một chứng chỉ số, trước tiên, nó cần phải dựa trên định dạng của chứng chỉ số cần cấp. Sau khi có được các thông tin về chính sách quản trị, CA sẽ tổ chức chúng theo định dạng đã biết, khi đó, chứng chỉ số đã hoàn thiện. Tuy nhiên, việc phát hành chứng chỉ số chỉ hoàn tất sau khi CA gửi thông tin về chứng chỉ số này đến đối tượng sử dụng và lưu thẻ này vào hệ thống lưu trữ.

Việc phát hành danh sách chứng chỉ số bị hủy bỏ cũng được tiến hành như với danh sách chứng chỉ số. Tuy nhiên, thông tin về danh sách này chỉ được truyền cho hệ thống lưu trữ.

Page 86: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-86- - Các hoạt động phục hồi

Các hoạt động phục hồi được thực hiện khi các đối tượng sử dụng đánh mất thông tin mà nó lưu trữ. Ví dụ, như đã nêu ở phần trên, các đối tượng sử dụng có thể có một số phương tiện lưu trữ an toàn cá nhân; khi phương tiện lưu trữ này bị hỏng thì nó cần phải nhờ đến CA để phục hồi các thông tin bị mất.

Việc phục hồi thông tin chủ yếu được tập trung vào việc phục hồi các cặp khóa. Đối với các CA và RA, việc lưu trữ thông tin backup về khóa của các đối tượng là không bắt buộc. Khi các đối tượng sử dụng cần phục hồi các cặp khóa của mình, ta cần phải có thêm một số giao thức chuyển đổi để hỗ trợ việc phục hồi khóa.

- Các hoạt động hủy bỏ

Có một số hoạt động quản lý hệ thống PKI dẫn đến việc tạo một danh sách chứng chỉ số sẽ được hủy bỏ hoặc bổ sung những thẻ cần được hủy bỏ vào danh sách này. Ví dụ, một đối tượng đã được phân quyền trong hệ thống có thể thông báo cho CA về một trạng thái không bình thường và cần phải có một số yêu cầu hủy bỏ chứng chỉ số. Cụ thể, nếu ta phát hiện được một đối tượng đã đăng ký để lấy chứng chỉ số có những biểu hiện không bình thường hoặc những thông tin do đối tượng này có một số bất hợp lý thì ta có thể báo cho CA biết và hủy bỏ chứng chỉ số đã cấp cho đối tượng sử dụng đó.

Đối với tất cả các hoạt động đã nêu trên, ta có một số lưu ý sau: Các giao thức làm việc theo chế độ on-line không phải là giải pháp duy nhất để thực hiện các hoạt động trên. Đối với tất cả các giao thức hoạt động theo chế độ on-line, ta đều có một phương thức hoạt động theo chế độ off-line cho kết quả tương đương.

Page 87: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-87- 2.3.6 Những vấn đề cơ bản trong xây dựng hệ thống CA

2.3.6.1. Các mô hình triển khai hệ thống CA

Hệ thống CA khi được triển khai ở bất kỳ phạm vi nào đều cần có một kiến trúc phù hợp. Thông thường, ta dựa trên đặc điểm tổ chức của hệ thống các dịch vụ sử dụng CA để định ra kiến trúc phù hợp. Sau đây, ta sẽ tìm hiểu những kiến trúc hệ thống CA tiêu biểu.

1/. Kiến trúc CA phân cấp

Trong kiến trúc này, các CA đều nằm dưới một CA gốc. CA gốc cấp các chứng chỉ số cho những CA thứ cấp hay các EE. Đến lượt các CA này lại cấp các chứng chỉ số cho những CA ở mức thấp hơn hoặc cho các EE.

CA gèc

CA 3

EE

CA 2

EE EE (A)

CA 5

EE

EE

EEEEEEEE (B)

CA 4

Hình 2.21 : Kiến trúc CA phân cấp

Trong mô hình này, tất cả các đối tượng trong hệ thống đều phải biết khóa công khai của CA gốc. Tất cả các chứng chỉ số đều có thể được kiểm chứng bằng cách kiểm tra đường dẫn của chứng chỉ số đó đến CA gốc. Ví dụ, khi A muốn kiểm chứng chứng chỉ số của B, thẻ này do CA4 cấp, do vậy A kiểm tra chứng chỉ số của CA4; chứng chỉ số của CA4 lại do CA2 cung cấp nên A lại kiểm tra chứng chỉ số của CA2; chứng chỉ số của CA2 là do CA gốc cung cấp. Vì A biết khóa công khai của CA gốc nên nó có thể kiểm chứng trực tiếp. Như vậy, trong kiến trúc của hệ thống PKI này, tất cả các đối tượng đều dựa trên sự tin cậy đối với CA gốc duy nhất. Khóa công khai của CA gốc phải được phân phát cho các đối tượng đã được xác thực để đảm bảo sự tin cậy trong hệ thống. Sự tin cậy này được hình thành theo các cấp từ CA gốc đến các CA thứ cấp và đến các đối tượng sử dụng.

Page 88: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-88- Một số đánh giá về kiến trúc hệ thống PKI phân cấp như sau:

* Những ưu điểm của kiến trúc CA phân cấp

Cấu trúc hệ thống quản lý của hầu hết các tổ chức đều có dạng phân cấp. Các mối quan hệ trong mô hình phân cấp cũng khá giống với các quan hệ trong các tổ chức. Vì vậy, ta có thể coi các nhánh của quá trình xác thực đối tượng giống với các nhánh trong cấu trúc của tổ chức.

Kiến trúc phân cấp này cũng gần giống với hình thức phân cấp trong việc tổ chức thư mục. Do vậy, ta có thể dễ dàng làm quen hơn. Cách thức tìm ra một nhánh xác thực là theo một hướng nhất định, không có hiện tượng vòng lặp. Do vậy, quá trình xác thực được thực hiện đơn giản và nhanh chóng.

Tất cả các đối tượng sử dụng đều có nhánh xác thực hướng về CA gốc, do vậy, nêu một đối tượng sử dụng A cung cấp cho B thông tin về nhánh xác thực của mình thì B cũng có thể thực hiện xác thực theo hướng đó vì B cũng biết khóa công khai của CA gốc.

* Những khuyết điểm của kiến trúc CA phân cấp

Nếu ta áp dụng một mô hình phân cấp một cách cứng nhắc thì vẫn có một số nhược điểm như sau: Trên một phạm vi lớn, không thể chỉ có một CA duy nhất để đảm nhận tất cả các quá trình xác thực.

Các quan hệ kinh doanh, thương mại không phải lúc nào cũng có dạng phân cấp.

Khi khóa riêng của CA gốc bị tiết lộ thì toàn bộ hệ thống sẽ bị nguy hiểm. Nếu có khắc phục bằng cách thay cặp khóa mới thì thông tin về khóa công khai của CA gốc phải được truyền đến cho tất cả các đối tượng trong hệ thống. Điều này đòi hỏi thời gian và một lưu lượng truyền thông rất lớn.

Trong các hệ thống ban đầu được triển khai, mô hình phân cấp đã được ưu tiên sử dụng. Tuy nhiên, phiên bản 3.0 của các chứng chỉ số đã có những phần mở rộng hỗ trợ quá trình xác thực không theo mô hình phân cấp. Do vậy, mô hình phân cấp ngày càng ít được sử dụng.

Page 89: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-89- 2/. Kiến trúc hệ thống CA mạng lưới

Trong kiến trúc này, việc các CA thực hiện xác thực ngang hàng đã tạo nên một mạng lưới các mối quan hệ tin cậy lẫn nhau giữa các CA ngang hàng. Các đối tượng nắm được khóa công khai của CA nằm “gần” mình nhất. Thông thường, đây là CA cấp cho đối tượng đó chứng chỉ số. Các đối tượng kiểm chứng một chứng chỉ số bằng cách kiểm tra quá trình xác thực với đích là CA đã phát hành chứng chỉ số đó.

Các CA sẽ xác thực ngang hàng bằng cách phát hành cho nhau những chứng chỉ số, những cặp chứng chỉ số này được kết hợp và lưu trong một cấu trúc dữ liệu có tên: CrossCertificatePair. Trong sơ đồ dưới đây, A có thể xác thực B theo nhiều nhánh khác nhau. Theo nhánh ngắn nhất, B được CA4 cấp chứng chỉ số nên nó được xác thực bở CA4. CA4 được xác thực ngang hàng bởi CA5 và CA5 lại được xác thực ngang hàng bởi CA3. A được CA3 cấp phát chứng chỉ số và biết được khóa công khai của CA3 nên nó có thể xác thực trực tiếp với CA3.

EE EE

CA 1

CA 2 CA 5

CA 4

EE

EE

CA gèc(CA3)

EE(A)

EE

EE EEEE(B)

EE

EE

Hình 2.22 : Kiến trúc CA mạng lưới

* Ưu điểm của kiến trúc CA mạng lưới

Đây là một kiến trúc linh động, nó thích hợp với các mối liên hệ và mối quan hệ tin cậy lẫn nhau trong thực tế của công việc kinh doanh.

Một đối tượng sử dụng ít nhất phải tin cậy CA cấp phát chứng chỉ số cho nó. Có thể coi đây là cơ sở để tạo nên tất cả các mối quan hệ tin tưởng lẫn nhau.

Các CA có thể xa nhau trong mô hình tổ chức nhưng những đối tượng sử dụng của nó lại làm việc cùng nhau với mức ưu tiên cao có thể xác thực ngang hàng theo một cách thức có độ ưu tiên cao. Độ ưu tiên này chỉ được giới hạn trong phạm vi của các CA này.

Page 90: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-90- Kiến trúc này cho phép các CA có thể xác thực ngang hàng một cách trực tiếp trong trường hợp các đối tượng sử dụng của chúng liên lạc với nhau thường xuyên để giảm tải lượng đường truyền và thao tác xử lý.

Việc khôi phục hệ thống do khóa riêng của một CA bị tiết lộ sẽ chỉ gồm việc phân phát một cách an toàn khóa công khai mới của CA đến các đối tượng mà CA này cấp phát chứng chỉ số.

* Nhược điểm của mô hình CA mạng lưới

Do cấu trúc của mạng có thể rất phức tạp nên việc tìm kiếm các đối tượng rất khó khăn. Trong trường hợp có nhiều đường truyền đến một đối tượng khác thì bài toán tìm đường đi ngắn nhất đến đối tượng đó có thể rất phức tạp.

Một đối tượng không thể đưa ra một nhánh xác thực duy nhất mà có thể đảm bảo tất cả các đối tượng khác trong hệ thống có thể thực hiện được.

3/. Kiến trúc CA danh sách tin cậy Đây là kiến trúc được áp dụng rộng rãi đối với dịch vụ Web. Trong đó, các

trình duyệt và các máy chủ là những đối tượng sử dụng tiêu biểu nhất. Trong mô hình này, các trình duyệt đều lưu một file riêng chứa các chứng chỉ số gốc của các CA được tin cậy. File này tồn tại ngay khi trình duyệt được cài đặt. Việc quản lý file này có thể được thực hiện bởi các cá nhân sử dụng trình duyệt. Các tổ chức cũng có thể cấp quyền cho việc tải hoặc quản lý các thông tin từ một máy chủ của tổ chức. Đối với mỗi file này, người sử dụng có thể bổ sung hoặc xóa bớt những chứng chỉ số khỏi danh sách. Tuy nhiên, khả năng xử lý cách nhánh xác thực của các ứng dụng hiện còn khá hạn chế.

Các trình duyệt có thể sử dụng các cặp khóa công khai/khóa riêng để ký, để kiểm chứng, giải mã hoặc mã hoá các thư điện tử theo chuẩn S/MIME. Với các chứng chỉ số, các trình duyệt cũng có thể thiết lập các phiên truyền thông an toàn SSL (Secure Sockets Layer). SSL là một giao thức xác thực và mã hoá ở tầng chuyển vận. Trong một phiên truyền thông SSL, người dùng có thể gửi đi một mẫu biểu hoặc nhận về các thông tin từ một máy chủ dưới hình thức được mã hoá và xác thực. Mặt khác, các trình duyệt còn có thể kiểm chứng các chữ ký số được áp dụng đối với thông tin được truyền đi.

Page 91: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-91-

EE 4 4 4 5 5 (A)

(B) EE EE

EE EE

CA 1 CA 3CA 2

EE EE

Hình 2.23 : Kiến trúc CA danh sách tin cậy

Như vậy, ta có thể coi kiến trúc CA danh sách tin cậy là một mô hình hướng trình duyệt.

*Ưu điểm của kiến trúc CA danh sách tin cậy

Đây là kiến trúc đơn giản, quá trình truyền thông và xác thực theo một hướng duy nhất, hơn nữa, mô hình này có thể được triển khai khá dễ dàng.

Trong kiến trúc này này, các đối tượng sử dụng có toàn quyền quản lý file lưu trữ danh sách chứng chỉ số của các CA mà mình tin cậy.

Kiến trúc này có thể làm việc rất tốt với giao thức quản lý trạng thái chứng chỉ số trực tiếp do các nhánh xác thực khá đơn giản. Hơn nữa, những yêu cầu về trạng thái chứng chỉ số chỉ được gửi tới các CA ở trong danh sách các CA được tin cậy.

*Nhược điểm của kiến trúc CA danh sách tin cậy

Người sử dụng có toàn quyền nội dung của file chứa chứng chỉ số của các CA mà nó tin cậy. Do vậy việc quản lý danh sách các CA được tin cậy của một tổ chức là rất khó khăn.

Việc khởi tạo danh sách mặc địch các CA được tin cậy khi cài đặt một trình duyệt sẽ dẫn đến khó đảm bảo tính xác thực trong quá trình khởi tạo thông tin về khóa công khai của các CA này. Đây là một kẽ hở để các đối tượng tấn công lợi dụng.

Không phải tất cả những người sử dụng đều có khả năng quản lý tốt một file chứa quá nhiều chứng chỉ số của các CA mà mình tin cậy.

Cấu trúc chứng chỉ số không hỗ trợ nhiều cho việc tìm ra các nhánh xác thực.

Không có những hỗ trợ trực tiếp đối với các cặp chứng chỉ số ngang hàng. Do vậy, hạn chế khả năng của CA trong quản lý sự tin cậy của mình đối với các CA khác.

Page 92: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-92- Các chính sách đối với chứng chỉ số không được hỗ trợ, do vậy, cần phải có một CA quản lý một số CA khác để có thể áp dụng các chính sách chứng chỉ số và các mức đảm bảo. Điều này dẫn đến việc tăng số CA được tin cậy trong file của mỗi đối tượng sử dụng.

Hiện tại các trình duyệt không hề hỗ trợ tính năng tự động lấy thông tin trạng thái hoặc hủy bỏ các chứng chỉ số.

Tóm lại, ưu điểm đáng kể nhất của kiến trúc danh sách tin cậy là khả năng hỗ trợ đối với định dạng dữ liệu S/MIME và các phiên truyền thông SSL đối với các trình duyệt hiện nay. Dịch vụ World Wide Web và các trình duyệt là những đối tượng cơ bản trong công nghệ mạng hiện nay, nó cũng là nền tảng để phát triển các trình ứng dụng phân tán.

Hiện nay, các máy chủ Web đều hỗ trợ kiến trúc CA theo danh sách tin cậy, bất kể ai muốn phát triển các ứng dụng CA cho một lượng lớn đối tượng sử dụng đều phải ý thức được điều này. Hơn nữa, công nghệ Web hiện đang là một hướng lựa chọn phổ biến cho các ứng dụng trong phạm vi các mạng cục bộ. Như vậy, với sự hiện diện của các trình duyệt ở khắp mọi nơi và một vị trí quan trọng của chúng để xây dựng các ứng dụng mạng, đây thực sự là một kiến trúc quan trọng trong số các kiến trúc được áp dụng để xây dựng các hệ thống CA.

2.3.6.2. Những chức năng bắt buộc trong quản lý PKI Các hoạt động của hệ thống quản lý PKI đã được mô tả trong phần tổng quan về PKI. Trong phạm trù triển khai hệ thống PKI, ta cần tìm hiểu những chức năng mà hệ quản lý PKI bắt buộc phải có. Mặt khác, để đề ra những phần công việc cần lập trình thực thi trong đồ án thực tập này, ta sẽ lấy những chức năng này làm cơ sở để lập trình thực thi một hệ thống PKI (gồm CA và EE) với các chức năng tối thiểu. Những chức năng bắt buộc đối với hệ thống quản lý PKI gồm có:

1/. Khởi tạo CA gốc Khi một CA mới tham gia vào hệ thống PKI, nó phải tạo ra các chứng chỉ số theo kiểu tự ký (self-signed). Các chứng chỉ số này được ký với khóa riêng của CA gốc đó và trường mô tả cho kiểu chứng chỉ số là NewWithNew. Nghĩa là, chứng chỉ số được cấp lần đầu cho các đối tượng trong hệ thống. Kiểu chứng chỉ số này cũng được dùng khi CA muốn gửi chứng chỉ số đến cho một đối tượng mới tham gia hệ thống. Thông điệp chứa chứng chỉ số này được gửi đi sau khi CA thực hiện công việc cập nhật khóa công khai của mình.

Đồng thời với việc tạo và gửi đi các chứng chỉ số của mình đến cho các đối tượng trong hệ thống, CA gốc cũng phải tạo danh sách các chứng chỉ số cần hủy bỏ (CRL) và lưu các chứng chỉ số đã gửi đi vào danh sách này. Đây chính là cơ sở để CA hủy bỏ các khóa và thực hiện các phiên cập nhật khóa của mình.

Page 93: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-93- 2/. Cập nhật khóa của CA gốc Các khóa của CA đều có thời gian hiệu lực nhất định nên chúng cần phải được cập nhật theo định kỳ. Thời gian hiệu lực của khóa sẽ tùy thuộc vào các chính sách được thiết lập đối với hệ thống PKI. Các chứng chỉ số theo kiểu NewWithNew, NewWithOld, và OldWithNew được CA phát hành và gửi đến cho các đối tượng sử dụng đã có mặt trong hệ thống. Những đối tượng này đang nắm giữ chứng chỉ số cũ của CA (kiểu OldWithOld), khi nhận được các chứng chỉ số mới gửi đến từ CA, có thể chuyển sang các chứng chỉ số mới theo kiểu NewWithNew một cách an toàn.

Ngoài ra, hoạt động này của CA gốc còn giúp cho các đối tượng sử dụng mới (những đối tượng sẽ nhận được chứng chỉ số kiểu NewWithNew) có thể thu được chứng chỉ số kiểu OldWithOld một cách an toàn, điều này sẽ giúp cho đối tượng sử dụng mới có thể kiểm tra các dữ liệu đã có (dữ liệu có thể được kiểm tra bởi khóa công khai trong các thông điệp kiểu OldWithOld)

3/. Khởi tạo các CA thứ cấp Nếu xét trên phương diện các giao thức quản lý, việc khởi tạo một CA thứ cấp cũng giống với việc khởi tạo một EE. Điểm khác biệt duy nhất là các CA thứ cấp cũng phải khởi tạo một CRL của mình.

4/. Tạo lập CRL Trước khi phát hành và gửi đi các chứng chỉ số, một CA mới được khởi tạo phải tạo ra các CRL trống để chuẩn bị cho việc bổ sung các chứng chỉ số cần hủy bỏ. Các CRL này cũng sẽ được cập nhật thông tin định kỳ theo thời gian hiệu lực của các chứng chỉ số.

5/. Yêu cầu về thông tin hệ thống PKI Khi một đối tượng trong hệ thống PKI (CA, RA hoặc EE) muốn có được thông tin trạng thái của một CA nào đó, đối tượng này có thể gửi cho CA đo một yêu cầu về các thông tin trên. CA nhận được yêu cầu phải trả lời bằng việc cung cấp ít nhất là các thông tin đã được yêu cầu. Nếu có một số trường thông tin nào đó không thể được đáp ứng thì phải có một thông điệp báo lỗi gửi về cho đối tượng yêu cầu.

* Xác thực ngang hàng

Trong giao thức của việc xác thực ngang hàng, CA yêu cầu sẽ là CA có tên trong trường subject của chứng chỉ số (CA được cấp phát chứng chỉ số). Trong khi đó, CA trả lời sẽ chính là CA đã phát hành chứng chỉ số này. Quá trình xác thực ngang hàng là cần thiết khi các CA muốn trao đổi thông tin với nhau vì nó giúp các CA biết chắc mình đang trao đổi thông tin với đối tượng nào.

Page 94: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-94-

* Khởi tạo các EE

Cũng giống như các CA, những EE cũng phải được khởi tạo khi tham gia vào hệ thống PKI. Quá trình khởi tạo cho các đối tượng này bao gồm ít nhất 2 bước sau:

- Thu thập thông tin về hệ thống PKI

Trong thủ tục này, ta cần có những thông tin sau đây: Khóa công khai của CA gốc, nhánh xác thực từ CA gốc đến CA đang quản lý

đối tượng này cùng với các CRL có liên quan (trường hợp CA quản lý đối tượng không phải là CA gốc), những thuật toán và các tham số của thuật toán mà CA quản lý hỗ trợ trong các mục đích sử dụng có liên quan.

- Kiểm tra khóa công khai của CA gốc

Một EE phải có được khóa công khai của CA gốc một cách an toàn. Một trong số các phương thức hiệu quả để đảm bảo yêu cầu này là việc sử dụng các chứng chỉ số tự ký và được trao đổi qua các phương tiện out-of-band. Sau khi nhận được chứng chỉ số này từ CA gốc, các EE có thể sử dụng những chứng chỉ số này một cách an toàn.

Yêu cầu xác thực

Một EE sau khi khởi tạo có thể sẽ yêu cầu một chứng chỉ số vào bất kỳ thời điểm nào. Yêu cầu này được truyền tải bởi thông điệp yêu cầu chứng chỉ số (CR). Nếu đối tượng đã có một cặp khóa để tạo chữ ký thì thông điệp yêu cầu sẽ được bảo vệ bằng cách thực hiện phương thức chữ ký số đối với nó. Nếu yêu cầu được chấp nhận, CA sẽ trả về cho đối tượng sử dụng một chứng chỉ số mới.

Cập nhật khóa

Khi cặp khóa của một EE không còn hiệu lực nữa, đối tượng này có thể yêu cầu được cập nhật cặp khóa của mình bằng một cặp khóa mới. Yêu cầu này được truyền tải bởi thông điệp yêu cầu cập nhật khóa (KUR). Nếu EE đã có một cặp khóa tạo chữ ký thì thông điệp yêu cầu này sẽ được bảo vệ thông qua phương thức chữ ký số. Nếu yêu cầu được chấp thuận thì CA sẽ trả về một thông điệp trả lời yêu cầu cập nhật khóa (KUP) có chứa một chứng chỉ số mới cho đối tượng.[14]

Page 95: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-95-

CHƯƠNG 3 MỘT SỐ TIỆN ÍCH DÙNG TRONG THANH TOÁN ĐIỆN TỬ

3.1. THẺ THANH TOÁN

3.1.1. Giới thiệu về thẻ thông minh

3.1.1.1. Khái niệm thẻ thông minh Trong thanh toán điện tử, người ta dùng thẻ thanh toán là thẻ thông minh. Thẻ

thông minh (smart card) thường được gọi là thẻ chip hoặc thẻ mạch tích hợp, là một thẻ nhựa được gắn với một con chip máy tính. Mạch tích hợp trong thẻ gồm các thành phần được sử dụng cho việc truyền, lưu trữ và xử lý dữ liệu. Thẻ thông minh có thể có một vùng dập nổi trên một mặt và dải từ trên mặt kia.

Thông thường thẻ thông minh không chứa thiết bị cung cấp nguồn, thiết bị hiển thị hay bàn phím. Để tương tác với thế giới bên ngoài, thẻ thông minh được đặt trong hoặc gần thiết bị chấp nhận thẻ, được nối với máy tính.

3.1.1.2. Phân loại thẻ thông minh

1/. Dựa theo cách thức truyền dữ liệu, thẻ thông minh được phân loại thành:

Thẻ tiếp xúc, thẻ không tiếp xúc và thẻ lưỡng tính.

* Thẻ tiếp xúc:

Phải được đưa vào một thiết bị chấp nhận thẻ, chúng liên lạc với thế giới bên ngoài qua giao diện tiếp xúc. Với ưu điểm về giá cả, các chuẩn và độ bảo mật, thẻ tiếp xúc được sử dụng trong các tổ chức tài chính và cơ quan truyền thông.

* Thẻ không tiếp xúc:

Kkhông cần phải đặt trong thiết bị chấp nhận thẻ, việc đọc/ghi dữ liệu thẻ không cần phải có một tiếp xúc vật lý. Thẻ có thể được đặt cách máy đọc thẻ vài chục centimet. Năng lượng có thể được cung cấp bởi nguồn bên trong hoặc qua ăng ten trong thẻ. Thẻ không tiếp xúc truyền dữ liệu tới thiết bị chấp nhận thẻ thông qua trường điện từ. Tốc độ xử lý của thẻ không tiếp xúc nhanh hơn so với thẻ tiếp xúc nhưng không an toàn bằng thẻ tiếp xúc. Vì vậy, thẻ không tiếp xúc thường được ứng dụng ở những nơi cần phải xử lý nhanh như các phương tiện công cộng (xe bus, thẻ ra vào …).

* Thẻ lưỡng tính:

Là thẻ kết hợp các đặc điểm của thẻ tiếp xúc và thẻ không tiếp xúc. Dữ liệu được truyền hoặc bằng cách tiếp xúc hoặc không tiếp xúc.

Page 96: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-96- 2./ Dựa theo loại chip, thẻ thông minh được phân thành thẻ nhớ và thẻ vi xử lý

* Thẻ nhớ

Thẻ nhớ là thẻ được nhúng trong một chip nhớ hoặc chip kết hợp với bộ nhớ nhưng không lập trình được.

Thẻ nhớ không có CPU nên việc xử lý dữ liệu được thực hiện bởi một số mạch đơn giản, có khả năng thực hiện một vài lệnh được lập trình trước. Do số chức năng của một mạch là giới hạn, được cố định trước nên không thể lập trình để thay đổi các chức năng đó.

Ưu điểm của thẻ nhớ là có công nghệ đơn giản, giá thành thấp, tuy nhiên thẻ nhớ có thể dễ dàng làm giả.

* Thẻ vi xử lý

Thẻ vi xử lý có khả năng bảo mật và khả năng tính toán cao. Với thẻ vi xử lý, dữ liệu không được phép truy xuất tuỳ ý vào bộ nhớ.

Bộ vi xử lý kiểm soát dữ liệu và việc truy cập bộ nhớ thông qua các điều kiện (mật khẩu, mã hoá…) và các lệnh từ ứng dụng bên ngoài. Thẻ vi xử lý được dùng rộng rãi cho các ứng dụng cần bảo mật dữ liệu trong ngân hàng, thẻ viễn thông, thẻ khách hàng thường xuyên…

Các chức năng của thẻ bị giới hạn chủ yếu bởi dung lượng bộ nhớ và sức mạnh tính toán CPU trong thẻ.

Page 97: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-97- 3.1.1.3. Các chuẩn trong thẻ thông minh

Hiệp hội tiêu chuẩn quốc tế (ISO – International Standards Organization) đưa ra các chuẩn cho thẻ thông minh bao gồm sáu chuẩn được mô tả trong bảng 4.1

Bảng 4.1: Các chuẩn ISO cho thẻ thông minh [10],[15]

Các chuẩn Mô tả

ISO 7816-1 Những đặc điểm vật lý - định nghĩa kích thước vật lý của thẻ tiếp xúc và điện trở của chúng. Chuẩn này cũng mô tả vị trí vật lý của dải băng từ, khu vực dập nổi… của thẻ chip.

ISO 7816-2 Kích thước và khu vực tiếp xúc - định nghĩa khu vực, mục đích và những đặc điểm điện trở kim loại tiếp xúc của thẻ.

ISO 7816-3 Tín hiệu điện và những giao thức truyền - định nghĩa điện thế và những yêu cầu hiện tại.

ISO 7816-4 Lệnh sẵn sàng có thể trao đổi - thiết lập tập lệnh cho CPU của thẻ, cung cấp truy cập, bảo mật và truyền dữ liệu thẻ.

ISO 7816-5 Hệ thống số và thủ tục đăng ký cho định danh ứng dụng - thiết lập chuẩn cho định danh ứng dụng (AID - Application Identifier).

ISO 7816-6 Thành phần dữ liệu có sẵn bên trong - trình bày chi tiết thiết bị truyền vật lý và dữ liệu truyền, hỏi và xác lập lại (ATR – Answer To Reset) và giao thức truyền.

Page 98: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-98- 3.1.1.4. Phần cứng của thẻ thông minh

Thẻ thông minh có các điểm tiếp xúc trên bề mặt của nhựa nền, bộ xử lý trung tâm bên trong và nhiều dạng bộ nhớ. Một số loại thẻ thông minh có bộ đồng xử lý để cho việc tính toán được thuận lợi.

1) Các điểm tiếp xúc

Hình 3.1: Các điểm tiếp xúc theo chuẩn ISO 7816-2

Thẻ thông minh có 8 điểm tiếp xúc, nhưng chỉ có 6 điểm được sử dụng để giao tiếp với thế giới bên ngoài. Hướng và vị trí các điểm tiếp xúc được mô tả trong chuẩn ISO 7816-2.

- Điểm Vcc (supply voltage): cung cấp nguồn cho chip hiệu điện thế 3 hoặc 5 volts, với sai số 10%. Đối với các máy di động, thẻ thông minh có hiệu điện thế là 3 volts.

- Điểm GND (Ground): hiệu điện thế cho chip được cung cấp bởi thiết bị đọc trên điểm tiếp xúc. GND được dùng như mức hiệu điện thế chuẩn.

- Điểm RST (Reset): được dùng để nhận tín hiệu reset bộ vi xử lý từ thiết bị đọc- được gọi là khởi động nóng (warm reset), khởi động nguội (cold reset) được thực hiện chuyển nguồn cung cấp tắt hoặc bật.

- Điểm Vpp (programming voltage): là tuỳ chọn và chỉ dùng trong các thẻ cũ. Khi được sử dụng, điểm Vpp cung cấp hai mức hiệu điện thế lập trình. Mức thấp được gọi là trạng thái ngủ (idle state), mức cao là trạng thái kích hoạt (active state). Thay đổi mức điện thế để lập trình bộ nhớ EEPROM trong một số thẻ thông minh cũ.

- Điểm CLK (Clock): thực hiện tất cả những xử lý trong chip được đồng bộ hoá với một đồng hồ nhận được từ thiết bị đọc.

- Điểm I/O (Input/Output): được dùng để chuyển dữ liệu và lệnh giữa thẻ thông minh và thế giới bên ngoài theo chế độ bán song công, có nghĩa là dữ liệu và lệnh chỉ được truyền theo một hướng ở một thời điểm.

- Điểm RFU: để dành cho tương lai.

Page 99: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-99- 2) Bộ xử lý trung tâm trong thẻ thông minh

Trong các chip thẻ thông minh hiện nay, bộ xử lý trung tâm là 8-bit, thường sử dụng tập lệnh của Motorola 6805 và Intel 8051, với tín hiệu đồng hồ tới 5MHz.

Các thẻ công nghệ cao thường có bộ nhân tín hiệu (nhân 2, 4 hoặc 8). Các bộ nhân tín hiệu này cho phép thẻ thao tác tới 40MHz (5MHz nhân 8).

Các thẻ thông minh mới nhất có bộ xử lý 16 hoặc 32 bit.

3) Bộ đồng xử lý trong thẻ thông minh

Các thẻ thông minh cho các ứng dụng bảo mật thường có bộ đồng xử lý nhằm tăng khả năng tính toán, đặc biệt là tính toán với số nguyên lớn.

4) Hệ thống bộ nhớ của thẻ thông minh

Thẻ thông minh thường gồm ba loại bộ nhớ: ROM, EEPROM, RAM.

- ROM: bộ nhớ chỉ đọc được dùng để lưu trữ các chương trình như hệ điều hành, các dữ liệu cố định của thẻ. ROM có thể lưu trữ dữ liệu khi nguồn đã tắt và không thể ghi lại sau khi thẻ đã được sản xuất.

- EEPROM: bộ nhớ chỉ đọc có thể lập trình bằng tín hiệu điện.

- RAM: bộ nhớ truy cập ngẫu nhiên dùng để lưu trữ những thông tin cần xử lý nhanh nhưng mang tính tạm thời, không lưu lại được khi tắt nguồn.

Page 100: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-100- 3.1.1.5. Hệ điều hành của thẻ thông minh

Hầu hết các thẻ thông minh hiện nay đều có hệ điều hành. Đối với thẻ thông

minh sử dụng chip vi xử lý thì cũng giống như máy tính cá nhân, cần có hệ điều hành

để quản lý, thực thi các ứng dụng và trao đổi dữ liệu với thiết bị đọc thẻ.

1) Các File hệ thống trong thẻ thông minh

Thẻ thông minh lưu trữ thông tin bằng các file dữ liệu. Các file này được tổ chức

dưới dạng cây phân cấp theo chuẩn ISO 7816-4, gồm ba loại:

- Thư mục gốc (Master File – MF)

- Thư mục chuyên dụng (Dedicated File – DF)

- File cơ bản (Elementary File – EF).

Các file này dùng để quản trị hoặc cho ứng dụng.

Dữ liệu lưu trong các file được quản lý bởi hệ điều hành. Các file gồm có header

và phần tuỳ chọn là chi tiết. Header được quản lí bởi thẻ thông minh, chứa các thông

tin liên quan đến cấu trúc và thuộc tính file, phần chi tiết chứa dữ liệu của file.

Hình 3.2: Cấu trúc file trong thẻ thông minh

Page 101: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-101-

* Thư mục gốc

Thư mục gốc MF của hệ thống file là duy nhất cho mỗi thẻ. MF được kích hoạt khi thẻ được đưa vào thiết bị đọc thẻ (ví dụ điện thoại di động). MF không thể bị xoá khi thẻ còn hoạt động. MF có thể chứa một hoặc nhiều DF và chứa 0 hoặc nhiều EF.

Dữ liệu được sử dụng cho tất cả những ứng dụng trong thẻ như thông tin quản lý và bảo mật chung, số serial của thẻ thông minh, khoá truy cập, số PIN (Personal Identification Number) của thẻ …được lưu trữ trong file EF ở mức MF. Các thông tin này có thể được sử dụng cho hệ điều hành tạo DF khác tại mức MF.

* Thư mục chuyên dụng

DF là thư mục của thẻ thông minh, nó lưu các thư mục chuyên dụng khác và các file cơ bản.

Về bản chất vật lý, DF là một khối bộ nhớ tĩnh và có một khối header. Tất cả các DF được phân chia về vật lý và logic với DF khác, để tránh sự ảnh hưởng lẫn nhau giữa các ứng dụng khác nhau. Một số DF có thể chia sẻ tài nguyên chung qua MF.

DF có thể được xem như là một vật chứa dữ liệu thuộc về một ứng dụng thẻ. Mỗi DF có thể chứa khoá mã hoá cho việc thực hiện nhiều dịch vụ bảo mật, và mỗi DF có thể có một số PIN ứng dụng, số PIN này có thể sử dụng để cải tiến cơ chế truy cập của một thẻ nhiều ứng dụng.

* File cơ bản

Những file EF chứa dữ liệu thực sự. Chúng bao gồm một header và một chi tiết. Header của mỗi EF lưu trữ thông tin về loại cấu trúc file EF và kích thước của file. Nó cũng lưu trữ hoạt động có thể thực hiện trên file (đọc, ghi, không có hiệu lực, phản hồi) như điều kiện truy cập của một ứng dụng của thiết bị đọc có thể thực hiện hoạt động đó (số PIN chung của thẻ, số PIN của ứng dụng, xác thực …).

Cấu trúc file EF phụ thuộc vào mục đích sử dụng, có 4 loại cấu trúc EF cơ bản: file trong suốt (transparent), file cố định tuyến tính (linear fixed), file biến đổi tuyến tính (linear variable) và file cố định nối vòng (cyclic fixed).

- EF trong suốt (Transparent EF)

Đó là EF có cấu trúc gồm byte liên tiếp. Byte đầu tiên có địa chỉ ‘00’. Khi file được đọc hoặc cập nhập, byte được kích hoạt sẽ được tham chiếu qua địa chỉ offset, nó biểu thị vị trí bắt đầu của byte và độ dài được đọc hoặc cập nhập tính từ vị trí đó. Header của file trong suốt biểu thị độ dài chi tiết của file.

Page 102: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-102-

- EF cố định tuyến tính (Linear fixed EF)

EF cố định tuyến tính gồm các bản ghi liên tiếp có cùng độ dài (cố định). Mỗi bản ghi được định danh duy nhất bởi số thứ tự bản ghi. Độ dài của bản ghi và số bản ghi trong file đó được định nghĩa trong header của file.

Liên kết với cấu trúc trong suốt, chúng ta có thể có một số cách để truy nhập các bản ghi của file này. Có thể truy cập qua số thứ tự bản ghi, bằng cách sử dụng chế độ TRƯỚC-SAU, hoặc bằng cách sử dụng dạng tìm kiếm từ đầu file.

File này cũng có giới hạn theo chuẩn ISO 7816-4, số bản ghi tối đa trong file tuyến tính cố định là 254 bản ghi, và mỗi bản ghi có độ dài không vượt quá 255 byte.

- EF biến đổi tuyến tính (Linear variable EF)

File biến đổi tuyến tính bao gồm một số bản ghi có độ dài thay đổi.

- EF cố định nối vòng (Cyclic EF)

EF nối vòng có cấu trúc tương tự file cố định tuyến tính. Nó gồm có số các bản ghi cố định với độ dài các bản ghi là cố định.

Điểm khác nhau với file tuyến tính cố định là có liên kết giữa bản ghi đầu tiên và cuối cùng. Theo cách này, khi con trỏ bản ghi ở bản ghi cuối cùng, bản ghi tiếp theo là bản ghi đầu tiên. Khi con trỏ ở bản ghi đầu tiên, bản ghi trước đó là bản ghi cuối cùng.

EF nối vòng được sử dụng phổ biến cho việc lưu trữ thông tin theo mốc thời gian, nghĩa là khi tất cả các bản ghi đã được sử dụng, dữ liệu tiếp theo sẽ ghi đè lên bản ghi cũ nhất đã được dùng, sử dụng phương thức TRƯỚC. Với thao tác đọc, phương thức tìm địa chỉ bản ghi là TRƯỚC, SAU, HIỆN TẠI và SỐ HIỆU BẢN GHI.

Hình 3.3: Cấu trúc file EF

Page 103: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-103- 2) Truy cập file

a) Định danh file FID (File Identifier)

Mỗi thư mục/file trong thẻ thông minh đều có một định danh để thiết bị đọc thẻ từ bên ngoài có thể truy cập vào thẻ, lựa chọn ứng dụng thẻ. Định danh bao gồm 2 byte và được thể hiện dưới dạng mã hexa. Byte đầu tiên của định danh xác định kiểu thư mục/file.

Thư mục gốc: 3F

Mức đầu tiên của thư mục chuyên dụng: 7F

Mức thứ hai cuả thư mục chuyên dụng: 5F

File cơ bản dưới mức MF: 2F

File cơ bản dưới mức DF đầu tiên: 6F

File cơ bản dưới mức DF thứ hai: 4F

Đối với file DF, thiết bị đọc thẻ có thể lựa chọn ứng dụng thẻ với số của FID hoặc sử dụng một định danh ứng dụng AID (Application Identifier). AID có thể bao gồm định danh của nhà cung cấp ứng dụng đã đăng ký (RID – Registered Application Provider Identifier), tuỳ chọn này có quan hệ ràng buộc với việc mở rộng định danh ứng dụng của nhà cung cấp (PIX - Provider Identifier eXtension). Sự liên quan những ứng dụng thẻ với nhà cung cấp ứng dụng tạo thuận lợi cho thiết bị đọc không phải biết trước FID của DF được lưu trong ứng dụng hoặc vị trí file của hệ thống thẻ.

b) Các phương thức lựa chọn file

Các thiết bị di động được kích hoạt, thư mục gốc sẽ được chọn và trở thành thư mục hiện tại. Từ thư mục/file hiện tại, các thư mục/file có thể được lựa chọn:

Thư mục gốc (MF)

Thư mục chuyên dụng hiện tại.

Thư mục chuyên dụng mức cha của thư mục hiện tại.

Bất kì thư mục chuyên dụng nào là mức con liền kề của thư mục chuyên dụng cha của thư mục hiện tại.

Bất kì thư mục chuyên dụng nào là con của thư mục hiện tại.

Tất cả việc lựa chọn thư mục/file được thực hiện bởi dùng định danh của thư mục/file được lựa chọn.

Page 104: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-104- 3.1.2. Các giao thức với thẻ thông minh

3.1.2.1. Giao thức truyền thông với thẻ thông minh Thẻ thông minh và máy chủ quản lý thẻ thông minh giao tiếp với nhau thông qua

một thiết bị chấp nhận thẻ. Thiết bị này có thể là đầu đọc thẻ hoặc thiết bị đầu cuối.

Đầu đọc thẻ kết nối tới cổng nối tiếp, cổng song song hoặc cổng USB của máy tính, qua đó thẻ thông minh được truyền thông. Đầu đọc có khe cắm chứa thẻ thông minh, hoặc có thể nhận dữ liệu thông qua trường điện từ đối với thẻ không tiếp xúc.

Thiết bị đầu cuối tích hợp đầu đọc thẻ như là một phần của nó. Bên cạnh chức năng của đầu đọc thẻ, thiết bị đầu cuối có khả năng xử lý dữ liệu truyền giữa nó và thẻ thông minh. Các thiết bị đầu cuối hiện nay như các điểm bán hàng POS – Point Of Sales hoặc máy rút tiền tự động ATM – Automatic Teller Machines.

Truyền thông giữa thẻ thông minh và máy chủ quản lý thẻ thông minh là bán song công, nghĩa là dữ liệu chỉ có thể truyền từ thẻ đến máy chủ hoặc từ máy chủ đến thẻ chứ không thể theo hai hướng cùng một thời điểm.

Thẻ thông minh tương tác với máy tính bằng cách sử dụng gói tin riêng của nó được gọi là APDUs (Application Protocol Data Units – đơn vị dữ liệu giao thức ứng dụng). Một APDU chứa một lệnh hoặc một thông điệp trả lời.

Thẻ thông minh đóng vai trò thụ động trong mô hình “chủ - tớ” với máy chủ. Nó đợi lệnh APDU từ máy chủ. Sau đó thực hiện chỉ thị trong lệnh và trả lời máy chủ với APDU phản hồi. Các lệnh APDU và APDU phản hồi được truyền đan xen giữa máy chủ và thẻ.

Page 105: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-105- 1) Giao thức APDU

APDU là một giao thức ở mức ứng dụng giữa thẻ thông minh và ứng dụng của máy chủ, được chỉ ra trong chuẩn ISO 7816-4. Các thông điệp APDU gồm hai loại cấu trúc: một được sử dụng bởi ứng dụng của máy chủ từ phía thiết bị chấp nhận thẻ để gửi lệnh tới thẻ và một được sử dụng bởi thẻ để gửi thông điệp trả lời ứng dụng của máy chủ. Tương ứng với hai cấu trúc này là hai lớp: APDU lệnh và APDU phản hồi. Một APDU lệnh luôn có một APDU phản hồi tạo thành một cặp tương ứng.

a) Cấu trúc của APDU lệnh

Hình 3.4 : Cấu trúc của APDU lệnh

APDU lệnh có cấu trúc hai phần: phần Header (tiêu đề), phần Body (thân).

Header của APDU lệnh gồm 4 byte:

- Byte CLA (Class of instruction): “lớp” chỉ thị, xác định loại APDU lệnh và APDU phản hồi.

- INS (Instruction code): “mã” chỉ thị, xác định chỉ thị của lệnh.

- P1, P2: tham số 1 và 2, xác định thêm thông tin cho chỉ thị.

Phần thân của APDU lệnh là phần tuỳ chọn có độ dài đa dạng gồm các trường:

- Lc-feld (Length of data for Command) chỉ độ dài của trường ‘data’ (theo byte).

- Trường ‘data’ chứa dữ liệu truyền đến thẻ để thực hiện lệnh được chỉ rõ trong header của APDU.

- Byte Le-Feld (Length of data expected for response) chỉ ra số byte mà máy chủ chờ thẻ phản hồi.

Page 106: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-106-

b) Cấu trúc của APDU phản hồi

Hình 3.4: Cấu trúc của APDU phản hồi

APDU phản hồi được gửi bởi thẻ để trả lời cho APDU lệnh. Cấu trúc của APDU phản hồi bao gồm một chi tiết tuỳ chọn (phần body) và phần bắt buộc kèm theo.

Phần chi tiết bao gồm trường ‘data’ có độ dài được xác định bởi trường Le-Feld trong APDU lệnh tương ứng.

Phần bắt buộc bao gồm hai trường SW1 và SW2 đi cùng với nhau được gọi là từ trạng thái (Status Word), biểu thị trạng thái xử lý của thẻ sau khi thực hiện APDU lệnh. Chúng ta có lược đồ phân loại cho mã trả về (SW1, SW2) như sau:

Hình 3.5: Mã trả về của SW1, SW2

Từ hình 3.5, nếu từ trạng thái là ‘0x9000’ có nghĩa là một lệnh đã được thực hiện thành công và trọn vẹn.

Page 107: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-107-

Trường ‘data’ là tuỳ chọn đối với cả APDU lệnh và APDU phản hồi. Do đó, APDU còn được phân loại thêm 4 loại sau, dựa trên đặc điểm có chứa trường ‘data’ trong APDU lệnh và APDU phản hồi hay không.

- Trường hợp 1: Không có dữ liệu được truyền tới hoặc nhận từ thẻ. APDU lệnh chỉ chứa header, APDU phản hồi chỉ chứa từ trạng thái.

- Trường hợp 2: Không có dữ liệu được truyền tới thẻ, nhưng có dữ liệu phản hồi từ thẻ. Chi tiết APDU lệnh chỉ chứa 1 byte trường Le-Feld, nó chỉ rõ số byte dữ liệu cần có trong APDU phản hồi.

- Trường hợp 3: Dữ liệu được truyền tới thẻ, nhưng không có dữ liệu được trả về do kết quả của quá trình xử lý lệnh. Chi tiết của APDU lệnh bao gồm trường Lc-Feld và trường ‘data’. Trường Lc-Feld chỉ ra độ dài của trường ‘data’. APDU phản hồi chỉ chứa từ trạng thái.

- Trường hợp 4: Dữ liệu được truyền tới thẻ và dữ liệu được trả về từ thẻ là kết quả của quá trình xử lý lệnh. Chi tiết APDU lệnh bao gồm trường Lc-Feld, trường ‘data’ và trường Le-Feld. APDU phản hồi bao gồm cả dữ liệu và từ trạng thái.

2) Mã hoá bit Mã hoá bit trực tiếp hay đảo bit đều được sử dụng trong thẻ thông minh.

S (Start bit): bit khởi tạo.

P (Parity bit): bit chẵn lẻ được sử dụng để phát hiện lỗi.

G (Guardtime): phân tách giữa các ký tự.

T (Next Start bit): bit khởi tạo của chuỗi ký tự tiếp theo.

a) Trực tiếp

Hình 3.6: Mã hoá bit trực tiếp

b) Đảo bit

Hình 3.7: Đảo bit

T G b6 b5 b4 b3 b2 b1 b0 P S b7 1

0 0

T G b1 b2 b3 b4 b5 b6 b7 P S b0 1

0 0

Page 108: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-108- 3) Giao thức TPDU

APDU được truyền bởi giao thức mức tiếp theo – giao thức truyền thông. Cấu trúc dữ liệu được trao đổi giữa máy chủ và thẻ sử dụng giao thức truyền thông được gọi là giao thức truyền thông đơn vị dữ liệu (Transport Protocol Data Unit – TPDU). Giao thức TPDU được định nghĩa trong chuẩn ISO 7816-3.

Hai giao thức truyền thông được dùng chủ yếu trong các hệ thống thẻ thông minh hiện nay là giao thức T = 0 và giao thức T = 1.

a) Giao thức T = 0

Giao thức T = 0 là giao thức hướng byte, có nghĩa là đơn vị nhỏ nhất được xử lý và truyền đi bởi giao thức là một byte. Giao thức này truyền ký tự theo chế độ bán song công không đồng bộ. Hầu hết các thẻ thông minh đều sử dụng giao thức T = 0. Tất cả các thẻ cho mạng di động GSM đều sử dụng giao thức này.

Như vậy, giao thức T = 0 có các đặc điểm sau:

Giao thức truyền ký tự bán song công không đồng bộ

Thẻ có thể phát và nhận dữ liệu

Một lệnh không thể gửi dữ liệu tới thẻ và nhận dữ liệu phản hồi đồng thời.

Giao thức không chỉ ra hướng của dữ liệu.

Ví dụ:

Hình 3.8: Lệnh ghi dữ liệu vào thẻ

Hình 3.9: Lệnh đọc dữ liệu từ thẻ

CLA

SW2

INS

P1

P2

P3

INS

D1 D2

D3

DP3

SW1

CLA INS

P1

P2

P3

INS

D1 D2

D3

DP3

SW2

SW1

Page 109: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-109-

b) Giao thức T = 1

Giao thức T = 1 là giao thức hướng khối, có nghĩa là một khối gồm một số byte liên tiếp, là đơn vị dữ liệu nhỏ nhất có thể truyền giữa thẻ và máy chủ. Giao thức này truyền khối dữ liệu theo chế độ bán song công không đồng bộ. Thẻ có thể hỗ trợ cả hai giao thức T = 0 và T = 1, khi đó thiết bị đầu cuối sẽ lựa chọn giao thức nào được sử dụng (PTS – Protocol Type Selection).

Nhìn chung, giao thức T = 1 có các đặc điểm sau: + Giao thức truyền khối bán song công không đồng bộ. + Dữ liệu có thể được truyền theo cả hai hướng

- Lệnh và dữ liệu trong trường thông tin - Lệnh và dữ liệu trong khung độc lập.

+ Không có byte kiểm tra chẵn lẻ

Hình 3.10: Cấu trúc của một khối truyền

+ Trường mở đầu gồm 3 byte: NAD (Node Address - địa chỉ nút), PCB (Protocol Control Byte - byte điều khiển giao thức) và LEN (Data Length - kích thước dữ liệu).

- Byte NAD sử dụng các bit 1-3 để xác định địa chỉ nguồn và các bit 5-7 để xác định địa chỉ đích, bit 4 và bit 8 được sử dụng cho Vpp.

- Byte PCB xác định 3 loại khối: o Khối thông tin (I – block): được sử dụng để truyền các lệnh và dữ liệu

ứng dụng giữa thẻ thông minh và ứng dụng máy chủ. o Khối sẵn sàng nhận (R – block): được dùng như một biên nhận khi

giao thức đang gửi dữ liệu như một chuỗi của các khối được truyền. o Khối giám sát (S – block): được sử dụng để thiết lập các tham số điều

khiển giao thức. - Byte LEN chỉ rõ số byte (nếu có) trong trường thông tin.

o Trường thông tin được sử dụng để truyền các lệnh và dữ liệu ứng dụng o Trường kết thúc bao gồm mã phát hiện lỗi khối EDC (Error detection

code), có thể là mã CRC (cyclic redundancy check) hoặc mã LRC (longitudinal redundancy check). LRC chiếm 1 byte, còn CRC chiếm 2 byte.

Page 110: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-110- 4)Thông điệp trả lời để xác lập lại – ATR

Ngay sau khi bật nguồn, thẻ thông minh gửi thông điệp trả lời để xác lập lại ATR (Answer To Reset) tới máy chủ. Thông điệp này truyền tới máy chủ các thông tin yêu cầu bởi thẻ để thiết lập kênh kết nối truyền dữ liệu.

ATR có thể có từ 2 đến 33 byte. Byte đầu tiên định nghĩa kiểu mã bit (trực tiếp hay đảo ngược). ATR còn chứa các tham số truyền tín hiệu như giao thức truyền thông được thẻ hỗ trợ (T = 0 hoặc T = 1), tốc độ truyền dữ liệu, các tham số phần cứng của thẻ như phiên bản làm mặt nạ cho chip, nhà sản xuất, số thứ tự chip…

3.1.2.2 Giao thức xác thực với thẻ thông minh Để thiết lập sự tin tưởng giữa các thực thể tham gia – sử dụng thẻ thông minh,

chúng ta sử dụng các giao thức xác thực, trong đó thực thể ngoài là “chủ”, thẻ thông minh là “tớ”. Thực thể ngoài có thể là mạng di động hoặc các chương trình ứng dụng trên máy chủ.

1) Thẻ thông minh xác thực thực thể ngoài

Thẻ thông minh (Thẻ TM) đi kiểm tra thực thể ngoài (TTN). Thẻ thông minh và thực thể ngoài xây dựng giao thức như sau:

Hình 3.11: Thẻ thông minh xác thực thực thể ngoài

Giải thuật mã hoá có thể là mã hoá khoá đối xứng (ví dụ DES) hoặc mã hoá khoá công khai (ví dụ RSA). Trong trường hợp mã hoá khoá đối xứng, TTN và thẻ TM phải chia sẻ cùng khoá bí mật. Nếu mã hoá khoá công khai được sử dụng, TTN dùng khoá công khai để mã hoá, thẻ TM dùng khoá bí mật để giải mã. [8],[10].

1. TTN yêu cầu số ngẫu nhiên r từ Thẻ TM

2. Thẻ TM tạo ra số ngẫu nhiên r, ghi lại và gửi nó tới TTN

3. TTN dùng khoá mã hoá k_ext (đã thoả thuận với thẻ TM) để mã hoá r và gửi lệnh xác thực gồm bản mã e k_ext(r) tới thẻ TM.

4. Thẻ TM nhận lệnh xác thực, giải mã số ngẫu nhiên đã được mã hoá trong lệnh đó.

Nếu d k_card (e k_ext(r) ) = r, xem như thẻ TM đã xác thực được TTN

Page 111: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-111-

2) Thực thể ngoài xác thực thẻ thông minh

TTN đi xác thực thẻ TM. Giao thức xác thực được thiết lập như sau:

Hình 3.12: Thực thể ngoài xác thực thẻ thông minh

Nếu thuật toán mã hoá khoá đối xứng được sử dụng, TTN và thẻ TM phải chia sẻ cùng khoá bí mật. Nếu thuật toán mã hoá khoá công khai được sử dụng, TTN dùng khoá bí mật để giải mã, thẻ TM dùng khoá công khai để mã hoá.

1. TTN gửi yêu cầu xác thực chứa số ngẫu nhiên r và khoá chung n với Thẻ TM

2. Thẻ TM dùng khoá n mã hoá số ngẫu nhiên r nhận được từ TTN được bản mã e k_card[n] (r) và gửi trở lại TTN

3. TTN dùng khoá n giải mã số r đã được mã hoá.

4. Nếu d k_ext (e k_card[n](r) ) = r, xem như đã xác thực được thẻ TM

Page 112: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-112- 3.1.3. Thẻ thanh toán

3.1.3.1. Luồng giao dịch trên ATM Các bước thực hiện tại ATM khi thẻ được sử dụng như sau:

- Khi chủ thẻ cho thẻ vào ATM, ATM sẽ dựa trên thông tin về số BIN của ngân

hàng phát hành thẻ xác định xem ngân hàng phát hành có phải là thành viên trong

mạng chuyển mạch chung thuộc Chuyển mạch quốc giakhông.

- Nếu ngân hàng phát hành thẻ không thuộc mạng chuyển mạch chung, ATM sẽ

từ chối dịch vụ và trả lại thẻ (Tùy chỉnh của ngân hàng).

- Nếu ngân hàng phát hành nằm trong mạng chuyển mạch chung, ATM yêu cầu

khách hàng nhập số PIN. Số PIN do khách hàng nhập vào qua bàn phím được chuyển

thành PIN Block và được mã hóa bằng Working Key rồi lưu trữ tạm thời trong bộ nhớ

đệm (buffer) của ATM. Sau đó ATM sẽ gắn PIN Block đã được mã hoá vào từng

thông điệp cho các giao dịch cụ thể gửi đến ngân hàng phát hành thẻ, ngân hàng phát

hành sẽ thực hiện kiểm tra PIN xem giao dịch có hợp lệ hay không. Khi giao dịch của

chủ thẻ kết thúc PIN Block sẽ được xoá đi khỏi buffer của ATM.

Hình 3.13: Luồng giao dịch trên ATM

Page 113: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-113-

- Khi Chuyển mạch quốc gia nhận được giao dịch, sẽ thực hiện PIN translation rồi định tuyến và gửi gói tin giao dịch tới ngân hàng phát hành thẻ tương ứng.

- Khi ngân hàng phát hành thẻ nhận được giao dịch, nó sẽ thực hiện cấp phép cho giao dịch. Nếu giao dịch là chấp nhận, thì sẽ trả lời ngược trở lại với mã trả lời bằng 00, nếu giao dịch là từ chối, sẽ trả lời lại với mã trả lời tương ứng với lý do không chấp nhận giao dịch.

- Khi Chuyển mạch quốc gia nhận được giao dịch trả lời về bắt nguồn từ bên phát hành thẻ, Chuyển mạch quốc gia sẽ định tuyến tới ngân hàng chấp nhận tương ứng và rồi ATM sẽ nhận được thông điệp trả lời này.[10].

3.1.3.2. Chu trình giao dịch trên POS - Khách hàng của ngân hàng thành viên quẹt thẻ tại máy POS. Khách hàng được

yêu cầu nhập số PIN. POS sẽ gửi giao dịch về ngân hàng chấp nhận. Ngân hàng chấp nhận sẽ gửi giao dịch đến Chuyển mạch quốc gia

- Chuyển mạch quốc gia nhận được giao dịch, nó sẽ chuyển khối PIN Block và gửi đến ngân hàng phát hành.

- Khi ngân hàng phát hành nhận được giao dịch, nó sẽ kiểm tra giao dịch. Nếu giao dịch thành công, ngân hàng chấp nhận sẽ trả lời với mã trả lời 00. Nếu giao dịch bị từ chối, ngân hàng chấp nhận sẽ trả lời với mã trả lời tùy theo mã lý do.

- Chuyển mạch quốc gia nhận được tín hiệu trả lời, nó sẽ gửi giao dịch đến ngân hàng chấp nhận và sau đó chuyển về POS.

Các giao dịch của mạng chuyển mạch quốc gia trên POS đều thực hiện trực tuyến. Các dịch vụ được thực hiện trên mạng chuyển mạch Chuyển mạch quốc gia là: Purchase, Balance Inquiry, Void-debit. Các hướng dẫn sau chỉ áp dụng cho các giao dịch off us trên hệ thống mạng chuyển mạch Chuyển mạch quốc gia. [3],[10]

Page 114: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-114- 1) Giao dịch Mua bán hàng hóa (Purchase/sale)

Giao dịch Purchase/sale là giao dịch mua hàng tại đại lý thông qua POS bằng hình thức quẹt thẻ.

Các bước để thực hiện giao dịch : Các bước

Thiết bị đầu cuối trả lời Hành động

1 {Date} {Hour} Đưa /quẹt thẻ khách hàng

Quẹt thẻ qua thiết bị đọc thẻ, thiết bị sẽ hiển thị loại giao dịch Lựa chọn chức năng Purchase

2

{Card} {Debit} Sale Amount xx.xxVND

Nhập số tiền giao dịch, xác nhận lại số tiền giao dịch, sau đó bấm Enter (OK).

Quá trình kiểm tra PIN

Khách hàng nhập số PIN, sau đó bấm Enter.

{Card} {Debit} Quay số

Thiết bị đầu cuối gửi thông tin đến máy chủ.

{Card} {Debit} Xử lý

Nếu giao dịch thành công sẽ có một mã chấp thuận (approval code) hiển thị trên màn hình, xác định cấp phép thành công hoặc đã được máy chủ giữ lại.

{Card} {Debit} Approval xxxxxx

Hoàn thành giao dịch In hóa đơn.

3

{Date} {Hour} Màn hình chờ

Bấm Cancel, thiết bị đầu cuối quay lại trạng thái chờ

In hoá đơn thứ hai đối với tất cả các giao dịch, khách hàng nhận hoá đơn.

Page 115: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-115- 2) Vấn tin số dư (Balance Inquiry)

Giao dịch Balance Inquiry là giao dịch kiểm tra số dư tài khoản tại đại lý thông qua POS bằng hình thức quẹt thẻ.

Các bước thực hiện yêu cầu vấn tin số dư: Các bước

Thiết bị đầu cuối trả lời Hành động

1 {Date} {Hour} Màn hình chờ

Bấm phím menu và lựa chọn chức năng Bal Inq.

{Balance} Đưa /quẹt thẻ khách hàng

Quẹt thẻ qua thiết bị đọc thẻ. Khách hàng nhập PIN trên PIN Pad.

{Card} Xử lý

Thiết bị đầu cuối gửi thông tin đến máy chủ.

2

Số dư {AMT VND} Hôm nay {AMT VND}

Thiết bị đầu cuối hiển thị số dư tài khoản, lượng giao dịch trong ngày và in hoá đơn.

3) Giao dịch Refund

Các bước

Thiết bị đầu cuối trả lời Hành động

1 {Date} {Hour} Đưa /quẹt thẻ khách hàng

Quẹt thẻ qua thiết bị đọc thẻ, thiết bị sẽ hiển thị loại giao dịch Lựa chọn chức năng Refund

2

{Card} {Debit} Refund Amount xx.xxVND

Nhập số tiền giao dịch, xác nhận lại số tiền giao dịch, sau đó bấm Enter (OK).

Quá trình kiểm tra PIN

Khách hàng nhập số PIN, sau đó bấm Enter.

{Card} {Debit} Quay số

Thiết bị đầu cuối gửi thông tin đến máy chủ.

{Card} {Debit} Xử lý

Nếu giao dịch thành công sẽ có một mã chấp thuận (approval code) hiển thị trên màn hình, xác định cấp phép thành công hoặc đã được máy chủ giữ lại.

{Card} {Debit} Xác nhận thành công xxxxxx

Hoàn thành giao dịch In hóa đơn.

3

{Date} {Hour} Màn hình chờ

Bấm Cancel, thiết bị đầu cuối quay lại trạng thái chờ

Page 116: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-116- 4) Hủy giao dịch (Void Debit)

Giao dịch Void debit sử dụng để hủy bỏ giao dịch Purchase thực hiện trước đó (Nhưng không quá 48 giờ).

Các bước để thực hiện giao dịch :

Các bước

Hiển thị trên thiết bị đầu cuối Hành động

1 [Ngày] [Giờ] Đưa/quẹt thẻ khách hàng

Bấm phím Void hoặc lựa chọn chức năng void từ menu

2 Nhập số hoá đơn

Nhập số hoá đơn, sau đó bấm Yes

[Số hóa đơn] [Số tiền] Đúng (yes) Không(No)

Trên màn hình POS hiển thị số tiền theo số hóa đơn. Nếu không muốn huỷ giao dịch, bấm No, nếu có yêu cầu khác, bấm Yes

Khách hàng nhập số PIN, sau đó bấm Enter.

Quá trình kiểm tra PIN

[Thẻ] [Void] Quay số

Thiết bị đầu cuối kết nối tới máy chủ

3

[Thẻ] [Void] Xử lý

Giao dịch được chấp thuận

{Date} {Hour} Màn hình chờ

Bấm Cancel, thiết bị đầu cuối quay lại trạng thái chờ

Page 117: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-117- 3.1.3.3. Quy trình thực hiện các giao dịch thẻ tín dụng:

Sau khi khách hàng xuất trình thẻ tín dụng của mình để mua hàng hoá, dịch vụ, cơ sở chấp nhận thẻ (người bán hàng) sẽ xem xét giá trị của giao dịch có đúng hạn mức thanh toán do ngân hàng thanh toán quy định hay không; Trường hợp số tiền thanh toán lớn hơn hạn mức thì cơ sở chấp nhận thẻ phải xin cấp phép. Thông thường, hạn mức này được đưa ra dựa trên mức độ chấp nhận rủi ro của ngành được cấp phép. Trường hợp xin cấp phép đây là quá trình xin ý kiến của ngân hàng phát hành thẻ xem có cho phép chủ thẻ sử dụng để thanh toán số tiền của một giao dịch bằng thẻ tín dụng hay không. [3],[15].

Quy trình tổng quát về cấp phép như sau:

Hình 3.14: Quy trình cấp phép

Đầu tiên, cơ sở chấp nhận thẻ (người bán hàng) gửi yêu cầu tới ngân hàng của mình (được gọi là ngân hàng đại lý hay ngân hàng thanh toán) đề nghị cho phép chủ thẻ (khách hàng) sử dụng thẻ để thanh toán số tiền của giao dịch mua bán.

Trung tâm cấp phép của ngân hàng thanh toán từ máy chủ của mình sẽ chuyển yêu cầu này tới Trung tâm xử lý số liệu thông qua mạng trao đổi thông tin (mạng do các tổ chức thẻ quốc tế như Visa hay Mastercard vận hành).

Trung tâm xử lý số liệu sẽ chuyển yêu cầu xin cấp phép đến ngân hàng đã phát hành thẻ (được gọi là ngân hàng phát hành). Ngân hàng phát hành tiến hành kiểm tra hạn mức tín dụng của chủ thẻ và sau đó sẽ gửi trả lời cấp phép tới trung tâm xử lý số liệu thông qua mạng trao đổi dữ liệu trên. Trong trường hợp không đồng ý, ngân hàng phát hành sẽ từ chối cấp phép và cũng sẽ gửi thông báo tới trung tâm. Một giấy phép chỉ có giá trị trong một khoảng thời gian nhất định (thường là ba ngày), quá thời hạn đó, giấy phép sẽ không còn giá trị (trừ trường hợp giao dịch đã được tiến hành hoặc khi giấy phép được cấp lại).

Page 118: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-118-

Tiếp theo đó, trung tâm xử lý số liệu sẽ chuyển trả lời cấp phép lại cho ngân hàng thanh toán. Ngân hàng trả lời người bán (cơ sở chấp nhận thẻ).

Các câu trả lời khi xin cấp phép

Approve

Decline

Pick up

Call bank

Insufficient Chấp nhận và

cho số Code để

thực hiện giao

dịch thanh toán

Từ chối

thanh toán

Người bán phải

tịch thu thẻ ngay

Gọi lại cho ngân hàng

phát hành để cung

cấp thêm thông tin và

sẽ trả lời sau

Từ chối vì

không đủ tiền

Khi ngân hàng phát hành chấp nhận đề nghị cấp phép, trong giấy phép sẽ gửi kèm một số cấp phép (code) để sử dụng cho việc thanh toán sau này. [10],[15].

Quy trình tổng quát của các giao dịch thẻ tín dụng được miêu tả như sau:

Hình 3.15: Quy trình giao dịch thẻ tín dụng

Page 119: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-119- 3.2.TIỀN ĐIỆN TỬ

Đây là phương tiện thanh toán được sử dụng trong thương mại điện tử. Tiền điện tử e-cash (còn gọi là tiền mặt số, xu số, xu điện tử…) có các thông tin giống như trên tiền mặt thông thường: nơi phát hành, giá trị bao nhiêu và số seri duy nhất.

Người tiêu dùng có thể mua tiền điện tử và lưu trữ nó trong một ví tiền số (digital wallet hoặc electronic purse) trên một đĩa nhớ. Ví tiền số gồm bàn phím và màn hình. Nó có thể được kết nối tới tài khoản ngân hàng của người tiêu dùng và có thể nạp thêm tiền bất cứ lúc nào.

Người dùng có thể tiêu tiền số tại bất kỳ cửa hàng nào chấp nhận tiền điện tử, mà không phải mở tài khoản hay chuyển đi số thẻ tín dụng. Ngay khi khách hàng muốn thanh toán, phần mềm này sẽ thu tiền và chuyển đi đúng số tiền từ số tiền điện tử được lưu trữ.

Việc thanh toán bằng tiền điện tử là uỷ quyền trước và khuyết danh (bằng kỹ thuật chữ ký mù). Trường hợp có sự giả mạo, ví dụ như cùng một đồng tiền số nhưng xuất hiện hai lần trong thanh toán, tiền điện tử được mở ra để tìm xem đồng tiền nào là đã được “tiêu”.

Tiền điện tử được ký số bởi ngân hàng phát hành, để số tiền và số seri không thể bị giả mạo. Nó cũng được mã hoá để chỉ người nhận mới có thể sử dụng.

Hệ thống thanh toán bằng tiền điện tử mang đến một số lợi ích cho cả người mua – người bán, thích hợp với các hệ thống thanh toán giá trị nhỏ.

- Giảm chi phí giao dịch.

- Đảm bảo sự ẩn danh.

- Mở rộng thị trường.

- Tránh được nguy cơ tiền giả.

Page 120: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-120- 3.2.1. Giới thiệu về tiền điện tử

3.2.1.1. Khái niệm tiền điện tử Tiền điện tử (digital money, electronic currency, digital currency hay internet

money) là một thuật từ vẫn còn mơ hồ và chưa được định nghĩa rõ ràng. Tuy nhiên có thể hiểu tiền điện tử là loại tiền trao đổi theo phương pháp “điện tử”, liên quan đến mạng máy tính và những hệ thống chứa giá trị ở dạng số (digital stored value systems).

Hệ thống tiền điện tử cho phép người dùng có thể thanh toán khi mua hàng bằng cách truyền đi các dãy số từ máy tính (hay thiết bị lưu trữ như smart card) tới máy tính khác (hay smart card). Giống như số hiệu (serial) trên tiền giấy, số hiệu của tiền điện tử là duy nhất. Mỗi "đồng" tiền điện tử được phát hành bởi một tổ chức (ngân hàng) và được biểu diễn cho một lượng tiền thật nào đó. [7],[8].

3.2.1.2. Cấu trúc tiền điện tử Với mỗi hệ thống thanh toán điện tử, tiền điện tử có cấu trúc và định dạng khác

nhau, nhưng đều bao gồm các thông tin chính sau:

Số sêri của đồng tiền

Giống như tiền giấy, số sêri này được dùng để phân biệt các đồng tiền khác nhau. Mỗi đồng tiền điện tử có một số sêri duy nhất. Khác với tiền mặt, số sêri của tiền điện tử thường là một dãy số được sinh ngẫu nhiên. Điều này có liên quan tới tính ẩn danh của người dùng.

Giá trị của đồng tiền

Mỗi đồng tiền điện tử có giá trị tương đương với một lượng tiền thật nào đó. Với tiền mặt thông thường, mỗi đồng tiền có một giá trị nhất định, nhưng với tiền điện tử, giá trị này có thể là con số tuỳ ý.

Hạn định của đồng tiền

Để đảm bảo tính an toàn của đồng tiền và tính hiệu quả của hệ thống, các hệ thống thường ghi thời hạn của đồng tiền. Đồng tiền điện tử sau khi phát hành, phải gửi lại ngân hàng trước thời điểm hết hạn.

Page 121: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-121-

Các thông tin khác

Đây là thông tin thêm nhằm phục vụ cho mục đích đảm bảo an toàn và tính tin cậy của đồng tiền điện tử, ngăn chặn việc gian lận, giả mạo tiền điện tử và phát hiện các vi phạm (nếu có). Trong nhiều hệ thống, các thông tin này giúp truy vết định danh người sử dụng có hành vi gian lận trong thanh toán tiền điện tử.

Các thông tin trên tiền điện tử được ngân hàng ký bằng khoá bí mật. Người dùng nào cũng có thể kiểm tra tính hợp lệ của đồng tiền bằng cách sử dụng khoá công khai của ngân hàng.

3.2.1.3. Phân loại tiền điện tử Tiền điện tử có hai loại: ẩn danh và định danh

1) Tiền ẩn danh

Tiền ẩn danh không tiết lộ thông tin định danh của người sử dụng, hệ thống này dựa vào lược đồ chữ ký mù đã trình bày ở trên để ẩn danh người dùng. Tính ẩn danh của tiền điện tử tương tự như tiền mặt thông thường. Tiền điện tử ẩn danh được rút từ một tài khoản, có thể được tiêu xài hoặc chuyển cho người khác mà không để lại dấu vết.

Có nhiều loại tiền ẩn danh, có loại ẩn danh đối với người bán, nhưng không ẩn danh với ngân hàng. Có loại ẩn danh với tất cả mọi người, ẩn danh hoàn toàn.

2) Tiền định danh

Tiền điện tử ẩn danh tiết lộ thông tin định danh của người dùng. Nó tương tự như thẻ tín dụng, cho phép ngân hàng lưu dấu vết của tiền khi luân chuyển.

Mỗi loại tiền trên lại chia thành hai dạng: trực tuyến và ngoại tuyến.

Trực tuyến: nghĩa là cần phải tương tác với bên thứ ba để kiểm soát giao dịch.

Ngoại tuyến: nghĩa là có thể kiểm soát giao dịch mà không cần liên quan trực tiếp đến bên thứ ba.

Page 122: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-122- 3.2.1.4. Tính chất của tiền điện tử

Điểm khác biệt lớn nhất giữa tiền điện tử và tiền mặt thông thường đó là: tiền điện tử chỉ đơn giản là một dãy các con số được biểu diễn theo một định dạng nào đó mà máy tính có thể hiểu được và được trao đổi thông qua mạng máy tính. Chính vì chỉ là một dãy con số nên đồng tiền số rất dễ dàng bị sao chép, điều này dẫn đến hai tình huống: thứ nhất, đồng tiền số có thể được làm giả (bằng cách sinh ra dãy các con số theo đúng định dạng của đồng tiền đã được ngân hàng phát hành). Thứ hai, đồng tiền có thể bị sao chép để sử dụng nhiều lần (double-spending).

Từ đặc điểm này, Tatsuaki Okamoto và Kazuo Ohata đã đưa ra sáu đặc trưng cơ bản của tiền điện tử:

1) Tính độc lập (Portability)

Sự an toàn của tiền điện tử không phụ thuộc vào bất kỳ điều kiện vật lý nào. Đây là điều kiện tiên quyết cho việc chuyển tiền trên mạng.

2) Tính an toàn (Security)

Tính chất này có khả năng ngăn chặn các âm mưu sao chép đồng tiền bằng cách sử dụng nhiều lần hoặc giả mạo.

3) Tính riêng tư (Privacy)

Tính chất này nhằm bảo vệ người dùng khỏi mọi sự dòm ngó, hay nói cách khác, không ai có thể truy vết hay chắp nối mối quan hệ giữa người sử dụng với sự chi tiêu cũng như các giao dịch mà người đó đã thực hiện. Tính chất này có thể thấy rất rõ ràng trong các giao dịch bằng tiền mặt. Sau khi thanh toán đã được thực hiện, việc chứng minh trước đây người nào đã sở hữu số tiền đó là rất khó.

4) Tính chất thanh toán ngoại tuyến (Off-line payment)

Thanh toán ngoại tuyến nghĩa là, phiên giao dịch giữa người sử dụng và nhà cung cấp có thể được diễn ra mà không cần đến sự tham gia của bên thứ ba (ví dụ như ngân hàng). Nói cách khác, nhà cung cấp tự mình có thể kiểm tra sự hợp lệ của đồng tiền số.

Page 123: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-123-

5) Tính chuyển nhượng (Transferability)

Người sử dụng có thể chuyển giao tiền điện tử (quyền sử dụng) cho nhau. Tính

chất này làm cho việc tiêu tiền điện tử thực sự giống với việc tiêu tiền mặt thông

thường. Tuy vậy, khi đó, hệ thống cũng phải giải quyết một số vấn đề nảy sinh như:

Kích thước dữ liệu tăng lên sau mỗi lần chuyển nhượng vì đây là những

thông tin cần được lưu trữ. Giải pháp đơn giản nhất là giới hạn số lần

chuyển nhượng tối đa cho phép.

Việc phát hiện giả mạo và tiêu một đồng tiền nhiều lần có thể là quá trễ,

khi đồng tiền đã được chuyển nhượng rất nhiều lần.

Các vấn đề khác như: rửa tiền,…

6) Tính phân chia được (Divisibility)

Người sử dụng có thể phân chia đồng tiền số của mình thành những mảnh có giá

trị thanh toán nhỏ hơn, với điều kiện tổng giá trị của các mảnh nhỏ bằng giá trị của

đồng tiền điện tử ban đầu. [7],[8].

Page 124: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-124- 3.2.1.5. Các giao thức với tiền điện tử

Dựa trên các đặc điểm của tiền điện tử, hệ thống thanh toán tiền điện tử có ba giao thức cơ bản: giao thức rút tiền, giao thức trả tiền (hay còn gọi là thanh toán) và giao thức gửi tiền.

Tuỳ thuộc vào bên mua và bên bán sử dụng dịch vụ ở cùng một ngân hàng hay ở các ngân hàng khác nhau (liên ngân hàng), chúng ta có thể phân ra thành các giao thức thanh toán trong cùng một ngân hàng và liên ngân hàng để đảm bảo các phương thức thanh toán thực hiện hiệu quả.

1) Các giao thức thanh toán cùng ngân hàng Giả sử Alice và Bob cùng sử dụng dịch vụ của một ngân hàng. Alice muốn mua

hàng (ví dụ một quyển sách Q giá 100$) từ Bob. Giao thức gồm ba giai đoạn sau:

Hình 3.16: Mô hình giao dịch của hệ thống tiền điện tử cùng ngân hàng

Bob

Ngân hàng

Alice

1. Rút tiền 3. Gửi tiền

2. Thanh toán

Page 125: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-125-

1- Giao thức rút tiền (Withdrawal)

- Alice tạo tiền điện tử C gồm số sêri và giá trị của C (ví dụ 100$).

- Alice yêu cầu ngân hàng ký “mù” lên C.

- Giao thức ký thành công thì ngân hàng sẽ trừ 100$ trong tài khoản của Alice

và chuyển lại cho Alice đồng tiền đã được ký mù.

2- Giao thức trả tiền (Spending)

- Alice chuyển đồng tiền C đã có chữ ký của ngân hàng cho Bob và yêu cầu

quyển sách Q.

- Bob kiểm tra chữ ký trên C (dùng khoá công khai của ngân hàng). Nếu chữ

ký không hợp lệ thì Bob kết thúc giao thức.

3- Giao thức gửi tiền (Deposit)

- Bob lấy đồng tiền C từ Alice và gửi cho ngân hàng.

- Ngân hàng xác thực chữ ký trên đồng tiền C.

Nếu chữ ký hợp lệ, ngân hàng kiểm tra C đã được tiêu trước đó chưa.

Nếu C chưa được tiêu, ngân hàng cộng thêm vào tài khoản cho Bob với số

tiền tương ứng là 100$.

- Nếu việc gửi tiền thành công, Bob sẽ gửi quyển sách Q cho Alice.

Nhận xét:

Bob “khó” thể biết được C từ tài khoản nào. Khi Bob gửi C vào tài khoản của

mình, ngân hàng cũng khó biết đồng tiền đó nhận được từ Alice vì nó đã được ký

“mù”. Như vậy, tiền điện tử C không lưu lại dấu vết của những ai đã “tiêu” nó.

Page 126: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-126- 2) Các giao thức thanh toán trong liên ngân hàng

Trường hợp liên ngân hàng (các bên tham gia giao dịch sử dụng dịch vụ ở các ngân hàng khác nhau), người ta sử dụng chữ ký “mù nhóm” cho đồng tiền chung của liên ngân hàng.

Giả sử Alice là khách hàng của ngân hàng A, Bob là khách hàng của ngân hàng B. Alice cần trả tiền cho người bán hàng Bob. Giao thức thực hiện như sau:

Hình 3.17: Mô hình giao dịch của hệ thống tiền điện tử liên ngân hàng

1- Thiết lập (Setup)

Các ngân hàng trong một nhóm, trưởng nhóm là ngân hàng trung tâm. Nếu có ngân hàng muốn gia nhập nhóm thì chỉ cần thực hiện giao thức join với trưởng nhóm.

2- Giao thức rút tiền (Withdrawal)

- Đầu tiên Alice tạo đồng tiền điện tử T với số seri và mệnh giá.

- Alice yêu cầu ngân hàng A ký “mù nhóm” vào T.

- Ngân hàng A ký mù nhóm vào T và rút số tiền tương ứng từ tài khoản của Alice.

Bây giờ Alice sở hữu đồng tiền T có giá trị trong cả nhóm ngân hàng.

Bob

Ngân hàng A

Alice

Ngân hàng B

1. Thiết lập

2. Rút tiền 4. Gửi tiền

3. Thanh toán

Page 127: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-127-

3- Giao thức trả tiền (Spending)

- Alice đưa cho Bob tiền T đã có chữ ký “nhóm” của liên ngân hàng.

- Bob dùng khoá công khai của nhóm kiểm tra và xác thực chữ ký “nhóm” của liên ngân hàng trên T.

4- Giao thức gửi tiền (Deposit)

- Nếu các bước trên được hoàn thành, Bob gửi tiền T cho ngân hàng B. Ngân hàng B nhận vì T là đồng tiền “chung” trong liên ngân hàng.

- Ngân hàng B tiến hành xác thực chữ ký trên T. Chú ý rằng, B không cần biết A là ai khi thực hiện việc này, mà chỉ cần sử dụng khoá công khai của nhóm.

- Ngân hàng B kiểm tra T đã được tiêu chưa qua danh sách các đồng tiền đã tiêu ở ngân hàng, để tránh tiêu tiền T hai lần.

-Nếu kiểm tra hoàn tất, ngân hàng B nạp thêm vào tài khoản của Bob số tiền T.

- Bob gửi hàng cho Alice.

Page 128: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-128- 3.2.2. Một số vấn đề đối với tiền điện tử

Tiền điên tử mang lại nhiều lợi ích không chỉ cho phía người dùng mà còn cho cả phía ngân hàng cũng như các nhà cung cấp, nó tăng tốc độ và hiệu quả cho các phiên giao dịch. Tuy nhiên, để tiền điện tử thực sự trở thành một phương tiện thanh toán hữu hiệu, các nhà công nghệ, các nhà phát triển và các chuyên gia an toàn thông tin còn đứng trước nhiều thách thức.

Các vấn đề lớn hiện nay đặt ra với tiền điện tử bao gồm: Vấn đề ẩn danh người dùng, vấn đề ngăn chặn người dùng giả mạo và vấn đề tiêu một đồng tiền nhiều lần (double-spending).

3.2.2.1. Vấn đề ẩn danh người dùng Tính ẩn danh là yêu cầu đối với đồng tiền nói chung và tiền điện tử nói riêng. Hệ

thống tiền điện tử ẩn danh tin cậy sẽ ngăn ngừa bên thứ ba (ngân hàng, nhà cung cấp) biết được thông tin định danh của người tham gia hê thống. Để đảm bảo yêu cầu này, ngân hàng dùng chữ ký mù ký lên đồng tiền. Chữ ký mù đảm bảo ngân hàng không thể có được mối liên hệ nào giữa đồng tiền điện tử và chủ sở hữu của nó.

Lược đồ Chaum-Fiat-Naor là một lược đồ ẩn danh đơn giản, áp dụng cho hê thống tiền điện tử có tính ẩn danh. Để giải quyết được vấn đề ẩn danh, lược đồ dùng chữ ký mù RSA và giao thức cắt-chọn (cut and choose).

3.2.2.2. Vấn đề giả mạo và tiêu một đồng tiền nhiều lần Như đã trình bày ở trên, tiền điện tử chỉ đơn giản là một dãy các con số được

biểu diễn theo một định dạng nào đó và được trao đổi thông qua mạng máy tính. Chính vì chỉ là một dãy các con số nên nó rất dễ bị sao chép. Điều này dẫn đến hai tính huống:

- Thứ nhất, đồng tiền có thể bị làm giả (bằng cách sinh ra dãy các con số theo đúng định dạng của đồng tiền thật).

- Thứ hai, đồng tiền có thể bị sao chép để sử dụng nhiều lần (double-spending).

Những vấn đề này trong thực tế là không thể chấp nhận được. Rõ ràng, hệ thống tiền điện tử khi được áp dụng vào trong thực tế thì thật sự phải có khả năng ngăn ngừa hay phát hiện được các trường hợp này.

Để ngăn ngừa vấn đề "tiêu xài nhiều lần", trong lược đồ Cham-Fiat-Naor dùng giải pháp là gắn định danh lên tiền, như vậy nếu tiền được tiêu xài hai lần thì thông tin trên cả hai trường hợp sẽ được dùng để tìm ra kẻ gian lận. Còn trong lược đồ Branch, định danh của người mua hàng (Ông A) được ẩn danh hoàn toàn. Người bán hàng và ngân hàng sẽ hoàn toàn không biết định danh của ông A trừ khi ông A có hành vi gian lận (tiêu xài 2 lần) thì định danh của ông A sẽ bi tiết lộ. [7],[8].

Page 129: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-129- 3.2.3. Lược đồ CHAUM-FIAT-NAOR

Hệ thống tiền điện tử được áp dụng thành công là nhờ một đặc tính quan trọng, đó là tính ẩn danh. Một hệ thống tiền điện tử ẩn danh tin cậy sẽ ngăn ngừa bên thứ 3 (Ngân hàng, nhà cung cấp) biết được thông tin định danh của người tham gia hệ thống.

Lược đồ Chaum-Fiat-Naor là lược đồ ẩn danh đơn giản, áp dụng cho hệ thống tiền điện tử có tính ẩn danh. Lược đồ áp dụng kỹ thuật chữ ký mù RSA và giao thức cắt và chọn (cut and choose) để ngăn ngừa người tạo tiền có hành vi gian lận.

Việc kết hợp những kỹ thuật mật mã này cho phép ngân hàng ký trên những đồng tiền do người sử dụng gửi đếnn nhưng ngân hàng sẽ không biết những gì họ đã được ký. Do đó họ không thể kiểm tra lại những thanh toán đã thực hiện, nghĩa là ngân hàng không biết được hành động rút tiền này sẽ liên quan đến khoản tiền nào, điều này đảm bảo được tính ẩn danh của người sử dụng.

Để ngăn ngừa vấn đề " tiêu xài hai lần", lược đồ này dùng giao thức "hỏi-đáp" để lấy môt phần thông tin định danh gắn lên đồng tiền và như vậy nếu đồng tiền được "tiêu xài hai lần" thì thông tin trên cả hai trường hợp được kết hợp để truy vết tìm ra kẻ gian lận.

Ngân hàng công khai khóa mật mã RSA là (b,n) và chọn tham số k.. Ngân hàng cũng công khai 2 hàm f và g (hàm không va chạm).

Mỗi người sử dụng có số tài khoản u và ngân hàng sẽ giữ số đếm v liên quan đến số tài khoản này ( đếm số đơn vị Ui được tạo), ngân hàng dựa vào u để xác định ra kẻ gian lận.

Trình tự thanh toán trong lược đồ CHAUM-FIAT-NAOR

1- Khách hàng gửi tiền ở dạng "mù" yêu cầu ngân hàng ký

2- Ngân hàng gửi trả tiền đã ký cho khách hàng (tiền vẫn còn "mù")

3- Sau khi bỏ "mù" tiền, khách hàng chuyển tiền cho người bán

4- Người bán tiến hành chuyển giao hàng

5- Người bán chuyển tiền đến ngân hàng để kiểm tra tính hợp lê của tiền.

Page 130: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-130- 3.2.3.1 Giao thức rút tiền 1- Ông A muốn có một đồng tiền điện tử ẩn danh thì cần phải tao k đơn vi Ui và chuyển nó đến ngân hàng, một đơn vị Ui được tạo ra từ những dãy số ngẫu nhiên ai,ci,di 1≤i≤k, sao cho Ui độc lập và duy nhất.

Ui = f(xi,yi), với 1≤i≤k

xi = g(ai,ci), yi=g(ai XOR (u ˄ (v+i)),di).

˄ là phép nối

2- Ông A làm mù k đơn vị Ui với những tham số mù ngẫu nhiên {r1,r2, . . .rk} và gửi chúng đến ngân hàng. Những tham số "mù" đó ngăn ngân hàng kiểm tra tức thì nội dung của những "đồng tiền" Ui.

nrUB bii

i mod

(Làm "mù" theo giao thức RSA: Blind(x)=x*rb mod n).

3- Ngân hàng chọn ngẫu nhiên k/2 đơn vị để kiểm tra và yêu cầu ông A cung cấp các tham số ri, ai , ci, di tương ứng với những đơn vị Ui mà ngân hàng đã chọn.

4- Ông A cung cấp cho ngân hàng các tham số ri, ai , ci, di theo yêu cầu.

5- Dựa vào các tham số do ông A cung cấp, ngân hàng xóa "mù" k/2 đơn vị đã chọn và kiểm tra để đảm bảo rằng ông A không có gian lận. Nếu không có lỗi nào xảy ra, ngân hàng ký lên những đơn vị Ui còn lại (những đơn vị mà ngân hàng không xóa "mù") và gửi cho ông A.

nB aj mod

(j là ngẫu nhiên ≤ k và chỉ dùng k/2 phần tử Bj)

Sau đó ngân hàng trừ khoản tiền tương ứng vào tài khoản của ông A.

6-Ông A xóa "mù" đơn vị đã được ngân hàng ký bằng cách chia Bj cho rj. Lúc này ông A có đồng tiền điện tử với giá trị thật sự.

T=f(xj,yj)a mod n [9]

Page 131: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-131- 3.2.3.2 Giao thức thanh toán 1- Ông A gửi tiền T đến ông B

2- Ông B chọn chuỗi nhị phân ngẫu nhiên z1,z2, . . . .zk/2 và gửi nó đến ông A.

3- Ông A phản hồi lại tùy theo từng trường hợp sau:

+ Nếu zi= 1 thì ông A sẽ gửi đến ông B: ai, ci và yi

+ Nếu zi= 0 thì ông A sẽ gửi đến ông B: xi, ai XOR (u ˄ (v+i)) và di

4- Ông B kiểm tra T là hợp lệ trước khi chấp nhận thanh toán của ông A.

3.2.3.3 Giao thức gửi 1- Ông B gửi lịch sử thanh toán đến ngân hàng

2- Ngân hàng kiểm tra chữ ký số của ngân hàng.

3- Ngân hàng kiểm tra tiền này thực sự chưa bi tiêu xài trước đó.

4- Ngân hàng nhập vào cơ sở dữ liệu những tiền đã tiêu xài, đồng thời lưu giữ chuỗi nhị phân và những, phản hồi tương ứng từ ông A (điều này sẽ giúp cho sau này phát hiện được những kẻ tiêu xài hai lần).

5- Ngân hàng cộng khoản tiền tương ứng vào tài khoản của ông B.

3.2.3.4. Đánh giá Tai giao thức rút tiền, để ngăn ngừa khả năng gian lân của ông A, lược đồ sử dụng giao thức "cut and choose". Ông A phải tiết lộ k/2 mẫu thông tin một cách ngẫu nhiên từ k mẫu. Như vậy khả năng ông A có thể thực hiện được hành vi gian lận phụ thuộc vào độ lớn của số k.

Nếu ông A tiêu đồng tiền T hai lần thì khả năng ngân hàng có thể lấy được cả hai tham số ai và ai XOR (u ˄ (v+i)) để tính được u. Đó là số tài khoản của ông A tai ngân hàng, chính vì vậy từ u ngân hàng có thể truy ra được ông A là người có hành vi tiêu một đồng tiền hai lần. Vì khả năng để có một cặp bit khác nhau trong 2 chuỗi z1, z2, . . . ,zk/2 và z'1, z'2, . . . ,z'k/2 là rất cao. Chỉ cần có một cặp bít tương ứng zi và z'i khác nhau là ngân hàng có thể có đầy đủ thông tin định danh của ông A. Như vậy xác suất để 2 chuỗi hoàn toàn trùng nhau (trong trường hợp này, ngân hàng không có đủ

thông tin để tìm ra được định danh của ông A) là 2/21k và nếu chọn k đủ lớn thì khả

năng hai chuỗi trùng nhau hoàn toàn có thể xem là không thể xảy ra.

Page 132: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-132- 3.2.3.5. Chi phí Trong lược đồ CHAUM-FIAT-NAOR, chi phí (thời gian, tính toán, . . .) phụ thuộc vào độ lớn của k. Tại giao thức rút tiền trong lược đồ, ông A phải gửi k packet đến ngân hàng, tuy nhiên ngân hàng chỉ phải gửi trở lại một packet. việc tiến hành làm "mù" và xóa "mù" sẽ làm tăng sự tính toán, sự liên lạc.

Tại giao thức thanh toán, sau khi ông A gửi tiền đến ông B, ông này gửi chuỗi nhị phân đến ông A, sau đó ông A phải gửi k/2 phản hồi khác nhau, điều này sẽ khiến cho việc tăng thời gian và sự tính toán, liên lạc và chi phí lưu trữ.

3.2.3.6. Tấn công Đây là giải pháp dựa vào mật mã RSA, vì vậy tất cả những cách tấn công vào RSA đều có thể được sử dụng để tấn công vào lược đồ này.

Tuy nhiên về mặt lý thuyết, có một khả năng xảy ra là ông A có thể tránh được sự phát hiện của ngân hàng khi tiêu xài hai lần. Để thực hiện được điều này, phương pháp tấn công hợp tác giữa ông A và ông X sẽ tấn công vào giao thức "hỏi-đáp". Ông A sau khi thực hiện một giao dịch thanh toán với ông B, sẽ gửi những đồng tiền đã tiêu đến ông X và mô tả quá trình giao dịch với ông B cho ông X. Như vậy ngân hàng sẽ nhân được thông tin giao dịch từ ông B và ông X giống như nhau, lúc này ngân hàng sẽ không có khả năng xác định được định danh của ông A.

Page 133: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-133- 3.2.4. Lược đồ BRAND

So với lược đồ ở trên, đây là một lược đồ khá phức tạp. Lược đồ sử dụng khái niệm chữ ký số Schnorr và bài toán đại diện trong nhóm của cấp nguyên tố.

Gq là nhóm con cấp q của Z*p với p,q là số nguyên tố (q|(p-1)).

Ngân hàng khởi tạo 5 thành phần: (g,h,g1,g2,d).

1. (g, h): Khóa công khai của ngân hàng được dùng ở lược đồ ký trong giao thức rút tiền (g, h) Gq, x là khóa bí mật của ngân hàng.

x=log gh (h=gx)

2. (g1, g2): là bộ phần tử sinh của Gq.

3. Phần tử sinh d (khác g1, g2), đảm bảo rằng định danh của người dùng sẽ không bị phát hiện trong giao thức thanh toán.

3.2.4.1. Khởi tạo tài khoản

1. Ông A phát sinh ngẫu nhiên u1, u2 Zq và tính 2121uu ggI , sau đó ông A chuyển I

đến ngân hàng (như vậy ngân hàng sẽ không biết được u1, u2).

2. Ngân hàng lưu giữ 2121uu ggI cùng với định danh thật sự của ông A và số tài

khoản, nhưng ngân hàng sẽ không biết u1, u2.

Trường hợp ông A tiêu xài đồng tiền hai lần thì ngân hàng có thể tìm ra được (u1, u2) và có thể tính được I, từ I sẽ tìm được định danh của kẻ gian lận.

Ông A Ngân hàng

Giá trị I u1, u2 Zq

2121uu ggI

+ Giá trị I + Định danh + Số tài khoản

Page 134: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-134- 3.2.4.2. Giao thức rút tiền Bước 1: Xác thực

Khi ông A tiến hành rút tiền thì đầu tiên phải xưng danh với ngân hàng bằng cách chứng minh với ngân hàng là sẽ rút tiền trên tài khoản mà ông A sở hữu.

Phương pháp sử dụng ở đây là "chứng minh tri thức của một đại diện", theo phương pháp này, ông A phải chứng minh với ngân hàng rằng: Ông A biết u1 và u2 (vì ông ta là chủ sở hữu tài khoản), nhưng không tiết lộ u1,u2 với ngân hàng. Quá trình xác thực được tiến hành như sau:

1. Ông A chọn ngẫu nhiên w1, w2 Zq và gửi 2121ww ggy đến ngân hàng.

2. Ngân hàng thử thách để kiểm tra có phải đúng là ông A sở hữu tài khoản không bằng cách chọn ngẫu nhiên cr Zq và gửi đến ông A.

3. Ông A tính r1=w1+cru1 mod q , r2=w2+cru2 mod q và gửi đến ngân hàng.

4. Ngân hàng chấp nhận xác thực là đúng nếu và chỉ nếu: 2121rrc ggyI r

Bởi vì nếu ông A thực sự la chủ sở hữu tài khoản thì ông ta phải biết u1, u2 (là 2 giá trị

có khi khởi tạo tài khoản) và nếu biết được u1, u2 thì sẽ tính được 2121rrc ggyI r

Bước 2: Rút tiền

Nếu như xác thực (bước 1) được chấp nhận thì việc rút tiền được tiến hành như sau:

1. Ngân hàng trừ một lượng tiền tương ứng từ tài khoản của ông A và tính m= Id (d là phần tử sinh khởi tao ban đầu, ông A cũng có thể tính được m vì vậy ngân hàng không gửi m cho ông A).

Ngân hàng gửi z=mx , a=gw và b= mw (w được chọn ngẫu nhiên từ Zq, x là khóa bí mật cua ngân hàng) đến ông A.

2. Ông A chọn ngẫu nhiên s Z*q, u,vZq để làm mù m, z, a và b

m'=ms=(Id)s= ssusu dgg 2121 , z' = zs, a' = augv, b'=bsumsv

Tách ngẫu nhiên u1s=x1+x2 mod q , u2s=y1+y2 mod q

s=z1+z2 mod q

Tính A= 11121

zyx dgg và B = m'/A = 22221

zyx dgg

Dùng hàm băm H tính c'= H(m',z',a',b',A), tính c= (c'/u) mod q.

Gửi thử thách c đến ngân hàng.

Page 135: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-135- 3. Ngân hàng tính r=xc + w mod q và gửi cho ông A

Ông A kiểm tra gr=hca ? mr=zcb ? nếu thảo mãn thì tính r'=ru+v mod q.

Đến thời điểm này thì ông A có đồng tiền điện tử thực sự được đại điện bởi bộ 3

A B Sign(A,B)

Sign(A,B) =(z', a', b', r')

Vấn đề là làm thế nào chúng ta có thể biết được giá trị của từng đồng tiền ?

Có 2 cách khác nhau để giải quyết vấn đề này.

Cách thứ nhất là ngân hàng sử dụng một khóa công khai khác cho mỗi loại tiền. Nghĩa là nếu có k đồng tiền khác biệt thì ngân hàng phải công khai k khóa công khai : (g1, h1). . .(gk, hk).

Cách thứ hai là có k phần tử sinh khác nhau được công khai d1, . . .,dk . Mỗi phần tử sinh được sử dụng để biểu hiện giá trị của mỗi đồng tiền.

3.2.4.3. Giao thức thanh toán Khi ông A muốn mua hàng hay sử dụng dịch vụ của ông B, thì trước tiên ông A phải gửi tiền cho ông B, quá trình thanh toán được thực hiện như sau:

1. Ông A gửi tiền

A B Sign(A,B)

đến ông B.

A= 11121

zyx dgg và B = m'/A = 22221

zyx dgg Sign(A,B) =(z', a', b', r')

2. Đầu tiên ông B kiểm tra AB ≠ 1 ?, sau đó ông ta kiểm tra chữ ký của ngân hàng Sign(A,B) có hợp lệ không.

Nếu đúng, ông B thử thách ông A bằng cách gửi c Z*q c không cần thiết là số ngẫu nhiên nhưng phải đảm bảo là duy nhất, ngân hàng tính c như sau:

c=Ho(A, B, I, date/time), với I là định danh của ông B, date/time là nhãn thời gian giao dịch, Ho là hàm băm.

Nếu AB=1 có nghĩa là ban đầu s=0. Điều này không được phép bởi như thế ngân hàng sẽ không xác định được định danh của người có hành vi tiêu xài hai lần (tức ngân hàng không tìm được u1, u2).

Page 136: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-136- 3. Ông A phản hồi với

r1=x1+cx2 mod q

r2=y1+cy2 mod q

r3=z1+cz2 mod q

4. Ông B kiểm tra, nếu 32121

rrr dgg = ABc thì chấp nhận thanh toán.

3.2.4.4. Giao thức gửi 1. Ông B gửi thông tin thanh toán gồm

A B Sign(A,B)

c, r1, r2, r3 đến ngân hàng.

2. Ngân hàng kiểm tra chữ ký có chính xác không và đồng tiền được tiêu xài trước đấy chưa ?

Nếu tất cả thỏa mãn thì ngân hàng sẽ tiến hành gửi tiền vào tài khoản của ông B.

3.2.4.5. Đánh giá Lược đồ BRAND sử dụng những lý thuyết toán học phức tap nên để hiểu được đầy đủ lược đồ là rất khó, chín vì thế lược đồ BRAND không phổ biến như lược đồ CHAUM-FIAT-NAOR.

Lược đồ không sử dung giao thức cut and choose như lược đồ CHAUM-FIAT-NAOR, vì vậy sẽ không đòi hỏi phải tạo k mẫu khác nhau cũng như không phải giữ những bản copy của phần định danh (định danh được chia thành hai phần). Ngân hàng cũng không cần kiểm tra k/2 mẫu trước khi tiến hành ký.

Độ an toàn của lược đồ BRAND phụ thuộc vào độ khó của của việc tính toán của logarit rời rạc và như vậy sẽ an toàn hơn lược đồ sử dụng RSA.

Trong lược đồ này định danh của ông A (người mua hàng) được ẩn danh hoàn toàn. Người bán và ngân hàng không biết định danh của ông A, trừ khi ông A có hành vi gian lận (tiêu xài hai lần), thì định danh của ông A bi tiết lộ.

Lược đồ này không áp dụng cho giải pháp tiền điện tử có tính chuyển nhượng, bởi vì nếu cho phép đặc tính này thì lược đồ BRAND sẽ không còn khả năng phát hiện ra kẻ gian lận trong trường hợp tiêu xài nhiều lần. [7],[8].

Page 137: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-137- 3.2.5. Một số hệ thống tiền điện tử

3.2.5.1. Hệ thống FIRST VIRTUAL

First Virtual là một trong những công ty đầu tiên cung cấp hệ thống chuyển tiền điện tử qua mạng Internet.

Hệ thống First Virtual hướng tới khách hàng sử dụng credit card (Visa hay Master) mua bán qua mạng Internet. Hệ thống giải quyết được những rủi ro về an ninh vốn có đối với phương thức thanh toán qua mạng credit card truyền thống.

1/. Phương thức hoạt động Để tham gia hệ thống, đầu tiên khách hàng và người bán hàng phải đăng ký với

First Virtual. Cả hai sẽ phải cung cấp cho First Virtual số credit card, sau đó First Virtual sẽ gửi trở lại một số PIN thông qua email, số PIN sẽ đại diện cho số credit card của khách hàng. Mọi giao dịch thanh toán sau này sẽ làm việc trên số PIN này, điều này đảm bảo thông tin về credit card sẽ không bị tiết lộ. [11], [12].

Quá trình đăng ký với First Virtual để mở một tài khoản gồm những bước sau:

- Người dùng vào trang web của First Virtual để điền thông tin vào mẫu đăng ký. Thông tin gồm có: Tên, địa chỉ, địa chỉ email và yêu cầu cung cấp code. Người dùng phải cung cấp địa chỉ email chính xác, vì họ sẽ nhận thông tin từ First Virtual qua địa chỉ email này.

- Nếu thông tin được kiểm tra là hợp lệ, phần mềm của First Virtual sẽ tự động gửi một email đến người đăng ký, nội dung của email gồm có số tài khoản tạm thời và số điện thoại.

- Người dùng gọi đến First Virtual thông qua số điện thoại trên email, và họ sẽ cung cấp cho First Virtual số tài khoản tạm thời (do First Virtual cấp), số credit card của họ.

- Việc đăng ký hoàn tất, First Virtual sẽ thu của người dùng phí mở tài khoản.

Sau khi có tài khoản của First Virtual, quá trình mua bán diễn ra như sau:

1-Khách hàng gửi yêu cầu mua hàng cùng số PIN (do First Virtual cấp) đến người bán hàng.

2- Người bán hàng sẽ gửi lại First Virtual những thông tin về hàng hoá, số tiền mua, số PIN của khách hàng đến First Virtual, nội dung của email thường có dạng:

3- First Virtual gửi email đến người mua hàng, xác nhận lại yêu cầu mua hàng.

Page 138: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-138-

4- Người mua hàng xác nhận những gì họ yêu cầu. Nếu người mua hàng từ chối, First Virtual sẽ lưu lại thông tin này và quá trình giao dịch bị huỷ bỏ. Trong trường hợp người mua hàng thường xuyên hủ bỏ những giao dịch mua hàng, First Virtual sẽ huỷ tài khoản của người này.

5- Nếu người mua hàng xác nhận đồng ý mua hàng, First Virtual sẽ thực hiện giao dịch tài chính, tiền được chuyển từ khách hàng đến First Virtual, sau đó được chuyển đến tài khoản của người bán hàng.

6- Sau khi tất cả các bước thực hiện thành công, First Virtual sẽ gửi xác nhận đến người bán hàng, đến đây họ có thể phân phối hàng, quá trình mua bán kết thúc.

2/. Nhận xét Hệ thống First Virtual được xây dựng đáp ứng một cơ sở hạ tầng đơn giản,

không đòi hỏi phần mềm cũng như phần cứng phức tạp, chủ yếu dựa trên công nghệ có sẵn (máy tính và mạng internet). Cơ chế hoạt động của hệ thống giống chức năng của “credit card reader” trong cửa hàng. Về phía người mua hàng, hệ thống đảm bảo thông tin không bị tiết lộ. Đối với người bán hàng, hệ thống đảm bảo rằng credit card của người mua hàng là hợp lệ. Do tính chất của giao dịch thông qua email nên có thể thấy rằng First Virtual là hệ thống không trực tuyến (“off-line”).

Tuy nhiên do hệ thống giao dịch với người bán hàng cũng như người mua hàng thông qua email, việc giao dịch sẽ bị chậm lại do tốc độ cảu email. Đồng thời khách hàng phải luôn kiểm tra email từ First Virtual để xác nhận thông tin. Điều này khiến cho khách hàng cảm thấy không thuận tiện trong sử dụng.

Một điều đặc biệt trong hệ thống này là vấn đề mã hoá thông tin. Mặc dù thông tin về số credit card không gửi qua môi trường internet (người dùng cung cấp trực tiếp cho First Virtual thông qua điện thoại). Tuy nhiên những thông tin giao dịch khác đều qua email. Như vậy mức độ mã hoá thông tin giao dịch sẽ phụ thuộc vào nhà cung cấp dịch vụ email, họ mã hoá nội dung email như thế nào. Điều này khiến cho người sử dụng hệ thống First Virtual không yên tâm.

Hoạt động của First Virtual phải liên quan đến tổ chức ngân hàng và tổ chức phát hành credit card . Trong trường hợp có gian lận xảy ra, First Virtual phải kết hợp với những tổ chức này để phát hiện và ngăn chặn.

Hệ thống First Virtual có thể được xem như giải pháp của thế hệ tiền điện tử đầu tiên, thực hiện đơn giản, mở rộng từ những thực tiễn vốn có của internet. Tuy nhên hệ thống được đánh giá là không có những tính năng vượt trội, không có khả năng đáp ứng được xu thế phát triển sau này.

Page 139: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-139- 3.2.5.2. Hệ thống tiền điện tử DIGICASH

1/. Mô hình Các hệ thống thanh toán điện tử có những ưu điểm nổi bật: đảm bảo được tính an

toàn cao cho các giao dịch và tính ẩn danh cho người sử dụng trung thực. Một trong những mô hình điển hình là DigiCash.

DigiCash (hay còn gọi là Ecash) là sản phẩm của công ty DigiCash được thành lập 1990 bởi David Chaum, ông là một chuyên gia quốc tế về lĩnh vực mật mã. DigiCash là một dạng e-money, sản phẩm này được thiết kế phục vụ cho các giao dịch an toàn từ PC đến PC thông qua Internet.

Có ba đối tượng sẽ liên quan đến hệ thống DigiCash: Khách hàng, người bán và nhà phát hành. Thông thường nhà phát hành là một ngân hàng, nơi sẽ phát hành ra DigiCash.

Điểm nổi trội của hệ thống DigiCash đó chính là tính ẩn danh, khách hàng sẽ không cần thiết tiết lộ thông tin của mình cho người bán hàng hay nhà phát hành, ngoại trừ trong trường hợp có gian lận, nghĩa là người mua hàng cố gắng tiêu xài tiền này hai lần thì Nhà cung cấp có thể tìm được thông tin định danh của người mua hàng nhằm chống gian lận.

2/. Phương thức hoạt động của hệ thống DigiCash Để sử dụng được hệ thống, đầu tiên khách hàng cũng như người bán hàng phải

có tài khoản trong ngân hàng có hỗ trợ DigiCash, tài khoản này dùng để rút và gửi ecash. Đăng ký với DigiCash để có phần mềm đặc biệt “cyber wallet” (túi số).

Quá trình giao dịch chia thành bốn giai đoạn:

a) Tạo tiền điện tử (tương ứng với giao thức rút tiền)

- Phía Alice: Sau khi biết được số tiền cần phải thanh toán, phần mềm “cyber wallet” thực hiện:

Sinh một dãy số ngẫu nhiên dùng làm số sêri của đồng tiền. Nó được xem như là dãy số tiền tượng trưng cho số tiền cần phải rút từ ngân hàng.

Gắn mỗi số sêri với một giá trị của đồng tiền.

Mù hóa các giá trị trên, mã hóa bằng khóa riêng và gửi cho ngân hàng.

Page 140: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-140-

- Ngân hàng: sau khi nhận được các thông tin từ Alice, sẽ thực hiện:

Ký mù lên các đồng tiền.

Trừ đi một khoản tiền tương ứng ở trong tài khoản của Alice.

Gửi các đồng tiền đã được ký mù cho Alice.

- Alice sử dụng phần mềm “Cyber wallet” để khử mù đồng tiền và thu được các đồng tiền có chữ ký hợp lệ của ngân hàng. Các đồng tiền này được lưu trên máy của Alice và được quản lý bởi phần mềm “Cyber wallet”.

b) Tiêu tiền điện tử (tương ứng với giao thức trả tiền)

- Alice gửi yêu cầu mua hàng đến Bob.

- Bob gửi thông tin trở lại về máy tính của Alice (phần mềm “Cyber wallet”): số tiền cần thanh toán, thông tin sản phẩm…

- Sau khi Alice xác nhận giao dịch và đồng ý giao dịch, phần mềm “Cyber wallet” sẽ tự động thu thập các đồng tiền theo đúng yêu cầu.

- Alice gửi các đồng tiền điện tử cho Bob.

c) Đổi tiền điện tử (tương ứng với giao thức gửi tiền)

- Trước khi chấp nhận thanh toán, Bob gửi các đồng tiền điện tử nhận được đến ngân hàng để kiểm tra tính hợp lệ.

- Ngân hàng kiểm tra chữ ký trên đồng tiền và xem nó được tiêu chưa bằng cách dựa vào dữ liệu lưu trữ của ngân hàng. Nếu tất cả là hợp lệ, ngân hàng chấp nhận những đồng tiền, tăng tài khoản của Bob tương ứng với số tiền, đồng thời lưu các dãy số trên đồng tiền vào danh sách những đồng tiền đã tiêu.

d) Kết thúc giao dịch

Sau khi tất cả đã được kiểm tra hợp lệ, Bob gửi sản phẩm và biên nhận đến Alice và giao dịch kết thúc.

Page 141: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-141- 3/. Đánh giá

+ Ưu điểm của hệ thống DigiCash

- Chi phí giao dịch thấp.

- Độ an toàn của hệ thống dựa trên hệ mật mã RSA. Phần mềm Cyber Wallet sẽ tự động sinh một cặp khóa RSA. Tất cả những giao tiếp trong hệ thống DigiCash được ký số hoá và mã hoá, dựa trên cấu trúc khoá công cộng.

- Đảm bảo tính ẩn danh của người sử dụng. Trong hệ thống Digicash, cả Alice và Bob đều không cần biết lẫn nhau, và Bob cũng không thể liên kết bất cứ thông tin nào giữa Alice và các đồng tiền mà Alice đã tiêu. Ở đây, Bob chỉ biết rằng các đồng tiền mình nhận được là hợp lệ, còn ngân hàng chỉ có nhiệm vụ phát hành đồng tiền nhưng không thể biết được chủ sở hữu của chúng. Quyền hạn của người sử dụng là rất mạnh bởi vì những đặc trưng ẩn danh của hệ thống được xây dựng trong phần mềm khách hàng (làm mù những đồng tiền trước khi gửi đến ngân hàng kiểm tra).

-Không phụ thuộc vào phần cứng: hệ thống Digicash không chỉ sử dụng cho PC mà còn có thể được áp dụng cho smart card (thẻ thông minh) hay những thiết bị điện tử khác

+ Nhược điểm của hệ thống DigiCash

- Cả khách hàng và nhà cung cấp đều phải có tài khoản ở cùng một ngân hàng có hỗ trợ tiền điện tử Digicash.

- Ngân hàng phải có một lượng lớn cơ sở dữ liệu để chứa chuỗi số của những đồng tiền. Nếu một số lượng lớn người sử dụng bắt đầu sử dụng hệ thống thì kích cỡ của dữ liệu sẽ trở nên rất lớn và không thể quản lý được.

- Digicash là hệ thống thanh toán trực tuyến, nó đòi hỏi ngân hàng phải tham gia vào tất cả các giao dịch để kiểm tra tính hợp lệ của đồng tiền.

- Nếu dữ liệu về các đồng tiền bị phá hủy (do máy tính hỏng, thông tin bị giải mã, ngân hàng bị phá sản…) thì không có cách nào lấy lại những đồng tiền đã bị mất. Lý do là ngân hàng không có mối liên hệ nào giữa đồng tiền và người sở hữu, trừ phi người sở hữu đồng ý bỏ tính ẩn danh khi sử dụng Digicash. [11], [12].

Mặc dù hệ thống Digicash có những điều không thuận lợi, song với những ưu điểm nổi bật mà hệ thống mang lại, Digicash được đánh giá là một hệ thống ‘tiền điện tử’ có tiềm năng rất lớn.

Page 142: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-142- 3.5.2.3. Hệ thống MILLICENT

Hệ thống millicent được phát triển tại DIGITAL’s System Research Center. Hệ thống được phát triển nhằm cung cấp một hệ thống thanh toán với giá trị giao dịch thấp thông qua cơ sở hạ tầng nhỏ thông qua mạng internet. Millicent hỗ trợ những giao dịch có giá trị từ 1/10 cent đến 5 USD.

1/. Phương thức hoạt động Hoạt động của hệ thống millicent dựa vào ý tưởng của những scrip (chứng

khoán tạm thời). Trong hệ thống một cái giống như tiền mặt, có cũng có giá trị. Tuy nhiên có một điều khác biệt là những scrip chỉ có giá trị thật sự khi nó được đem ra tiêu với một người bán cụ thể nào đấy. Trung tâm của hệ thống là nhà môi giới (Broker). Về lý thuyết thì bất cứ tổ chức nào cũng có thể đóng vai trò là nhà môi giới. Tuy nhiên trong thực tế chỉ đơn vị, tổ chức lớn đảm bảo tin cậy, ổn định mới thực hiện được chức năng này. Bởi vì nhà môi giới chính là đơn vị trung gian kết nối người bán hàng và khách hàng với nhau, mặc dù họ không biết nhau. Nhà môi giới đóng vai trò trung gian thay mặt khách hàng làm việc với tất cả người bán hàng và ngược lại nhà môi giới là trung gian thay mặt người bán hàng làm việc với tất cả các khách hàng.

Có hai loại scrip, đó là Broker scrip và Merchant scrip. Broker scrip là scrip mà khách hàng mua từ nhà môi giới (Broker). Merchant scrip là scrip là scrip mà nhà môi giới mua từ người bán hàng. Ví dụ người mua hàng mua từ nhà môi giới 50 scrip mà mỗi scrip có giá trị 10 cent. Người mua muốn mua 1 vật có giá trị 2 cent, ông ta sẽ gửi 1 scrip (có giá trị 10 cent) đến nhà trung gian, nhà trung gian sẽ chuyển scrip này thành Merchant scrip có giá 10 cent của người bán hàng định mua. Người bán kiểm tra tính hợp lệ những scrip này và gửi lại khách hàng một merchant scrip mới có giá trị 8 cents xem như là tiền thối lại cho người mua. Khách hàng bây giờ có thể giữ scrip này cho việc mua sau này tại người bán này hay trả lại nó cho Broker nhận lại Broker scrip để sau này có thể mua của người bán hàng khác.

Về mặt kỹ thuật, hệ thống gồm 3 phần mềm. Một cho khách hàng (client), một cho server của Broker và một cho người bán. Phần mềm client của khách hàng dạng như là cái ví để mua Broker scrip và chấp nhận “tiền thừa”từ người bán. Khách hàng có thể cấu hình Ví để thực hiện chức năng này hay có thể yêu cầu xác nhận tất cả các giao dịch hay chỉ vài giao dịch nào đó. Phần mềm phí người bán hàng có khả năng tạo, phân phối hay xác nhận tính hợp lệ của scrip thuộc quyền sở hữu của họ trong khi Broker server làm cơ bản giống như thế và thêm vào đó đổi scrip sở hữu của nó thành một Merchant scrip . [11], [12].

Page 143: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-143- Quá trình giao dịch giữa khách hàng, người mua và nhà trung gian như sau: Bước 1: Khách hàng kết nối tới nhà trung gian để mua Broker scrip . Bước 2: Để mua hàng của một người bán nào đó thì người mua cần phải có Merchant scrip của cửa hàng đó, vì vậy nếu không có người mua sẽ phải mua loại Merchant scrip này từ nhà môi giới và trả bằng Broker scrip (đã mua trước đây). Bước 3: Nếu nhà môi giới không có Merchant scrip mà khách hàng cần mua thì nhà môi giới sẽ mua chính từ người bán đó và gửi cho khách hàng và tiền thừa dưới dạng Broker scrip mới (nếu có) Bước 4: Khách hàng tiến hành gửi Merchant scrip cho người bán để thanh toán và người bán gửi lại tiền thừa ở dạng Merchant scrip (nếu có). Với Merchant scrip thừa, người mua hàng có thể giữ lại dùng cho việc thanh toán với người bán này lần sau hay người mua hàng có thể gửi cho Broker để đổi lại Broker scrip .

2/. Nhận xét Hệ thống được thiết kế cho một mục đích: Có khả năng cho hệ thống vi thanh toán (micro-payment) thông qua internet hay những mạng máy tính khác. Những hệ thống vi thanh toán có thể thực hiện được dựa trên những tính chất được thiết kế: thanh toán mức thấp và tản quyền. Vì Millicent chỉ chuyển một lượng tiền rất nhỏ ở mọi lần giao dịch nên những chức năng an ninh của hệ thống có thể rất nhẹ mà vẫn hiệu quả. Vì hệ thống không cần thiết phải sử dụng những kỹ thuật mật mã mạnh và phức tạp, điều này cho phép hệ thống chạy với bộ nhớ thấp hay xử lý một lượng lớn giao dịch tại một thời điểm. Tính phân quyền của hệ thống đảm bảo những cấp độ hợp lý cao của việc ẩn danh trong những giao dịch. Hệ thống không đòi hỏi việc định danh của khách hàng đến ngườibán. Sự lo lắng của người bán là việc tiêu tiền hai lần, sự giả mạo và sự ăn cắp. Tính toàn vẹn của hệ thống được bảo vệ bởi việc chia sẻ những bí mật giữa Broker và người bán. Hơn nữa vì những thanh toán là rất nhỏ nên hệ thống không đòi hỏi những biên nhận cho mỗi lần giao dịch. Điều này làm cho việc ẩn danh và tốc độ của hệ thống mạnh lên nhưng khiến cho việc huỷ bỏ bất cứ giao dịch nào là không thể. Hệ thống thích ứng với môi trường mạng tốt bởi một số lý do: Thứ nhất, nó rất uyển chuyển và phân tán, tránh bất cứ loại nút cổ chai nào. Nếu số lượng người sử dụng, khách hàng và người bán tăng lên vượt quá khả năng của Broker thì đơn giản nhiều Broker sẽ được thêm vào. Việc tạo và kiểm tra của Scrip được thực hiện phân tán quyền và trong phạm vi trách nhiệm của người bán mà có thể nâng cấp khả năng theo nhu cầu.

Page 144: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-144- 3.5.2.4. Hệ thống MONDEX Hệ thống Mondex được phát triển từ năm 1990, được sở hữu bởi Mondex International mà trong đó Master card nắm giữ 51% từ năm 1996.

Tính đa năng là một trong những nét đặc biệt nhất của hệ thống Mondex. Nó dựa trên một Smart card mà có thể nắm giữ tiền và chuyển nó cả ở hai cách. Mondex card là một thẻ ghi nợ theo nghĩa là chỉ có thể sử dụng miễn là nó nắm giữ tiền đã nạp trước đó.

1/. Phương thức hoạt động Nắm vai trò chính trong hệ thống là smart card, smart card có tính năng chấp nhận, chứa và phân phối tiền. Smart card không chỉ chứa giá trị tổng số tiền hiện tại mà nó còn chứa dữ liệu về lịch sử những giao dịch trước đó. Khả năng chứa dữ liệu của smart card phụ thuộc vào loại chip tích hợp vào smart card.

Mondex card sẽ do ngân hàng phát hành và mỗi thẻ này sẽ liên quan đến một tài khoản ngân hàng. Tất cả thẻ sẽ có một chuỗi số đại diện nhằm xác định định danh của người sở hữu, chuỗi số này là duy nhất. Mọi giao dịch sẽ ghi lại chuỗi số định danh này.

Hệ thống Mondex là hệ thống hỗ trợ cho hai người trực tiếp thanh toán với nhau (tính chuyển nhượng) nên việc chuyển tiền trong cả hai card (gửi và nhận) phải được đưa vào trong vài bộ đọc mà ở đó bắt đầu giao tiếp để xác thực với nhau.

Mã hoá đóng vai trò trung tâm trong lược đồ Mondex , nó đảm bảo rằng những thẻ được xác thực là đúng và không bị giả mạo được sử dụng trong hệ thống và việc giao tiếp giữa hai thẻ không thể bị chặn. Do đó giấy biên nhận cuối mỗi phiên giao dịch chủ yếu là để chứng minh việc chuyển tiền không bị đứt quãng. [11], [12].

2/. Nhận xét Mondex là hệ thống tiên tiến nhất trong bốn hệ thống tiền điện tử đã trình bày ở trên. Mondex có một sự ủng hộ từ nhiều tổ chức trong đó Master card là cổ đông lớn nhất và nhiều cổ đông khác trên toàn thế giới. Với sự hỗ trợ mạnh mẽ này việc triển khai Mondex sẽ có nhiều thuận lợi hơn những hệ thống tiền điện tử khác. Một điều quan trọng nhất là sự đa năng của nó: Mondex có thể được sử dụng ở một số trường hợp khác nhau, chẳng hạn theo lối truyền thống, thanh toán ngang hàng trực tiếp cho nhau, nó cũng có thể thực hiện trên những mạng khác nhau và cũng có thể sử dụng cho những thanh toán lớn và cũng như cho thanh toán siêu nhỏ (micro-payment) từ vài trăm USD đến vài cent.

Page 145: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-145- 3.5.2.5. Hệ thống PAYWORD

Payword là hệ thống thanh toán cho các giao dịch có giá trị nhỏ (micro-payment), được đề xuất bởi Ronal Rivest và Adi Shamir (1996). Payword phù hợp cho các thanh toán lặp lại nhiều lần với cùng một nhà cung cấp. Giao thức Payword sử dụng một chuỗi các giá trị băm gọi là các Payword, mỗi Payword biẻu diễn một giá trị nhất định. Hệ thống Payword bao gồm ba đối tượng chính: User (người sử dụng) - Giả sử là Alice, Broker (nhà môi giới, thường là một ngân hàng) và vendor (nhà cung cấp)- giả sử là Bob.

1/. Phương thức hoạt động Trong Millicent, nhà cung cấp hoặc Broker tạo ra các scrip, còn trong Payword , người sử dụng tạo ra các Payword (tương đương với scrip trong Millicent ). Payword có thể được tạo từ trước hoặc ngay khi thực hiện việc mua hàng. Trình tự như sau:

- Alice mở một tài khoản và nhận một chứng thực Payword (Payword Certificate) Cu chứa các thông tin như: tên/ID của Broker, khoá công khai của Alice, ngày hết hạn và các thông tin khác được mã hoá bằng khoá bí mật của Broker: Cu={Broker_id, user_Public_key, expiration_date, other_info}SK.

- Với chứng nhận Cu , Alice có thể tạo ra các Payword sử dụng hàm băm MD5 hay SHA.

- Cách thức Alice tạo các Payword(w1, w2 , . . . .,wn ) như sau: Trước tiên, Alice lấy wn ngẫu nhiên rồi tính chuỗi các giá trị băm theo thứ tự ngược lại:

Wi = h(wi+1) với i = n-1, n-2, . . .,0

Ở đây w0 không phải là một Payword, nó là root của Payword và là thành phần chính cấu tạo nên thoả thuận giữa Alice và Bob. Một thoả thuận giữa người sử dụng và nhà cung cấp sẽ gồm các thông tin sau:

+ w0

+ Định danh nhà cung cấp (V-Vendor identitty)

+ Chứng thực của người sử dụng (cu-User’s certificate)

+ Ngày hết hạn thanh toán (D-Experation date)

+ Các thông tin khác (IM)

Page 146: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-146-

- Alice dùng khoá bí mật của mình để ký lên các thông tin trên, như vậy, M={w0, V, Cu, D, IM}SKu

Để mua hàng, trước tiên Alice gửi M cho Bob. Bob giải mã M, kiểm tra V và D. Chữ ký của Alice được chứng thực bởi Cu , do vậy nó ngăn chặn một bên thứ ba giả mạo M.

Kể từ bây giờ (cho đến thời điểm expiration_date), bất cứ khi nào cần mua hàng từ Bob, Alice chỉ cần tạo một Payword, gửi P=(wi, i)(1 ≤ i ≤ n) cho Bob. Alice sẽ sử dụng các Payword theo thứ tự w1, w2, . . .

- Bob kiểm tra Payword, nếu hợp lệ, Bob lưu cặp Payword này vào trong Plast.

- Nếu giá trị của mặt hàng lớn hơn giá trị của Payword, Alice có thể trả thêm bằng cách bỏ qua các Payword.

Ví dụ: Giả sử Payword chưa tiêu tiếp theo của Alice là wi+1, mỗi Payword có giá trị là 1 cent, mặt hàng Alice cần mua có giá trị 5 cent, khi đó Alice có thể bỏ qua 4 Payword và gửi (wi+5, i+5). Bob có thể kiểm tra được giá trị này bằng cách băm giá trị Payword 5 lần (thực hiện việc băm cho đến khi được kết quả giống như giá trị được lưu trong Plast).

Như vậy, tất cả dữ liệu Bob cần lưu trữ chỉ là M và Plast. Sau một chu kỳ (có thể làmột ngày, một tuần, . . . ) Bob thông báo lại giá trị của Plast cho Broker. Broker kiểm tra M và tính toán lượng tiền mà Alice đã tiêu bằng cách băm giá trị Plast , từ đó trừ đi một khoản tương ứng (bằng tổng các giá trị băm được) trong tài khoản của Alice đồng thời tăng tài khoản của Bob. [11], [12].

2/. Nhận xét Ưu điểm:

- Hệ thống Payword có khả năng ngăn chặn giả mạo do:

+ Trong cùng một chuỗi, các Payword đã tiêu là giá trị băm một chiều của các Payword chưa tiêu. Do vậy, biết được các Payword đã tiêu có thể xác định được các Payword chưa tiêu.

+ Một chuỗi Payword được xác nhận bởi một thoả thuận và được ký bởi người sử dụng, còn định danh cảu người sử dụng được đảm bảo bởi chứng nhận Cu được ký bởi Broker.

Page 147: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-147-

Để phát hiện và ngăn chặn Alice thực hiện hành vi tiêu xài 2 lần một đồng tiền Bob và Broker chỉ lưu M và Plast, Bob và Broker có thể biết được tất cả các Payword mà Alice đã tiêu. Nếu Alice gửi lại một Payword đã tiêu cùng với M, hành vi của Alice lập tức bị phát hiện.

Người sử dụng không phải trả tiền trước. Trong Millicent, tài khoản của Alice bị trừ ngay lập tức khi Alice rút tiền (dù chưa tiêu) còn trong Payword, tài khoản của Alice chỉ bị trừ sau khi Bob cập nhật báo cáo Plast với Broker.

Với Payword, cả Broker và nhà cung cấp chỉ cần lưu các thảo thuận M và các giá trị Plast tương ứng thay vì lưu tất cả các Payword đã tiêu, do vậy tiết kiệm được không gian lưu trữ. Ngoài ra, việc kiểm tra ngoại tuyến giúp tiết kiệm chi phí đầu tư cho phía Broker.

Nhược điểm:

- Việc hệ thống Payword cho phép người sử dụng tự tạo ra các Payword mà không cần đến ngân hàng chứng nhận giúp tăng tính linh hoạt cho người sử dụng lên rất nhiều. Người sử dụng có thể tạo ra các Payword có giá trị theo ý muốn, tuy nhiên nó cũng giúp cho Bob có khả năng gian lận Payword.

- Nếu Bob phát hiện ra Alice và Carol cùng tạo ra một chuỗi Payword giống nhau và giả sử Alice chưa tiêu trước Carol k Payword, Bob hoàn toàn biết được k Payword chưa tiêu của Carol, từ đo Bob có thể gian lận giá trị của k Payword đó. Do vậy, hệ thống cần có cơ chế đảm bảo các chuỗi Payword của những người sử dụng khác nhau là khác nhau .

Tóm lại, Payword là hệ thống có nhiều ưu điểm. Bản thân Payword vẫn chưa được phát triển hoàn thiện, song hiện nay có một số hệ thống thanh toán được phát triển dựa trên mô hình của Payword như NetPay, UpayWord.

Page 148: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-148-

KẾT LUẬN Luận văn “Một số công cụ công nghệ thông tin dùng trong thanh toán điện tử”

đã trình bày được các vấn đề sau:

1- Tổng quan về an toàn thông tin và thương mại điện tử.

+ Các khái niệm cơ bản trong mật mã học được sử dụng trong các mô hình thanh toán điện tử.

+ Một số vấn đề rủi ro mất an toàn thông tin và các chiến lược đảm bảo an toàn thông tin.

+ Một số khái niệm về thương mại điện tử và vấn đề thanh toán trong thương mại điện tử.

2- Hạ tầng cơ sở đảm bảo an toàn thông tin:

Luận văn đã trình bày các vấn đề cơ bản về hạ tầng mạng máy tính, hạ tầng cơ sở mật mã khóa công khai (PKI), đảm bảo an toàn thông tin trong giao dịch và thanh toán điện tử - một phần quan trọng của thương mại điện tử.

3- Các công cụ dùng trong thanh toán điện tử

Luận văn đi sâu nghiên cứu một số công cụ, tiện ích đặc trưng dùng trong thanh toán điện tử, như thẻ thanh toán, tiền điện tử . . , các vấn đề liên quan khi thanh toán bằng thẻ và tiền điện tử.

Luận văn cũng nghiên cứu một số hệ thống thanh toán bằng tiền điện tử, đánh giá những mặt mạnh, mặt hạn chế của từng hệ thống cũng như cách giải quyết các vấn đề liên quan như đảm bảo tính ẩn danh, vấn đề tiêu xài nhiều lần với một đồng tiền điện tử.

Trên cơ sở nghiên cứu lý thuyết về công nghệ thanh toán qua thẻ thanh toán, tiền điện tử, hướng phát triển tiếp theo của luận văn là nghiên cứu các định hướng phát triển của công nghệ thẻ thông minh, thay đổi giải pháp nhằm đáp ứng sự tiến bộ công nghệ và phù hợp hơn với thực tế. Nghiên cứu sâu hơn nữa một số công nghệ thanh toán qua điện thoại di động, thiết bị cầm tay (có nối mạng), phân tích ưu nhược điểm, đưa ra giải pháp khắc phục, và đề xuất mô hình thanh toán qua điện thoại di động đảm bảo an toàn - nhanh chóng - thuận tiện cho khách hàng, góp phần vào sự phát triển chung của thương mại điện tử trong thời gian tới.

Page 149: Cong cu-cong-nghe-thong-tin-dung-trong-thanh-toan-dien-tu

-149-

TÀI LIỆU THAM KHẢO Tiếng Việt

[1]. PGS.TS Trịnh Nhật Tiến (2007), Giáo trình an toàn dữ liệu, Hà Nội [2]. Phan Đình Diệu (2006), Lý thuyết mật mã và An toàn thông tin, Nxb Đại học

Quốc Gia Hà nội. [3]. TS. Nguyễn Đăng Hậu (2004), Kiến thức thương mại điện tử, Viện Đào tạo công

nghệ và Quản lý Quốc tế. Tiếng Anh

[4]. B.Schneier (1996), “Applied Cryptography” 2nd edition, John wiley&sons. [5]. D.Chaum, E.Van Heijst (1991), “Group signatures”, Proceedings of

EUROCRYPT’91. Lecture Notes in Computer Science, vol 547, Springer-Verlag. [6]. Zulfikar Amin Ramzan (1999), “Group Blind Digital Signatures: Theory and

Applications”, Master Thesis, MIT. [7]. D. O’Mahony, M.Peirce, H.Tewari (2001), “Electronic payment systems”,

Artech House. [8]. H.M. Deitel, P.J. Deitel, T.R. Nieto (2001), “E-Busines & E-Commerce” How

to Progarm, Prentice Hall, New Jersey. [9]. Chaum, David, van Heijst, Eugene and Pfitzmann, Birgit (1992),

“Cryptographically strong undeniable signatures, unconditionally secure for the signer” (extended abstract), In CRYPTO 91.

[10]. Chen, Thomas M. and Stephen S. Liu (1995), "ATM Switching Systems", Artech House, Incorporated.

[11]. Committee on Payment and Settlement Systems (2004), “Survey of developments in electronic money and internet and mobile payments”, Bank for International Settlements.

[12] J. Orlin Grabbe (1997), “Cryptography and Number Theory for Digital Cash”. [13]. IBM (2000), “Deploying a Public Key Infrastructure”, International Technical

Support Organization. [14]. Policy for PKI Management in the Government of Canada: http://www.openCA.org, http://www.imc.org/rfc3852, http://www.imc.org/rfc3370 [15] Internet http://www.tapchibcvt.gov.vn/News/PrintView.aspx?ID=15555. http://www.banknetvn.com.vn/index.htm. http://vi.wikipedia.org/wiki/Th%E1%BA%BB_ATM. http://www.cs.purdue.edu/homes/fahmy/cis788.08Q/atmswitch.html. http://math-cs.gordon.edu/local/courses/ATMExample/UseCases.html. http://emvco.com.