You are on page 1of 24

HẠ TẦNG KHÓA CÔNG KHAI PKI

I. Giới thiệu.....................................................................................................................................3
1. Lịch sử phát triển PKI..........................................................................................................3
2. Tình hình PKI tại Việt Nam.................................................................................................3
3. Định nghĩa PKI......................................................................................................................4
4. Các khái niệm liên quan trong PKI.....................................................................................4
4.1. Chứng chỉ........................................................................................................................4
4.2. Kho chứng chỉ.................................................................................................................5
4.3. Hủy bỏ chứng chỉ............................................................................................................5
4.4. Sao lưu và dự phòng khóa..............................................................................................6
4.5. Cập nhật khóa tự động...................................................................................................6
4.6. Lịch sử khóa....................................................................................................................6
4.7. Chứng thực chéo.............................................................................................................7
4.8. Hỗ trợ chống chối bỏ......................................................................................................7
4.9. Tem thời gian..................................................................................................................7
4.10. Phần mềm phía Client..................................................................................................7
5. Mục tiêu, chức năng..............................................................................................................8
5.1. Xác thực...........................................................................................................................8
5.1.1. Định danh thực thể..................................................................................................9
5.1.2. Định danh nguồn gốc dữ liệu..................................................................................9
5.2. Bí mật...............................................................................................................................9
5.3. Toàn vẹn dữ liệu............................................................................................................10
5.4. Chống chối bỏ................................................................................................................10
6. Các khía cạnh an toàn cơ bản mà PKI cung cấp..............................................................10
6.1. Đăng nhập an toàn........................................................................................................10
6.2. Đăng nhập an toàn một lần..........................................................................................11
6.3. Trong suốt với người dùng cuối..................................................................................11
6.4. An ninh toàn diện..........................................................................................................11
II. Các thành phần, cơ chế làm việc của PKI...........................................................................13
1. Các thành phần....................................................................................................................13
1.1. Tổ chức chứng thực (CA).............................................................................................13
1.2. Trung tâm đăng ký (RA)..............................................................................................13
1.3. Thực thể cuối (End Entity)..........................................................................................14
1.4. Hệ thống lưu trữ (Repositories)...................................................................................14
2. Cơ chế làm việc....................................................................................................................15
2.1. Khởi tạo thực thể cuối..................................................................................................15
2.2. Tạo cặp khóa công khai/ khóa riêng...........................................................................15
2.3. Áp dụng chữ ký để định danh người gửi....................................................................16
2.4. Mã hóa thông báo.........................................................................................................16
2.5. Truyền khóa đối xứng..................................................................................................16
2.6. Kiểm tra định danh người gửi thông qua một CA....................................................17
2.7. Giải mã thông báo và kiểm tra nội dung thông báo..................................................17
3. Các tiến trình trong PKI.....................................................................................................17
3.1. Yêu cầu chứng chỉ.........................................................................................................18
3.1.1. Gửi yêu cầu.............................................................................................................18
3.1.2. Các chính sách........................................................................................................18
3.2. Huỷ bỏ chứng chỉ..........................................................................................................18
III. Các mô hình và các kiểu kiến trúc của PKI.......................................................................20
1. Các mô hình PKI.................................................................................................................20
1.1. Mô hình phân cấp CA chặt chẽ (Strict hierachy of CAs).........................................20
1.2. Mô hình phân cấp CA không chặt chẽ (loose hierarchy of CAs).............................20
1.3. Mô hình kiến trúc tin cậy phân tán (distributed trust architecture).......................21
1.4. Mô hình 4 bên (Four - Coner Model)..........................................................................21
1.5. Mô hình Web (Web Model).........................................................................................21
1.6. Mô hình tin cậy lấy người dùng làm trung tâm (User - Centric Trust)..................22
2. Các kiểu kiến trúc................................................................................................................22
2.1. Kiến trúc kiểu Web of Trust........................................................................................22
2.2. Kiến trúc kiểu CA đơn (Single CA)............................................................................22
2.3. Kiến trúc CA phân cấp.................................................................................................23
2.4. Kiến trúc kiểu chứng thực chéo (Cross - certificate).................................................23
2.5. Kiến trúc Bridge CA (BCA).........................................................................................23
I. Giới thiệu

1. Lịch sử phát triển PKI


- Thị trường PKI thực sự đã tồn tại và phát triển nhưng không phải với quy mô đã được kỳ vọng
từ những năm giữa của thập kỷ 1990. PKI chưa giải quyết được một số vấn đề mà nó được kỳ
vọng. Những PKI thành công nhất tới nay là các phiên bản do các chính phủ thực hiện.
- 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 tuyệt vời 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ã hoá, truyền thông và liên kết, xác thực, cấp phép và quản lý. Tuy nhiên, hầu hết các
công nghệ hình thành từ ý tưởng này đã trở nên chín muồi và một số đã bước vào giai đoạn "lão
hoá". 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 sáng kiến PKI.
- Quá trình nghiên cứu và phát triển PKI là một quá 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. Cũng giống như với nhiều tiêu
chuẩn công cộng khác, tỷ lệ người dùng chấp nhận sẽ tăng lên chỉ khi các chuẩn đó trở nên hoàn
thiện, chứng minh được khả năng thực sự của nó, và khả năng ứng dụng và hiện thực hoá của nó
là khả thi (cả về khía cạnh chi phí lẫn thực hiện).

2. Tình hình PKI tại Việt Nam


