BỘ THÔNG TIN VÀ TRUYỀN THÔNG
HỌC VIỆN CÔNG NGHỆ BƯU CHÍNH VIỄN THƠNG
¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯¯
ĐỒ ÁN TỐT NGHIỆP
TÌM HIỂU VÀ TRIỂN KHAI HỆ THỐNG PKI
SỬ DỤNG OPENCA
Sinh viên thực hiện:
Nguyễn Hoàng Long
Người hướng dẫn:
Hà Nội, 2022
MỤC LỤC
2
DANH MỤC KÍ HIỆU VÀ VIẾT TẮT
Từ viết tắt
ABI
Tiếng Anh
Application Binary Interface
AC
AES
Attribute Certificate
Advanced Encryption
Standard
Application Programming
Interface
American Standard Code for
Information Interchange
Automated Teller Machine
Certificate Authority
Cipher Block Chaining
API
ASCII
ATM
CA
CBC
CDP
CFB
CMS
CN
CPS
CRCs
CRL
CRT
DBMS
DES
DN
DNS
DSA
DTLS
EAL
EAPI
ECB
ECDSA
FTP
Tiếng Việt
Giao diện nhị phân ứng
dụng
Chứng thư thuộc tính
Chuẩn mã hóa tiên tiến
Giao diện lập trình ứng
dụng
Chuẩn mã trao đổi thông tin
Hoa Kỳ
Máy rút tiền tự động
Cơ quan chứng thực
Chế độ xích liên kết khối
mã
Customer Data Platform
Nền tảng dữ liệu khách hàng
Cipher Feedback Mode
Chế độ mã liên kết ngược
Content Management System Hệ thống quản trị nội dung
Common Name
Tên chung
Hướng dẫn sử dụng chứng
Certificate Pratice Statement
thư
Cyclic Redundancy Codes
Mã kiểm tra dịch vòng
Certificate Revocation Lists
Danh sách hủy bỏ chứng thư
Certificate Revocation Trees
Cây thu hồi chứng thư
Hệ thống quản trị cơ sở dữ
Database Management System
liệu
Data Encryption Standard
Chuẩn mã hóa dữ liệu
Distinguished Name
Tên riêng biệt
Domain Name System
Hệ thống phân giải tên miền
Digital Signature Algorithm
Thuật toán chữ ký số
Datagram Transport Layer
Bảo mật tầng vận chuyển
Security
dựa trên Datagram
Evaluation Assurance Level
Cấp bảo đảm đánh giá
Extended Application
Giao diện lập trình ứng
Programming Interface
dụng mở rộng
Electronic Code Book
Chế độ sách mã điện tử
Elliptic Curve Digital
Thuật toán chữ ký số dựa
Signature Algorithm
trên đường cong Elliptic
File Transfer Protocol
Giao thức vận chuyển thư
3
GUI
Graphical User Interface
HSM
Hash-Based Message
Authentication Code
Hardware Security Module
HTTP
HyperText Transfer Protocol
ID
IDEA
Identification
International Data Encryption
Algorithm
Internet Message Access
Protocol
International
Telecommunication Union
Lightweight Directory Access
Protocol
Message Authentication Code
National Center for
Supercomputing Applications
Online Certificate Status
Protocol
Output Feedback Mode
HMAC
IMAP
ITU
LDAP
MAC
NCSA
OCSP
OFB
OU
PEM
PIN
PKCS
Organisation Unit
Privacy-Enhanced Mail
Personal Identification
Number
Public Key Cryptography
Standards
PKI
Public Key Infracstructure
POP
RA
RSA
Post Office Protocol
Registration Authority
Ron Rivest, Adi Shamir và
Leonard Adleman
Secure Multipurpose Internet
Mail Extensions
Simple Certificate Enrollment
S/MIME
SCEP
4
mục
Giao diện đồ họa người
dùng
Mã xác thực thông báo dựa
trên hàm băm
Mô-đun bảo mật phần cứng
Giao thức truyền tải siêu
văn bản
Mã định danh
Thuật tốn mã hóa dữ liệu
quốc tế
Giao thức truy cập tin nhắn
Internet
Liên minh viễn thông quốc
tế
Giao thức truy cập thư mục
hạng nhẹ
Mã xác thực thơng báo
Ứng dụng siêu máy tính
quốc gia
Giao thức trạng thái chứng
thư trực tuyến
Chế độ đầu ra liên kết
ngược
Đơn vị tổ chức
Thư tăng cường bảo mật
Số định danh cá nhân
Chuẩn mật mã khóa cơng
khai
Cơ sở hạ tầng khóa cơng
khai
Giao thức bưu điện
Cơ quan đăng ký
Tiện ích mở rộng thư điện tử
an toàn, đa năng
Giao thức đăng ký chứng
Protocol
SHA
Secure Hash Algorithm
SMTP
Simple Mail Transfer Protocol
SPKC
Simple Public Key Certificate
SSL
TLS
URL
Secure Sockets Layer
Transport Layer Security
Uniform Resource Locator
VPN
Virtual Private Network
5
thư đơn giản
Thuật toán hàm băm bảo
mật
Giao thức vận chuyển thư
đơn giản
Chứng thư khóa công khai
đơn giản
Lớp cổng bảo mật
Bảo mật tầng vận chuyển
Định vị tài nguyên thống
nhất
Mạng riêng ảo
DANH MỤC HÌNH VẼ
Hình 2.1. Cơ sở dữ liệu phân tán
Hình 2.2. Thiết kế OpenCA
Hình 2.3. Kiến trúc mod_ssl
Hình 2.4. Kiến trúc hiện tại của OpenSSL
Hình 2.5. Cấu trúc gói hiện tại của OpenSSL
6
LỜI NĨI ĐẦU
Ngày nay với sự phát triển của cơng nghệ thông tin và mạng Internet, con
người ngày càng sử dụng các giao dịch điện tử nhiều hơn. Cùng với sự khuyến
khích mọi người dùng các giao dịch điện tử, Chính phủ cũng ngày càng phát
triển, tiếp cận với các khoa học kỹ thuật, khi mà các cơ quan Nhà nước cũng sử
dụng các chế độ một cửa quốc gia, các bệnh viên bắt đầu sử dụng thanh tốn
khơng dùng tiền mặt,… thì việc bảo mật và xác thực các giao dịch điện tử càng
trở nên cần thiết.
Như chúng ta đã biết, việc thiết lập sự tin cậy đối với giao dịch điện tử
không đơn giản như với các giao dịch vật lý, vì các đối tượng giao dịch bị che
giấu, cũng như các phương thức nhận dạng và bảo mật cịn khó khăn. Để thực
hiện giao dịch điện tử an tồn, thì các đối tượng cần phải biết chắc chắn về
danh tính của nhau, thơng tin trao đổi là an toàn qua mạng,… PKI sẽ giúp
chúng ta giải quyết những vấn đề cơ bản về sự tin cậy, xác thực và bảo mật trên
mạng.
Tuy nhiên, PKI cịn có nhiều thiếu sót về mặt ứng dụng và quản lý chứng
thư, chi phí cũng là một vấn đề đáng lo ngại. Trước kia hầu hết các phần mềm
PKI có sẵn phải thanh tốn cho giấy phép phần mềm và chi phí cho mỗi chứng
thư, nên nhiều tổ chức không thể triển khai được PKI. Sau này dù sức mạnh máy
tính ngày càng tăng, chi phí cũng giảm dần nhưng vẫn thiếu một phần mềm mã
nguồn mở để phát triển các ứng dụng liên quan đến chứng thư số và triển khai
người dùng làm quen với chứng thư số. Khi đó, dự án OpenCA được bắt đầu.
Đây là một dự án “nỗ lực hợp tác nhằm phát triển một Cơ quan chứng nhận
dùng ngay được, mạnh mẽ, đầy đủ tính năng và mã nguồn mở thực hiện các giao
thức với mật mã mạnh được sử dụng nhiều nhất trên toàn thế giới”.
Đồ án có cấu trúc như sau:
Chương 1: Cơ sở hạ tầng khóa cơng khai
Tìm hiểu chung về PKI, các thành phần cùng các hoạt động của PKI để
thực hiện các chức năng của nó. Cùng với đó ta cũng tìm hiểu về một số kiến
trúc PKI như kiến trúc CA đơn, kiến trúc PKI doanh nghiệp, kiến trúc PKI kết
hợp. Ngồi ra, ta cũng tìm hiểu về các chức năng của Cơ quan chứng thực.
Chương 2: Phần mềm mã nguồn mở OpenCA
Tìm hiểu về phần mềm mã nguồn mở OpenCA, thiết kế chung cũng như
các giao diện mà OpenCA hỗ trợ. Cùng với đó ta tìm hiểu về các phần mềm mã
7
nguồn mở hỗ trợ OpenCA như Apache, mod_ssl, OpenSSL, OpenLDAP, module
Perl. Đồng thời cũng chỉ ra một số lưu ý khi thiết kế PKI sử dụng OpenCA.
Chương 3: Triển khai hệ thống PKI sử dụng OpenCA
Xây dựng mơ hình hệ thống PKI và triển khai cài đặt mơ hình sử dụng
OpenCA. Triển khai một mơ hình hệ thống PKI gồm 2 cấp là RootCA và
SubCA, cài đặt OCSP Responder, thực hiện cấp chứng thư cho Web Server,
kiểm tra trạng thái chứng thư thông qua giao diện Web và OCSP.
Cuối cùng là phần kết luận, tóm lược lại những kết quả đã đạt được và đề
xuất hướng phát triển.
8
1.
CƠ SỞ HẠ TẦNG KHĨA CƠNG KHAI
a) Giới thiệu chung về PKI
Mật mã khóa cơng khai cung cấp các cơng cụ có tính năng an tồn như chữ
ký số và phân phối khóa. Việc mở rộng sử dụng cơng nghệ khóa cơng khai cho
phép tạo ra tập các dịch vụ, giao diện lập trình, cơng cụ quản trị, ứng dụng phía
người dùng, hình thành một cơ sở hạ tầng khóa công khai (PKI - Public Key
Infrastructure).
1.a.1. Khái niệm PKI
Như ta đã biết, sự tin cậy là nền tảng của tất cả các giao tiếp. Trong thực
tế, có hai loại giao tiếp là giao tiếp vật lý và giao tiếp điện tử. Đối với giao tiếp
vật lý, người ta xác định đối tượng hoặc người khác bằng cách tương tác trực
tiếp hoặc một số dấu hiệu nhận dạng như chữ ký, dấu cơng chứng, tiêu đề thư,…
Từ đó việc thiết lập sự tin cậy trong giao tiếp vật lý tương đối dễ. Cịn đối với
giao tiếp điện tử thì việc thiết lập sự tin cậy là khó khăn hơn. Bởi vì danh tính
đối tượng khác bị che giấu, khơng có các phương thức nhận dạng và bảo mật
trong giao tiếp phi điện tử hoặc vật lý. Để thiết lập sự tin cậy thì cả 2 đối tượng
chắc chắn về danh tính của nhau, thông tin trao đổi qua mạng phải an tồn trước
mọi sự giả mạo. Trước các khó khăn trên, PKI có thể giải quyết các vấn đề cơ
bản về sự tin cậy, xác thực và bảo mật trên mạng. Từ đó sẽ mang lại sự an tồn
và tin cậy cho các giao tiếp và giao dịch điện tử.
Những điều cần thiết cho các trao đổi điện tử đáng tin cậy và an toàn là
các chức năng bảo mật cốt lõi: tính bí mật, tính xác thực, tính tồn vẹn và chống
chối bỏ cùng với các chính sách xác định quy tắc để thực thi các hệ thống mật
mã, các cơ chế quản lý, lưu trữ và tạo khóa. Cùng với đó là hướng dẫn quản lý,
lưu trữ, phân phối và tạo khóa, chứng thư. Cấu trúc hạ tầng PKI cùng các tiêu
chuẩn và các 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 có thể sử dụng để giải quyết vấn đề này.
• Khả năng bảo mật (Secure): Đạt tiêu chuẩn quốc tế về bảo mật EAL4+,
•
•
đáp ứng hầu hết các thiết bị HSM và Smartcard.
Khả năng mở rộng (Scalable): Dựa trên kiến trúc PKI hiện đại, được thiết
kế theo mơ hình có độ sẵn sàng cao, có khả năng mở rộng để cấp phát số
lượng lớn chứng thư số một cách dễ dàng.
Khả năng sẵn sàng (Available): Tất cả chính sách, log, dữ liệu về chứng
thư số và CRL được lưu trữ trên cơ sở dữ liệu tin cậy và bảo mật, ví dụ
9
•
•
•
như Oracle, hệ cơ sở dữ liệu lớn nhất và đáng tin cậy nhất trên thế giới.
Khả năng mở, tương thích (Open): Được thiết kế để tuân thủ các tiêu
chuẩn mở quốc tế như X509, PKIX, LDAP...
Khả năng kiểm soát bằng chính sách (Policy Driven): Hệ thống có khả
năng áp dụng các chính sách khác nhau với việc đăng ký các loại chứng
thư số khác nhau.
Khả năng linh động (Flexible): Có thể hỗ trợ nhiều phương thức đăng ký
chứng thư số khác nhau: Web, Email, Face-to-face, CMP, SCEP...
Trong mật mã học, cơ sở hạ tầng khóa cơng khai 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 cũng cho
phép gán cho mỗi người sử dụng trong hệ thống một cặp khóa cơng khai và
khóa bí mật. Các q 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ư khóa cơng khai.
Khái niệm cơ sở hạ tầng khóa cơng khai thường được dùng để chỉ tồn bộ
hệ thống bao gồm nhà cung cấp chứng thực số (Certificate Authority) cùng các
cơ chế liên quan đồng thời với toàn bộ việc sử dụng các thuật tốn mã hóa khóa
cơng khai trong trao đổi thông tin.
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 thư
số cũng như các khố cơng khai và khóa riêng.
Tới nay, những nỗ lực hoàn thiện PKI vẫn đang được đầu tư và thúc đẩy.
Và để hiện thực hoá ý tưởng này, các tiêu chuẩn cần phải được nghiên cứu phát
triển ở các mức độ khác nhau bao gồm: mã hố, truyền thơng và liên kết, xác
thực, cấp phép và quản lý. Nhiều chuẩn bảo mật trên mạng Internet, chẳng hạn
Secure Sockets Layer/Transport Layer Security (SSL/TLS) và Virtual Private
Network (VPN), chính là kết quả của PKI.
Quá trình nghiên cứu và phát triển PKI là một q trình lâu dài và cùng
với nó, mức độ chấp nhận của người dùng cũng tăng lên một cách khá chậm
chạp. PKI có thể đảm bảo một cơ chế bảo mật và tổng hợp để lưu trữ và chia
sẻ các tài sản trí tuệ cả trong và ngồi phạm vi cơng ty. Tuy nhiên, chi phí và
sự phức tạp của nó có thể gây ra những rào cản nhất định đối với khả năng
ứng dụng.
10
PKI là cơng nghệ xác thực đầu tiên và hồn thiện nhất sử dụng phương
pháp mã hoá dựa trên khoá bí mật và khố cơng khai. Tuy nhiên, PKI cũng bao
gồm cả việc ứng dụng rộng rãi các dịch vụ bảo mật khác, bao gồm dịch vụ dữ
liệu tin cậy, thống nhất dữ liệu về tổng thể và quản lý mã khố.
1.a.2. Các khái niệm có liên quan trong PKI
a) Chứng thư số
Chứng thư số là một tài liệu sử dụng chữ ký số kết hợp khố cơng khai
với một định danh thực thể (như cá nhân, tổ chức, máy chủ, dịch vụ, …).
Chứng thư số không chứa bất kỳ một thơng tin bí mật nào. Về cơ bản,
chứng thư chứa những thơng tin cần thiết như khố cơng khai, chủ thể (người sở
hữu) , bên cấp chứng thư và một số thơng tin khác. Tính hợp lệ của các thông tin
được đảm bảo bằng chữ ký số của bên cấp chứng thư. Người dùng muốn sử
dụng chứng thư trước hết sẽ kiểm tra chữ ký số trong chứng thư. Nếu chữ ký đó
hợp lệ thì có thể sử dụng chứng thư đó.
Có nhiều loại chứng thư, một trong số đó là:
• Chứng thư khố cơng khai X.509
• Chứng thư khố cơng khai đơn giản (Simple Public Key Certificate
-SPKC)
• Chứng thư Pretty Good Privacy (PGP)
• Chứng thư thuộc tính (Attribute Certificate -AC)
Tất cả các loại chứng thư này đều có cấu trúc dạng riêng biệt. Hiện nay
chứng thư khố cơng khai X.509 được sử dụng phổ biến trong hầu hết các hệ
thống PKI. Chứng thư X.509 được Hiệp hội viễn thông quốc tế (ITU) đưa ra lần
đầu tiên năm 1998. Chứng thư này 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 thư, phần thứ hai là phần chứa một số các
trường phụ, hay còn gọi là trường mở rộng. Các trường mở rộng thường được
dùng để xác định và đáp ứng những yêu cầu bổ sung của hệ thống.
11
Hình 1.1. Cấu trúc chứng thư X.509 v3
Cấu trúc chứng thư X.509 v3 như hình trên:
• Certificate Version: Mơ tả phiên bản của chứng thư.
• Certificate Serial Number: Số serial của chứng thư, là số nguyên duy
nhất mà CA liên kết với chứng thư.
• CA’s Signature Algorithm ID: Xác định thuật tốn CA sử dụng để ký
chứng thư.
• CA’s X.500 Name: Xác định CA đã ký và cấp chứng thư.
• Validity Period: Chứa ngày bắt đầu và kết thúc thời hạn có hiệu lực
của chứng thư.
• Subject’s X.500 Name : Xác định tên chủ thể mà khóa bí mật được
cấp, khóa bí mật này được liên kết với khóa cơng khai của chủ thể.
• Subject Public Key Information: Chứa khóa công khai của chủ thể
cùng mã định danh của thuật tốn sinh khóa đó.
• Subject Unique Identifier: Tương tự như định danh duy nhất của người
phát hành, trường này đảm bảo tính duy nhất của đối tượng sở hữu
chứng thư.
12
• Issuer Unique Identifier: Trường này chứa ID duy nhất của chủ thể cấp
phát chứng thư. Trường này đảm bảo mã định danh là duy nhất của
CA cấp phát và không xác định được các CA khác.
Các trường này cung cấp các thông tin yêu cầu của một chứng thư và chủ
thể mà chứng thư được cấp.
b) Kho chứng thư
Chứng thư được cấp bởi CA kết hợp một khóa cơng khai với nhận dạng
của thực thể B. Tuy nhiên nếu thực thể A khơng có khả năng xác định vị trí
chứng thư này một cách dễ dàng thì việc sử dụng chứng thư khơng có hiệu quả.
Do đó, phải có một kho chứng thư trực tuyến (online repositories), quy
mô lớn, linh hoạt và phải được đặt ở vị trí mà A có thể xác định vị trí chứng thư
mà anh ta cần để truyền thơng an tồn.
Vì vậy, một PKI quy mơ lớn sẽ trở lên vơ ích nếu khơng có kho chứng thư.
c) Thu hồi chứng thư
Trong một số trường hợp như khóa bị xâm hại, hoặc người sở hữu chứng
thư thay đổi vị trí, cơ quan … thì chứng thư đã được cấp khơng có hiệu lực. Do
đó, cần phải có một cơ chế cho phép người sử dụng chứng thư kiểm tra được
trạng thái thu hồi chứng thư. X.509 cho phép kiểm tra chứng thư trong các
trường hợp sau:
• Chứng thư khơng bị thu hồi
• Chứng thư đã bị CA cấp thu hồi
• Chứng thư do một tổ chức có thẩm quyền mà CA ủy thác có trách
nhiệm thu hồi chứng thư.
d) Công bố và gửi thông báo thu hồi chứng thư
Danh sách thu hồi chứng thư số bao gồm các chứng thư đã hết hạn hoặc
đã bị thu hồi. Tất cả các xác thực đều có thời hạn. Đây là một quy định mang
tính thiết kế, tuy nhiên trước đây, rất khó thực hiện quy định này bởi việc gia
hạn chứng thư thường phải được thông báo tới tất cả người dùng sử dụng chứng
thư đó. Tính năng này bảo đảm rằng các chứng thư hết hạn sẽ được gia hạn tự
động khi đến thời hạn.
Với một số lý do nhất định cần thiết phải huỷ bỏ chứng thư chứ không chỉ
đơn thuần là làm cho nó hết hạn. Cơng việc này có thể được thực hiện thông qua
cơ chế danh sách thu hồi chứng thư tự động. Các chủ thể có thẩm quyền cấp
phép chứng thực (CA) thông thường sẽ làm công việc gửi các danh sách này tới
13
người dùng, tuy nhiên họ cũng có thể uỷ nhiệm cho một bộ phận khác.
Thông thường chứng thư sẽ hợp lệ trong khoảng thời gian có hiệu lực.
Nhưng trong một số trường hợp chứng thư lại không hợp lệ trước thời gian hết
hạn, ví dụ như:
• Khóa riêng của chủ thể bị xâm phạm
• Thơng tin chứa trong chứng thư bị thay đổi
• Khóa riêng của CA cấp chứng thư bị xâm phạm
Trong những trường hợp này cần có một cơ chế để thông báo đến những
người sử dụng khác. Một trong những phương pháp để thông báo đến người sử
dụng về trạng thái của chứng thư là công bố danh sách thu hồi chứng thư (CRL)
định kỳ hoặc khi cần thiết. Ngồi ra, có một số cách lựa chọn khác để thông báo
đến người sử dụng như dùng giao thức trạng thái chứng thư trực tuyến.
CRL (Certificate Revocation Lists) là cấu trúc dữ liệu được ký như chứng
thư người sử dụng. CRL chứa danh sách các chứng thư đã bị thu hồi và những
thông tin cần thiết khác của người sử dụng. CRL thường do một CA cấp. Tuy
nhiên CRL cũng có thể được sử dụng để cung cấp thơng tin cho nhiều CA nếu
nó được định nghĩa như một CRL gián tiếp.
e) Sao lưu và phục hồi khóa
Trong bất kỳ một môi trường PKI đang hoạt động, khả năng làm mất hoặc
sai các khoá riêng của người dùng là rất lớn, do đó cần phải có một cơ chế lưu
trữ sao lưu và phục hồi khoá. Trên thực tế, nếu khơng có khố riêng thì việc khơi
phục tài liệu là khơng thể được. Ngun nhân có thể là do:
• Qn mật khẩu: Khố riêng của người dùng vẫn cịn về mặt vật lý
nhưng khơng thể truy cập được.
• Phương tiện bị hỏng hóc: Ví dụ như đĩa cứng bị hỏng hoặc thẻ thơng
minh bị gãy.
• Phương tiện bị thay thế: Hệ điều hành được tải lại (ghi đè lên các giấy
tờ uỷ nhiệm cục bộ) hoặc một phiên bản máy tính cũ hơn được thay
thế bằng một phiên bản mới hơn và các giấy tờ uỷ nhiệm không được
chuyển trước khi đĩa cũ bị format.
Giải pháp đưa ra là thực hiện việc sao lưu và phục hồi khóa riêng. Việc
sao lưu và dự phịng khóa là cần thiết, nó tạo nên một phần mở rộng trong định
nghĩa PKI.
14
f) Cập nhật khóa tự động
Một chứng thư chỉ có hiệu lực trong một thời gian hữu hạn. Khi chứng
thư bị hết hạn sẽ được thay thế bằng một chứng thư mới. Thủ tục này được gọi
là cập nhật khoá hay cập nhật chứng thư. Vấn đề đặt ra là người dùng PKI sẽ
thường cảm thấy bất tiện khi phải cập nhật khố thủ cơng và thơng thường thì họ
sẽ không nhớ thời hạn hết hạn của chứng thư hoặc thực hiện cập nhật khoá khi
đã hết hạn thường gặp phải nhiều thủ tục phức tạp hơn.
Giải pháp đưa ra là xây dựng PKI theo cách mà tồn bộ khố hoặc chứng
thư sẽ được cập nhật hoàn toàn tự động mà khơng cần có sự can thiệp nào của
người dùng. Mỗi khi chứng thư của người sử dụng được dùng đến cho một mục
đích bất kỳ, thời gian hợp lệ của nó sẽ được kiểm tra. Khi sắp hết hạn thì hoạt
động làm mới chứng thư sẽ diễn ra, chứng thư mới sẽ được tạo ra thay thế chứng
thư cũ và giao dịch được yêu cầu của người dùng sẽ tiếp tục diễn ra.
Bởi vì q trình cập nhật khố tự động là nhân tố sống còn đối với PKI
hoạt động trong nhiều mơi trường, do đó, nó tạo nên một phần định nghĩa của
PKI.
g) Lịch sử khóa
Trong suốt quá trình sử dụng PKI, một người dùng có thể có nhiều chứng
thư cũ và có ít nhất một chứng thư hiện tại. Tập hợp các chứng thư này với các
khoá riêng tương ứng được gọi là lịch sử khoá (key history) hay cịn gọi là lịch
sử khố và chứng thư.
Việc duy trì tồn bộ lịch sử khố này rất quan trọng bởi vì nếu giả sử thực
thể A mã hố thông báo gửi cho thực thể B trong khoảng thời gian là 5 năm thì
thực thể B khơng thể giải mã bằng khố riêng hiện tại của mình.
Cũng giống như sự cập nhật khoá, quản lý lịch sử khoá phải được thực hiện
và duy trì tự động trong PKI. PKI cần phải nắm giữ được tất cả các khoá trong
lịch sử, thực hiện sao lưu và dự phòng tại vị trí thích hợp.
h) Chứng thực chéo
Trong mơi trường thực tế, khơng phải chỉ có một PKI tồn cục duy nhất
hoạt động mà thực tế có rất nhiều PKI được triển khai, hoạt động, phục vụ trong
các môi trường và cộng đồng người dùng khác nhau. Khi các PKI hoạt động
phối hợp, liên kết với nhau, sẽ nảy sinh vấn đề là làm thế nào để đảm bảo an
tồn truyền thơng giữa các cộng đồng người dùng trong các PKI?
15
Khái niệm chứng thực chéo đã nảy sinh trong môi trường PKI để giải
quyết nhu cầu này nhằm tạo ra mối quan hệ tin tưởng giữa các PKI khơng có
quan hệ với nhau trước đó. Chứng thực chéo là cơ chế cho phép người dùng của
một cộng đồng PKI này xác nhận tính hợp lệ chứng thư của người dùng khác
trong một cộng đồng PKI khác.
i) Hỗ trợ chống chối bỏ
Trong môi trường hoạt động của PKI, mỗi hành động của người dùng
luôn gắn với định danh của họ. Nếu một người dùng ký số văn bản của mình, thì
có nghĩa người dùng đó khẳng định rằng văn bản đó xuất phát từ phía mình.
PKI cần phải đảm bảo rằng người dùng đó khơng thể chối bỏ trách nhiệm
mà mình đã thực hiện. Cơ chế này được gọi là cơ chế hỗ trợ chống chối bỏ. Để
thực hiện được cơ chế hỗ trợ chống chối bỏ, PKI cần phải cung cấp một vài các
bằng chứng kỹ thuật được yêu cầu, như là xác thực nguồn gốc dữ liệu và chứng
thực thời gian mà dữ liệu được ký.
j) Tem thời gian
Một nhân tố quan trọng trong việc hỗ trợ các dịch vụ chống chối bỏ là sử
dụng tem thời gian an toàn (secure time stamping) trong PKI. Nghĩa là nguồn
thời gian phải được tin cậy và giá trị thời gian phải được truyền đi một cách an
tồn. Do đó cần phải có một nguồn thời gian có thể tin tưởng được cho tất cả
người dùng trong PKI.
k) Phần mềm phía người dùng
Trong mơ hình PKI, các server sẽ thực hiện những nhiệm vụ sau:
• CA cung cấp các dịch vụ chứng thư
• Kho chứng thư sẽ lưu giữ các thơng tin chứng thư và hủy bỏ chứng thư
• Máy chủ sao lưu và dự phịng sẽ quản lý lịch sử khóa một cách phù
hợp
• Máy chủ tem thời gian sẽ kết hợp các thơng tin thời gian có thể tin
tưởng được với các tài liệu văn bản
Server không thể thực hiện bất kỳ điều gì cho các máy khách nếu như máy
khách không đưa ra các yêu cầu dịch vụ. Do đó nhiệm vụ của máy khách sẽ là:
• Máy khách đưa ra yêu cầu các dịch vụ chứng thực
• Máy khách yêu cầu chứng thư và xử lý các thông tin hủy bỏ chứng thư
có liên quan
• Máy khách phải biết lịch sử khóa và phải biết khi nào cần yêu cầu cập
16
nhật khóa hoặc hủy bỏ khóa
• Máy khách phải biết khi nào nó cần phải yêu cầu tem thời gian trên
văn bản.
Phần mềm phía client là một thành phần thiết yếu của PKI tích hợp đầy đủ
tính năng trên. Nếu khơng có phần mềm này, rất nhiều dịch vụ được cung cấp
bởi PKI gần như khơng có hiệu quả.
1.a.3. Cấu tạo của PKI
PKI bao gồm các thành phần sau:
- Cơ quan chứng thực (CA)
- Cơ quan đăng ký (RA)
- Khách hàng PKI
- Chứng thư số
- Hệ thống phân phối chứng thư hoặc kho lưu trữ
Sau đây, chúng ta sẽ đi vào chi tiết của các thành phần của PKI.
a) Cơ quan chứng thực
Trong cơ sở hạ tầng khố cơng khai, chứng thư có vai trị gắn kết định
danh với khố công khai. Sự gắn kết này thể hiện trong dạng cấu trúc dữ liệu
được ký số được đề cập đến như chứng thư đã được thảo luận ở phần trước. CA
là một thực thể PKI có trách nhiệm cấp chứng thư cho các đối tượng khác trong
hệ thống.
CA cũng được gọi là bên thứ ba được tin cậy vì người dùng cuối tin tưởng
vào chữ ký số của CA trên chứng thư trong khi thực hiện những hoạt động mã
hoá khố cơng khai cần CA thực hiện chức năng xác thực bằng cách cấp chứng
thư cho các CA khác và cho thực thể cuối (người giữ chứng thư) trong hệ thống.
Nếu CA nằm ở đỉnh của mơ hình phân cấp PKI và chỉ cấp chứng thư cho những
CA ở mức thấp hơn thì CA này gọi là Root CA.
b) Cơ quan đăng ký
Mặc dù CA có thể thực hiện những chức năng đăng ký cần thiết, nhưng
đơi khi cần có thực thể độc lập thực hiện chức năng này. Thực thể này được gọi
là Cơ quan đăng ký (Registration Authority). Ví dụ khi số lượng thực thể cuối
trong miền PKI tăng lên và các thực thể cuối này được phân tán khắp nơi về mặt
địa lý thì việc đăng ký tại một CA trung tâm trở thành vấn đề khó giải quyết. Để
giải quyết vấn đề này cần thiết phải có một hoặc nhiều RA (cơ quan đăng ký địa
phương).
17
Hình 1.2. Nhiệm vụ của Trung tâm đăng ký
Mục đích chính của RA là để giảm tải cơng việc của CA. Nhiệm vụ thực
hiện của một RA cụ thể sẽ khác nhau tuỳ theo nhu cầu triển khai PKI nhưng chủ
yếu bao gồm những nhiệm vụ sau:
• Nhận các yêu cầu và xác nhận đối tượng
• Gửi yêu cầu đăng ký đến CA
• Nhận chứng thư đã được xử lý từ CA
• Gửi chứng thư đến đúng đối tượng đã đăng ký
Ngồi ra, RA đặc biệt hữu ích để nhân rộng PKI trên các vị trí địa lý khác
nhau. Vì RA có thể đặt ở nhiều vị trí địa lý khác nhau cho các nhóm đối tượng
khác nhau, nhận các đăng ký và xác thực nó, sau đó gửi về cho CA để xử lý và
cấp phát chứng thư.
c) PKI client – Bên được cấp phát chứng thư
PKI client là tất cả các đối tượng yêu cầu CA hoặc RA cấp chứng thư. Để
có chứng thư số từ CA thì các client cần thực hiện các bước sau:
1. Gửi yêu cầu để tạo cặp khóa cơng khai và khóa riêng tương ứng. Việc
tạo khóa sẽ do CA hoặc chính client thực hiện, cặp khóa này sẽ chứa các thơng
tin chi tiết của client.
2. Gửi yêu cầu tạo chứng thư đến CA, hoặc yêu cầu này sẽ được gửi thông
qua RA.
3. Nhận chứng thư, và sử dụng chứng thư này để xác định mình là chủ sở
hữu chứng thư đã được xác thực.
Tất cả các thông tin ở các bước trên sẽ được giữ an tồn. Ngồi ra client
phải có trách nhiệm bảo đảm an tồn khóa riêng. Trường hợp khóa riêng bị mất
thì khơng thể giải mã được thơng báo đã mã hóa bằng khóa cơng khai tương
ứng. Hoặc khi khóa riêng bị lộ, thì bất kỳ người dùng trái phép nào cũng có thể
giải mã được thơng báo. Trong những tình huống như vậy, nhu cầu bảo mật khóa
riêng càng trở lên rõ ràng hơn. Để bảo mật khóa riêng thì có thể sử dụng một số
phần cứng có sẵn như thẻ xác thực và thẻ thông minh. Thẻ xác thực là một thiết
bị vật lý có thể mang theo và dùng để xác thực người dùng với mạng. Còn thẻ
18
thông minh là thiết bị vật lý, chứa bộ xử lý để lưu trữ thông tin bảo mật, bộ xử lý
sẽ hoạt động được khi nhập đúng mã PIN của người dùng. Bằng cách này khóa
riêng sẽ được bảo mật.
Như chúng ta đã thấy, thành phần quan trọng nhất để triển khai PKI là
chứng thư số. Chứng thư này sẽ là cơ sở để triển khai giải pháp PKI.
d) Chứng thư số
Để bảo đảm tính bí mật của khóa cơng khai để tránh các vi phạm bảo mật
liên quan đến mạo danh và sửa đổi khóa, cần một cơ chế thực hiện 2 mục tiêu.
Thứ nhất là thiết lập được tính tồn vẹn của khóa cơng khai, tuy nhiên vẫn
khơng đủ để đảm bảo được khóa cơng khai thuộc chủ sở hữu được yêu cầu. Thứ
hai là phải liên kết khóa cơng khai với thơng tin liên quan đến chủ sỡ hữu một
cách tin cậy, từ đó bảo đảm định danh chủ sở hữu và tính xác thực của khóa
cơng khai.
Trong môi trường PKI, chứng thư số sẽ thực hiện được các mục tiêu này.
Chứng thư số đảm bảo chỉ có khóa cơng khai cho chứng thư đã được xác thực
bởi cơ quan chứng nhận hoạt động với khóa riêng được sở hữu bởi một đối
tượng, vì vậy loại bỏ được cơ hội giả mạo.
Chứng thư số có một số thuộc tính an tồn sau:
- Có cấu trúc cơng khai chứa thông tin công khai.
- Việc truy nhập rộng rãi các chứng thư làm giảm các vấn đề liên quan đến
phân phối chứng thư cho người dùng khi cần sử dụng, tuy nhiên, cần xem xét
phạm vi sử dụng chứng thư. Các khía cạnh riêng tư của thơng tin có trong chứng
thư cũng cần được xem xét cẩn thận.
- Các chứng thư có cấu trúc tự bảo vệ. Nếu nội dung của chứng thư bị sửa
đổi, hoặc sử dụng nguồn khơng tin cậy để phát hành chứng thư, thì người dùng
chứng thư sẽ được cảnh báo thông qua các phần mềm ứng dụng. Do vậy, chứng
thư có thể được truyền đi trên bất kỳ môi trường nào mà không cần thêm cơ chế
bảo vệ nào khác, đồng thời không cần kho lưu trữ có độ an tồn cao.
- Chữ ký của cơ quan chứng thực trên chứng thư cho phép thiết lập sự tin
cậy với định danh của người sở hữu chứng thư. Hơn nữa, khóa cơng khai có
trong chứng thư cho biết người sở hữu chứng thư có khóa riêng tương ứng
cùng cặp.
19
e) Hệ thống phân phối chứng thư
Chứng thư (khố cơng khai) và thông tin thu hồi chứng thư phải được
phân phối sao cho những người cần đến chứng thư đều có thể truy cập và lấy
được. Có 2 phương pháp phân phối chứng thư:
• Phân phối cá nhân: Đây là cách phân phối cơ bản nhất. Trong
phương pháp này thì mỗi cá nhân sẽ trực tiếp đưa chứng thư của họ
cho người dùng khác. Việc này có thể thực hiện theo một số cơ chế
khác nhau. Chuyển giao bằng tay chứng thư được lưu trong đĩa mềm
hay trong một số các mơi trường lưu trữ khác. Cũng có thể phân phối
bằng cách gắn chứng thư trong email để gửi cho người khác. Cách này
thực hiện tốt trong một nhóm ít người dùng nhưng khi số lượng người
dùng tăng lên thì có thể xảy ra vấn đề về quản lý.
• Phân phối công khai: Một phương pháp khác phổ biến hơn để phân
phối chứng thư (và thông tin thu hồi chứng thư) là công bố các chứng
thư rộng rãi, các chứng thư này có thể sử dụng một cách cơng khai và
được đặt ở vị trí có thể truy cập dễ dàng. Những vị trí này được gọi là
cơ sở dữ liệu. Dưới đây là ví dụ về một số hệ thống lưu trữ:
◦ X.500 Directory System Agents (DSAs).
◦ Lightweight Directory Access Protocol (LDAP ) Server
◦ Online Certificate Status Protocol (OCSP) Responders
◦ Domain name System (DNS) và Web servers
◦ File Transfer Protocol (FTP) Servers và Corporate Databases
1.a.4. Các hoạt động của PKI
Trước khi tìm hiểu chi tiết về hoạt động của PKI, chúng ta sẽ tìm hiểu các
chức năng mà PKI cần thực hiện để cung cấp sự tin cậy và bảo mật cho các giao
dịch điện tử. Các chức năng đó là:
- Tạo cặp khóa cơng khai – khóa riêng để tạo và xác thực chữ ký
- Cung cấp tính xác thực để điều khiển truy cập vào khóa riêng
- Tạo và cấp chứng thư để xác thực người dùng
- Đăng ký người dùng mới để xác thực người dùng
- Duy trì lịch sử của các khóa để tham khảo trong tương lai
- Thu hồi các chứng thư không hợp lệ
- Cập nhật và khơi phục khóa trong trường hợp thỏa thuận khóa
- Cung cấp một phương tiện để xác nhận khóa hợp lệ
20
Tất cả các chức năng trên là bắt buộc để PKI đạt được mục đích cơ bản là
cung cấp sự tin cậy. Cũng như hệ mật khóa cơng khai, PKI sử dụng một cặp
khóa để cung cấp tính bảo mật. Các bước hoạt động của PKI như sau:
1. Tạo cặp khóa
2. Áp dụng chữ ký số để xác thực người gửi
3. Mã hóa thơng báo
4. Truyền khóa đối xứng
5. Xác thực danh tính người gửi bằng cách sử dụng CA
6. Giải mã thông báo và xác thực nội dung của nó
a) Tạo cặp khóa
Đây là bước đầu tiên liên quan đến các hoạt động của PKI. Khi người
dùng muốn mã hóa và gửi thơng báo thì trước tiên cần phải tạo cặp khóa gồm
khóa riêng và khóa cơng khai tương ứng. Mỗi cặp khóa này sẽ là duy nhất đối
với mỗi người dùng PKI. Trước tiên, người dùng tạo một khóa riêng, sau đó sử
dùng hàm băm một chiều trên khóa riêng sẽ thu được khóa cơng khai tương ứng.
Khóa riêng được sử dụng để ký dữ liệu và khóa công khai tương ứng được sử
dụng để xác thực chữ ký đó. Khi người dùng muốn mã hóa thơng báo nào đó thì
sẽ sử dụng khóa cơng khai để mã hóa, những thơng báo được mã hóa bằng khóa
cơng khai chỉ có thể được giải mã bằng khóa riêng tương ứng.
b) Áp dụng chữ ký số để xác thực người gửi
Chữ ký số được đính kèm cùng với thơng báo đã mã hóa để xác định
người gửi của thơng báo. Chữ ký số có các tính chất pháp lý giống như chữ ký
tay. Nó được tạo ra từ một hàm tốn học dựa trên khóa riêng của người gửi và
thơng báo gốc. Để tạo ra một chữ ký số và đính kèm vào thơng báo, cần phải
thực hiện các bước sau:
21
Hình 1.3. Quá trình ký và kiểm tra chữ ký
1. Chuyển thơng báo thành một chuỗi có độ dài cố định bằng cách sử
dụng hàm băm trên thông báo. Quá trình này được gọi là q trình băm thơng
báo, và chuỗi có độ dài cố định được gọi là bản tóm lược thơng báo.
2. Mã hóa bản tóm lược thơng báo với khóa riêng của người gửi, thu được
chữ ký số.
3. Đính kèm chữ ký số này vào thơng báo gốc.
c) Mã hóa thơng báo
Sau khi sử dụng chữ ký số lên thơng báo gốc, ta sẽ bảo mật nó bằng cách
mã hóa. Để mã hóa thơng báo và chữ ký số đính kèm, ta sử dụng khóa đối xứng.
Khóa đối xứng này được dùng chung giữa người gửi và người nhận thông báo,
và chỉ được sử dụng một lần cho việc mã hóa và giải mã.
d) Truyền khóa đối xứng
Sau khi mã hóa thơng báo và chữ ký số, khóa đối xứng đã sử dụng để mã
hóa thơng báo cần được truyền cho người nhận. Điều này là cần thiết vì cùng
khóa đó sẽ được sử dụng để giải mã thơng báo. Bản thân khóa đối xứng cũng
được mã hóa vì lý do an tồn, nếu bị lộ thì bất kỳ người nào cũng có thể giải mã
thơng báo. Do đó, khố đối xứng sẽ được mã hố bằng khố cơng khai của
người nhận. Bằng cách này, chỉ người nhận mới có thể giải mã được khóa đối
xứng đã được mã hóa bằng cách sử dụng khóa riêng tương ứng. Sau khi mã hóa,
khóa phiên và thơng báo đã được chuyển đến người nhận.
22
e) Xác thực danh tính người gửi thơng qua CA
CA hoạt động như một bên thứ ba tin cậy để xác thực định danh của các
thực thể đang tham gia trong q trình trao đổi. Khi người nhận nhận được
thơng báo đã mã hóa, người nhận có thể yêu cầu CA xác thực chữ ký số được
đính kèm cùng thơng báo. Khi nhận được yêu cầu, CA xác thực chữ ký số của
người gửi thông báo.
f) Giải mã thông báo và xác thực nội dung
Sau khi nhận được thông báo mã hóa thì cần phải giải mã nó. Thơng báo
này chỉ có thể giải mã bằng cách sử dụng khóa đối xứng đã mã hóa được gửi
cùng với thơng báo. Vì vậy, trước khi giải mã thơng báo, khóa đối xứng đã mã
hóa phải được giải mã bằng khóa riêng của người nhận. Sau khi giải mã, khóa
đối xứng sẽ dùng để giải mã thơng báo. Chữ ký số đính kèm với thơng báo được
giải mã bằng khóa cơng khai của người gửi, thu được bản tóm lược thơng báo.
Thơng báo được giải mã sẽ được băm một lần nữa để tạo ra bản tóm lược thơng
báo thứ hai. Cả hai bản tóm lược thơng báo này sẽ được so sánh để kiểm tra có
sự thay đổi thơng báo trong q trình truyền khơng. Nếu cả hai bản tóm lược
trùng khớp thì thơng báo khơng bị giả mạo.
Ngồi việc cung cấp các tính bảo mật cột lõi thì khung này cịn cung cấp
sự tin cậy và tình trạng pháp lý cho thông tin liên lạc điện tử. Đối với bất kỳ giao
dịch nào, điện tử hay vật lý, để hợp pháp và có thể thực thi thì giao dịch đó phải
đáp ứng các tiêu chí cơ bản sau đây:
- Tính chống chối bỏ: tất cả các đối tượng tham gia sẽ không thể từ chối
là một phần của giao dịch.
- Bảo mật đường truyền: đảm bảo thông báo được an tồn trong q
trình truyền nhận. Bất kỳ sự giả mạo hoặc sửa đổi thông báo đều bị
phát hiện.
- Quyền riêng tư: Từ chối mọi truy cập trái phép
- Tính xác thực: cả hai bên đều biết định danh của các đối tượng tham
gia giao dịch.
- Tính ràng buộc: giao dịch phải được xác thực và ký bởi tất cả các đối
tượng tham gia.
PKI đảm bảo tất cả các giao dịch đáp ứng được các yêu cầu pháp lý bằng
cách cung cấp cơ sở hạ tầng và môi trường cần thiết.
23
1.a.5. Các tiến trình trong PKI
Các ứng dụng sử dụng PKI có thể đạt được 4 chức năng bảo mật là tính bí
mật, tính tồn vẹn, tính xác thực và tính chống chối bỏ. Mỗi tiến trình trong PKI
sẽ thực hiện các yêu cầu bảo mật được đề cập ở trên.
a) Yêu cầu chứng thư
Khi người dùng muốn nhận chứng thư số từ CA thì cần phải gửi yêu cầu
chứng thư. Có nhiều chuẩn để gửi yêu cầu chứng thư số, chuẩn phổ biến nhất là
PKCS#10. Yêu cầu chứng thư gồm các trường sau:
- Tên phân biệt (DN) của CA
- Khóa cơng khai của người dùng
- Định danh thuật tốn
- Chữ ký số của người dùng
Chữ ký số này được tạo bởi khóa riêng của người dùng. Nó hoạt động như
một bằng chứng cho việc người dùng là chủ sở hữu khóa riêng. Người dùng gửi
yêu cầu chứng thư PKCS cho CA qua kênh an tồn. Nếu kênh này khơng an
tồn thì người dùng tải khóa cơng khai của CA để mã hóa chứng thư nhằm tạo
sự bảo mật cho chứng thư.
∗ Gửi yêu cầu
Yêu cầu chứng thư được gửi đến CA ở dạng e-mail sử dụng định dạng
PEM (thư tăng cường bảo mật). Yêu cầu chứng thư phải được gửi ở dạng này
bởi vì yêu cầu ban đầu được tạo ở dạng nhị phân nên không thể truyền qua email, vì vậy cần phải chuyển qua định dạng PEM dựa vào mã ASCII. Điều này
loại bỏ vấn đề khi gửi yêu cầu chứng thư qua e-mail.
Với chữ ký số trong yêu cầu chứng thư sẽ giúp CA chắc chắn người gửi
sở hữu khóa riêng có liên kết với khóa cơng khai. Vì vậy, người gửi chứng minh
được quyền sở hữu.
Khách hàng có thể gửi u cầu khóa qua trình duyệt web. Ở trường hợp
này, chuẩn PKCS#10 được sử dụng cùng với SSL. Máy khách sẽ tạo kết nối SSL
với máy chủ chứng thư và sau đó gửi yêu cầu chứng thư qua kênh an tồn.
∗ Chính sách bảo mật
Chính sách bảo mật định nghĩa một hướng dẫn cho các tổ chức để đảm
bảo an tồn thơng tin, các tiến trình và ngun tắc sử dụng mật mã. Nó cũng xác
định cách tổ chức quản lý các khóa cơng khai, khóa riêng và các thơng tin khác
như mức độ kiểm soát cần thiết để quản lý các yếu tố rủi ro bảo mật.
Một số hệ thống PKI được vận hành bởi bên thứ ba tin cậy được gọi là Cơ
quan chứng thư Thương mại (Commercial Certificate Authorites), vì thế yêu cầu
24
một Hướng dẫn sử dụng chứng thư (CPS – Certificate Pratice Statement), nêu
chi tiết về các quy trình vận hành. CPS định nghĩa cách các chính sách sẽ được
triển khai và hỗ trợ, cách chứng thư sẽ được cấp phát, được chấp nhận và bị thu
hồi cũng như cách khóa công khai sẽ được tạo, đăng ký và chứng thực như thế
nào. CPS cũng xác định vị trí của những khóa này.
b) Thu hồi chứng thư
Mỗi chứng thư đều có một thời gian hiệu lực nhất định, được tính từ khi
được cấp cho đến khi hết hạn. Tuy nhiên, có những trường hợp, chứng thư bị
mất tính hợp lệ trước khi hết hạn. Trong trường hợp này, chứng thư vẫn được sử
dụng để xác thực thông tin ở thời điểm vẫn cịn hợp lệ, nhưng người sở hữu
khơng được phép thực hiện các nhiệm vụ sử dụng chứng thư đó. Khi chứng thư
bị mất tính hợp lệ trước thời hạn thì được gọi là thu hồi chứng thư.
Chứng thư bị thu hồi phải được công khai. Thông tin về chứng thư bị hủy
bỏ sẽ được công bố trên máy chủ chứng thư sao cho người dùng có thể được
cảnh báo khi sử dụng các chứng thư đó.
Một cách khác hay được sử dụng đó là sử dụng danh sách thu hồi chứng
thư (CRL). Danh sách này chứa các chứng thư đã bị thu hồi, khi đến ngày hết
hạn của chứng thư thì nó sẽ được xóa khỏi CRL. CA sẽ duy trì CRL, phân bố nó
đều đặn trong một khoảng thời gian đủ ngắn để ngăn chặn việc sử dụng chứng
thư đã bị thu hồi trước khi nó được cơng bố trong CRL.
b) Kiến trúc PKI
Hiện nay PKI đang được nhiều tổ chức triển khai như một công cụ để bảo
mật các nguồn lực nhạy cảm. Tuy nhiên, với nhiều nhu cầu và quá trình của các
cơ quan thì một mơ hình PKI tiêu chuẩn là khơng đáp ứng được. Vì vậy PKI có
nhiều kiến trúc khác nhau được triển khai để phù hợp với từng nhu cầu, và cốt
lõi của các kiến trúc này là sự tin cậy.
1.b.1. Kiến trúc CA đơn
Kiến trúc CA đơn là kiến trúc PKI đơn giản nhất. Trong kiến trúc này chỉ
có một CA duy nhất cấp và phân phối chứng thư và các danh sách thu hồi chứng
thư (CRL). Tất cả các đối tượng tin cậy CA này và chỉ sử dụng những chứng thư
được cấp bởi CA này. Do chỉ tồn tại duy nhất một CA nên khơng có mối quan hệ
tin cậy CA trong kiến trúc CA đơn. Kiến trúc CA đơn giản này không cho phép
bất kỳ một CA mới nào tham gia vào môi trường PKI.
25