Tải bản đầy đủ (.pdf) (104 trang)

Nghiên cứu triển khai thử nghiệm và ứng dụng giải pháp tích hợp sinh trắc vào PKI

Bạn đang xem bản rút gọn của tài liệu. Xem và tải ngay bản đầy đủ của tài liệu tại đây (2.42 MB, 104 trang )

BỘ GIÁO DỤC VÀ ĐÀO TẠO
TRƯỜNG ĐẠI HỌC BÁCH KHOA HÀ NỘI
--------------------------------------Bùi Trọng Tùng

NGHIÊN CỨU, TRIỂN KHAI, THỬ NGHIỆM VÀ ỨNG DỤNG
GIẢI PHÁP TÍCH HỢP SINH TRẮC VÀO PKI

Chuyên ngành : Kỹ thuật máy tính và truyền thông

LUẬN VĂN THẠC SĨ KHOA HỌC
KỸ THUẬT MÁY TÍNH VÀ TRUYỀN THÔNG

NGƯỜI HƯỚNG DẪN KHOA HỌC :
TS. NGUYỄN LINH GIANG

Hà Nội – Năm 2010


LỜI CAM ĐOAN
Tôi – Bùi Trọng Tùng- cam kết luận văn Thạc sĩ khoa học này là công trình
nghiên cứu của bản thân tôi dưới sự hướng dẫn của TS. Nguyễn Linh Giang.
Các kết quả nêu trong luận văn là trung thực, không phải là sao chép toàn
văn của bất kỳ công trình nào khác.
Toàn văn luận văn đã được sự cho phép công bố của đề tài KC.01.11/06-10
“Nghiên cứu xây dựng hệ thống kiểm soát truy cập mạng và an ninh thông tin dựa
trên sinh trắc học sử dụng công nghệ nhúng” nằm trong Chương trình Khoa họcCông nghệ trọng điểm cấp nhà nước giai đoạn 2006-2010.
Hà Nội, ngày 29 tháng 10 năm 2010
Tác giả

2



MỤC LỤC
TRANG PHỤ BÌA.....................................................................................................1
LỜI CAM ĐOAN......................................................................................................2
DANH MỤC CÁC TỪ VIẾT TẮT..........................................................................6
DANH MỤC CÁC BẢNG ........................................................................................7
DANH MỤC HÌNH VẼ ............................................................................................8
MỞ ĐẦU ..................................................................................................................10
Chương 1- TỔNG QUAN VỀ HẠ TẦNG KHÓA CÔNG KHAI PKI ..............15
1.1

Các khái niệm cơ bản .........................................................................................15

1.1.1

Hệ mật mã khóa bất đối xứng ........................................................................15

1.1.2

Cơ sở hạ tầng khóa công khai........................................................................19

1.2

Các thành phần của PKI .....................................................................................20

1.2.1

Nhà phát hành chứng thư số CA ....................................................................21

1.2.2


Cơ quan đăng kí chứng thực RA ....................................................................22

1.2.3

Thực thể đầu cuối...........................................................................................23

1.2.4

Cấu trúc chứng thư số....................................................................................24

1.2.5

Kho chứng thư số ...........................................................................................25

1.3

Các chức năng chính của PKI ............................................................................26

1.3.1

Yêu cầu chứng thư số .....................................................................................26

1.3.2

Phát hành chứng thư số .................................................................................26

1.3.3

Công bố chứng thư số ....................................................................................26


1.3.4

Hủy chứng thư số ...........................................................................................27

1.3.5

Các hoạt động quản lý khóa...........................................................................27

1.4

Kiến trúc PKI......................................................................................................28

1.4.1

Kiến trúc PKI đơn có một CA ........................................................................29

1.4.2

Kiến trúc PKI xí nghiệp..................................................................................31

3


1.5

Sản phẩm mã nguồn mở hạ tầng khóa công khai OpenCA................................36

1.5.1


Giới thiệu chung về OpenCA .........................................................................36

1.5.2

Các thành phần chính của OpenCA...............................................................37

1.5.3

Các dịch vụ chính của OpenCA .....................................................................38

1.6

Một số vấn đề của PKI .......................................................................................39

Chương 2 - XÂY DỰNG MÔ HÌNH GIẢI PHÁP VÀ THIẾT KẾ HỆ THỐNG
BIOPKI....................................................................................................................41
2.1

Vấn đề tích hợp sinh trắc học vào hệ thống PKI ................................................41

2.1.1

Các yêu cầu chung đối với một hệ thống BioPKI ..........................................41

2.1.2

Các hướng tiếp cận sinh trắc học vào PKI ....................................................42

2.2


Giải pháp xây dựng và phát triển hệ thống BioPKI ...........................................47

2.2.1

Giải pháp sử dụng sinh trắc học và công nghệ nhúng bảo vệ khóa cá nhân.47

2.2.2

Giải pháp xây dựng BioPKI trên nền tảng PKI-OpenCA ..............................49

2.3

Mô hình kiến trúc hệ thống mức khung cảnh.....................................................53

2.4

Thiết kế chức năng các thành phần trong hệ thống BioPKI...............................55

2.4.1

Thành phần CA Operator...............................................................................55

2.4.2

Thành phần RA...............................................................................................58

2.4.3

Thành phần LRA ............................................................................................61


2.4.4

Website quảng bá thông tin............................................................................62

2.5

Quy trình hoạt động của hệ thống BioPKI .........................................................64

2.5.1

Thiết lập hệ thống ban đầu.............................................................................64

2.5.2

Cấp phát chứng thư số mới ............................................................................67

2.5.3

Hủy chứng thư theo yêu cầu...........................................................................70