- Trước nhu cầu sử dụng PKI, ở Việt nam, có một số tổ chức đã triển khai hoạt động cung cấp
dịch vụ chứng thực trong lĩnh vực này. Trong khu vực Nhà nước, Ban Cơ Yếu chính phủ đã xây
dựng và thử nghiệm tại hạ tầng Trung Tâm của một số Bộ, ngành ở quy mô nhỏ, đồng thời sử
dụng trong một số dịch vụ bảo mật và an toàn. Ngân hàng Nhà nước, Bộ Công Thương cũng đã
tổ chức thử nghiệm các CA chuyên dùng đáp ứng hoạt động nghiệp vụ nội bộ.
- Khu vực ngoài nhà nước như các tổ chức VASC, VDC đã cung cấp chứng thực điện tử cho một
số tổ chức và cá nhân. Nhìn chung, nhu cầu sử dụng PKI ở Việt Nam ngày càng tăng, tuy nhiên
việc triển khai thực tế hiện tại chưa nhiều.
- Ở Việt Nam, năm 2007 Ban Cơ Yếu Chính phủ thành lập Trung tâm Chứng thực điện tử
chuyên dùng với các chức năng cung cấp, quản lý chứng thư số và các dịch vụ chứng thực chữ
ký số cho các cơ quan thuộc hệ thống Chính trị. Năm 2008, Bộ Thông tin - Truyền thông đã
thành lập Trung tâm chứng thực chữ ký số quốc gia và giao Cục ứng dụng Công nghệ thông tin
tổ chức, quản lý, cấp phép và cung cấp dịch vụ chứng thực số cho khu vực công cộng. Nhìn
chung việc triển khai dịch vụ chứng thực chữ ký số ở nước ta còn chậm, chưa theo kịp tốc độ
phát triển mạng CNTT và các dịch vụ giao dịch điện tử trên thế giới.
3. Định nghĩa PKI
- Trong mật mã học, hạ tầng khóa công khai (tiếng Anh: public key infrastructure, viết tắt 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 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/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.
- Khái niệm hạ tầng khóa công khai (PKI) thường được dùng để chỉ toàn bộ hệ thống bao gồm
nhà cung cấp chứng thực số (CA) 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 toán mật mã hóa khóa công khai trong trao đổi thông tin. Tuy nhiên phần sau được bao
gồm không hoàn toàn chính xác bởi vì các cơ chế trong PKI không nhất thiết sử dụng các thuật
toán mã hóa khóa công khai.
- PKI là một tập hợp phần cứng, phần mềm, con người, các chính sách và các thủ tục cần thiết để
tạo, quản lý, lưu trữ, phân phối và thu hồi các chứng chỉ khóa công khai dựa trên mật mã khóa
công khai.

4. Các khái niệm liên quan trong PKI


4.1. Chứng chỉ
- Chứng chỉ là một tài liệu sử dụng chữ ký số kết hợp khoá công khai với một định danh thực thể
(như người, một tổ chức hoặc một máy chủ). Chứng chỉ không chứa bất kỳ một thông tin bí mật
nào.
- Chứng chỉ chứa những thông tin cần thiết như khoá công khai, chủ thể (người sở hữu), bên cấp
chứng chỉ 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 chỉ. Người dùng muốn sử dụng chứng chỉ trước hết sẽ kiểm tra chữ ký số
trong chứng chỉ. Nếu chữ ký đó hợp lệ thì có thể sử dụng chứng chỉ đó. Một vài loại chứng chỉ:
+ Chứng chỉ khoá công khai X.509.
+ Chứng chỉ khoá công khai đơn giản (Simple Public Key Certificate - SPKC).
+ Chứng chỉ Pretty Good Privacy (PGP).
+ Chứng chỉ thuộc tính (Attribute Certificate - AC).
- Tất cả các loại chứng chỉ này đều có cấu trúc dạng riêng biệt. Hiện nay chứng chỉ khoá công
khai X.509 được sử dụng phổ biến trong hầu hết các hệ thống PKI. Một số thông tin về chứng
chỉ X.509:
+ Chứng chỉ 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 chỉ 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 chỉ, 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.
• Version: Phiên bản của chứng chỉ.
• Serial Number: Số serial của chứng chỉ, là định danh duy nhất của chứng chỉ, có
giá trị nguyên.
• Signature Algorithm - Thuật toán của chữ ký : Chỉ ra thuật toán CA sử dụng để
ký chứng chỉ.
• Issuer: Tên chủ thể phát hành chứng chỉ.
• Valid from - Valid to: Thời hạn của chứng chỉ.
• Subject: Tên chủ thể của chứng chỉ.
• Public Key: Khoá công khai của chủ sở hữu chứng chỉ.

4.2. Kho chứng chỉ


- Chứng chỉ được cấp bởi CA kết hợp khoá 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 chỉ này một cách dễ dàng thì anh ta cũng
không có hiệu quả gì hơn so với việc chứng chỉ này chưa được tạo ra.
- Do đó, phải có một kho chứng chỉ trực tuyến (online repository), quy mô lớn và mềm dẻo và
phải được đặt ở vị trí mà A có thể xác định vị trí chứng chỉ mà anh ta cần để truyền thông an
toàn. Một PKI quy mô lớn sẽ trở nên vô ích nếu không có kho chứng chỉ.

4.3. Hủy bỏ chứng chỉ


- CA ký chứng chỉ gắn kết khóa công khai với nhận dạng người dùng. Tuy nhiên trong môi
trường thực tế, các sự kiện sẽ có lúc đòi hỏi phải phá bỏ sự gắn kết này. Sự phá bỏ gắn kết cặp
khoá công khai với nhận dạng của một thực thể có thể là do:
+ Sự thay đổi nhận dạng.
+ Khoá bí mật bị hacker khám phá ra.
- Do đó cần phải có một cách thức để thông báo cho những người dùng còn lại rằng khoá công
khai của định danh này không còn được chấp nhận nữa. Cơ chế cảnh báo này trong PKI được gọi
là huỷ bỏ chứng chỉ (Certificate Revocation).
4.4. Sao lưu và dự phòng khóa
- Trong bất kỳ một môi trường PKI đang hoạt động, một tỉ lệ người dùng có thể bị mất quyền sử
dụng khoá bí mật của mình theo một thời hạn cố định nào đó (ví dụ mỗi tháng hoặc mỗi năm).
Nguyên nhân có thể là do:
+ Quên mật khẩu: Khoá bí mật 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.
+ Sự thay thế của phương tiện: 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 mô hình máy tính cũ hơn được thay thế bằng một mô hình máy tính
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 lại.
- Giải pháp: Thực hiện sao lưu và dự phòng khoá bí mật để giải mã. Việc sao lưu và dự phòng
khoá là mang tính cần thiết, nó tạo nên một phần mở rộng trong định nghĩa PKI

4.5. Cập nhật khóa tự động


- Một chứng chỉ thì có thời gian sống hữu hạn. Khi chứng chỉ bị hết hạn sẽ được thay thế bằng
một chứng chỉ mới. Thủ tục này được gọi là cập nhật khoá hay cập nhật chứng chỉ.
- 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 khoá 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 chỉ hoặc khi 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: Xây dựng PKI theo cách mà toàn bộ khoá hoặc chứng chỉ 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 chỉ 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 chỉ sẽ diễn ra, chứng chỉ
mới sẽ được tạo ra và sẽ được sự dụng để thay thế chứng chỉ cũ và giao dịch của được yêu cầu
của người dùng sẽ tiếp tục diễn ra.
- Bởi vì quá trình cập nhật khoá tự động là nhân tố sống còn đối với PKI hoặc động trong nhiều
môi trường, do đó, nó tạo nên một phần định nghĩa của PKI.

4.6. 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 chỉ cũ và có ít nhất
một chứng chỉ hiện tại. Tập hợp các chứng chỉ này với các khoá bí mật tương ứng được gọi là
lịch sử khoá (key history) hay còn gọi là lịch sử khoá và chứng chỉ.
- Việc duy trì toàn bộ lịch sử khoá này rất quan trọng bởi vì nếu giả sử thực thể A mã hoá bản tin
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 khoá bí
mật 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. Duy trì lịch sử khoá rất quan trọng bởi vì nó tạo ra một phần mở rộng
trong PKI được định nghĩa.

4.7. Chứng thực chéo


- Đặt vấn đề: Trong môi trường thực tế, không phải chỉ có một PKI toàn cục duy nhất hoạt động
mà thực tế có rất nhiều PKI được triển khai và 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 toàn truyền thông giữa các cộng đồng người dùng trong các
PKI?
- Giải pháp: 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 chỉ của người dùng khác trong một cộng đồng PKI khác.

4.8. 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ý. Do đó, hỗ trợ chống chối bỏ tạo nên một phần của định nghĩa PKI mở rộng.

4.9. 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 toà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.

4.10. Phần mềm phía Client


- Trong mô hình PKI, kiến trúc máy chủ - máy khách (server - software) thì các server sẽ thực
hiện những nhiệm vụ sau:
+ CA sẽ cung cấp các dịch vụ chứng chỉ.
+ Kho chứng chỉ sẽ lưu giữ các thông tin chứng chỉ và huỷ bỏ chứng chỉ.
+ Máy chủ sao lưu và dự phòng sẽ quản lý lịch sử khoá 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.
- Tuy nhiê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 phải đưa ra yêu cầu các dịch vụ chứng thực.
+ Máy khách phải yêu cầu chứng chỉ và xử lý các thông tin huỷ bỏ chứng chỉ có liên
quan.
+ Máy khách phải biết lịch sử khoá và phải biết khi nào cần yêu cầu cập nhật khóa hoặc
huỷ bỏ khoá.
+ 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. 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ả.

5. Mục tiêu, chức năng


- PKI cho phép những người tham gia xác thực lẫn nhau và sử dụng thông tin từ các chứng thực
khóa công khai để mật mã hóa và giải mã thông tin trong quá trình trao đổi. Thông thường, PKI
bao gồm phần mềm máy khách (client), phần mềm máy chủ (server), phần cứng (như thẻ thông
minh) và các quy trình hoạt động liên quan. Người sử dụng cũng có thể ký các văn bản điện tử
với khóa bí mật của mình và mọi người đều có thể kiểm tra với khóa công khai của người đó.
PKI cho phép các giao dịch điện tử được diễn ra đảm bảo tính bí mật, toàn vẹn và xác thực lẫn
nhau mà không cần phải trao đổi các thông tin mật từ trước.
+ Xác thực: Chứng minh định danh thực thể.
+ Bí mật: Đảm bảo rằng không ai có thể đọc được thông báo ngoại trừ người nhận.
+ Toàn vẹn: Đảm bảo rằng người nhận sẽ nhận được thông báo mà không bị thay đổi nội
dung ban đầu.
+ Tính chống chối bỏ: Cơ chế này sẽ chứng minh rằng người nhận/gửi đã thực sự
gửi/nhận thông báo.
- PKI tận dụng cả mật mã đối xứng và bất đối xứng để để đạt được những tính năng cơ bản trên.

5.1. Xác thực


- Về cơ bản, tính xác thực cung cấp 2 khía cạnh ứng dụng chính đó là định danh thực thể và định
danh nguồn gốc dữ liệu.
5.1.1. Định danh thực thể
- Định danh thực thể đơn giản dùng để định danh thực thể xác định nào đó có liên quan. Do đó,
trên thực tế, định danh thực thể thông thường sẽ tạo ra một kết quả cụ thể mà sau đó được sử
dụng để thực hiện các hoạt động khác hoặc truyền thông khác.
- Định danh thực thể bao gồm: Một nhân tố và nhiều nhân tố.
- Có rất nhiều cách để chứng minh định danh. Ta có thể chia ra làm bốn loại sau:
+ Cái gì đó người dùng có (ví dụ thẻ thông minh hoặc thiết bị phần cứng).
+ Cái gì đó người dùng biết (Ví dụ mật khẩu hoặc PIN).
+ Cái gì đó là người dùng hoặc gắn với người dùng (ví dụ dấu vân tay hoặc võng mạc
mắt).
+ Cái gì đó người dùng thực hiện (ví dụ gõ các ký tự nào đó).
- Có hai kiểu xác thực được biết đến như là định danh thực thể, đó là xác thực cục bộ và xác thực
từ xa.
+ Xác thực cục bộ: Xác thực ban đầu của một thực thể tới môi trường cục bộ hầu như liên
quan trực tiếp tới người dùng. Ví dụ như mật khẩu hoặc số định danh cá nhân (PIN) phải
được nhập vào, sử dụng dấu vấn tay để nhận dạng,…
+ Xác thực từ xa (Xác thực của một thực thể tới môi trường ở xa): Nghĩa là có thể hoặc
không cần liên quan trực tiếp tới người dùng. Trên thực tế, hầu hết các hệ thống xác thực
từ xa phức tạp không hoàn toàn liên quan tới người dùng vì rất khó để bảo vệ hệ thống
xác thực mà đưa ra các thông tin xác thực nhạy cảm, ví dụ như mật khẩu hoặc dấu vân
tay, và truyền trên một kênh không an toàn.

5.1.2. Định danh nguồn gốc dữ liệu


- Định danh nguồn gốc dữ liệu sẽ định danh một thực thể xác định nào đó như nguồn gốc của dữ
liệu được đưa ra. Hoạt động định danh này không phải là định danh cô lập, cũng không phải
hoàn toàn là định danh cho mục đích thực hiện các hoạt động khác.

5.2. Bí mật
- Dịch vụ bí mật đảm bảo tính riêng tư của dữ liệu. Không ai có thể đọc được dữ liệu ngoại trừ
thực thể nhận. Dịch vụ bí mật được yêu cầu khi dữ liệu khi:
+ Được lưu trữ trên phương tiện (như phần cứng máy tính) mà người dùng không hợp
pháp có thể đọc được.
+ Được dự phòng trên thiết bị (ví dụ băng từ) mà có thể bị rơi vào tay người dùng không
hợp pháp.
+ Được truyền trên mạng không được bảo vệ.
- Các kỹ thuật mật mã đảm bảo tính bí mật cần phải được áp dụng với mọi loại dữ liệu nhạy cảm.

5.3. Toàn vẹn dữ liệu


- Toàn vẹn dữ liệu đảm bảo rằng dữ liệu không bị thay đổi. Sự đảm bảo này là một phần thiết
yếu trong bất kỳ môi trường thương mại điện tử hoặc loại hình kinh doanh nào.
- Mức độ toàn vẹn dữ liệu có thể đạt được bằng các cơ chế chẵn lẻ của các bit và mã kiểm tra
dịch vòng (Cyclic Redundancy Codes - CRCs).
- Để bảo vệ dữ liệu khỏi tấn công nhằm phá vỡ tính toàn vẹn dữ liệu, các kỹ thuật mật mã được
sử dụng. Do đó, khoá và các thuật toán phải được triển khai và phải được biết giữa các thực thể
muốn cung cấp tính toàn vẹn dữ liệu với thực thể muốn được đảm bảo tính toàn vẹn của dữ liệu.
- Dịch vụ toàn vẹn của PKI có thể được xây dựng dựa trên hai kỹ thuật:
+ Chữ ký số: Mặc dù nó được dùng cho mục đích cung cấp sự xác thực, nhưng nó cũng
được sử dụng để cung cấp tính toàn vẹn cho dữ liệu được ký. Nếu có sự thay đổi bất kỳ
trước và sau khi ký thì chữ ký số sẽ bị loại bỏ khi kiểm tra, vì vậy việc mất tính toàn vẹn
của dữ liệu sẽ dễ dàng bị phát hiện.
+ Mã xác thực thông báo: Kỹ thuật này thông thường sử dụng một mã khối đối xứng (ví
dụ DES, DES-CBC-MAC) hoặc một hàm băm mật mã (HMAC-SHA-1).

5.4. Chống chối bỏ


- Dịch vụ chống chối bỏ là dịch vụ đảm bảo rằng thực thể không thể chối bỏ hành động của
mình. Các biến thể thường được nhắc tới nhiều nhất là chống chối bỏ nguồn gốc (người dùng
không thể chối bỏ rằng đã gửi một tài liệu hoặc một văn bản) hoặc chối bỏ sự tiếp nhận (người
dùng không thể chối bỏ rằng đã nhận được văn bản hoặc tài liệu).
- Một vài các biến thể khác của tính chống chối bỏ là: Chối bỏ đã tạo ra, chối bỏ đã chuyển, chối
bỏ việc tán thành.

6. Các khía cạnh an toàn cơ bản mà PKI cung cấp


- Theo như định nghĩa trên, PKI cung cấp một cơ sở hạ tầng an ninh rộng khắp. Cơ sở hạ tầng
dành cho các mục đích an ninh phải chấp nhận một nguyên tắc nhât quán và phải cung cấp các
lợi ích cơ bản như nhau. Cơ sở hạ tầng an ninh rộng khắp đảm bảo an toàn cho toàn bộ tổ chức
và tất cả các đối tượng, ứng dụng trong tổ chức. Các khía cạnh an toàn mà PKI cung cấp bao
gồm:
6.1. Đăng nhập an toàn
- Tiến trình đăng nhập liên quan tới người dùng nhập định danh của mình, (ID của user hoặc
username), xác thực thông tin (password hoặc giá trị bí mật nào đó).

6.2. Đăng nhập an toàn một lần


- Đăng nhập an toàn một lần là sự mở rộng của đăng nhập an toàn. Sự đăng nhập này có thể kết
nối tới rất nhiều các thiết bị ở xa, do đó sẽ loại bỏ được yếu tố cần phải đăng nhập nhiều lần.
- Đăng nhập an toàn một lần cũng đủ để truy cập tới các thiết bị, miền, máy chủ, các hệ thống và
các ứng dụng. Tuy nhiên, chúng ta cần chú ý rằng, sự kiện đăng nhập an toàn vẫn có thể được
kết hợp với các cơ chế kiểm soát truy cập khác. Do đó, đứng trên quan điểm về tính tiện dụng thì
sự kiện đăng nhập an toàn một lần là điều rất được mong muốn bởi vì người dùng thường chỉ
phải nhớ một vài mật khẩu và chỉ cần phải biết thủ tục một lần để truy cập tới nhiều hệ thống.
Đứng trên quan điểm về an ninh thì đây cũng là điều cũng rất được mong muốn bởi vì các mật
khẩu được truyền qua mạng với tần suất ít hơn.
- Lợi ích an toàn quan trọng trong đó là một cơ sở hạ tầng được thiết kế tốt có thể đảm bảo rằng
người dùng chỉ cần đăng nhập tới máy cục bộ mà họ đang làm việc. Do đó, mật khẩu sẽ không
phải chuyển qua vùng mạng dễ bị khai thác, giảm được những rủi ro lớn như các rủi ro bị đánh
cắp mật khẩu.

6.3. Trong suốt với người dùng cuối


- Một đặc tính rất quan trọng của cơ sở hạ tầng rộng khắp đó là tính trong suốt với người dùng
cuối. Nghĩa là người dùng không cần biết về phần header của gói tin IP hoặc các gói Ethernet.
Các dịch vụ của cơ sở hạ tầng sẽ được chuyển tới người dùng trong cơ sở hạ tầng thông qua một
“hộp đen” hoàn toàn. Người dùng không cần phải biết tất cả về vấn đề an ninh và không cần phải
can thiệp thủ công. Người dùng cũng không cần phải biết về các thuật toán và khoá.
- Người dùng cũng không cần phải biết về cơ chế cơ sơ hạ tầng đảm bảo an ninh ra sao. Sự an
toàn không nên gây khó khăn cho người dùng để cản trở họ thực hiện tác vụ của mình. An toàn
không cần yêu cầu người dùng phải có hiểu biết đặc biệt, không yêu cầu người dùng phải có
những thủ tục đặc biệt.

6.4. An ninh toàn diện


- Lợi ích quan trọng nhất của hạ tầng an ninh rộng khắp là: Nó đảm bảo rằng một công nghệ an
toàn tin cậy, như công nghệ khoá công khai, luôn sẵn sàng trong môi trường. Số lượng các ứng
dụng, thiết bị và các máy chủ có thể hoạt động liên tục cùng nhau để đảm bảo an toàn trong khi
truyền, lưu trữ và truy xuất dữ liệu, các quá trình giao dịch, và truy cập máy chủ. Các ứng dụng
thư điện tử, trình duyệt Web, tường lửa và các thiết bị truy cập từ xa, các máy chủ ứng dụng, các
máy chủ file, cơ sở dữ liệu,… tất cả đều phải hiểu được và tận dụng được hạ tầng an ninh theo
một cách thống nhất. Những môi trường như vậy sẽ giảm lược được rất lớn cả các vấn đề giao
tiếp của người dùng với rất nhiều các thiết bị và các ứng dụng và các công việc quản trị phức tạp
các thiết bị và các ứng dụng này.
- Một trong những cơ chế chủ yếu để đạt được an ninh toàn diện trong cơ sở hạ tầng là khả năng
đảm bảo khoá được sử dụng, được hiểu và được xử lý theo một cách chặt chẽ thông qua một
phạm vi rộng lớn của các thực thể và thiết bị trong tổ chức.
II. Các thành phần, cơ chế làm việc của PKI

1. Các thành phần


- Một hệ thống PKI gồm các thành phần sau:
+ Certificate Authorites (CA): Cấp và thu hồi chứng chỉ.
+ Registration Authorites (RA): gắn kết giữa khóa công khai và định danh của người giữ
chứng chỉ.
+ Clients: Người sử dụng cuối hoặc hệ thống là chủ thể của chứng chỉ PKI.
+ Repositories: Hệ thống lưu trữ chứng chỉ và danh sách các chứng chỉ bị thu hồi. Cung
cấp cơ chế phân phối chứng chỉ và CRLs đến các thực thể cuối.

1.1. Tổ chức chứng thực (CA)


- Trong hạ tầng cơ sở khóa công khai, chứng chỉ có vai trò gắn kết giữa định danh với khóa công
khai. Một Certificate Authorites (CA) là một thực thể PKI có trách nhiệm cấp chứng chỉ cho các
thực thể khác trong hệ thống.
- Tổ chức chứng thực - CA cũng được gọi là bên thứ 3 được tin tưởng vì người sử dụng cuối tin
tưởng vào chữ ký số của CA trên chứng chỉ trong khi thực hiện những hoạt động mã hóa khóa
công khai cần thiết CA thực hiện chức năng xác thực bằng cách cấp chứng chỉ cho các CA khác
và cho thực thể cuối (Người giữ chứng chỉ) 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 chỉ cho những CA ở mức thấp hơn thì chứng chỉ này gọi là
chứng chỉ gốc “root certificate”.

1.2. Trung tâm đăng ký (RA)


- 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ó những
thực thể độc lập thực hiện chức năng này. Thực thể này gọi là “Registration Authorities” - Trung
tâm đăng ký. Ví dụ khi số lượng thực thể cuối trong miền PKI tăng lên và số thực thể này được
phân tán khắp nơi về mặt địa lý thì việc đăng ký tại 1 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ó 1 hoặc nhiều RAs (trung tâm đăng ký địa
phương).
- Mục đích chính của RA là để giảm tải công việc của CA. Chức năng thực hiện một RA cụ thể
sẽ khác nhau tùy nhu cầu triển khai PKI nhưng chủ yếu bao gồm những chức năng sau:
+ Xác thực cá nhân, chủ thể đăng ký chứng chỉ.
+ Kiểm tra tính hợp lệ của thông tin do chủ thể cung cấp.
+ Xác nhận quyền của chủ thể đối với những thuộc tính chứng chỉ được yêu cầu.
+ Kiểm tra xem chủ thể có thực sự sở hữu khóa riêng hay đang được đăng ký hay không -
điều này thường được đề cập đến như sự chứng minh sở hữu (Proof of possesion - POP).
+ Tạo cặp khóa bí mật, công khai.
+ Phân phối bí mật được chia sẻ đến thực thể cuối (Ví dụ: Khóa công khai của CA).
+ Thay mặt chủ thể thực thể cuối khởi tạo quá trình đăng ký với CA.
+ Lưu trữ khóa riêng.
+ Khởi sinh quá trình khôi phục hóa.
+ Phân phối thẻ bài vật lý (thẻ thông minh).
- RA bao gồm 3 thành phần sau:
+ RA console: Là một máy chủ (server) được cài đặt cho RA officer để đưa các yêu cầu
chứng chỉ. Nó có thể kết nối với CA. Server này xử lý các yêu cầu chứng chỉ số trong quá
trình chứng thực.
+ RA Officer: Là một cá nhân thực hiện các tác vụ như đăng ký chứng chỉ số, làm mới
hoặc thu hồi chứng chỉ. Sau khi RA Officer xác minh và chấp thuận yêu cầu, nó sẽ
chuyển trực tiếp các yêu cầu này lên CA server. Sau khi CA server xử lý yêu cầu và cấp
chứng chỉ. RA Officer sẽ phân phối chứng chỉ.
+ RA Manager: Là một cá nhân làm nhiệm vụ quản lý RA Officer và đảm bảo rằng toàn
bộ thủ tục ứng dụng chứng thực được thực hiện mà không có sự lừa đảo của con người.
RA Manager sẽ cần phải chấp thuận tất cả các yêu cầu được xử lý bởi RA Officer trước
khi đưa các ứng dụng chứng thực tới cho CA.

1.3. Thực thể cuối (End Entity)


- Thực thể cuối trong PKI có thể là con người, thiết bị, và thậm chí là một chương trình phần
mềm nhưng thường là người sử dụng hệ thống. Thực thể cuối sẽ thực hiện những chức năng mật
mã (mã hóa, giải mã và ký số).

1.4. Hệ thống lưu trữ (Repositories)


- Chứng chỉ (khóa công khai) và thông tin thu hồi chứng chỉ phải được phân phối sao cho những
người cần đến chứng chỉ đều có thể truy cập và lấy được. Có 2 phương pháp phân phối chứng
chỉ:
+ Phân phối cá nhân: Đây là các phân phối cơ bản nhất. Trong phương pháp này thì mỗi
cá nhân sẽ được trực tiếp đưa chứng chỉ 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 chỉ được lưu trong
đĩa mềm hay 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 chỉ 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 chỉ (và
thông tin thu hồi chứng chỉ) là công bố các chứng chỉ rộng rãi. Các chứng chỉ này có thể
sử dụng bằng 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) Responder.
• Domain Name System (DNS) và Web Server
• File Transfer Protocol (FTP) Server và Corporate Databases.

