Triển khai PKI trên thế giới: Triển vọng và thách thức
Hạ tầng khóa công khai (PKI) thương mại đầu tiên trên thế giới bảo đảm cho hoạt động của dịch vụ CTĐT đã ra đời vào năm 1994 do hãng Entrust thực hiện. Tuy vậy, mãi đến cuối những năm 90 của thế kỷ XX thì công nghệ PKI mới được triển khai rộng rãi và phát triển hoàn thiện để đóng vai trò là một bên thứ ba tin cậy có thẩm quyền chứng thực cho hoạt động CTĐT của các thuê bao hay người sử dụng cuối.
Hoạt động CTĐT không chỉ là cung cấp dịch vụ CKS đơn thuần, dịch vụ bảo mật thông tin điện tử (TTĐT) sử dụng kết hợp mật mã khóa công khai và khóa đối xứng mà còn cung cấp các dịch vụ khác như gắn tem thời gian, cung cấp trạng thái trực tuyến của chứng thư số (CTS). Tất cả những yêu cầu này là nhằm làm cho CTS có giá trị như chữ ký và con dấu của cấp có thẩm quyền trên văn bản giấy truyền thống. Vì vậy cần phải có một hạ tầng PKI hoạt động trực tuyến thường trực.
Việc ứng dụng PKI thực hiện chức năng cung cấp và hỗ trợ dịch vụ CKS đã làm cho hạ tầng PKI phức tạp về mặt thiết kế và vận hành. Và đây là lý do đầu tiên làm cho dịch vụ CTĐT hay dịch vụ CA tuy cấp thiết mà đến nay vẫn chưa được triển khai trên diện rộng.
Hoạt động CTĐT tại mỗi quốc gia trên thế giới thường không theo một hệ thống thống nhất và tập trung. Người ta đã không thể thiết kế các mô hình trước rồi mới triển khai hạ tầng PKI mà các hạ tầng PKI thường tự phát hình thành trước rồi mới sinh ra nhu cầu kết nối liên tác theo mô hình nào được cho là hợp lý với nhau. Vì vậy, có rất nhiều vấn đề nảy sinh trong quá trình giao tác.
Khi kết nối các mô hình PKI cần phải giải quyết vấn đề tương thích về chính sách, về công nghệ giữa các Root CA cũng như giữa các ứng dụng của người sử dụng cuối.
Hai ứng dụng của người dùng cuối thuộc hai Root CA khác nhau có thể không tương thích để làm việc được với nhau cho dù các Root CA có thể kết nối được với nhau qua một mô hình thỏa thuận và đây cũng là một trở ngại cho việc triển khai CA.
Khi dựa trên hạ tầng PKI để cung cấp dịch vụ ký số và bảo mật TTĐT cho người sử dụng cuối. Ứng dụng của người dùng cuối sẽ đóng vai trò như “cái bút” để người sử dụng cuối ký số. Không giống như cái bút thông thường ai cũng sử dụng được, cái bút này đòi hỏi người sử dụng phải có kiến thức và kỹ năng tin học.
Hơn nữa khi ký số, ứng dụng của người dùng cuối có sử dụng mật mã nên không trong suốt đối với người dùng. Nó yêu cầu người dùng phải kết nối vào máy tính bằng một thiết bị ví dụ như Etoken có chứa khóa bí mật đã được mã hóa bằng mật mã an toàn khóa giải mã do người dùng cuối nắm giữ.
Mỗi một CTS được cấp phát sẽ tương ứng với một Etoken chứa khóa bí mật được mã hóa và nếu người dùng cuối là chủ của nhiều CTS khác nhau, do sử dụng dịch vụ của nhiều Root CA thì sẽ phải quản lý nhiều Etoken và nhớ nhiều mật khẩu giải mã các Etoken. Điều đó sẽ gây khó khăn cho người dùng.
Công nghệ PKI
Để có hạ tầng PKI hoàn chỉnh thì bên cạnh việc phần mềm lõi CA đáp ứng dịch vụ mật mã là CKS, người ta còn cần đến phần mềm cung cấp các dịch vụ khác cho CTS như tem thời gian, danh sách các chứng thư hết hiệu lực, trạng thái chứng thư trực tuyến, các thông tin về chính sách hoạt động của hạ tầng PKI và các phần mềm như dịch vụ Web, hệ quản trị CSDL lưu trữ CTS, dịch vụ thư mục LDAP và phần mềm quản lý thiết bị HSM lưu trữ thành phần khóa bí mật...
Ngoài ra, phía người sử dụng cuối còn cần đến phần mềm CTĐT (để ký CKS và mã hóa các VBĐT) tích hợp với các dịch vụ xử lý VBĐT chuyên dụng như thư điện tử, Web, Word và nhiều dịch vụ xử lý VBĐT chuyên dụng khác. Phần mềm này phải tương thích với các thiết bị lưu trữ thành phần khóa bí mật HSM và tương thích với hạ tầng PKI để tra tìm CTS, kiểm tra tính hợp lệ của CTS, nhận tem thời gian nên gọi là phần mềm ràng buộc với hạ tầng PKI.
Hạ tầng PKI được bố trí theo mô hình mạng an toàn cao với các phần mềm an ninh đặc thù: Tường lửa; Hệ thống IDS/IPS để phát hiện và ngăn chặn những xâm nhập qua các luồng thông tin. Các thiết bị phần cứng trong hệ thống PKI được bảo vệ vật lý và các thiết bị an ninh cũng được lắp đặt để theo dõi cùng với các cơ chế kiểm soát người ra vào rất nghiêm ngặt kể cả người quản trị và người vận hành.
Trong hạ tầng PKI hiện nay, người ta sử dụng lược đồ mật mã RSA để ký số và bảo mật TTĐT. Mặc dù các thuật toán mật mã được sử dụng làm thuật toán ký số như RSA đang được cho là an toàn thì khi cài đặt sử dụng vẫn tiềm ẩn những lỗ hổng an toàn như nguy cơ tấn công dạng “bản mã lựa chọn thích nghi”, hoặc bị cài các kênh ngầm vào quy trình sinh các tham số bí mật của thuật toán RSA. Bởi vậy, nhu cầu làm chủ quy trình sinh tham số RSA là cấp thiết với các hạ tầng PKI phục vụ hoạt động CTĐT Chính phủ.
Nguy cơ lộ khóa bí mật còn có thể xuất hiện từ các thiết bị HSM lưu trữ thành phần khóa bí mật khi bị mất mà người khác có thể lấy được mật khẩu của người dùng cuối là chủ sở hữu của thiết bị. Việc bảo vệ thành phần khóa bí mật cũng đòi hỏi tăng khả năng an toàn vật lý của thiết bị HSM và cả giao diện với máy tính của người sử dụng để giải mã thành phần khóa bí mật phải không được làm lộ nó cho các bên không liên quan. Khi sử dụng thiết bị HSM để lưu trữ thành phần khóa bí mật đã được mã hóa, người sử dụng vẫn không thể chắc chắn rằng trong thiết bị HSM không bị cài các chức năng đánh cắp thành phần khóa bí mật khi nó đang hoạt động.
Song song với các nguy cơ đối với an toàn mật mã còn có nguy cơ mất an toàn trong các dịch vụ khác như tấn công từ chối dịch vụ DoS (đối với dịch vụ cung cấp trạng thái chứng thư trực tuyến OCSP), giả mạo hoặc cung cấp dịch vụ tem thời gian không tin cậy....
Mô hình hạ tầng PKI
Mô hình hạ tầng PKI của mỗi quốc gia sẽ ảnh hưởng tới quy mô và tính tiện dụng
của các dịch vụ CKS được cung cấp và hiệu quả sử dụng CKS của người dùng cuối. Bất kỳ hai người sử dụng cuối nào thuộc cùng một hệ thống CA đều có thể giao dịch với nhau thuận tiện vì có thể kiểm tra để khẳng định tính tin cậy thông qua CTS của người sử dụng mức cao nhất là CA gốc. Hai người dùng cuối thuộc hai hệ thống CA khác nhau sẽ không có cơ sở để tin cậy các CTS của nhau vì không thể được kiểm tra, xác minh chúng. Các CTS tại mức cao nhất trong một hệ thống CA tạo thành CA gốc hay là Root CA.
Để kết nối các Root CA và tạo ra hoạt động liên thông giữa những người dùng cuối thuộc các Root CA khác nhau, người ta phải xây dựng các mô hình kết nối các Root CA với nhau để sao cho người dùng cuối tại Root CA này có thể kiểm tra độ tin cậy CTS của người dùng cuối thuộc về Root CA kia. Hiện nay đã xuất hiện nhiều mô hình CA khác nhau với hiệu quả và độ phức tạp vận hành rất khác nhau. Đó là mô hình phân cấp hình cây, mô hình bắc cầu, mô hình đồ thị hỗn hợp và các mô hình khác.
Trong mô hình phân cấp hình cây thì sẽ có một hệ thống CA bao hàm tất cả các Root CA khác, như vậy tất cả người dùng cuối thuộc các Root CA khác nhau đều có thể kiểm tra để tin cậy nhau trong GDĐT.
Trong mô hình cầu nối sẽ cần đến một hệ thống CA làm trung gian kết nối với các Root CA khác. Trong mô hình này, hai người dùng cuối thuộc hai Root CA khác nhau có thể kiểm tra độ tin cậy nhau thông qua CA hoặc nhóm CA làm cầu nối. Mỗi Root CA khi có nhu cầu giao tác, thay vì phải kết nối với các Root CA khác thì chỉ cần kết nối qua CA trung gian là đủ. Mô hình này làm giảm đi đáng kể số lượng các kết nối nên rất được ưa chuộng trên thế giới. Mỗi Root CA có xác thực chéo với CA cầu tức là Root CA ký số vào CTS của CA cầu và CA cầu ký số vào CTS của Root CA đó.
Còn mô hình đồ thị hỗn hợp là mô hình mà các Root CA kết nối đôi một với nhau trực tiếp để những người sử dụng thuộc các Root CA khác nhau có thể kiểm tra độ tin cậy của nhau. Mô hình này không cần một CA dành riêng làm cầu nối nhưng làm phát sinh thêm rất nhiều kết nối giữa các Root CA.
Nếu một quốc gia chỉ có hai Root CA, người ta sẽ chọn phương án chứng thực chéo giữa hai Root CA này là đủ. Root CA thứ nhất ký số vào CTS của Root CA thứ hai và đến lượt mình Root CA thứ hai lại ký số CKS của mình vào CTS của Root CA thứ nhất.
Trong mô hình cầu nối và mô hình đồ thị hỗn hợp thì các kết nối giữa các Root CA đều là các móc nối chứng thực chéo như đã nêu ở trên.
Các mô hình kết nối làm cho hoạt động của CA trở nên thống nhất nhưng cũng gặp rất nhiều khó khăn vì hạ tầng kỹ thuật PKI và chính sách hoạt động cũng như luật pháp về CTĐT của các quốc gia rất khác biệt nhau. Có những trường hợp sự khác biệt dẫn đến các Root CA không giao tác được với nhau cho dù đã có các kết nối ở mức cao nhất.
Hiện nay, sự phát triển của các mô hình hoạt động CA còn chưa có kết quả cuối cùng và còn nhiều biến động. Việc triển khai PKI của mỗi quốc gia theo mô hình nào và thậm chí của mỗi Bộ, ngành trong một quốc gia cũng còn là các bài toán phức tạp, cần nghiên cứu đầu tư một cách thận trọng
Trên thế giới, ngay cả các quốc gia phát triển về CNTT cũng vẫn tồn tại nhiều mô hình phát triển PKI khác nhau.
Các chuyên gia khuyên các quốc gia đi sau hãy rút kinh nghiệm của các nước đi trước để thiết kế mô hình triển khai PKI toàn quốc hợp lý và phải chăng tốt nhất là chỉ thống nhất có một Root CA?
Đài Loan là một nơi mà CNTT rất phát triển nhưng giai đoạn phát triển đầu tiên của hạ tầng PKI đã có rất nhiều Root CA cùng vận hành và tới nay đã có một Root CA bao hàm các Root CA khác và tạo ra mô hình phân cấp hình cây.
Hàn Quốc là nước đi tiên phong về triển khai PKI và hiện có hai loại là Root CA Chính phủ và Root CA công cộng. Người ta đã hợp nhất hai Root CA này theo cách xác thực chéo chúng với nhau.
Tại Nhật Bản, Mỹ và Canada, do có quá nhiều Root CA nên người ta đã chọn mô hình cầu nối phức tạp với một nhóm các cầu nối để kết nối toàn bộ các Root CA với nhau nhằm tạo thuận lợi cho các hoạt động CA liên tác quốc gia và quốc tế.
Ứng dụng phần mềm ràng buộc PKI
Khi thực hiện ký số, “bút ký” của người dùng cuối cũng rất đặc biệt vì đó là một thiết bị HSM có chứa thành phần khóa bí mật được mã hóa bởi mật khẩu của người ký. Do vậy, cần phải giữ thiết bị HSM này và mật khẩu cho từng CTS mà người đó là chủ sở hữu.
Khi sử dụng dịch vụ CKS, người sử dụng phải có thiết bị HSM và mật khẩu tương ứng với mỗi CTS. Nếu một cá nhân sử dụng nhiều CTS trong các giao dịch khác nhau thì rất bất tiện và mất an toàn và khi làm mất HSM sẽ dễ phát sinh sự giả mạo chữ ký.
Mỗi quốc gia có thể có luật pháp chung về CTĐT và CKS nhưng với các Root CA khác nhau thì chính sách, quy trình hoạt động của từng Root CA cũng rất khác nhau và cần được điều chỉnh để có thể giao tác được với nhau. Tuy các chuẩn chung về các thành phần PKI đã có nhiều và thống nhất nhưng các phần mềm CTĐT và bảo mật ràng buộc bởi hạ tầng PKI lại rất khác nhau giữa các Root CA, dẫn đến nguy cơ người dùng cuối của hệ thống CA này không sử dụng được dịch vụ của hệ thống CA kia hoặc CKS được ký bởi người dùng cuối của hệ thống CA này không thể được kiểm tra bởi người ký thuộc về hệ thống CA kia. Đây là những hạn chế rất lớn về sử dụng dịch vụ CTĐT trên phạm vi liên ngành trong toàn quốc hay quốc tế cho dù các thành phần phần cứng, phần mềm đã tuân theo các chuẩn đã được quốc tế thừa nhận.
Một trở ngại nữa cần phải đề cập là trên thực tế ứng dụng có rất nhiều phần mềm, xử lý TTĐT đa dạng cần được tích hợp khả năng CTĐT và bảo mật. Việc tích hợp này không đơn giản vì nhiều phần mềm ứng dụng không có sẵn chức năng CTĐT và bảo mật. Bởi vậy, khi tích hợp thêm dịch vụ CTĐT và bảo mật vào các phần mềm này thì cần phải can thiệp sâu vào kiến trúc liên lạc mạng cần sự hỗ trợ của nhà phát triển các phần mềm ứng dụng này.
Các trường hợp điển hình là dịch vụ thư điện tử, trang web trong dịch vụ web, CSDL trong hệ quản trị CSDL, việc xác thực phiên liên lạc đối với dịch vụ SSL, việc xác thực các hoạt động của các trạm không dây, v.v...
Nhiều hoạt động xác thực còn đòi hỏi phải cài đặt các giao thức mật mã an toàn để tránh các tấn công về cài đặt có thể xảy ra.
Triển vọng và thách thức
Sau hơn 10 năm phát triển và triển khai ứng dụng thực tiễn, dịch vụ CA đã cho thấy có nhiều ưu điểm vượt trội so với các cơ chế xác thực như sử dụng mật khẩu hay công nghệ sinh trắc. Tuy lợi ích của triển khai dịch vụ CTĐT đã rõ ràng nhưng hiện nay còn nhiều quốc gia chưa sẵn sàng triển khai CA và ngay cả đối với các quốc gia có CNTT phát triển thì việc triển khai CA cũng chưa toàn diện và rộng khắp. Nguyên nhân là những hạn chế của CA đang song hành bên cạnh những lợi thế vượt trội của nó như đã được trình bày ở trên.
Về mặt công nghệ, để giảm thiểu độ phức tạp và dễ dàng cho việc triển khai hàng loạt thì các thành phần trong hệ thống PKI cũng cần phải trở thành thành phần “hạ tầng tự do” như giao thức TCP/IP và các thư mục LDAP trong hạ tầng mạng máy tính. Có như vậy PKI mới phổ cập đến tất cả các nền hệ thống và ứng dụng của chúng. Đa số các ứng dụng PKI hiện nay là dựa trên dịch vụ Web và mạng riêng ảo VPN.
Triển khai CA trên thế giới ít bị rào cản pháp lý vì các quốc gia đều ban hành văn bản luật về GDĐT và CKS khi đưa dịch vụ CA vào cuộc sống. Các luật này đã tạo hành lang pháp lý thuận lợi cho triển khai dịch vụ CA.
Nhu cầu về CA tăng nhanh tại khu vực Chính phủ khi từng quốc gia đã cải cách nền hành chính và chuyển sang nền hành chính điện tử. Tại khu vực công cộng thì nhu cầu dịch vụ CTĐT cũng tăng mạnh khi hoạt động thương mại, ngân hàng, tài chính sẽ dựa trên các giao dịch điện tử.
Tuy nhiên, một hạn chế ảnh hưởng đến triển khai dịch vụ CTĐT là giá thành đầu tư cho một hạ tầng PKI đạt tiêu chuẩn cao về công nghệ và an toàn là rất lớn (lên đến hàng triệu USD), chưa kể đến kinh phí đầu tư hạ tầng dự phòng và phục hồi sau thảm họa của một hạ tầng PKI.
Nếu khắc phục được những trở ngại trên thì hạ tầng PKI sẽ phát huy được hiệu quả và đóng vai trò ngày càng quan trọng trong các hoạt động của xã hội hiện đại.