Chương 3 - GIẢI PHÁP XÂY DỰNG ỨNG DỤNG CHỮ KÍ SỐ TRÊN NỀN
TẢNG HỆ THỐNG BIOPKI .................................................................................72
3.1

Khái quát chung về chữ kí số .............................................................................72

3.1.1

Khái niệm chữ kí số........................................................................................72


3.1.2

Sơ đồ nguyên lý kí số và xác thực chữ kí số ...................................................73

4


3.2

Ứng dụng chữ kí số trên nền tảng hệ thống BioPKI ..........................................76

3.3

Giải pháp tích hợp ứng dụng chữ kí số trên nền tảng BioPKI vào các giao dịch

điện tử..............................................................................................................................79
3.3.1

Triển khai chữ kí số cho các dịch vụ trên nền tảng Application-based .........79

3.3.2

Triển khai ứng dụng chữ kí số trên các ứng dụng Web-based.......................81

Chương 4 - TRIỂN KHAI HỆ THỐNG BIOPKI VÀ KẾT QUẢ THỬ
NGHIỆM.................................................................................................................84
4.1

Đề xuất giải pháp triển khai hệ thống BioPKI ...................................................84


4.1.1

Quy trình tác nghiệp tại một cơ quan phát hành và quản lý chứng thư số....84

4.1.2

Quy trình một tác nghiệp trao đổi và xử lí văn bản .......................................87

4.1.3

Triển khai hạ tầng hệ thống BioPKI tại địa chỉ ứng dụng.............................88

4.2

Kết quả triển khai thử nghiệm ............................................................................91

4.2.1

Mô hình hệ thống thử nghiệm ........................................................................91

4.2.2

Nội dung và kết quả thử nghiệm ....................................................................93

4.2.3

Đánh giá kết quả thử nghiệm .......................................................................100

KẾT LUẬN VÀ KIẾN NGHỊ ..............................................................................102
TÀI LIỆU THAM KHẢO ....................................................................................104


5


DANH MỤC CÁC TỪ VIẾT TẮT
Từ viết tắt

Diễn giải

CA

Certificate Authority

CRL

Certificate Revocation List

CSDL

Cơ sở dữ liệu

FTP

File Transfer Protocol

HTTP

Hyper Text Transfer Protocol

ID


Identification

LDAP

Lightweight Directory Access Protocol

LRA

Local Registration Authority

PIN

Personal Identification Number

PKCS

Public Key Cryptography Standards

PKI

Public Key Infrastructure

RA

Registration Authority

XML

eXtensible Markup Language


6


DANH MỤC CÁC BẢNG
Bảng 4.1 Danh sách thiết bị triển khai hệ thống .......................................................92
Bảng 4.2. Kết quả thử nghiệm cấp phát chứng thư mới ...........................................93
Bảng 4.3 Kết quả thử nghiệm thu hồi chứng thư số hết hạn.....................................94
Bảng 4.4 Kết quả thử nghiệm thu hồi chứng thư số theo yêu cầu ............................95
Bảng 4.5 Kết quả triển khai chữ kí số trên nền tảng Application-based ..................96
Bảng 4.6 Kết quả triển khai chữ kí số trên nền tảng Web-based..............................97
Bảng 4.7 Kết quả thử nghiệm chống tấn công giả mạo nội dung .............................98
Bảng 4.8 Kết quả thử nghiệm chống tấn công giả danh người dùng........................99
Bảng 4.9 Đánh giá kết quả thử nghiệm...................................................................100

7


DANH MỤC HÌNH VẼ
Hình 1.1 Sơ đồ nguyên lý hệ mã hóa khóa công khai đảm bảo tính mật....................1
Hình 1.2 Sơ đồ nguyên lý hệ mã hóa khóa công khai đảm bảo tính xác thực............1
Hình 1.3 Các thành phần của PKI.............................................................................20
Hình 1.4 Cấu trúc của một chứng thư số ..................................................................24
Hình 1.5 Kiến trúc PKI có một CA...........................................................................29
Hình 1.6 Mô hình danh sách các CA tin cậy (Basic Trust List Model)...................30
Hình 1.7 Mô hình PKI phân cấp ...............................................................................31
Hình 1.8 Mô hình PKI lưới ......................................................................................33
Hình 1.9 Mô hình danh sách điểm tin cậy mở rộng.................................................34
Hình 1.10 Mô hình PKI chứng nhận chéo ................................................................35
Hình 1.11 Mô hình CA bắc cầu ................................................................................35

Hình 2.1 Hướng tiếp cận hệ thống BioPKI...............................................................42
Hình 2.2 Một số đặc trưng sinh trắc học...................................................................43
Hình 2.3 Hệ thống sinh trắc học ...............................................................................44
Hình 2.4 Mô hình sử dụng thẻ Bio-Etoken bảo vệ khóa cá nhân .............................48
Hình 2.5 Mô hình kiến trúc hệ thống BioPKI mức khung cảnh ...............................53
Hình 2.6 Biểu đồ phân cấp chức năng của CA Operator..........................................56
Hình 2.7 Sơ đồ phân cấp chức năng của LRA ..........................................................59
Hình 2.8 Sơ đồ phân cấp chức năng của LRA ..........................................................62
Hình 2.9 Kịch bản thiết lập CA Operator .................................................................64
Hình 2.10 Kịch bản thiết lập RA..............................................................................65
Hình 2.11 Kịch bản thiết lập LRA ...........................................................................66
Hình 2.12 Quy trình hệ thống cấp chứng thư mới ....................................................68
Hình 2.13 Quy trình hệ thống hủy chứng thư theo yêu cầu.....................................71
Hình 3.1 Quá trình tạo và xác thực chữ kí số............................................................74
Hình 3.2 Kịch bản kí số lên bản tin trong hệ thống BioPKI.....................................77
Hình 3.3 Kịch bản xác thực chữ kí số trong hệ thống BioPKI .................................79
8