2. Cơ chế làm việc


- Các hoạt động của PKI bao gồm:
+ Khởi tạo thực thể cuối.
+ Tạo cặp khóa.
+ Áp dụng chữ ký số để xác định danh tính người gửi.
+ Mã hóa thông báo.
+ Truyền khóa đối xứng.
+ Kiểm tra định danh người gửi thông qua một CA.
+ Giải mã thông báo và kiểm tra nội dung của nó.

2.1. Khởi tạo thực thể cuối


- Trước khi các thực thể cuối có thể tham gia và các dịch vụ được hỗ trợ bởi PKI, các thực thể
này cần phải được khởi tạo trong PKI.
- Đăng ký thực thể cuối là một quá trình mà trong đó danh tính của cá nhận được xác minh, quá
trình đăng ký thực thể cuối được thực hiện trực tuyến. Quá trính đăng ký trực tuyến cần phải
được xác thực và được bảo vệ.

2.2. Tạo cặp khóa công khai/khóa riêng


- Người dùng muốn mã hóa và gửi thông báo đầu tiên phải tạo ra một cặp khóa công khai/khóa
riêng. Cặp khóa này là duy nhất với mỗi người dùng trong PKI.
- Trong mô hình PKI toàn diện, có thể tạo khóa trong hệ thống máy trạm của người dùng cuối
hoặc trong hệ thống của CA. Vị trí tạo cặp khóa bao gồm khả năng, hiệu suất, tính đảm bảo, sự
phân nhánh hợp pháp và cách sử dụng khóa theo chủ định.
- Cho dù vị trí khóa ở đâu thì trách nhiệm đối với việc tạo chứng chỉ chỉ dựa vào CA được cấp
quyền. Nếu khóa công khai được tạo bởi thực thể, thì khóa công khai đó phải được chuyển tới
CA một cách an toàn.
- Một khi khoá và chứng chỉ có liên quan được tạo ra, chúng phải được phân phối một cách thích
hợp. Việc phân phối chứng chỉ và khoá yêu cầu dựa trên một vài nhân tố, bao gồm cả vị trí tạo
khoá, mục đích sử dụng và các mối quan tâm khác như là những ràng buộc về chức năng, chính
sách. Chứng chỉ được tạo ra có thể được phân phối trực tiếp tới người sở hữu, hoặc tới kho
chứng chỉ ở xa hoặc cả hai. Điều này sẽ phụ thuộc vào mục đích sử dụng khoá và các mối quan
tâm về chức năng. Nếu khoá được tạo ở hệ thống máy khách, thì khoá riêng đã được lưu trữ bởi
người sở hữu khoá riêng, và không cần có yêu cầu phân phối khoá (không áp dụng với dự phòng
khoá). Tuy nhiên, nếu khoá được tạo ra ở một nơi khác, thì khoá riêng phải được phân phối một
cách an toàn tới người sở hữu khoá đó. Có rất nhiều cơ chế có thể được sử dụng để thực hiện
điều này. Cũng cần phải chú ý rằng, nếu khoá được tạo ra được dùng cho mục đích chống chối
bỏ thì khoá đó cần được tạo tại vị trí máy khách của thực thể.

