Đề tài Nghiên cứu xây dựng hệ thống PKI dựa trên mã nguồn mở OpenCA

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

pdf39 trang | Chia sẻ: honganh20 | Ngày: 12/02/2022 | Lượt xem: 356 | Lượt tải: 1download
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:

  • pdfde_tai_nghien_cuu_xay_dung_he_thong_pki_dua_tren_ma_nguon_mo.pdf