Hình 3.4 Triển khai chữ kí số trên ứng dụng Application-based..............................80
Hình 3.5 Nền tảng Web-based để xây dựng ứng dụng chữ kí số .............................82
Hình 4.1 Mô hình triển khai hệ thống BioPKI tại các đơn vị ứng dụng...................88
Hình 4.2 Hạ tầng triển khai hệ thống BioPKI...........................................................89
Hình 4.3 Sơ đồ hệ thống thử nghiệm ........................................................................91

9


MỞ ĐẦU
Ngay từ khi mới ra đời, mạng máy tính đã chứng minh được vai trò và sức

ảnh hưởng lớn lao của nó tới các lĩnh vực có ứng dụng công nghệ thông tin. Đặc
biệt, sự phát triển mạnh mẽ của mạng Internet kéo theo sự phát triển không ngừng
của các giao dịch điện tử trên môi trường mạng, là nền tảng để kéo cộng đồng
người dùng tới gần nhau hơn. Tuy nhiên, môi trường mạng là một môi trường ảo và
tự do, ai cũng có thể tham gia nên nguy cơ xảy ra giả danh, giả mạo để lừa đảo là
rất cao. Nhu cầu xây dựng một hệ thống an toàn-an ninh thông tin đảm bảo các giao
dịch có định danh và chống từ chối ngày càng trở nên cấp thiết. Cơ sở hạ tầng khóa
công khai PKI (Public Key Infrastructure), phát triển trên nền tảng các hệ mật khóa
bất đối xứng, là một trong những giải pháp được ưa chuộng do tính ưu việt của nó
so với nhiều giải pháp khác. Mỗi người dùng trong hệ thống sẽ được xác định bởi
khóa cá nhân và chứng thư số do hệ thống cấp phát ; mỗi giao dịch sẽ được gắn chữ
kí số của người tham gia. Tuy nhiên, như bất kì một hệ thống thông tin nào khác,
PKI cũng có những vấn đề an toàn-bảo mật thông tin; mà chỉ khi nào những vấn đề
này được giải quyết thì PKI mới thực sự chứng minh được khả năng ứng dụng của
nó. Trong đó, nguy cơ lớn nhất là khóa cá nhân bị mất và được sử dụng bởi một
người không phải là chủ sở hữu của nó; đặc biệt nếu khóa cá nhân đó là của quản trị
viên hệ thống thì hệ thống sẽ đổ vỡ. Với một hệ thống PKI thông thường, các giải
pháp kĩ thuật chỉ cho phép xác thực được “Ai đang dùng khóa cá nhân ?” chứ
không thể khẳng định được “Khóa cá nhân đó có đúng là của người dùng nó hay
không ?” . Để tiến tới một giải pháp xác thực chủ thể hiệu quả, cũng như bảo vệ tốt
khóa cá nhân, người ta nghĩ tới việc tích hợp yếu tố sinh trắc học, với điểm mạnh
chính là tính xác thực dựa trên tính đặc trưng cho từng cá nhân, với hệ thống PKI
thành BioPKI.
Trong quá trình tham gia đề tài Khoa học công nghệ cấp nhà nước mang mã
số KC01.11/06-10 về “Nghiên cứu, xây dựng hệ thống kiểm soát truy cập mạng và
an ninh thông tin dựa trên sinh trắc học sử dụng công nghệ nhúng”, tác giả đã nhận
10


thức được xu thế xây dựng và phát triển hệ thống BioPKI. Dưới sự gợi ý và hướng

dẫn của TS. Nguyễn Linh Giang, tác giả đã nghiên cứu các mô hình xây dựng hệ
thống BioPKI cùng với ứng dụng chữ kí số trên nền tảng BioPKI. Với tiền đề là
những kết quả công việc từ năm 2008 khi tham gia đề tài KC01.11/06-10, tác giả
lựa chọn được một giải pháp xây dựng hệ thống BioPKI và ứng dụng chữ kí số để
bắt đầu thực hiện luận văn Thạc sĩ khoa học “Nghiên cứu, triển khai, thử nghiệm và
ứng dụng giải pháp tích hợp sinh trắc vào PKI”. Sau một thời gian nghiên cứu, từ
tháng 11/2009 đến 10/2010, tác giả đã đạt được những kết quả sau :
− Tháng 11/2009, cùng với TS. Nguyễn Linh Giang, tác giả tham gia Hội nghị
FAIR 2009 với bài báo Mô hình tích hợp sinh trắc tăng cường an ninh cho cơ sở
hạ tầng khóa công khai PKI. Bài báo đã được chấp nhận và đang chờ phản biện.
− Tháng 6/2010, cùng với TS. Nguyễn Linh Giang, tác giả công bố bài báo
“Digital signature using Bio-Etoken in BioPKI system and applications” trên
Tạp chí Khoa học và Công nghệ, Số 79B.
− Tháng 10/2010, dưới sự hướng dẫn của TS. Nguyễn Linh Giang tác giả hoàn
thành luận văn Thạc sĩ khoa học.
Mục đích đề tài
Với tên gọi “Nghiên cứu, triển khai, thử nghiệm và ứng dụng giải pháp tích
hợp sinh trắc vào PKI” , mục đích của luận văn là đưa ra một giải pháp hệ thống an
ninh thông tin trên các phương diện sau :
− Đề xuất mô hình tổng thể hệ thống BioPKI trên cơ sở tích hợp sinh trắc học vào
PKI, thiết kế chức năng các thành phần của hệ thống, bảo đảm an toàn khóa cá
nhân; đồng thời hệ thống có thể phục vụ cho các quy trình tác nghiệp tại một cơ
quan phát hành và quản lý chứng thư số.
− Xây dựng giải pháp chữ kí số trên nền tảng hệ thống BioPKI.
− Đề xuất giải pháp triển khai hệ thống BioPKI và ứng dụng chữ kí số cho các
nghiệp vụ thực tế.
Đối tượng nghiên cứu