2.3. Áp dụng chữ ký để định danh người gửi


- Một chữ ký số được đính kèm với thông báo để xác định danh tính người gửi thông báo đó. Để
tạo ra một chữ ký số và đính kèm nó đến thông báo cần thực hiện như sau:
+ Biến đổi thông báo ban đầu thành một chuỗi có độ dài cố định bằng cách áp dụng hàm
băm trên thông báo. Quá trình này có thể gọi là băm thông báo, chuỗi có độ dài cố định
được gọi là bản tóm lược thông báo .
+ Mã hóa bản tóm lược thông báo bằng khóa riêng của người gửi. Kết quả tóm lược
thông bão đã mã hóa là chữ ký số.
+ Đính kèm chữ ký số với thông báo ban đầu.

2.4. Mã hóa thông báo


- Sau khi áp dụng chữ ký số lên thông báo ban đầu, để bảo vệ nó ta sẽ mã hóa. Để mã hóa thông
báo và chữ ký số, sử dụng mật mã khóa đối xứng. Khóa đối xứng này được thỏa thuận trước 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ã.

2.5. 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 mà được sử dụng để mã hóa cần truyền
đến người nhận. Bản thân khóa đối xứng cũng được mã hóa vì lý do an toà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óa đối xứng sẽ được mã hóa bằng khóa công
khai của người nhận. Chỉ có người nhận mới có thể giải mã được khóa đối xứng bằng việc sử
dụng khóa riêng tương ứng. Sau khi đã được mã hóa, khóa phiên và thông báo sẽ được chuyển
đến người nhận thông báo.

