Chương 2 CƠ SỞ LÝ THUYẾT
2.5 Kiến trúc hệ thống xác thực hộ chiếu điện tử
2.5.2 Cơ sở hạ tầng PKI
PKI là một tập hợp phần cứng, phần mềm, chính sách, thủ tục cần thiết để tạo, quản lý và lưu trữ, phân phối và thu hồi các chứng thư số dựa trên công nghệ mã hóa khóa công khai. Nói cách khác trong mật mã học, hạ tầng khóa công khai PKI là một cơ chế để cho một bên thứ 3(thường là nhà cung cấp chứng thư 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 [7,10].
Phần này không có tham vọng nghiên cứu cơ sở hạ tầng PKI nói chung, mà chỉ muốn tập chung vào cơ sở hạ tầng PKI phục vụ cho hệ thống xác thực hộ chiếu điện tử. Vì vậy khi nói PKI thì ngầm hiểu PKI triển khai cho riêng hệ thống hộ chiếu điện tử.
Các thành phần của PKI [7,10,15,17]:
CSCA (Country Signning Certificate Authority)[15,17]: Thực thể có thẩm quyền phát hành chứng thư số và chứng thực chúng. Khi triển khai trên thực tế bộ phận này sẽ phân cấp thành nhiều tầng. Tầng trên cùng chịu trách nhiệmsinh cặp khóa (bất đối xứng RSA) và tạo chữ ký trên chứng
thư số, nó có thể là một Root CA hoặc đơn giản là một thiết bị phần cứng chuyên dụng HSM (High Security Module) và các thực thể này liên kết Offline với các thực thể khác ở tầng dưới. Các tầng dưới là các CA đã được tầng trên tin tưởng có thể cấp và phân phối các chứng thư số mà tầng trên ký, hoặc đôi khi chúng có thể tạo ra chứng thư số cho các thực thể khác trong hệ thống, các thực thể lớp này liên kết Online với các thực thể khác trong hệ thống.
PKD (Public Key Directory) [15]: Thư mục lưu trữ chứng thư khóa công khai.
RA (Registration Authority) [15]: Thực thể có thẩm quyền đăng kí chứng thư số. Các DS muốn hoạt động thì cần đăng kí một chứng thư số và thiết lập các chính sách bảo mật cho riêng mình, việc đăng ký có thể trực tiếp tới CSCA, tuy nhiên để giảm tải công việc cho CSCA, CSCA có thể ủy quyền cho thực thể RA đã được tin tưởng, chịu trách nhiện phục vụ đăng kí chứng thư số cho các thực thể của hệ thống. Đến lượt mình các RA có thể phân cấp dưới dạng cây đảm bảo nguyên tắc tin tưởng lẫn nhau và phân phối trên các vùng địa lý khác nhau, điều này tạo lên sự thuận lợi đăng kí làm các thủ tục cấp phát các chứng thư số.
EE (End Entity): Thực thể cuối cùng trong hệ thống, đây chính là các DS, IS của hệ thống.
2.5.2.1 Country Signing CA
Bộ phận này là một hệ thống phân cấp CA, trong đó các khóa riêng được bảo vệ trong các thiết bị phần cứng chuyên dụng, đơn giản thì có thể sử dụng USB Token, phức tạp hơn có thể là HSM. Việc này sẽ hạn chế tối đa các cuộc tấn công vào CSCA, một khi khóa riêng của CA bị lộ thì tất cả các thực thể trong hệ thống không còn được tin cậy nữa, hệ thống sẽ xụp đổ. Sau khi CSCA tạo một chứng thư số cho một DS thì chứng thư số này cần được chuyển lên ICAO PKD, để sau đó nó có thể được phân phối trên phạm vi toàn thế giới.
Bản thân CSCA tự tạo cho mình chứng thư số tự ký bởi khóa riêng của nó, chứng thư số đó có thể nằm trong một Master List (là một loại chứng thư đặc biệt) do CSCA liên kết trực tiếp với CSCA các nước thành viên tạo lên. Hoặc đơn giản nó được gửi lên cùng với chứng thư CDS tới ICAO PKD.
Hình 2.4 – Quá trình hình thành giấy Master List Certificate
Country Signing CA Key Pairs (KPuCSCA, KPrCSCA) Cặp khóa riêng và khóa công khai được tạo ra và lưu trữ trong một cơ chế bảo mật cao.
Các chứng thư số tự ký CCSCA được phân phối tới các thực thể trong hệ thống (DS, IS) một cách trực tiếp ngay lúc các thực thể này được tạo ra, hoặc thông qua môi trường mạng bảo mật bởi các giao thức SSL/TLS. Đồng thời các chứng thư này được gửi lên ICAO PKD, phục vụ cho các thực thể muốn xác thực chứng thư số CDS tương ứng.
2.5.2.2 Registration Authority
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ó thực thể độc lập thực hiện chức năng này. Thực thể này được gọi là RA (Registration Authority) – Trung tâm đăng ký. Thực thể này cần thiết khi số lượng thực thể cuối trong miền PKI tăng lên và số thực thể cuối này được phân tán khắp nơi về mặt địa lý thì việc đăng ký tại một CSCA trung tâm trở thành vấn đề khó giải quyết.
Vì vậy phải cần có một hoặc nhiều RAs (trung tâm đăng ký địa phương), mục đích của RA là để giảm tải công việc của CSCA. Chức năng thực hiện của một RA cụ thể sẽ khác nhau tùy theo nhu cầu triển khai PKI nhưng chủ yếu bao gồm các chức năng sau:
Xác thực DS đăng ký chứng thư.
Kiểm tra tính hợp lệ của thông tin do DS cung cấp.
Xác nhận quyền của DS với những thuộc tính chứng thư được yêu cầu.
Kiểm tra xem DS có thực sự sở hữu khóa riêng đ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 prossession – 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.
Thay mặt chủ thể DS khởi tạo quá trình đăng ký với CSCA.
Lưu trữ khóa riêng và khôi phục khóa.
Phân phối thẻ bài vật lý (ví dụ như thẻ thông minh) chứa khóa riêng.
Nhìn chung, RA xử lý việc trao đổi (thường liên quan đến tương tác người dùng) giữa chủ thể thực thể cuối và quá trình đăng ký, phân phối chứng thư và quản lý vòng đời chứng thư/khóa. Tuy nhiên trong bất kỳ trường hợp nào thì RA cũng chỉ đưa ra những khai báo tin cậy ban đầu về chủ thể. Chỉ CSCA mới có thể cấp chứng thư hay đưa ra thông tin trạng thái thu hồi chứng thư như CRLs.
2.5.2.3 End Entity
Thực thể cuối EE trong PKI chính là các DS và IS, những thực thể cuối này sẽ thực hiện những chức năng mật mã như mã hóa, giải mã, ký số và xác thực chữ ký.
2.5.2.4 Hệ thống lưu trữ PKD
Chứng thư (khóa công) và thông tin thu hồi chứng thư phải được phân phối sao cho những thực thể cần đến chứng thư đều có thể truy cập và lấy được. Có hai phương pháp phân phối chứng thư hay dùng là:
Phân phối cá nhân: Là phân phối cơ bản nhất. Trong phương pháp này thì mỗi thực thể sẽ trực tiếp đưa chứng thư của mình cho thực thể khác nếu được yêu cầu.
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 thư được lưu trong các dụng cụ lưu trữ cá nhân (đĩa CD, usb flash). Cũng có thể phân phối bằng cách gắn chứng thư trong email để gửi cho nhanh. Cách này thực hiện tốt trong một nhóm ít thực thể nhưng khi số lượng tăng lên thì sẽ xảy ra vấn đề 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 thư (và thông tin thu hồi chứng thư) là công bố các chứng thư rộng rãi, các chứng thư này có thể sử dụng một 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à một số ví dụ về hệ thống lưu trữ:
X.500 Directory System Agents (DSAs)
Lighweight Directory Access Protocol (LDAP ) Server
Online Certificate Status Protocol (OCSP) Responders
Domain name System (DNS) và Web Servers
File Transfer Protocol (FTP) Server và Corporate Databases.