11



Để đạt được mục đích của luận văn, tác giả xác định các vấn đề cần phải
nghiên cứu bao gồm :
− Nghiên cứu các hướng tiếp cận tích hợp sinh trắc với PKI thành BioPKI trên lý
thuyết.
− Nghiên cứu các thành phần và kiến trúc của cơ sở hạ tầng khóa công khai PKI
theo chuẩn công nghiệp.
− Nghiên cứu đề xuất mô hình, xây dựng giải pháp hệ thống an ninh thông tin
BioPKI đáp ứng được các yêu cầu an toàn thông tin và các yêu cầu về quy trình
tác nghiệp.
− Nghiên cứu nguyên lí chữ kí số truyền thống, từ đó xây dựng giải pháp chữ kí số
trên nền tảng hệ thống BioPKI và đề xuất mô hình triển khai chữ kí số trong các
giao dịch điện tử.
Phạm vi nghiên cứu
Dựa trên những kết quả nghiên cứu về nguyên lý cơ sở hạ tầng khoá công
khai PKI và mô hình lý thuyết các hướng tiếp cận BioPKI, tác giả lựa chọn, đề xuất
các giải pháp triển khai một hướng tiếp cận khả thi. Trên cơ sở đó, tác giả xây dựng
mô hình tổng thể hệ thống BioPKI với các giải pháp lựa chọn, xây dựng mô hình
ứng dụng chữ kí số trên nền tảng BioPKI, thử nghiệm toàn bộ hệ thống và ứng dụng
cho các quy trình tác nghiệp trên thực tế.
Phương pháp nghiên cứu
Tác giả đã sử dụng các phương pháp nghiên cứu để hoàn thành luận văn, bao gồm :
− Nghiên cứu lý thuyết :
• Nghiên cứu các mô hình lý thuyết về cơ sở hạ tầng khóa công khai PKI
• Nghiên cứu các hướng tiếp cận tích hợp sinh trắc vào PKI.
• Nghiên cứu các phương pháp mật mã đảm bảo tính xác thực cho giao dịch
điện tử trong môi trường mạng
− Công nghệ :
• Khảo sát công nghệ và lựa chọn giải pháp công nghệ phù hợp và có tính khả
thi để xây dựng hệ thống BioPKI.

12


• Phân tích, đánh giá và xây dựng giải pháp trên cơ sở phân tích các yêu cầu
đối với hệ thống BioPKI.
− Triển khai thử nghiệm hệ thống và đánh giá kết quả.
Những đóng góp mới của tác giả sẽ được trình bày trong nội dung luận văn,
bao gồm :
− Mô hình tổng thể hệ thống BioPKI tích hợp tất cả các thành phần : hệ thống
PKI-OpenCA, phân hệ sinh trắc, phân hệ thiết bị nhúng.
− Mô hình triển khai chữ kí số trên nền tảng hệ thống BioPKI cho các ứng dụng
giao dịch điện tử xây dựng trên hai công nghệ : Application-based và Webbased.
− Giải pháp triển khai hạ tầng hệ thống BioPKI cho các nghiệp vụ và ứng dụng
trong thực tế.
Nội dung chính của luận văn được trình bày theo những luận điểm sau :
− Chương 1 – Tổng quan về hạ tầng khóa công khai PKI. Trong chương này, tác
giả trình bày những vấn đề cơ bản của hệ thống PKI, bao gồm : các thành phần
chức năng, các dịch vụ lõi, kiến trúc PKI. Các vấn đề cơ bản trên được minh họa
bằng một sản phẩm mã nguồn mở là hệ thống PKI-OpenCA. Cuối chương, tác
giả đánh giá một số nguy cơ an toàn bảo mật thông tin trong hệ thống PKI để
cho thấy nhu cầu phải có giải pháp tăng cường an ninh cho hệ thống.
− Chương 2 – Xây dựng mô hình giải pháp và thiết kế hệ thống BioPKI. Phần
đầu chương này, tác giả trình bày lựa chọn giải pháp tích hợp sinh trắc học và
công nghệ nhúng với hệ thống PKI-OpenCA thành hệ thống BioPKI. Tác giả đã
đưa ra giải pháp công nghệ, phân tích và đánh giá giải pháp phát triển hệ thống
BioPKI. Trong phần còn lại của chương này, tác giả trình bày thiết kế chức năng
cho các thành phần của hệ thống BioPKI theo mô hình và giải pháp công nghệ
đã lựa chọn.
− Chương 3 – Giải pháp xây dựng ứng dụng chữ kí số trên nền tảng hệ thống
BioPKI. Nội dung chương này trình bày giải pháp xây dựng ứng dụng chữ kí số

trên nền tảng hệ thống BioPKI, trong đó cơ chế xác thực hai yếu tố sử dụng số
13