2.6. Kiểm tra định danh người gửi thông qua một CA
- CA đóng vai trò là một bên thứ 3 tin cậy để xác minh danh tính của các thực thể đang tham gia
trong quá trình giao dịch. Khi người nhận nhận một bản mã, người nhận có thể yêu cầu CA kiểm
tra chữ ký số đính kèm theo thông báo đó. Dựa trên yêu cầu đó, CA kiểm tra chữ ký số của
người gửi thông báo.

2.7. Giải mã thông báo và kiểm tra nội dung thông báo
- Sau khi nhận thông báo đã được mã hóa, người nhận cần giải mã. Bản mã chỉ có thể được giải
mã bằng khóa đối xứng đã được mã hóa. Vì vậy, trước khi giải mã thông báo, khóa đối xứng
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, khóa đối
xứng sẽ được 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 và bản tóm lược thông báo được bóc tách ra từ nó. Người nhận sau
đó sẽ tạo ra một bản tóm lược thông báo thứ 2. Cả 2 thông báo băm sau đó được so sánh để kiểm
tra xem có bất kỳ giả mạo của thông báo xảy ra trong quá trình truyền tin không. Nếu 2 thông
báo băm trùng khít nhau chứng tỏ thông báo không bị giả mạo trong khi truyền.
- Các tiêu chí cơ bản của một giao dịch điện tử:
+ Chống chối bỏ: Tất cả các thực thể liên quan trong giao dịch không thể từ chối mình là
một phần của giao dịch đó.
+ Truyền tin an toàn: Đây là một cơ chế đúng đắn để đảm bảo an toàn thông báo trong
truyền tin. Bất kỳ sự giả mạo hoặc thay đổi được làm trên thông báo phải được phát hiện
dễ dàng.
+ Tính riêng tư: bất kỳ sự truy nhập bất hợp pháp đến thông báo đều bị từ chối.
+ Sự xác thực: Để định danh các thực thể đang là một phần liên lạc trong quá trình giao
dịch thì cần phải biết đến cả 2 thực thể.
+ Tính ràng buộc: Giao dịch nên được kiểm tra và ký bởi các bên liên quan.
- PKI đảm bảo rằng tất cả các giao dịch có thể đáp ứng các yêu cầu hợp pháp bằng cách cung cấp
cơ sở hạ tầng và môi trường cần thiết.
3. Các tiến trình trong PKI
- Các ứng dụng có thể đạt được các chức năng an toàn khi sử dụng PKI. Các chức năng an toàn
đó là tính bí mật, tính toàn vẹn, tính xác thực và tính chống chối bỏ. Mỗi một tiến trình trong PKI
sẽ thực hiện các yêu cầu an toàn đã được đề cập ở trên.

