Trong đó:
Chính phủ (đại diện là MIC): ban hành khung luật pháp, kế hoạch xây dựng và sử dụng CA trong chính phủ điện tử, quản lý các nhà cung cấp CA.
Root CA: Vận hành hệ thống chứng thực quốc gia, cấp phép CA cho các nhà cung cấp dịch vụ.
Doanh nghiệp cung cấp CA - licensed CA (hay SubCA): quản lý chứng thực, cấp mới, hủy, thay đổi CA.
Với mô hình trên, các doanh nghiệp – nhà thầu tham gia trong hệ thống đấu thầu qua mạng sẽ được cấp CA bởi các doanh nghiệp dịch vụ và các cơ quan chính phủ (chủ đầu tư) sẽ do Ban cơ yếu chính phủ cấp CA.
3.2.1.2. Tiến độ triển khai
Mặc dù khung pháp lý phần nào đã được xây dựng và mô hình kiến trúc, công nghệ cũng như đơn vị chịu trách nhiệm xây dựng và quản lý đã được quy định trong Nghị định 26, tuy nhiên mãi cho đến gần đây (tháng
10/2008), Bộ TTTT mới xây dựng xong được Root CA đặt tại trụ sở của Trung tâm chứng thực số Quốc gia. Trên cơ sở Root CA này, Bộ TTTT sẽ tiến hành cấp phép cho các Sub CA. Qua tìm hiểu, hiện nay có một số công ty đã xây dựng và triển khai thử nghiệm PKI như VDC, Viettel, VTC, NCS, Bộ Tài chính, Ngân hàng Nhà nước, … tuy nhiên cho đến thời điểm hoàn thành luận văn này vẫn chưa có đơn vị nào được cấp phép trở thành một Sub CA của Root CA ở trên, ngay cả mẫu hồ sơ xin cấp phép cũng chưa được ban hành chính thức. Như vậy có thể nói hiện nay phong trào xây dựng CA của các đơn vị đang phát triển, tuy nhiên có thể khẳng định là việc triển khai PKI theo đúng nghĩa quy định trong các văn bản pháp lý là chưa thể thực hiện trong tương lai gần.
3.2.1.3. Xây dựng khung pháp lý
Vấn đề xây dựng khung pháp lý đã được trình bày chi tiết trong phần 7.2 – Khung pháp lý cho PKI ở Việt Nam, ở đây chỉ cần bổ sung thêm rằng một khi đã xây dựng xong phần công nghệ cho CA thì còn phải ban hành một chính sách bảo mật bao gồm tối thiểu 02 tài liệu là Bộ chính sách chứng chỉ (CP) và Bộ thủ tục thi hành chứng chỉ (CPS)
3.2.2. Đề xuất xây dựng CA cho hệ thống đấu thầu qua mạng
Như trên đã trình bày, CA là một yếu tố không thể thiếu được khi triển khai dự án đấu thầu qua mạng. Việc triển khai CA cho dự án phụ thuộc rất nhiều vào tiến độ triển khai Root CA của Bộ TT&TT và của Ban Cơ Yếu. Hiện nay, Bộ TT&TT đã triển khai Root CA và như vậy thì CA của dự án có thể là một bộ phận của Root CA. Hệ thống CA nội bộ trong dự án sẽ kết nối tương tác với Root CA của MIC để đảm bảo sự thống nhất chung. Theo mô hình trên, để triển khai được dự án, yêu cầu các thành phần như Root CA, các doanh nghiệp cung cấp CA (Licensed CA), CA của ban cơ yếu chính phủ phải đồng thời cung cấp được dịch vụ và phù hơp với tiến độ dự án. Tuy nhiên, một thực tế là ngay trong giai đoạn triển khai thí điểm đấu thầu qua mạng (2009 – 2010) thì vẫn chưa có một đơn vị nào có thể triển khai kịp việc cung cấp CA cho các doanh nghiệp và tổ chức. Vì vậy, giải pháp dự phòng là cần thiết, tức là xây dựng một CA dùng trước cho mạng đấu thầu quốc gia, sau đó khi hạ tầng PKI của quốc gia chính thức đi vào hoạt động thì có thể xem xét chuyển sang dùng CA của một trong những SubCA được công nhận hoặc nâng cấp CA trong giai đoạn thí điểm này lên thành một SubCA của Root CA quốc gia.
Sau đây, NVLV sẽ trình bày những vấn đề liên quan tới việc triển khai hệ thống CA trong thực tế để sao cho có thể áp dụng vào hệ thống đấu thầu qua mạng ngay trong giai đoạn thí điểm.
Như trong phần II đã trình bày, một hệ thống CA cần có các thành phần sau:
Những người dùng cuối; Tổ chức chứng thực; Chính sách chứng thực; Quy chế chứng thực; HSM; Chứng chỉ số; Tổ chức đăng kí; Kho chứng chỉ số
Do đó, việc xây dựng CA cho mạng đấu thầu quốc gia cũng cần phải có đầy đủ các thành phần nêu trên.
3.2.2.1. Lựa chọn mô hình
Thông thường, trước khi xây dựng CA cho một hệ thống nào đó, trước tiên phải lựa chọn mô hình phù hợp. Việc lựa chọn mô hình nào cần căn cứ vào định hướng mô hình PKI chung của Nhà nước cũng như đặc điểm tổ chức của hệ thống đấu thầu qua mạng và các dịch vụ sử dụng trong hệ thống. Trước tiên, NVLV xin nêu lại một số mô hình CA điển hình, phân tích ưu, nhược điểm của từng mô hình qua đó lựa chọn mô hình phù hợp nhất để áp dụng cho mạng đấu thầu quốc gia.
Kiến trúc phân cấp
Trong kiến trúc này, các CA đều nằm dưới một CA gốc. CA gốc cấp các thẻ xác nhận cho những CA thứ cấp. Đến lượt các CA này lại cấp các thẻ xác nhận cho những CA ở mức thấp hơn.
Trong mô hình này, tất cả các đối tượng trong hệ thống đều phải biết khoá công khai của CA gốc. Tất cả các thẻ xác nhận đều có thể được kiểm chứng bằng cách kiểm tra đường dẫn của thẻ xác nhận đó đến CA gốc.
Như vậy, trong kiến trúc của hệ thống PKI này, tất cả các đối tượng đều dựa trên sự tin cậy đối với CA gốc duy nhất. Khoá công khai của CA gốc phải được phân phát cho các đối tượng đã được xác thực để đảm bảo sự tin cậy trong hệ thống. Sự tin cậy này được hình thành theo các cấp từ CA gốc đến các CA thứ cấp và đến các đối tượng sử dụng.
Một số đánh giá về kiến trúc hệ thống CA phân cấp như sau:
Ưu điểm của kiến trúc CA phân cấp:
1. Cấu trúc hệ thống quản lý của hầu hết các tổ chức đều có dạng phân cấp. Các mối quan hệ trong mô hình phân cấp cũng khá giống với các quan hệ trong các tổ chức. Vì vậy, ta có thể coi các nhánh của quá trình xác nhận đối tượng giống với các nhánh trong cấu trúc của tổ chức.
2. Kiến trúc phân cấp này cũng gần giống với hình thức phân cấp trong việc tổ chức thư mục. Do đó dễ tiếp cận và hiểu hơn.
3. Cách thức tìm ra một nhánh xác nhận là theo một hướng nhất định, không có hiện tượng vòng lặp. Do vậy, quá trình xác nhận được thực hiện đơn giản và nhanh chóng.
4. Tất cả các đối tượng sử dụng đều có nhánh xác nhận hướng về CA gốc, do vậy, nêu một đối tượng sử dụng A cung cấp cho B thông tin về nhánh xác nhận của mình thì B cũng có thể thực hiện xác nhận theo hướng đó vì B cũng biết khoá công khai của CA gốc.
Nhược điểm của kiến trúc CA phân cấp:
1. Trên một phạm vi lớn, không thể chỉ có một CA duy nhất để đảm nhận tất cả các quá trình xác nhận.
2. Các quan hệ kinh doanh, thương mại không phải lúc nào cũng có dạng phân cấp.
3. Khi khoá riêng của CA gốc bị tiết lộ thì toàn bộ hệ thống sẽ bị nguy hiểm. Nếu có khắc phục bằng cách thay cặp khoá mới thì thông tin về khoá công khai của CA gốc phải được truyền đến cho tất cả các đối tượng trong hệ thống. Điều này đòi hỏi thời gian và một lưu lượng truyền thông rất lớn.
Kiến trúc hệ thống CA mạng lưới
Trong kiến trúc này, việc các CA thực hiện xác nhận ngang hàng đã tạo nên một mạng lưới các mối quan hệ tin cậy lẫn nhau giữa các CA ngang hàng. Các đối tượng nắm được khoá công khai của CA “gần” mình nhất. Thông thường, đây là CA cấp cho đối tượng đó thẻ xác nhận. Các đối tượng kiểm chứng một thẻ xác nhận bằng cách kiểm tra quá trình xác nhận với đích là CA đã phát hành thẻ xác nhận đó. Các CA sẽ xác nhận ngang hàng bằng cách phát hành cho nhau những thẻ xác nhận.
Ưu điểm của kiến trúc CA mạng lưới
1. Đây là một kiến trúc linh động, nó thích hợp với các mối liên hệ và mối quan hệ tin cậy lẫn nhau trong thực tế của công việc kinh doanh.
2. Một đối tượng sử dụng ít nhất phải tin cậy CA cấp phát thẻ xác nhận cho nó. Có thể coi đây là cơ sở để tạo nên tất cả các mối quan hệ tin tưởng lẫn nhau.
3. Các CA có thể xa nhau trong mô hình tổ chức nhưng những đối tượng sử dụng của nó lại làm việc cùng nhau với mức ưu tiên cao có thể xác nhận ngang hàng theo một cách thức có độ ưu tiên cao. Độ ưu tiên này chỉ được giới hạn trong phạm vi của các CA này.
4. Kiến trúc này cho phép các CA có thể xác nhận ngang hàng một cách trực tiếp trong trường hợp các đối tượng sử dụng của chúng liên lạc với nhau thường xuyên để giảm tải lượng đường truyền và thao tác xử lý. 5. Việc khôi phục hệ thống do khoá riêng của một CA bị tiết lộ sẽ chỉ
gồm việc phân phát một cách an toàn khoá công khai mới của CA đến các đối tượng mà CA này cấp phát thẻ xác nhận.
Nhược điểm của mô hình CA mạng lưới
1. Do cấu trúc của mạng có thể rất phức tạp nên việc tìm kiếm các đối tượng rất khó khăn. Trong trường hợp có nhiều đường truyền đến một đối tượng khác thì bài toán tìm đường đi ngắn nhất đến đối tượng đó có thể rất phức tạp.
2. Một đối tượng không thể đưa ra một nhánh xác nhận duy nhất mà có thể đảm bảo tất cả các đối tượng khác trong hệ thống có thể thực hiện được.
Kiến trúc danh sách tin cậy
Đây là kiến trúc được áp dụng rộng rãi đối với dịch vụ Web. Trong đó, các trình duyệt và các máy chủ là những đối tượng sử dụng tiêu biểu nhất. Trong mô hình này, các trình duyệt đều lưu một file riêng chứa các thẻ xác nhận gốc của các CA được tin cậy. File này tồn tại ngay khi trình duyệt được cài đặt. Việc quản lý file này có thể được thực hiện bởi các cá nhân sử dụng trình duyệt. Các tổ chức cũng có thể cấp quyền cho việc tải hoặc quản lý các thông tin từ một máy chủ của tổ chức. Đối với mỗi file này, người sử dụng có thể bổ sung hoặc xóa bớt những thẻ xác nhận khỏi danh sách. Tuy nhiên, khả năng xử lý cách nhánh xác nhận của các ứng dụng hiện còn khá hạn chế.
Các trình duyệt có thể sử dụng các cặp khóa công khai/khoá riêng để ký, để kiểm chứng, giải mã hoặc mã hoá các thư điện tử theo chuẩn S/MIME. Với các thẻ xác nhận, các trình duyệt cũng có thể thiết lập các phiên truyền thông an toàn SSL (Secure Sockets Layer). SSL là một giao thức xác thực và mã hoá ở tầng chuyển vận. Trong một phiên truyền thông SSL, người dùng có thể gửi đi một mẫu biểu hoặc nhận về các thông tin từ một máy chủ dưới hình thức được mã hoá và xác thực. Mặt khác, các trình duyệt còn có thể kiểm chứng các chữ ký số được áp dụng đối với thông tin được truyền đi.
Ưu điểm của kiến trúc danh sách tin cậy
1. Đây là kiến trúc đơn giản, quá trình truyền thông và xác nhận theo một hướng duy nhất, hơn nữa, mô hình này có thể được triển khai khá dễ dàng.
2. Trong kiến trúc này này, các đối tượng sử dụng có toàn quyền quản lý file lưu trữ danh sách thẻ xác nhận của các CA mà mình tin cậy.
3. Kiến trúc này có thể làm việc rất tốt với giao thức quản lý trạng thái thẻ xác nhận trực tiếp do các nhánh xác thực khá đơn giản. Hơn nữa, những yêu cầu về trạng thái thẻ xác nhận chỉ được gửi tới các CA ở trong danh sách các CA được tin cậy.
Nhược điểm của kiến trúc danh sách tin cậy
1. Người sử dụng có toàn quyền nội dung của file chứa thẻ xác nhận của các CA mà nó tin cậy. Do vậy việc quản lý danh sách các CA được tin cậy của một tổ chức là rất khó khăn.
2. Việc khởi tạo danh sách mặc địch các CA được tin cậy khi cài đặt một trình duyệt sẽ dẫn đến việc khó đảm bảo tính xác thực trong quá trình khởi tạo thông tin về khoá công khai của các CA này. Đây có thể là một kẽ hở để các đối tượng tấn công lợi dụng.
3. Không phải tất cả những người sử dụng đều có khả năng quản lý tốt một file chứa quá nhiều thẻ xác nhận của các CA mà mình tin cậy. 4. Cấu trúc thẻ xác nhận không có nhiều hỗ trợ cho việc tìm ra các nhánh
xác nhận.
5. Không có những hỗ trợ trực tiếp đối với các cặp thẻ xác nhận ngang hàng. Do vậy, nó hạn chế khả năng của CA trong quản lý sự tin cậy của mình đối với các CA khác.
6. Các chính sách đối với thẻ xác nhận không được hỗ trợ, do vậy, cần phải có một CA quản lý một số CA khác để có thể áp dụng các chính sách thẻ xác nhận và các mức đảm bảo. Điều này dẫn đến việc tăng số CA được tin cậy trong file của mỗi đối tượng sử dụng.
7. Hiện tại các trình duyệt không hề hỗ trợ tính năng tự động lấy thông tin trạng thái hoặc huỷ bỏ các thẻ xác nhận.
Qua phân tích trên đây, kết hợp với việc phải đồng bộ với mô hình CA chung của quốc gia đã theo mô hình phân cấp. Vì vậy mô hình lựa chọn để triển khai cho mạng đấu thầu quốc gia là mô hình phân cấp.
3.2.2.2. Mô hình công nghệ
Xét về khía cạnh đối tượng người dùng, hệ thống đấu thầu qua mạng có thể chia thành 2 nhóm đối tượng chính: nhóm 1 là những người quản trị, chủ đầu tư. Nhóm 2 là các nhà thầu. Theo thống kê, số lượng người dùng nhóm thứ nhất vào khoảng 15.000 đến 20.000 người, số lượng nhóm thứ hai vào khoảng 100.000 người.
Như vậy, hệ thống CA này được thiết kế phân cấp nên bao gồm RootCA và 2 SubCA, mỗi SubCA tương ứng với một nhóm người dùng ở trên.
Bên cạnh trung tâm CA chính phải có một trung tâm CA dự phòng có 2 SubCA tương ứng.
Hệ thống được thiết kế phải có khả năng cung cấp chứng chỉ số cho khoảng 20.000 người dùng nội bộ và các chủ đầu tư và 100.000 người dùng là các nhà thầu trên toàn quốc thông qua hệ thống thư mục. Hệ thống có khả năng mở rộng trong tương lai đáp ứng việc cấp phát và quản lý chứng chỉ số cho số lượng người dùng từ vài trăm ngàn đến cả triệu.
Hệ thống phải đáp ứng và đảm bảo khả năng kết nối với các CA khác bằng phương pháp xác thực chéo.
Các chứng chỉ sinh ra từ hệ thống có khả năng cung cấp các cặp khoá dùng cho mã hoá, cặp khoá dùng cho ký điện tử, cặp khoá dùng cho việc kiểm tra tính chống từ chối và cặp khoá phục vụ cho hệ thống mã hoá dữ liệu trên PC.
Chứng chỉ số của người dùng phải có khả năng lưu trữ trong các USB Token hoặc thẻ (Smart Card), PC.
Hệ thống phải đảm bảo chứng thực cho chứng chỉ và khoá mã đã phát hành.
Ngoài ra, hệ thống đấu thầu qua mạng còn phải hỗ trợ việc tìm kiếm và truy xuất thông tin qua điện thoại di động, việc này cho phép các nhà thầu có thể tìm kiếm hoặc thậm chí đấu thầu trực tuyến ngay cả khi đang di chuyển.