PIN và đặc trưng sinh trắc để đảm bảo chỉ có người sở hữu thực sự của khóa cá
nhân mới có thể sử dụng khóa để kí số. Tác giả cũng đưa ra mô hình triển khai
chữ kí số cho các ứng dụng trên hai nền tảng : Application-based và Web-based.
− Chương 4 – Triển khai hệ thống BioPKI và kết quả thử nghiệm. Trong
chương này, tác giả trình bày nội dung triển khai hạ tầng hệ thống BioPKI để
đáp ứng các quy trình tác nghiệp cho một cơ quan phát hành và quản lý chứng
thư số. Tác giả cũng trình bày các kịch bản thử nghiệm và kết quả để kiểm
chứng lại những giải pháp đã đưa ra trong các chương trước.
Để có được những kết quả nghiên cứu trên, tác giả xin gửi lời cảm ơn chân
thành tới TS. Nguyễn Linh Giang, người đã tận tình hướng dẫn trong quá trình tác
giả thực hiện luận văn. Tác giả cũng xin gửi lời cảm ơn tới PGS.TS. Nguyễn Thị
Hoàng Lan, chủ nhiệm đề tài KC.01.11/06-10, và các thành viên khác trong đề tài
đã có những đóng góp quý báu để tác giả hoàn thành luận văn này.

14


Chương 1 - TỔNG QUAN VỀ HẠ TẦNG KHÓA CÔNG KHAI PKI
1.1 Các khái niệm cơ bản
1.1.1 Hệ mật mã khóa bất đối xứng
Mật mã là một công cụ bao gồm các nguyên tắc, phương tiện và phương
thức chuyển đổi dữ liệu nhằm ấn dấu nội dung thông tin, củng cố tính xác thực của
thông tin, ngăn chặn sự thay đổi, tính từ chối, và việc sử dụng trái phép thông tin.
Đây là một trong các giải pháp được dùng để đảm bảo an toàn-bảo mật cho dữ liệu
của các hệ thống thông tin và truyền thông.
Hệ mật mã bất đối xứng hay còn có tên gọi là hệ mật mã mã hóa công khai

gồm có 5 thành phần đặc trưng [9]:
Trong đó:
1. Bản tin rõ: Là dạng nguyên bản của thông điệp cần truyền đi, nó được sử
dụng làm đầu vào cho các thuật toán mã hóa.
2. Thuật toán mã hóa: được dùng để tạo ra những phép biến đổi khác nhau
lên bản tin rõ trong từng trường hợp cụ thể.
3. Khóa công khai và khóa cá nhân: Là cặp khóa được sử dụng trong quá
trình truyền và nhận thông tin. Một khóa trong hai khóa được sử dụng
cho việc mã hóa, khóa còn lại được sử dụng cho việc giải mã bản tin. Cặp
khóa này mang giá trị độc lập đối với bản tin rõ và thuật toán mã hóa.
Thuật toán sẽ tạo ra các giá trị khác nhau phụ thuộc vào việc khoá công
khai hay khóa cá nhân nào được sử dụng làm đầu vào trong thời điểm
đấy. Khóa cá nhân phải được giữ bí mật với tất cả mọi người, trừ người
sở hữu nó, còn khóa công khai có thể được công bố rộng rãi.
4. Mã mật: là một bản tin được xuất ra bởi thuật toán mã hóa, nó phụ thuộc
vào bản tin rõ và khóa. Với cùng một bản tin rõ, 2 khóa khác nhau sẽ tạo
ra 2 bản mã mật khác nhau.

15


5. Thuật toán giải mã: Ngược với thuật toán mã hóa, nó dùng mã mật làm
đầu vào và sử dụng cặp khóa công khai/ khóa cá nhân để tạo ra bản tin rõ
ban đầu.
Trong phương pháp mã hóa bằng khóa công khai, cặp khoá công khai/khóa
cá nhân của một người mang tính chất duy nhất, vì thế có thể coi đó là đặc trưng
cho người sử dụng khóa. Nguyên tắc sử dụng cặp khóa này là:
− Bản tin được mã hóa bằng một trong hai khoá thì chỉ có thể được giải mã bằng
khóa còn lại trong cặp khóa đó.
− Không thể tìm ra được khóa giải mã nếu biết thuật toán và khóa mã hóa.

− Bản tin không thể được giải mã bằng khóa đã dùng để mã hóa nó.
Nhờ những nguyên tắc trên mà phương pháp mã hóa công khai trở nên rất
thích hợp trong việc sử dụng các chứng thư số và các dịch vụ chống phủ nhận.
Một đặc trưng của công nghệ mã hóa công khai đó là: đảm bảo được tính
mật và tính xác thực. Trong các hệ mật sử dụng mã hóa công khai, người ta có thể
áp dụng từng tính chất này hoặc kết hợp cả hai để đạt được hiệu quả an ninh tốt
nhất.
a. Mô hình đảm bảo tính mật [9]

Thám mã

X
Bản tin gốc

Thuật toán

X

Y

mã hóa

Thuật toán

Bản tin

giải mã

đích


Tạo cặp khóa

Hình 1.1 Sơ đồ nguyên lý hệ mã hóa khóa công khai đảm bảo tính mật

16