3.1. Yêu cầu chứng chỉ


- Để có được chứng chỉ số từ CA, người dùng cần gửi yêu cầu chứng chỉ. Có rất nhiều chuẩn để
gửi yêu cầu chứng chỉ và chuẩn phổ biến nhất đó là PKCS#10. Yêu cầu chứng chỉ chứa các
trường sau:
+ Tên phân biệt của CA.
+ Khoá công khai của người dùng.
+ Tên thuật toán.
+ Chữ ký số của người dùng.
- Người dùng gửi yêu cầu chứng chỉ PKCS tới cho CA thông qua một kênh an toàn. Nếu kênh
này không được đảm bảo an toàn, thì người dùng tải khoá công khai của CA và mã hoá yêu cầu
này bằng khoá công khai của CA.
3.1.1. Gửi yêu cầu
- Yêu cầu chứng chỉ được gửi cho tới CA bằng một thư điện tử, sử dụng PEM (Privacy). Yêu cầu
chứng chỉ phải được gửi trong định dạng PEM bởi vì yêu cầu ban đầu được tạo ra bằng mã nhị
phân. Mã nhị phân này không thể được truyền bằng email.
- Với chữ ký số trong yêu cầu chứng chỉ, CA có thể chắc chắn rằng người gửi có một khoá riêng
tương ứng với khoá công khai. Do đó, người gửi được chứng minh sở hữu.
- Client cũng có thể đưa ra yêu cầu khoá thông qua trình duyệt Web. Trong trường hợp này,
PKCS#10 được sử dụng cùng với SSL. Client thực hiện một kết nối SSL với máy chủ chứng chỉ
và sau đó truyền yêu cầu chứng chỉ thông qua một kênh an toàn.

3.1.2. Các chính sách


- Chính sách an toàn định nghĩa một hướng dẫn cho tổ chức để đảm bảo an toàn thông tin, các
tiến trình và các nguyên tắc sử dụng mật mã. Chính sách định nghĩa tổ chức đó quản lý khoá
công khai, khoá riêng và các thông tin khác như mức kiểm soát được yêu cầu để quản lý các
nhân tố gây mất an toàn như thế nào.
- Một vài hệ thống PKI được vận hành bởi bên thứ ba tin cậy được gọi là thẩm quyền chứng thực
thương mại (Commercial Certificate Authorites) và do đó sẽ yêu cầu một CPS (Certification
Pratice Statement). CPS định nghĩa các chính sách sẽ được triển khai và hỗ trợ như thễ nào,
chứng chỉ sẽ được cấp phát, được chấp nhận và bị thu hồi như thế nào và khoá công khai sẽ được
tạo, được đăng ký và được chứng thực như thế nào. CPS cũng định nghĩa vị trí của những khoá
này.
3.2. Huỷ bỏ chứng chỉ
- Mỗi chứng chỉ đều có một giai đoạn hợp lệ. Giai đoạn hợp lệ của chứng chỉ được tính từ thời
gian chứng chỉ được cấp phát tới khi chứng chỉ hết hạn. Tuy nhiên, có những trường hợp, chứng
chỉ bị mất tính hợp lệ trước khoảng thời gian hết hạn. Trong trường hợp này, chứng chỉ cũng
được phép tiếp tục sử dụng. Tình huống này nảy sinh khi độ an toàn của chứng chỉ không còn (ví
dụ như lộ khoá). Khi chứng chỉ bị mất tính hợp lệ của nó trước thời hạn, thì được gọi là huỷ bỏ
chứng chỉ.
- Chứng chỉ bị huỷ bỏ sẽ phải được công khai. Thông tin về chứng chỉ bị huỷ bỏ sẽ được công bố
trên máy chủ chứng chỉ sao cho người dùng có thể được cảnh báo những chứng chỉ đó. Một cách
thông thường khác cũng hay được sử dụng đó là sử dụng danh sách hủy bỏ chứng chỉ.
III. Các mô hình và các kiểu kiến trúc của PKI

