LỜI MỞ ĐẦU.4
CHƯƠNG I : MẬT MÃ KHÓA CÔNG KHAI VÀ CHỮ KỸ SỐ.5
I. Mật mã khóa công khai.5
1. Khái niệm.5
2. Các thuật toán sử dụng trong mật mã khóa công khai.5
2.1. Thuật toán RSA .5
2.2. Thuật toán thỏa thuận khóa Diffie-Hellman.6
II. Chữ ký số .6
CHƯƠNG 2: TỔNG QUAN VỀ PKI .8
I. Giới thiệu .8
1. Lịch sử.8
2. Khái niệm.9
3. Mục tiêu chức năng.10
4. Các khía cạnh an toàn .10
II. Mô hình PKI và các thành phần .12
1. Các thành phần.12
1.1. Tổ chức chứng thực (CA).13
1.2. Trung tâm đăng ký (RA).14
1.3. Thực thể cuối (End Entity) .15
1.4. Hệ thống lưu trữ (Repositories).15
2. Các mô hình PKI (các loại mô hình) .16
39 trang |
Chia sẻ: honganh20 | Ngày: 12/02/2022 | Lượt xem: 481 | Lượt tải: 1
Bạn đang xem trước 20 trang tài liệu Đề tài Nghiên cứu xây dựng hệ thống PKI dựa trên mã nguồn mở OpenCA, để xem tài liệu hoàn chỉnh bạn click vào nút DOWNLOAD ở trên
u (văn bản, hình ảnh, video, ) nhằm
mục đích xác định người chủ của dữ liệu đó.
- Để sử dụng chữ ký số thì dữ liệu cần phải được mã hóa bằng hàm băm (dữ liệu
được “băm” ra thành chuỗi, thường có độ dài cố định và ngắn hơn văn bản) sau
đó dùng khóa bí mật của người chủ khóa để mã hóa, khi đó ta được chữ ký số.
Nghiên cứu, xây dựng hạ tầng khóa công khai PKI dựa trên OpenCA
7
Khi cần kiểm tra, bên nhận giải mã với khóa công khai để lấy lại chuỗi gốc
(được sinh ra qua hàm băm ban đầu) và kiểm tra lại với hàm băm vừa nhận
được. Nếu 2 giá trị này khớp nhau thì bên nhận có thể tin tưởng rằng dữ liệu
xuất phát từ người sở hữu khóa bí mật.
- Chữ ký số khóa công khai dựa trên nền tảng mật mã khóa công khai. Để có thể
trao đổi thông tin trong môi trường này, mỗi người sử dụng có một cặp khóa:
khóa công khai và khóa bí mật. Khóa công khai được công bố rộng rãi còn khóa
bí mật phải được giữ kín và không thể tìm được khóa bí mật nếu chỉ biết khóa
công khai.
- Toàn bộ quá trình gồm 3 thuật toán:
• Thuật toán tạo khóa
• Thuật toán tạo chữ ký số
• Thuật toán kiểm tra chữ ký số
Hình 1: Sơ đồ tạo và kiểm tra chữ ký số
Nghiên cứu, xây dựng hạ tầng khóa công khai PKI dựa trên OpenCA
8
CHƯƠNG 2: TỔNG QUAN VỀ PKI
I. Giới thiệu
1. Lịch sử
- Việc Diffie, Hellman, Rivest, Shamir, và Adleman công bố công trình nghiên
cứu về trao đổi khóa an toàn và thuật toán mật mã hóa khóa công khai vào
năm 1976 đã làm thay đổi hoàn toàn cách thức trao đổi thông tin mật. Cùng với
sự phát triển của các hệ thống truyền thông điện tử tốc độ cao (Internet và các hệ
thống trước nó), nhu cầu về trao đổi thông tin bí mật trở nên cấp thiết. Thêm vào
đó một yêu cầu nữa phát sinh là việc xác định định dạng của những người tham
gia vào quá trình thông tin. Vì vậy ý tưởng về việc gắn định dạng người dùng
với chứng thực được bảo vệ bằng các kỹ thuật mật mã đã được phát triển một
cách mạnh mẽ.
- Nhiều giao thức sử dụng các kỹ thuật mật mã mới đã được phát triển và phân
tích. Cùng với sự ra đời và phổ biến của World Wide Web, những nhu cầu về
thông tin an toàn và nhận thực người sử dụng càng trở nên cấp thiết. Chỉ tính
riêng các nhu cầu ứng dụng cho thương mại (như giao dịch điện tử hay truy cập
những cơ sở dữ liệu bằng trình duyệt web) cũng đã đủ hấp dẫn các nhà phát triển
lĩnh vực này. Taher ElGamal và các cộng sự tại Netscape đã phát triển giao thức
SSL (https trong địa chỉ web) trong đó bao gồmthiết lập khóa, nhận thực máy
chủ... Sau đó, các thiết chế PKI được tạo ra để phục vụ nhu cầu truyền thông an
toàn.
- Các nhà doanh nghiệp kỳ vọng vào một thị trường hứa hẹn mới đã thành lập
những công ty hoặc dự án mới về PKI và bắt đầu vận động các chính phủ để
Nghiên cứu, xây dựng hạ tầng khóa công khai PKI dựa trên OpenCA
9
hình thành nên khung pháp lý về lĩnh vực này. Một dự án của American Bar
Association đã xuất bản một nghiên cứu tổng quát về những vấn đề pháp lý có
thể nảy sinh khi vận hành PKI (xem thêm: các hướng dẫn chữ ký số ABA).
Không lâu sau đó, một vài tiểu bang của Hoa kỳ mà đi đầu là Utah (năm 1995)
đã thông qua những dự luật và quy định đầu tiên. Các nhóm bảo vệ quyền lợi
người tiêu dùng thì đặt ra các vấn đề về bảo vệ quyền riêng tư và các trách
nhiệm pháp lý.
- Tuy nhiên, các luật và quy định đã được thông qua lại không thống nhất trên thế
giới. Thêm vào đó là những khó khăn về kỹ thuật và vận hành khiến cho việc
thực hiện PKI khó khăn hơn rất nhiều so với kỳ vọng ban đầu.
- Tại thời điểm đầu thế kỷ 21, người ta nhận ra rằng các kỹ thuật mật mã cũng
như các quy trình/giao thức rất khó được thực hiện chính xác và các tiêu
chuẩn hiện tại chưa đáp ứng được các yêu cầu đề ra.
- 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.
2. Khái niệm
- 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.
Nghiên cứu, xây dựng hạ tầng khóa công khai PKI dựa trên OpenCA
10
- 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.
3. 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ậtcủ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.
4. Các khía cạnh an toà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 quy 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 phải đả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 khía cạnh an
toàn mà PKI cung cấp bao gồm:
a) Đă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 đó).
Nghiên cứu, xây dựng hạ tầng khóa công khai PKI dựa trên OpenCA
11
b) Đăng nhập một lần an toàn
- Đăng nhập một lần an toà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ớ 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 lại 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à ứng dụng. Tuy nhiên chúng ta cũng 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 rất được mong
muốn bởi vì các mật khẩu 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 truyề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.
c) 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 đó chính 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ề 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à khóa.
Nghiên cứu, xây dựng hạ tầng khóa công khai PKI dựa trên OpenCA
12
- Người dùng cũng không cần phải biết về 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 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.
d) 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ệ khóa 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ủ.
- 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 khóa đượ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. Mô hình PKI và các thành phần
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.
Các thành phần PKI và các mối quan hệ giữa chúng ch ỉ ra như trong hình sau đây:
Nghiên cứu, xây dựng hạ tầng khóa công khai PKI dựa trên OpenCA
13
Hình 2: Các thành phần PKI
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. 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”.
Nghiên cứu, xây dựng hạ tầng khóa công khai PKI dựa trên OpenCA
14
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 chi 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).
Nghiên cứu, xây dựng hạ tầng khóa công khai PKI dựa trên OpenCA
15
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á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ỉ 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ữ:
o X.500 Directory System Agents (DSAs)
o Lightweight Directory Access Protocol (LDAP) Server
o Online Certificate Status Protocol (OCSP) Responder
o Domain Name System (DNS) và Web Server
o File Transfer Protocol (FTP) Server và Corporate Databases
Nghiên cứu, xây dựng hạ tầng khóa công khai PKI dựa trên OpenCA
16
2. Các mô hình PKI (các loại mô hình)
2.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).
Hình 3:Mô hình phân cấp CA chặt chẽ
- 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ó.
Nghiên cứu, xây dựng hạ tầng khóa công khai PKI dựa trên OpenCA
17
- 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.
2.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.
2.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
Nghiên cứu, xây dựng hạ tầng khóa công khai PKI dựa trên OpenCA
18
đó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).
Hình 4: Mô hình kiến trúc tin cậy phân tán
Nghiên cứu, xây dựng hạ tầng khóa công khai PKI dựa trên OpenCA
19
2.4. Mô hình 4 bên (Four – Coner Model)
Hình 5: mô hình 4 bên
- 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
(subcriber), bên tin cậy (Relying party), thuê bao của CA (Subcriber’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.
Nghiên cứu, xây dựng hạ tầng khóa công khai PKI dựa trên OpenCA
20
2.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ỉ.
Hình 6: Mô hình web
- 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”.
Nghiên cứu, xây dựng hạ tầng khóa công khai PKI dựa trên OpenCA
21
- 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.
2.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
Nghiên cứu, xây dựng hạ tầng khóa công khai PKI dựa trên OpenCA
22
Hình 7: Mô hình tin cậy lấy người dùng làm trung tâm
- 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).
3. 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ỉ
Nghiên cứu, xây dựng hạ tầng khóa công khai PKI dựa trên OpenCA
23
đó. 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.
Hình 8: Chuỗi tin cậy
3.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.
Nghiên cứu, xây dựng hạ tầng khóa công khai PKI dựa trên OpenCA
24
Hình 9: Kiến trúc kiểu Web of Trust
- 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.
3.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 chi 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
Nghiên cứu, xây dựng hạ tầng khóa công khai PKI dựa trên OpenCA
25
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.
Hình 10: Kiến trúc CA đơn
Nghiên cứu, xây dựng hạ tầng khóa công khai PKI dựa trên OpenCA
26
- 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.
3.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.
Hình 11: Kiến trúc CA phân cấp
Nghiên cứu, xây dựng hạ tầng khóa công khai PKI dựa trên OpenCA
27
- 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.
3.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.
Hình 12: Kiến trúc kiểu chứng thực chéo
Nghiên cứu, xây dựng hạ tầng khóa công khai PKI dựa trên OpenCA
28
- 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ữ 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.
3.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
Các file đính kèm theo tài liệu này:
- de_tai_nghien_cuu_xay_dung_he_thong_pki_dua_tren_ma_nguon_mo.pdf