Giả sử bên A cần gửi một bản tin X cho B. B sẽ tạo ra một cặp khóa bất đối
xứng, trong đó: khóa công khai của B là PUb và khóa cá nhân tương ứng là PRb.
Chỉ mình B mới biết được PRb trong khi đó PUb được công khai, do đó A có thể sử
dụng được khóa này.
Sử dụng bản tin X và khóa công khai PUb làm đầu vào cho thuật toán giải
mã, A sẽ tạo ra một mã mật:
Y = E (PUb, X)
Khi nhận được Y, bên B sẽ sử dụng khoá riêng PRb để thực hiện việc giải mã
dữ liệu:
X = D (PRb, Y).
Một thám mã nếu bắt được bản tin mật Y và có được khóa công khai PUb
nhưng không có khóa cá nhân PRb thì sẽ không thể nào tìm ra được X. Thám mã
mong muốn sẽ khôi phục lại được bản tin gốc X hoặc là khóa cá nhân PRb. Nếu
thám mã chỉ muốn cố gắng để đọc được X tại một thời điểm cụ thể này thì chúng sẽ
tập trung vào khôi phục X bằng cách tạo ra các bản tin xấp xỉ . Tuy nhiên, thông
thường thì thám mã mong muốn có thể đọc được bản tin trong các lần sau đó nữa vì
thế chũng sẽ tạo ra các khóa cá nhân xấp xỉ

. Trong những trường hợp như thế

này thì độ mạnh của thuật toán mã hóa đóng vai trò hết sức quan trọng đối với việc
bảo vệ an toàn cho dữ liệu.
b. Mô hình đảm bảo tính xác thực [9]

Như đã nói ở trên, việc sử dụng cặp khóa bất đối xứng, một để mã hóa dữ liệu, một
để giải mã không những chỉ đảm bảo được tính mật cho hệ thống mà còn có thể
cung cấp cả tính năng xác thực như hình 1.2.
Trong trường hợp này, khi bên A muốn gửi một bản tin X đến B, A sẽ sử
dụng khóa cá nhân PRa của mình để mã hóa dữ liệu trước khi truyền. Mã mật Y = E
(PRa, X) sẽ được nhận bởi B. B có thể giải mã Y để thu được bản tin gốc bằng cách
sử dụng khóa công khai PUa của A: X = D (PUa, Y).

17


Thám mã

X
Bản tin gốc

Thuật toán

X

Y

mã hóa

Thuật toán

Bản tin

giải mã


đích

Tạo cặp khóa

Hình 1.2 Sơ đồ nguyên lý hệ mã hóa khóa công khai đảm bảo tính xác thực
Nếu giải mã thành công thì chứng tỏ bản tin này đã được gửi đi bởi A vì chỉ
A mới có khóa cá nhân PRa để mã hóa bản tin. Việc mã hóa dữ liệu kiểu này vì thế
có thể coi như là một chữ kí điện tử. Nó không những chỉ đảm bảo cho việc xác
thực nguồn gốc của dữ liệu mà còn đảm bảo được cả tính toàn vẹn của dữ liệu.
Thám mã mong muốn sẽ khôi phục được khóa cá nhân PRa để có thể giả
mạo nội dung bản tin gốc hoặc giả danh A trong giao dịch.
Từ hai sơ đồ trên, chúng ta thấy Vấn đề bảo vệ bí mật an toàn khóa cá nhân
của chủ sở hữu là điểm mấu chốt của hệ thống khóa công khai.
Đánh giá công nghệ mã hóa công khai
Ưu điểm
− Khóa cá nhân không phải truyền tới người nhận nên không sợ khả năng bị
đánh cắp khi truyền.
− Số lượng khóa công khai cần phải phân phối bằng với số lượng người tham
gia truyền tin do đó giúp hệ thống có thể mở rộng được trong phạm vi lớn,
đồng thời tránh được những vấn đề phức tạp trong việc phân phối khóa cho
các bên tham gia.
− Thời hạn sử dụng cặp khóa dài hơn so với hệ mật mã khóa đối xứng.
18


− Hỗ trợ công nghệ chữ kí điện tử và chống phủ nhận.
Nhược điểm
− Thuật toán phức tạp nên tốc độ mã hóa chậm, đối với những dữ liệu lớn thời
gian mã hóa hóa công khai có thể chậm hơn mã hóa đối xứng.
− Mã hóa công khai làm tăng kích thước của mã mật trong trường hợp cần xác

thực bản tin.
1.1.2 Cơ sở hạ tầng khóa công khai
Trong quá trình nghiên cứu và phát triển hệ mã hóa công khai người ta gặp
phải một số vấn đề sau :
− Cơ quan, tổ chức hay cá nhân nào sẽ tạo ra cặp khoá công khai – cá nhân ?
− Dữ liệu (khoá, định danh người dùng, các thông tin khác) được lưu dưới định
dạng nào trong hệ thống lưu trữ ?
− Có cơ chế nào để sinh và phân phối khoá và chứng thư số ?
− Làm thế nào để đảm bảo việc gắn kết giữa khoá công khai và định danh của thực
thể có khoá đó là chính xác và đáng tin cậy ?
− Làm thế nào để người dùng có thể truy cập được đến nơi lưu trữ ?
− Làm thế nào để người dùng nhận biết được có sự thay đổi trong dữ liệu đang
được lưu trên hệ thống lưu trữ ?
− Vấn đề gì sẽ xảy ra đối với khoá công khai nếu khoá bí mật bị xâm hại ?
Để trả lời cho những câu hỏi, nếu chỉ đơn thuần sử dụng mã hoá khoá công
khai, là chưa đủ. Cần phải có một hạ tầng cơ sở xác thực và phân phối đáng tin cậy
để quản lý và hỗ trợ cho những ứng dụng của mật mã khoá công khai trên mạng
máy tính, nhằm tận dụng được những ưu điểm vượt trội mà mật mã khoá công khai
đem lại. Giải pháp được sử dụng ở đây là cơ sở hạ tầng khoá công khai – PKI
(Public Key Infrastructure)
Cơ sở hạ tầng khoá công khai PKI là một tập hợp phần cứng và phần mềm
hệ thống, cùng với các chính sách, các thủ tục để quản lý và phân phối khóa, quản

19