1. Các mô hình PKI


1.1. Mô hình phân cấp CA chặt chẽ (Strict hierachy of CAs)
- Trong mô hình này, có 1 CA đóng vai trò là CA gốc ở trên cùng, phía dưới là các nhánh mở
rộng và các lá ở cuối cùng.
- RootCA đóng vai trò như là gốc tin cậy (nguồn tin cậy) cho toàn bộ miền của các thực thể PKI
dưới nó. Ở dưới Root CA có thể không có hoặc có một vài lớp Intermidiate CA (hay còn được
gọi là subCA).
- Root CA không đơn giản là điểm khởi đầu của một mạng, hay các kết nối, nó còn là điểm khởi
đầu của sự tin cậy. Tất cả các thực thể trong miền đều nắm giữ khóa công khai của CA.
- Trong mô hình này, tất cả các thực thể trong kiến trúc tin cậy rootCA, sự phân cấp được thiết
lập như sau:
+ RootCA được xây dựng và tự cấp chứng chỉ cho mình.
+ RootCA sẽ chứng thực (tạo và ký chứng chỉ) cho các CA trực tiếp dưới nó.
+ Mỗi một CA như trên lại chứng thực cho CA trực tiếp dưới nó.
+ Tại mức gần cuối cùng, CA sẽ chứng thực cho thực thể cuối.
- Mỗi thực thể trong phân cấp phải được cung cấp bản sao khóa công khai của rootCA. Quá trình
tạo khóa công khai này là cơ sở cho quá trình chứng thực tất cả các kết nối sau đó, do đó, quá
trình này phải được thực hiện một cách an toàn.
- Chú ý rằng trong mô hình phân cấp chặt chẽ đa mức (Multilevel Strict Hierarchy), các thực thể
cuối được chứng thực (Nghĩa là được cấp chứng chỉ) bởi CA trực tiếp ngay trên đó, nhưng gốc
tin cậy là rootCA.

1.2. Mô hình phân cấp CA không chặt chẽ (loose hierarchy of CAs)
- Trong mô hình phân cấp CA không chặt chẽ, các bên được chứng thực bởi cùng một CA để
giải quyết vấn đề đường dẫn tin cậy mà không liên quan tới bất kì CA nào mức cao hơn, bao
gồm cả rootCA. Nghĩa là nếu 2 thực thể (Ví dụ thực thể A và B) được chứng thực bởi cùng 1
CA, thì thực thể A và B có thể kiểm tra tính hợp lệ của nhau mà không cần phải tạo 1 đường dẫn
chứng thực tới rootCA. Về cơ bản, thực thể A và B cùng thuộc về phân cấp chủ thể tin cậy của
cả 2. Tuy nhiên, giả sử rằng có 1 thực thể C nào đó được chứng thực bởi 1 CA khác (không phải
CA chứng thực cho A và B) thì thực thể A và B phải thực hiện 1 đường dẫn chứng thực hoàn
toàn thông qua rootCA trước khi tin cậy chứng chỉ của C.

1.3. Mô hình kiến trúc tin cậy phân tán (distributed trust architecture)
- Kiến trúc tin cậy phân tán sẽ phân phối sự tin cậy giữa 2 hay nhiều CA. Nghĩa là thực thể 1 có
thể giữ bản sao khóa công khai của CA1 như nguồn tin cậy của mình, thực thể 2 có thể giữ bản
sao khóa công khai của CA2 như nguồn tin cậy của mình. Bởi vì những khóa công khai của
những CA này đóng vai trò như nguồn tin cậy (CA1 là gốc (root) của hệ thống phân cấp chứa
thực thể 1, CA2 là gốc của hệ thống phân cấp có chứa thực thể 2).
- Nếu mỗi cấu trúc phân cấp này là kiến trúc phân cấp không chặt chẽ thì cấu hình của kiến trúc
đó được gọi là kiến trúc được chia điểm (peered architeture) bởi vì tất cả các CA đều là những
điểm hoàn toàn độc lập (Không có SubCA trong kiến trúc). Trái lại, nếu kiến trúc đó là phân cấp
đa mức thì kiến trúc đó được gọi là kiến trúc hình cây (Treed Architeture).

1.4. Mô hình 4 bên (Four - Corner Model)


- Trong mô hình này minh họa 4 góc của mô hình tin cậy là người thuê bao (subscriber), bên tin
cậy (Relying party), thuê bao của CA (Subscriber’s CA) và bên tin cậy của CA (Relying party’s
CA).
- Mô hình 4 bên này thường được triển khai trong các giao dịch thanh toán điện tử.
- Trong mô hình này, thuê bao sử dụng chứng chỉ được cấp bởi CA của nó.
- Thuê bao và bên tin cậy tương tác và ràng buộc nhau trong các giao dịch điện tử.
- Bên tin cậy tương tác với miền CA (CA domain) của nó để xác thực cho mỗi bên giao dịch.
- Miền CA tương tác khi có yêu cầu xác minh tính hợp lệ/cấp quyền phiên giao dịch.

1.5. Mô hình Web (Web Model)


- Mô hình Web - đúng như tên gọi của nó, phụ thuộc vào các trình duyệt web nổi tiếng như
Netscape Navigator và Microsoft Internet Explorer. Trong mô hình này, số lượng khóa công khai
của CA sẽ được cài đặt sẵn vào một số các trình duyệt. Các khóa này sẽ định nghĩa tập hợp các
CA mà trình người dùng trình duyệt ban đầu sẽ tin tưởng và xem như các root cho việc xác minh
chứng chỉ.
- Mỗi nhà cung cấp trình duyệt đều có root riêng của mình, và nó sẽ chứng thực root CA mà
được nhúng trong trình duyệt.
- Mô hình Web có những ưu điểm rõ rệt để thuận tiện và đơn giản khả năng liên kết. Tuy nhiên,
có một vài vấn đề an toàn cần được quan tâm trong mô hình này khi quyết định triển khai. Ví dụ,
bởi vì người dùng trình duyệt tự động tin tưởng vào tập hợp các khóa đã được cài sẵn trong trình
duyệt, nên an toàn có thể sẽ bị mất nếu các rootCA đó rơi vào “tình trạng nguy hiểm”.
- Một vấn đề an toàn nữa cần được quan tâm đó là trong mô hình web, không có cơ chế thực tế
nào có thể thu hồi bất kỳ khóa của root đã được nhúng trong trình duyệt. Nếu chúng ta phát hiện
ra một những những CA “đang trong tình trạng nguy hiểm” hoặc khóa riêng tương ứng với bất
kỳ khóa công khai của root bị lộ, thì hiển nhiên là không thể tiếp tục sử dụng khóa đó trong hàng
triệu các trình duyệt web trên thế giới.

