1
HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THÔNG
NGUYỄN HỒNG QUANG
NGHIÊN CỨU MÔ HÌNH PKI- PHỤC VỤ
XÁC THỰC VÀ BẢO MẬT MỘT SỐ GIAO DỊCH
ĐIỆN TỬ NGÂN HÀNG
CHUYÊN NGÀNH : TRUYỀN DỮ LIỆU VÀ MẠNG MÁY TÍNH
MÃ SỐ: 60.48.15
Người hướng dẫn khoa học:
PGS.TS TRỊNH NHẬT TIẾN
TÓM TẮT LUẬN VĂN THẠC SĨ KỸ THUẬT
Hà Nội- 2010
2
Hiện nay nhu cầu bảo đảm an toàn thông tin trên mạng máy
tính là cấp thiết trong các hoạt động kinh tế xã hội, đặc biệt là
trong hệ thống ngân hàng với các dịch vụ ngân hàng điện tử, cụ
thể là các dịch vụ Internet Banking (Trong phạm vi luận văn, tác
giả giới hạn khái niệm giao dịch Internet Banking được hiểu
tương đương với một số giao dịch điện tử ngân hàng). Trong quá
trình thực tế, với các dịch vụ Internet Banking sẽ có những rủi ro
điển hình: Khả năng giả mạo máy tính của nhân viên; Máy tính
của khách hàng nằm tại bất kỳ nơi đâu ngoài phạm vi và sự kiểm
soát của ngân hàng. Các máy tính này kết nối tới máy chủ web
của ngân hàng thông qua Internet. Internet là kết nối mở và
không được quan tâm đến tính an toàn tại thời điểm thiết kế.
Những nguy hiểm, rủi ro từ Internet sẽ là phá hoại rất lớn đối với
toàn hệ thống Internet Banking. Chính vì vậy, luận văn đi vào
nghiên cứu kỹ thuật, công nghệ, mô hình triển khai hạ tầng mật
mã khóa công khai ( PKI- Public Key Infrastructure) áp dụng an
toàn một số giao dịch ngân hàng điện tử , từ đó phân tích và
nêu ra các giải pháp phù hợp.
Luận văn gồm 04 chương:
- Chương 1: Các khái niệm cơ bản: Giới thiệu các hệ mã
hóa, khái niệm về chữ ký số và hàm băm.
- Chương 2: Hạ tầng mật mã khóa công khai(Public Key
Infrastructure- PKI): Trình bày khái niệm PKI, các thành phần
trong hệ thống PKI, các đặc trưng của hệ thống PKI, các kỹ
thuật bảo vệ thông tin và mô hình tổ chức quản lý chứng chỉ số
- Chương 3: Ứng dụng PKI cho hệ thống Internet
Banking. Đề xuất mô hình và thiết kế chi tiết hệ thống PKI
trong giao dịch Internet Banking .
- Chương 4: Mô phỏng thử nghiệm hệ thống an toàn cho
giao dịch trực tuyến ngân hàng
3
Chương 1. CÁC KHÁI NIỆM CƠ BẢN
1.1. GIỚI THIỆU
Giới thiệu về các phương pháp bảo vệ thông tin truyền thống:
o Xây dựng hệ thống các bức tường lửa.
o Áp dụng các phương pháp xác thực.
o Thiết lập mạng riêng ảo, các hệ thống cảnh báo truy
cập trái phép
Dựa vào các cơ chế an toàn bảo mật trên, chúng ta không có
cách nào đảm bảo an toàn (tính bí mật, toàn vẹn và xác thực) của
thông tin giữa hai đối tượng bất kỳ (vì không có cách tổng quát
nào để xác định độ tin cậy giữa chúng trước khi truyền thông).
Phần dưới đây sẽ đề cập đến một số phương pháp bảo vệ thông
tin bằng mật mã (cryptography). Phương pháp này được xem
như là một phương pháp bổ sung bảo vệ thông tin cho hệ thống
hiện thời.
1.2. KỸ THUẬT MÃ HÓA
1.2.1 Khái niệm hệ mã hóa
Hệ mã hóa được định nghĩa là một bộ năm (P, C, K, E, D),
trong đó
o P là tập hữu hạn các các bản rõ có thể.
o C tập hữu hạn các bản mã có thể.
o K là tập hữu hạn các khoá có thể.
o E là tập các hàm lập mã.
o D là tập các hàm giải mã.
o Với mỗi k
K, có một hàm lập mã e
k
E, ek: P
C và
một hàm giải mã d
k
D, d
k
: C
P sao cho d
k
(e
k
(x))=x,
x
P
4
1.2.2 Hệ mã hóa khóa đối xứng
Hệ mã hóa khóa đối xứng hay là hệ mã hóa mà khóa mã hóa
có thể “dễ” tính toán được từ khóa giải mã và ngược lại. Trong
nhiều trường hợp, khóa mã hóa và khóa giải mã là giống nhau.
Hệ mã hóa này còn lại là hệ mã hóa khóa bí mật.
Mô hình mã hóa sử dụng khóa đổi xứng được mô tả như sau:
Hình 1-1: Mô hình mã hóa khóa đối xứng
1.2.3 Hệ mã hóa khóa bất đối xứng (hệ mã hóa khóa công
khai)
Hệ mã hóa khoá công khai hay còn được gọi là hệ mã hóa bất
đối xứng sử dụng một cặp khoá, khoá mã hoá còn gọi là khoá
công khai (public key) và khoá giải mã được gọi là khoá bí mật
hay khóa riêng (private key). Trong hệ mật này, khoá mã hoá
khác với khoá giải mã. Về mặt toán học thì từ khoá công khai
rất “khó” tính được khoá riêng.
Mô hình mã hóa khóa công khai được mô tả như sau:
Hình 1-2: Mô hình mã hóa khóa công khai
21
KẾT LUẬN
Hạ tầng cơ sở về mật mã khóa công khai (PKI) là một nền
tảng cho các hệ thống thông tin an toàn, cung cấp các dịch vụ
quản lý và truy cập, tính toàn vẹn, tính xác thực, tính bí mật và
tính chống chối bỏ. PKI đảm bảo cho các giao dịch điện tử
ngân hàng cũng như những phiên kết nối bí mật được an toàn.
Kết quả chính của luận văn gồm có:
1/ Nghiên cứu về hạ tầng cơ sở mật mã khóa công khai
(PKI).
2/ Đề xuất xây dựng PKI để thực hiện xác thực và bảo mật
một số giao dịch điện tử ngân hàng
3/ Mô phỏng thử nghiệm hệ thống an toàn cho giao dịch trực
tuyến của ngân hàng.
Hướng phát triển dự kiến tiếp theo của luận văn :
1/ Xây dựng hoàn thiện chương trình mô phỏng ứng dụng
PKI phục vụ an toàn giao dịch ngân hàng. Mục tiêu là có
thể ứng dụng làm giảng dạy, là các sản phẩm demo trình
diễn trong các hội thảo hoặc tư vấn bán hàng ( khách
hàng là các ngân hàng, công ty chứng khoán cần mua
giải pháp an toàn ứng dụng PKI).
2/ Kết hợp với các nhà cung cấp ứng dụng PKI như:
Entrust, Verisign, RSA, VDC, để đề xuất các nhóm giải
pháp tư vấn phù hợp nhất triển khai cho từng hệ thống
ngân hàng đáp ứng yêu cầu an toàn đề ra với chi phí đầu
tư và nhân công vận hành hệ thống là tối ưu. Góp phần
thúc đẩy phát triển giao dịch trực tuyến trong hệ thống
thanh toán tại Việt Nam.
20
- Hệ thống xác thực người dùng được mô tả như sau:
1/ User đăng nhập hệ thống với Username, Password,
và giá trị OTP (One-Time Passcode) của token.
2/ Webserver chuyển thông tin người dùng tới hệ thống
Validation server.
3/ Validation server tìm userID trong cơ cở dữ liệu
khách hàng và so sánh password
4/ Nếu UserID và password của user đăng nhập đúng,
Validation server chuyển user’s TokenID, giá trị
OTP tới hệ thống kiểm tra OTP.
5/ Hệ thống kiểm tra OTP sẽ tính toán giá trị mong đợi
OTP trên sơ sở giá trị bí mật của token và thời gian
hiện tại của nó trong cơ sở dữ liệu OTP, sau đó sẽ tiến
hành so sánh OTP vừa được tính toán với giá trị OTP
vừa nhận được từ Token. Nếu trùng khớp sẽ trả về giá
trị “Yes”, ngược lại sẽ trả về giá trị “No” tới
Validation Server.
6/ Validation Server sẽ cho phép User đăng nhập vào hệ
thống nếu nhận được giá trị Yes từ hệ thống kiểm tra
OTP.
- Hệ thống giao dịch ngân hàng trong chương trình bao gồm
các dịch vụ ngân hàng cơ bản:
Tra số dư
Chuyển khoản
5
1.3. CHỮ KÝ SỐ
Quá trình mã hoá thông điệp với khoá riêng của người gửi
gọi là quá trình “ký số”.
Sơ đồ chữ ký là một bộ năm (P, A, K, S, V), trong đó:
1/ P là một tập hữu hạn các văn bản có thể
2/ A là một tập hữu hạn các chữ ký có thể
3/ K là một tập hữu hạn các khoá có thể
4/ S là tập các thuật toán ký
5/ V là tập các thuật toán kiểm thử
6/ Với mỗi k ∈ K, có một thuật toán ký sig
k
∈ S,
sig
k
: P → A và một thuật toán kiểm thử ver
k
∈ V,
ver
k
: P x A → {đúng, sai}, thoả mãn điều kiện sau đây
với mọi x ∈ P, y ∈ A:
ver k (x,y) = đúng, nếu y = sig
k
(x)
sai, nếu y ≠sig
k
(x)
1.4. HÀM BĂM
Hàm băm ở đây được hiểu là các thuật toán không để mã hóa
(ở đây ta dùng thuật ngữ “băm” thay cho “mã hoá”), nó có
nhiệm vụ băm thông điệp được đưa vào theo một thuật toán h
một chiều nào đó, rồi đưa ra một bản băm – văn bản đại diện –
có kích thước cố định. Giá trị của hàm băm là duy nhất và
“khó” thể suy ngược lại được nội dung thông điệp từ giá trị
băm này. Hàm băm một chiều h có hai đặc tính quan trọng sau:
- Với thông điệp đầu vào x thu được bản băm z = h(x) là duy
nhất.
- Nếu dữ liệu trong thông điệp x thay đổi hay bị xóa để
thành thông điệp x’ thì h(x’)
≠ h(x).
Hàm băm ứng dụng trong việc tạo và kiểm tra tính toàn vẹn
của chữ ký số
6
Chương 2. HẠ TẦNG MẬT MÃ KHÓA CÔNG
KHAI (PUBLIC KEY INFRASTRUCTURE - PKI)
2.1. TỔNG QUAN VỀ HẠ TẦNG CƠ SỞ MẬT MÃ
KHÓA CÔNG KHAI
2.1.1 Khái niệm hạ tầng cơ sở mật mã khóa công khai
Hạ tầng mật mã khóa công khai (Public Key Infrastructure -
PKI) là một cơ chế để cho một bên thứ 3 (thường là nhà cung
cấp chứng thực số) cung cấp và xác thực định danh các bên
tham gia vào quá trình trao đổi thông tin. Cơ chế này cho phép
gán cho mỗi chủ thể trong hệ thống một cặp khóa công
khai/khóa bí mật. Các quá trình này thường được thực hiện bởi
một phần mềm đặt tại trung tâm và các phần mềm phối hợp
khác tại các địa điểm của người dùng. Khóa công khai thường
được phân phối trong chứng thực khóa công khai (chứng chỉ
số).
2.1.2 Các dịch vụ và phạm vi ứng dụng của PKI
2.1.2.1. Các dịch vụ sử dụng PKI có khả năng đảm bảo năm
yêu cầu sau:
- Bảo mật thông tin
- Toàn vẹn thông tin.
- Xác thực thực thể.
- Chống chối bỏ.
- Tính pháp lý.
2.1.2.2. Phạm vi ứng dụng của PKI
- Phạm vi ứng dụng của PKI bao trùm các hệ thống từ lớn tới
nhỏ và thuộc nhiều lĩnh vực như: ngân hàng, tài chính, viễn
thông, hàng không, các nghành công nghiệp hay cho hoạt động
trao đổi công văn giữa các Sở, Ban, Nghành,….
19
4.2. SƠ ĐỒ CHỨC NĂNG HỆ THỐNG
Hình 4-1: Mô hình hệ thống thử nghiệm
- Hệ thống giao dịch từ người dùng tới ngân hàng trên kênh
truyền Internet mã hóa SSL được mô tả như sau:
1/ Web browser kết nối với web server và yêu cầu một
kết nối an toàn và an toàn bảo mật.
2/ Web server trả về cho web browser site's certificate.
3/ Web browser kiểm tra các thông tin trong site's
certificate xem có trust được hay không (khi
certificate không được trust ta sẽ thấy xuất hiện một
warning dialog, và nếu muốn cố tự mình cho rằng nó
có thể trust được thì click Yes để kết nối).
4/ Web browser lúc này mới tạo ra một session key sau
đó dùng server's public key để encrypt (asymmetric)
và chuyển session key đã được encrypt này tới web
server .
5/ Web server dùng private key của nó để decrypt
(asymmetric) và lấy được session key dùng để
encrypt data (symmetric) giửa web server và web
browser
18
Chương 4 MÔ PHỎNG THỬ NGHIỆM HỆ THỐNG
GIAO DỊCH TRỰC TUYẾN NGÂN HÀNG
4.1. MỤC TIÊU CỦA CHƯƠNG TRÌNH MÔ PHỎNG
THỬ NGHIỆM
Chương trình được xây dựng để thực hiện minh họa các ứng
dụng giao dịch ngân hàng có ứng dụng an toàn bảo mật:
- Xác thực người thực hiện giao dịch: Thông qua hệ
thống xác thực hai cấp, kết hợp xác thực qua hệ thống
Username/Password truyền thống và phương pháp xác thực
thời gian thực (One-Time Passcode). Người thực hiện giao dịch
trực tuyến phải cung cấp Username/ password và passcode
(mật khẩu thời gian thực- One-Time Passcode). Hệ thống sẽ
kiểm tra password và passcode độc lập
- Xác thực máy chủ ngân hàng và bảo mật thông tin giao
dịch trên đường truyền từ trình duyệt web của khách hàng tới
webserver của ngân hàng: Cài đặt chứng chỉ số trên webserver
để thực hiện xác thực máy chủ webserver của ngân hàng và
thực hiện các giao dịch ngân hàng thông qua môi trường
Internet được bảo mật trên kênh kết nối SSL.
- Thực hiện các nghiệp vụ cơ bản của Internet Banking:
Vấn tin tài khoản cá nhân và giao dịch chuyển tiền giữa các
khách hàng thông qua hệ thống ngân hàng.
Công nghệ sử dụng:
- Ngôn ngữ lập trình C#
- Công nghệ ASP.Net
- Cơ sở dữ liệu: SQL2000
- Sử dụng hệ thống cấp phát chứng chỉ số thử nghiệm SSL
của Hãng Verisign
- Hệ thống chứng thực người dùng thông qua thẻ token xác
thực One Time Password của hãng VASCO
7
2.1.3 Các thành phần của PKI
Theo định nghĩa đầy đủ, PKI gồm ba phần chính:
- Phần1: Tập hợp các công cụ, phương tiện, các 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, )
2.1.4 Một số chức năng của PKI
2.1.4.1. Quản lý khóa
1/. Sinh khóa
2/. Phân phối, thu hồi khóa
3/. Cập nhật thông tin về cặp khóa
4/. Cập nhật thông tin về cặp khóa của CA
5/. Khôi phục khóa
2.1.4.2. Quản lý chứng chỉ
1/. Đăng ký và xác nhận ban đầu
2/. Cập nhật thông tin về chứng chỉ số
3/. Phát hành chứng chỉ và danh sách chứng chỉ bị hủy bỏ
4/. Hủy bỏ chứng chỉ số
5/. Quản lý thời gian
6/. Giao tiếp giữa các PKI
8
2.2. THÀNH PHẦN KỸ THUẬT BẢO ĐẢM AN TOÀN
THÔNG TIN
2.2.1 Kỹ thuật bảo mật thông tin
Phần này giới thiệu hệ mã hóa công khai RSA. Đây là hệ mã
hóa thường được dùng trong các hệ PKI phục vụ bảo mật thông
tin.
Sơ đồ:
- Chọn ngẫu nhiên và độc lập hai số nguyên tố lớn p và q với
p≠q
- Tính: n=p*q
- Tính giá trị hàm số Ф(n)=(p-1)*(q-1).
- Chọn số ngẫu nhiên b, 1<b< Ф(n) và là số nguyên tố cùng
nhau với Ф(n).
- Tính a là nghịch đảo của b đối với Ф(n): ab≡1(mod Ф(n))
- Khi đó b là khóa mã hóa công khai và a là khóa giải mã bí
mật
Lập mã
- Chọn P=C=Z
n
với n=p*q, Z
n
={0,1,2, ,n-1}.
- Giả sử x là bản rõ cần mã hóa, khi đó bản mã y được tạo ra
theo công thức: y=x
b
(mod n)
Giải mã:
- Dùng khóa bí mật a để giải mã y theo công thức sau:
x=y
a
(mod n).
2.2.2 Kỹ thuật xác thực:
Sử dụng sơ đồ chữ ký RSA
Thuật toán sinh khóa của sơ đồ chữ ký RSA
Thực thể A tạo khóa công khai và khóa riêng tương ứng theo
phương thức sau:
- Sinh ra hai số nguyên tố lớn ngẫu nhiên p và q
17
- Đảm bảo chứng thực được với các nhà cung cấp CA khác
nhau.
- Cung cấp giải pháp sao lưu dữ liệu cho hệ thống một cách
linh động, theo các cơ chế khác nhau.
- Có chế độ Backup dữ liệu hệ thống PKI và các file dữ liệu
liên quan của hệ thống.
2/. Tính năng registration authority (RA)
- Thêm bớt người sử dụng CA trong hệ thống.
- Quản lý người sử dụng và các chứng chỉ của họ.
- Quản trị chính sách bảo mật một cách tập trung.
- Cung cấp giao diện quản trị đa dạng.
3/. Tính năng HSM (Hardware Sercurity Module)
- Lưu trữ khóa một cách bảo mật.
- Quản lý khóa bằng phần cứng.
- Hiệu suất thực hiện các thao tác mã hóa cao.
4/. Tính năng về phần mềm quản lý chứng chỉ của người
dùng cuối cùng
- Kiểm tra được chữ ký của CA trên chứng chỉ.
- Phần mềm phía người dùng cuối có khả năng sinh cặp khóa
công khai – bí mật tại chỗ.
- Phần mềm phía người dùng cuối phải có khả năng giám sát
và theo dõi được các cặp khóa của người dùng để đảm bảo
chúng phải được cập nhập trước khi hết hạn.
- Phần mềm phía người dùng cuối phải có khả năng cập nhập
khóa một cách tự động và trong suốt với người sử dụng, việc
thay đổi khóa tuân theo chính sách được quản lý đồng bộ, tập
trung tại CA server.
16
3.2.2.2. Kiến trúc và các thành phần thiết bị
- Các máy chủ Web đặt tại vùng mạng bên ngoài (DMZ)
phục vụ truy nhập cho khách hàng và nhân viên ngân hàng qua
Internet
- Các máy chủ ứng dụng: Phục vụ kết nạp hoặc yêu cầu
chứng chỉ và các yêu cầu tìm kiếm trong cơ sở dữ liệu
- Máy chủ thực hiện chữ ký giữ khóa khóa gốc CA (được lưu
trữ trong thiết bị lưu trữ và bảo mật khóa chuyên dụng HSM)
và được dùng để thực hiện chữ ký số lên các chứng chỉ, hoặc
phản hồi cho các yêu cầu về trạng thái của chứng chỉ số thông
qua giao thức (OCSP) hoặc danh sách thu hồi chứng chỉ (CRL).
- Máy chủ giám sát trung tâm: Máy chủ này chạy các kịch
bản (scipt) và các quy trình để giám sát các thành phần chức
năng của Trung tâm cung cấp dịch vụ CA của ngân hàng
- Máy chủ cơ sở dữ liệu: lưu trữ cơ sở dữ liệu thông tin người
dùng.
- Máy chủ sinh khóa Việc sinh các khóa CA được thực hiện
tại một thiết bị riêng độc lập và không có kết nối vào mạng.
- Máy chủ phục hồi khóa : Máy chủ hồi phục hóa làm việc tại
phân vùng hậu phương cho phép quản lý và hồi phục khóa
3.2.2.3. Tính năng sản phẩm đề xuất:
1/. Tính năng phần mềm CA
- Quản lý chứng chỉ số tự động,trong suốt với người sử dụng.
- Lưu trữ an toàn các khóa bí mật của một hệ thống CA.
- Cấp phát các chứng chỉ số cho người sử dụng cũng như
thiết bị hay ứng dụng có yêu cầu sử dụng (chuẩn X.509).
- Phát hành danh sách thu hồi chứng chỉ .
- Duy trì một cơ sở dữ liệu an toàn và có thể kiểm soát được
về lịch sử của các khóa bí mật được cấp phát. Mục đích là để
phục hồi khóa trong trường hợp khóa của người sử dụng bị mất.
- Hỗ trợ nhiều kiến thức CA chuẩn.
9
- Tính: n=p*q và Ф(n)=(p-1)*(q-1).
- K=(n,p,q,a,b)
- Chọn b
Zn nguyên tố cùng Ф(n).
- Chọn a
Zn là nghịch đảo của b theo Ф(n).
- Các giá trị n và b là công khai, các giá trị p,q,a bí mật
Thuật toán ký và kiểm tra chữ ký
- Ký:
Với mỗi K=(n,p,q,a,b) và x
Z
n
ta định nghĩa:
y=sig
k
(x)=x
a
mod n, y
Z
n
- Kiểm tra chữ ký:
Ver
k
(x,y)=true
x
≡y
b
mod n
2.3. HỆ THỐNG CUNG CẤP VÀ QUẢN LÝ CHỨNG
CHỈ SỐ
2.3.1 Chứng chỉ số
2.3.2.1. Khái niệm chứng chỉ số
Chứng chỉ số là một dạng kết hợp giữa 3 thành phần:
- Các thông tin mô tả về bản thân đối tượng: số định danh
(duy nhất đối với một nhà cấp pháp chứng chỉ số), tên, địa chỉ
email, loại chứng chỉ, hạn sử dụng, phạm vi áp dụng…
- Khóa công khai tương ứng (với 1 khóa bí mật được giữ
riêng)
- Chữ ký điện tử của cơ quan cấp phát chứng chỉ số cho các
thông tin trên.
2.3.2.2. Mục đích và ý nghĩa của chứng chỉ số
- Mã hoá thông tin: Đảm bảo tính bí mật của thông tin
- Chống giả mạo: Việc trao đổi thông tin có kèm chứng chỉ
số luôn đảm bảo an toàn, không bị giả mạo
- Xác thực: Đảm bảo xác định rõ được danh tính của người
gửi
10
- Chống từ chối: Khi sử dụng một chứng chỉ số, 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.
2.3.2.3. Chứng chỉ khoá công khai X.509
Chứng chỉ X.509 v3 gồm 2 phần. Phần đầu là những trường
cơ bản cần thiết phải có trong chứng chỉ. Phần thứ hai chứa
thêm một số trường phụ, những trường phụ này được gọi là
trường mở rộng dùng để xác định và đáp ứng những yêu cầu bổ
sung của hệ thống.
Có sáu trường bắt buộc và bốn trường tuỳ chọn. Sáu trường
bắt buộc là: Số phát hành (Serial number); Kỹ thuật mã hoá ký
số (Certificate Signature Algorithm Identifier); Tên của CA
phát hành chứng chỉ (Certificate Issuer Name); Thời hạn hiệu
lực của chứng chỉ (Certificate Validity Period); Khoá công khai
(Public Key); Tên của chủ thể (Subject Name). Bốn trường tuỳ
chọn là: Số phiên bản (Version Number); Hai trường nhận dạng
duy nhất (Two Unique Indentifiers); Các phần mở rộng
(Extensions). Các trường tuỳ chọn chỉ có ở chứng chỉ phiên bản
2; 3 (Version 2; 3).
2.3.2.4. Danh sách chứng chỉ thu hồi
- Các chứng chỉ có chứa ngày hết hạn hiệu lực (trong
trường thời gian hiệu lực), tuy nhiên đôi khi cần thu hồi (ngắt
hiệu lực) của một chứng chỉ trước thời gian vì một vài lý do
nào đó. Người phát hành chứng chỉ (CA) cần một phương tiên
để cập nhật thông tin trạng thái chứng chỉ của mọi chứng chỉ
cho người dùng. Một phương tiện hữu hiệu là danh sách chứng
chỉ thu hồi chuẩn X.509 (CRL).
- Danh sách chứng chỉ thu hồi X.509 được bảo vệ bởi chữ
ký số của CA phát hành. Những người dùng sẽ chắc chắn rằng
nội dung của CRL không bị thay đổi bằng cách xác thực chữ ký
trên CRL đó.
15
Internet Banking với số lượng giao dịch thực hiện đồng thời
lớn. thể lên tới con số hàng chục nghìn hoặc hàng trăm nghìn(
tùy theo qui mô của từng ngân hàng).
- An toàn cao: hệ thống phải được thiết kế có khả năng bảo
vệ chống lại các tấn công phá hoại gây hư hại dữ liệu cũng như
gây đình trệ hoạt động.
3.2.1.2. Đề xuất mô hình chức năng
Tác giả đề xuất sử dụng kết hợp hệ thống PKI và giải pháp
xác thực hai thành tố để tạo ra hạ tầng hỗ trợ mức độ an ninh
cao nhưng vẫn rất tiện dụng để triển khai các dịch vụ ngân hàng
với các khách hàng qua môi trường Internet (Internet Banking).
Với phương thức này, hoạt động của hệ thống có đặc điểm:
- Khách hàng được cấp Hybrid USB Token hỗ trợ đồng thời
cả SecurID và PKCS#11.
- Khách hàng truy cập dịch vụ thông qua hệ thống Web an
toàn có mã hóa lưu thông nhờ SSL.
Mọi giao dịch của người dùng đã thực hiện (dù thành công
hay không) đều được ghi nhật ký bằng hệ thống Logging
Đối với các giao dịch nội bộ cũng tương tự như khách hàng
Internet Banking. Tuy nhiên với đặc trưng giao dịch nội bộ
trong phạm vi mạng LAN/WAN , các kênh kết nối thuê riêng,
do vậy nhu cầu giao dịch nội bộ không cần xác thức với máy
chủ web qua SSL, chỉ cần thực hiện mã hóa các giao dịch với
chứng chỉ số của từng nhân viên, giúp tránh việc giả mạo nhân
viên và đảm bảo tính pháp lý của các giao dịch nội bộ.
3.2.2 Đề xuất về tổ chức cung cấp quản lý chứng chỉ số
3.2.2.1. Đề xuất mô hình CA:
Mô hình Root CA, có một CA gốc tự cấp chứng thư cho mình
và cấp chứng thư cho các CA khác theo hình thức lan tỏa. CA
gốc được coi là điểm tin cậy của hệ thống, thường ứng dụng
trong một lĩnh vực hay quốc gia.
14
bao gồm việc sử dụng các script mức cao và sử dụng API trong
các ngôn ngữ lập trình mức thấp (C, Java).
3.1.3 Chính sách áp dụng PKI
Các thông tin về chính sách áp dụng PKI trong môi trường
giao dịch điện tử được thể hiện trong hai tài liệu là:
- CP (Certificate Policy):
o Tài liệu mức cao mô tả chính sách an ninh trong việc
cấp phát và bảo trì thông tin trạng thái chứng chỉ số;
o Mô tả vận hành của CA;
o Định nghĩa trách nhiệm của người sử dụng trong việc
yêu cầu, sử dụng và lưu giữ chứng chỉ số và các khóa.
- CPS (Certification Practices Statement):
o Tài liệu rất chi tiết mô tả việc cách thức CA áp dụng
một CP cụ thể;
o Xác định các cơ chế và thủ tục được áp dụng để đảm
bảo thực thi đúng chính sách an ninh;
o Tài liệu cho các thao tác vận hành CA trong thực tế.
Việc xây dựng CP và CPS là tác vụ cần thiết và khó khăn
nhất trong việc xây dựng hạ tầng PKI.
3.2. MỘT SỐ ĐỀ XUẤT XÂY DỰNG PKI
3.2.1 Đề xuất giải pháp kỹ thuật
3.2.1.1. Các tiêu chí thiết kế hệ thống PKI
- Sẵn sàng cao: hệ thống có khả năng hoạt động liên tục
không gián đoạn, ngay cả trong trường hợp một thành phần
thiết bị trong hệ thống gặp sự cố;
- Khả năng phục hồi: hệ thống có khả năng khôi phục hoạt
động nhanh chóng, ngay cả khi các thảm họa tự nhiên gây hư
hại hoàn toàn một phần lớn hệ thống.
- Hiệu năng cao: hệ thống phải đáp ứng yêu cầu hoạt động
phục vụ cho các hệ thống giao dịch trực tuyến, trước mắt là
11
2.3.2 Nhà phát hành chứng chỉ (Certificate Authority)
Đây là thành phần chính của hệ thống PKI. Thành phần này
thực hiện các chức năng chính của hệ thống như:
o Tạo chứng chỉ số cho người dùng, ứng dụng (xác thực
cho các khoá công khai).
o Bảo trì cơ sở dữ liệu hệ thống, cho phép phục hồi các
cặp khoá người dùng.
o Buộc hệ thống tuân thủ các thủ tục bảo mật.
2.3.3 Kho chứa chứng chỉ
Thực hiện việc lưu trữ để phân phối chứng chỉ số của người
dùng hệ thống CA và 1 số thông tin khác tới tất cả người dùng
và ứng dụng cần sử dụng. Hệ thống kho là hệ thống tương thích
LDAP (Lightweight Directory Access Protocol).
2.3.4 Cơ quan đăng ký chứng chỉ (Registration Authority)
Thành phần này là một ứng dụng nhằm cung cấp giao diện
cho người điều hành hệ thống (người được tin cậy) thực hiện
các chức năng của hệ thống CA như:
o Bổ sung người dùng (xác thực chứng chỉ người dùng).
o Quản lý người dùng và chứng chỉ của họ.
o Quản lý chính sách an toàn.
o Xây dựng cây xác thực.
2.3.5 Mô hình tổ chức chứng thực số (Certification
Authority- CA)
Hiện nay trên thế giới tồn tại ba mô hình tổ chức chứng thực
số đó là: Mô hình CA dạng phân cấp (Hierarchy model) hay
còn gọi là mô hình chứng thực gốc (Root CA Model); Mô hình
CA dạng lưới (Mesh CA Model) hay còn gọi là mô hình chứng
thực ngang hàng; Mô hình CA cầu nối (Bridge CA Model).
12
Chương 3 ỨNG DỤNG HẠ TẦNG MẬT MÃ KHOÁ
CÔNG KHAI CHO HỆ THỐNG E-BANKING
3.1. NHU CẦU VỀ AN TOÀN THÔNG TIN TRONG
HOẠT ĐỘNG NGÂN HÀNG.
3.1.1 Ứng dụng PKI và các yêu cầu của ngân hàng
Yêu c
ầ
u v
ề
đ
ộ
tin
cậy
UserID/
mật khẩu
M
ậ
t mã
khóa đối
xứng
S
ử
d
ụ
ng
thiết bị
phần
cứng
H
ạ
tầng
PKI
Bảo mật thông tin
Toàn vẹn thông tin
Xác thực thực thể
Chống chối bỏ
Tính pháp lý
3.1.2 Phương hướng ứng dụng PKI vào giao dịch ngân
hàng
Kết quả của việc lựa chọn sử dụng PKI giải pháp giao dịch
ngân hàng là giảm khả năng giả mạo tối đa, xác thực truy cập
với mức an ninh cao và có thể truy tìm giao dịch trong thời gian
dài thông qua các giao dịch được lưu. Xác thực thực thể, bảo
mật, bảo toàn và không thể chối bỏ là các đặc tính của PKI
cho phép triển khai giao dịch Internet Banking trong thực tế.
3.1.2.1. Lưu trữ và bảo vệ khóa bí mật sử dụng cho chữ ký
số
USB token (PKCS#11) là một giải pháp sử dụng phần cứng
cũng có độ an toàn cao tương đương như smart card nhưng lại
có độ linh hoạt cao hơn nhiều so với giải pháp đó. Khi sử dụng
USB token trong giải pháp PKI, thiết bị token vật lý chứa
13
chứng chỉ số và khóa bí mật của người sử dụng, phải cắm vào
một cổng như USB, và kích hoạt khi truy cập với số PIN duy
nhất. Đề xuất khuyến nghị lựa chọn phương thức lưu trữ khóa
bí mật của người sử dụng trên USB token do mức độ an ninh
cao cấp phù hợp với yêu cầu thực hiện các giao dịch Internet
Banking, và do tính linh hoạt, dễ sử dụng của biện pháp này so
với các biện pháp an toàn bảo mật cao khác.
3.1.2.2. Yêu cầu khôi phục khóa bí mật
Để khắc phục sự mâu thuẫn giữa yêu cầu bảo vệ khóa bí mật
tránh việc bị sử dụng bất hợp pháp bởi một đối tượng không
phải là bản thân người sử dụng, việc sử dụng các thiết bị mã
hóa phần cứng cao cấp HSM (PKCS#11) để lưu trữ khóa bí mật
dành cho việc phục hồi đã được các nhà cung cấp giải pháp trên
thế giới đưa ra và được chấp nhận rộng rãi.
3.1.2.3. Lựa chọn nhà cung cấp giải pháp PKI
Việc lựa chọn nhà cung cấp giải pháp PKI được xác định dựa
trên khả năng đáp ứng các yêu cầu của việc triển khai giải pháp
phù hợp với ứng dụng. Các yêu cầu này bao gồm:
- Yêu cầu về tài nguyên, bao gồm phần mềm và nền tảng
phần cứng cần thiết để triển khai hệ thống;
- Yêu cầu về bản thân PKI, bao gồm các chức năng cần thiết,
khả năng mở rộng theo chiều dọc và chiều ngang, và độ linh
hoạt khi cần cấu hình lại hệ thống trong khi đang vận hành;
- Yêu cầu về quản trị, bao gồm việc sử dụng các giao diện
web chuẩn, khả năng quản trị từ xa, khả năng phân tách ủy
quyền các vai trò quản trị và khả năng tùy biến các giao diện
quản trị;
- Yêu cầu về các thuật toán mã hóa sử dụng, bao gồm các
chuẩn mã hóa quốc gia và các giải pháp hỗ trợ mã hóa đã được
kiểm chứng;
- Yêu cầu về chức năng phía client và các ứng dụng sẵn sàng
cho việc tích hợp PKI cũng như các cơ chế tích hợp khác nhau,