lý, cấp phát các chứng thư số (digital certificate) và chứng thực các chứng thư số
[2,6].
1.2 Các thành phần của PKI


Hình 1.3 Các thành phần của PKI
Các thành phần của PKI gồm [6]:
-

Nhà phát hành chứng thư số gọi tắt là CA (Certificate Authority): chịu trách
nhiệm xác thực chứng thư số.

-

Cơ quan đăng kí chứng thực – RA (Registration Authority): là đối tượng được
CA ủy quyền để chứng nhận những thông tin đăng kí cấp phát chứng thư.

-

Thực thể đầu cuối (End –Entity) là tất cả những thực thể có thể được định danh
và cấp chứng thư số để sử dụng.

-

Chứng thư số (Certificate): văn bản điện tử do CA kí chứng thực các thông tin
của thực thể đầu cuối, bao gồm cả khóa công khai của thực thể đó.

-

Kho chứa chứng thư số: làm nhiệm vụ lưu trữ các chứng thư để các thực thể đầu
cuối có thể lấy được.
20


1.2.1 Nhà phát hành chứng thư số CA

Trung tâm phát hành chứng thư số gọi tắt là CA (Certificate Authority) là hạt
nhân của hệ thống PKI. Chỉ có CA mới có quyền phát hành chứng thư số cho một
đối tượng sau khi kiểm tra những thông tin về đối tượng đó. Trong hệ thống PKI,
CA đóng vai trò là một bên thứ ba mà các ứng dụng sử dụng chứng thư số trong hệ
thống phải tin tưởng. Muốn kiểm tra chữ kí của CA trên chứng thư số, hệ thống sử
dụng khoá công khai của nhà phát hành CA được CA tự chứng thực hoặc được
chứng thực bởi một CA khác mà hệ thống tin tưởng. Mỗi chứng thư số có một thời
gian sống nhất định. Sau khoảng thời gian này chứng thư số cần được thu hồi và
cấp phát mới cho đối tượng sử dụng. Mặt khác do một điều kiện nào đó việc sử
dụng chứng thư số là không còn hợp lệ ví dụ như khoá bí mật của chủ thể chứng thư
số bị tiết lộ; chứng thư số cần được thu hồi. Nhà phát hành chứng thư số cần quản
lý trạng thái thu hồi của chứng thư số để chương trình sử dụng đầu cuối sử dụng
chứng thư số một cách an toàn. Như vậy CA không những quản lý chứng thư số khi
nó được khởi tạo mà CA còn phải quản lý cả chứng thư số trong quá trình sử dụng.
Các chức năng của CA
-

Xác thực yêu cầu cấp phát chứng thư số. Đây là quá trình kiểm tra thông

tin định danh, cũng như cặp khoá mã hoá của đối tượng yêu cầu cấp phát chứng thư
số. Quy trình diễn ra tuỳ thuộc hệ thống mà ta xây dựng. Việc xác minh này có thể
được thực hiện gián tiếp thông qua một bên trung gian, như các trung tâm đăng kí
địa phương, hoặc xác minh trực tiếp thông qua tiếp xúc trực tiếp.
-

Phát hành chứng thư số. Sau khi xác minh thông tin định danh, khoá mã

hoá của đối tượng yêu cầu chứng thư số, hoặc nhận được yêu cầu từ một RA, CA
tiến hành cấp phát chứng thư số cho đối tượng.
-


Phân phối chứng thư số. Nhà phát hành chứng thư số còn cung cấp các dịch

vụ để các hệ thống sử dụng chứng thư số truy cập và lấy về các chứng thư số mà nó
cần. Các dịch vụ này rất đa dạng nhưng sử dụng phổ biến nhất là dịch vụ email và
dịch vụ thư mục LDAP.

21


-

Thu hồi chứng thư số. Khi một chứng thư số được yêu cầu huỷ bỏ, hoặc do

một nguyên nhân nào đó mà việc sử dụng chứng thư số không còn an toàn, thì CA
phải thu hồi chứng thư số đó và phải thông báo cho toàn bộ hệ thống biết danh sách
các chứng thư số bị thu hồi cho toàn hệ thống thông qua các CRL (Certificate
Revocation List ).
-

Treo chứng thư số. Trong trường hợp CA phát hiện ra các dấu hiệu khả nghi

việc sử dụng chứng thư số là không còn an toàn nữa thì CA sẽ phải treo chứng thư
số, tức là chứng thư số đó bị thu hồi tạm thời, nhưng nếu CA tìm được thông tin
chứng minh rằng việc sử dụng chứng thư số vẫn đảm bảo an toàn thì chứng thư số
sẽ được thay đổi lại trạng thái bị thu hồi.
-

Gia hạn chứng thư số. Trong trường hợp chứng thư số hết thời hạn sử dụng,


nhưng chứng thư số vẫn đảm bảo tính bí mật khi sử dụng, thì nó có thể được cấp
lại( tùy thuộc vào yêu cầu của chủ thể chứng thư số). Tức là gia hạn thêm thời gian
sử dụng cho chứng thư số. Chứng thư số được cấp mới không có gì thay đổi, ngoại
trừ trường thời gian hết hạn được thay, tất nhiên là kéo theo cả chữ kí của nhà phát
hành chứng thư số cũng thay đổi.
-

Quản lý trạng thái chứng thư số. Thông qua các CRL không những giúp