1.6. Mô hình tin cậy lấy người dùng làm trung tâm (User - Centric Trust)
- Trong mô hình tin cậy lấy người dùng làm trung tâm, mỗi người dùng sẽ phải chịu trách nhiệm
trực tiếp và toàn bộ để quyết định xem sẽ sử dụng chứng chỉ nào và từ chối chứng chỉ nào. Mỗi
người dùng sẽ giữ 1 vòng khóa và vòng khóa này sẽ đóng vai trò như CA của họ. Vòng khóa này
chứa các khóa công khai được tin cậy của những người sử dụng khác trong cộng đồng. Mô hình
này được Zimmerman phát triển để sử dụng trong chương trình phát triển phần mềm bảo mật
PGP.
- Quyết định này có thể chịu ảnh hưởng của một số nhân tố, mặc dù ban đầu tập hợp các khóa tin
cậy thông thường bao gồm các nhân tố là bạn bè, gia đình, đồng nghiệp,…
- Mô hình này được sử dụng rộng rãi trong phần mềm an ninh nổi tiếng là Pretty Good Privacy
(PGP). Trong PGP, người dùng xây dựng mạng lưới tín nhiệm (Web of Trust) đóng vai trò là CA
(ký tên khóa công khai cho các thực thể khác).

2. Các kiểu kiến trúc


- Có một vài kiểu kiến trúc mà PKI có thể triển khai để cung cấp “chuỗi tin cậy” từ một khóa
công khai đã biết nhằm xác thực thông qua khóa công khai cụ thể của người dùng. Ví dụ khi
người dùng xác thực họ với các ứng dụng của e-Government thì phần mềm ứng dụng mật mã sẽ
xác minh chữ ký trong chứng chỉ của người dùng bằng cách sử dụng khóa công khai của CA mà
tạo ra chứng chỉ đó. Nếu khóa của CA không phải khóa của root thì chứng chỉ chứa nó cũng sẽ
phải xác minh tính hợp lệ bằng khóa khai để ký chứng chỉ đó. Và tiếp tục đến khi nào chứng chỉ
trong “chuỗi tin cậy” có thể được xác minh bằng khóa của root. Chuỗi xác minh tính hợp lệ có
nghĩa là sẽ xác thực tất cả các chứng chỉ, bao gồm tất cả chứng chỉ của người dùng cuối.

2.1. Kiến trúc kiểu Web of Trust


- Đối với kiểu kiến trúc này, mỗi người dùng sẽ tạo và ký chứng chỉ cho người mà mình đã biết.
Do đó không cần phát triển phải có hạ tầng trung tâm.
- Mô hình này hoạt động hiệu quả đối với tổ chức nhỏ, có sự tồn tại mối quan hệ trước đó, nhưng
lại không hiệu quả đối với với tổ chức lớn, nơi cần có sự đảm bảo (ví dụ phải xác thực được yêu
cầu trước khi chứng chỉ được cấp phát). Sự giao tiếp của trạng thái chứng chỉ đối với các bên tin
cậy cũng là rất khó với mô hình này.

2.2. Kiến trúc kiểu CA đơn (Single CA)


- Dạng kiến trúc đơn giản nhất là CA đơn. Kiến trúc này cấp chứng chỉ và cung cấp thông tin
trạng thái chứng chỉ cho mỗi người dùng. Khóa công khai của CA là điểm tin cậy cơ bản, hay
còn gọi là nguồn tin cậy, được dùng để đánh giá khả năng chấp nhận chứng chỉ. Người dùng có
mối quan hệ trực tiếp với CA, vì vậy họ biết những ứng dụng nào mà chứng chỉ cần được sử
dụng.
- Kiểu kiến trúc CA đơn dễ quản lý, bởi vì việc quản trị chỉ liên quan đến một CA root. Tuy
nhiên nếu CA bị lỗi, thì dịch vụ chứng chỉ sẽ không sẵn sàng để xử lý các yêu cầu chứng chỉ, các
yêu cầu làm mới chứng chỉ hay danh sách thu hồi chứng chỉ cho tới khi CA khôi phục lại được
dịch vụ.
- Kiến trúc phân cấp CA đơn thông thường chỉ được sử dụng khi việc quản trị là đơn giản, giá
thành thấp.
- Dạng mở rộng của kiểu kiến trúc CA này là kết nối tới các CA để hỗ trợ cộng đồng người dùng
khác nhau. Các tổ chức có thể kết nối các CA cô lập thành các PKI lớn sử dụng mối quan hệ
điểm-điểm.

2.3. Kiến trúc CA phân cấp


- Kiến trúc mô hình CA phân cấp bao gồm một root CA ở đỉnh, phía dưới là 1 hay 2 lớp CA
(Khóa công khai của các CA này được ký bởi root CA) và sau đó là các thuê bao và các RA ở
phía dưới. Mỗi khóa được tin tưởng nhất của người dùng là khóa công khai của rootCA. Mô hình
này cho phép sự thi hành các chính sách và các chuẩn thông qua hạ tầng, tạo ra mức đảm bảo
tổng thể cao hơn là các kiến trúc đa CA khác.
- Trong mô hình này, root CA sẽ cấp chứng chỉ cho các sub CA nhưng không cấp chứng chỉ cho
người dùng. Các subCA này lại cấp chứng chỉ cho các SubCA khác hoặc cho người dùng.

2.4. Kiến trúc kiểu chứng thực chéo (Cross - certificate)


- Trong mô hình này, mỗi CA tạo ra các chứng chỉ cho các CA mà đã xác minh là “đủ mạng” để
sở hữu chứng chỉ. Trong mô hình phân cấp, mỗi người chỉ có một khóa công khai của root,
nhưng trong mô hình này, khóa đó là khóa của CA cục bộ của chúng chứ không phải là khóa của
rootCA.
- Vấn đề của mô hình này là khó khăn với ứng dụng người dùng để xác định chuỗi chứng chỉ
giữa người dùng sở hữu CA không có đường liên kết chứng thực chéo.
- Mô hình này phải đối mặt với vấn đề “ai là rootCA” (không ai/hoặc là tất cả các CA), cho phép
các CA trở thành cấu trúc điểm thay vì phân cấp, nhưng cũng giống như mô hình Web of Trust,
chứng thực chéo sẽ tạo ra mức đảm bảo đồng nhất cho toàn hệ thống.

2.5. Kiến trúc Bridge CA (BCA)


- Bridge CA được thiết kế để giải quyết các thiếu sót trong các kiến trúc PKI cơ bản và tạo kết
nối các PKI khác nhau. Bridge CA không cấp chứng chỉ cho người dùng và chúng không phải là
nguồn tin cậy. Thay vào đó, Brigde CA sẽ thiết lập mối quan hệ tin cậy peer to peer (P2P) giữa
các cộng đồng người dùng khác nhau và làm giảm nhẹ vấn đề cấp phát chứng chỉ giữa các tổ
chức trong khi đó lại cho phép người dùng giữ được nguồn tin cậy.
- Trong kiểu kiến trúc này, Brigde CA sẽ cung cấp một cái cầu tin cậy (thông qua cặp chứng thực
chéo) giữa các cơ sở hạ tầng khóa công khai phân cấp và cơ sở hạ tầng khóa công khai chứng
thực chéo. Độ phức tạp của mô hình này khá cao và có thể phải điều chỉnh các module PKI của
người dùng cuối.

You might also like