cho các nhà phát hành chứng thư số quảng bá thông tin về những chứng thư số bị
thu hồi mà còn giúp cho CA quản lý trạng thái thu hồi của chứng thư số. Việc quản
lý trạng thái thu hồi này là rất quan trọng. Vì nếu các ứng dụng đầu cuối sử dụng
những chứng thư số bị thu hồi thì hệ thống không còn an toàn nữa.
1.2.2 Cơ quan đăng kí chứng thực RA
Trong các hệ thống với phạm vi vật lý rộng lớn, việc CA chứng nhận thông
tin định danh của đối tượng là rất khó khăn. Một giải pháp cho vấn đề này là CA sử
dụng các cơ quan đăng kí địa phương - RA làm đại diện cho CA trong một cộng
đồng nhỏ. Các RA không trực tiếp phát hành chứng thư số, hay quản lý chứng thư
số mà nó chỉ thực hiện công việc xác nhận những thông tin người dùng cho CA.

22


Đồng thời RA cũng có thể thay mặt người sử dụng yêu cầu CA phát hành, thu hồi,
thay đổi thông tin trên chứng thư số.
Các chức năng của RA gồm có:
-

Nhận các yêu cầu cấp phát chứng thư số từ phía người dùng, chứng nhận các


thông tin trên yêu cầu đó.
-

Gửi yêu cầu phát hành chứng thư số đến CA. Nhận các chứng thư số từ CA

và trao nó cho chủ thể chứng thư số.
-

Nhận yêu cầu thu hồi chứng thư số từ phía người dùng, kiểm tra yêu cầu thu

hồi và gửi những yêu cầu này cho CA.
1.2.3 Thực thể đầu cuối
Là đối tượng được CA cấp phát chứng thư số để chứng nhận những thông tin
định danh về đối tượng, đồng thời còn chứng minh rằng đối tượng sở hữu một khoá
bí mật tương ứng khoá công khai trong chứng thư số.
Trong vai trò chủ thể của chứng thư số mỗi đối tượng có những quyền sau
trong hệ thống.
-

Yêu cầu cấp phát chứng thư số. Sau khi tạo được cặp khóa công khai/bí

mật, đối tượng yêu cầu chứng thư số có quyền yêu cầu một trung gian RA , hoặc
yêu cầu trực tiếp với CA để được cấp phát chứng thư số. Sau khi xác thực những
thông tin mà đối tượng yêu cầu chứng thư số cung cấp, nhà phát hành chứng thư số
CA có thể kí, cung cấp một chứng thư số mới cho đối tượng yêu cầu chứng thư số.
-

Yêu cầu thu hồi chứng thư số. Khi đối tượng sử dụng chứng thư số không

cần chứng thư số nữa, hoặc lộ mất khóa bí mật, chủ thể chứng thư số hoàn toàn có

quyền yêu cầu hệ thống thu hồi chứng thư số của chính nó.
-

Yêu cầu thay đổi thông tin trên chứng thư số. Tức là thay chứng thư số cũ

bằng chứng thư số mới nhưng giữ nguyên các trường thông tin, chỉ thay đổi những
trường thông tin theo yêu cầu của chủ thể chứng thư số.

23


1.2.4 Cấu trúc chứng thư số

Hình 1.4 Cấu trúc của một chứng thư số
Các chứng thư số hiện nay được xây dựng theo chuẩn X.509, bao gồm
những trường thông tin chính sau:
1. Phiên bản: phiên bản của chứng thư số, ví dụ: X.509 v1, v2 hoặc v3.
2. Số serial: một số duy nhất (ID) để nhận dạng chứng thư số này so với những
chứng thư số khác của CA.
24


3. Chữ kí: số nhận dạng (ID) của các thuật toán đã dùng để tạo chữ kí số lên chứng
thư số, cùng các tham số được sử dụng trong các thuật toán đó.
4. Người phát hành (Issuer): Tên phân biệt của CA đã phát hành chứng thư số này
(bao gồm các thông tin như: Tên nước, tên thành phố, tên địa phương, tên tổ
chức, tên đơn vị, tên thường gọi, địa chỉ email …). Trường này luôn phải có.
5. Hiệu lực (Validity): Khoảng thời gian có hiệu lực của chứng thư số.
6. Chủ thể (Subject): Tên phân biệt của người sở hữu chứng thư số. Trường này
không được để trống trừ khi có một trường khác như trường Mở rộng

(Extension) thay thế.
7. Thông tin về khóa công khai của chủ thể (Subject Public Key Info): khoá công
khai của chủ thể và ID của các thuật toán mã hóa đã sử dụng. Trường này luôn
phải có.
8. Số ID của người phát hành (Issuer Unique ID): chỉ có ở phiên bản 2 và 3.
9. Số ID của chủ thể (Subject Unique ID): chỉ có ở phiên bản 2 và 3.
10. Trường mở rộng: chỉ có ở phiên bản 3.
11. Chữ kí số của CA lên chứng thư số.
1.2.5 Kho chứng thư số
Các chứng thư số, các bản CRL và các thông tin liên quan đến chúng cần
được lưu trữ công khai để các chương trình sử dụng chứng thư số truy cập và lấy về
những thông tin cần thiết. Như vậy kho chứa chứng thư số cũng là một thành phần
trong hệ thống PKI. Kho chứa chứng thư số còn đảm bảo những thông tin được lưu
trữ trên nó là hoàn toàn chính xác và tính nhất quán(ví dụ như đảm bảo CRL phát
hành đúng hạn). Chữ kí trong CRL thường chính là của thực thể đã kí và phát hành
các chứng thư số trong CRL này.
Trong chuẩn X.500, kho lưu trữ này là một thư mục máy chủ mà máy khách
có thể truy cập qua giao thức LDAP (Lightweight Directory Access Protocol), hoặc
lấy file trên máy chủ qua giao thức FTP (File Transfer Protocol), giao thức HTTP
(Hyper Text Transfer Protocol).

25


×