Một số ứng dụng của Cơ sở hạ tầng khóa công khai sinh trắc
1. Giới thiệu về BioPKI
BioPKI là một giải pháp tích hợp sinh trắc học vào Cơ sở hạ tầng khoá công khai – PKI (Public Key Infrastructure) nhằm hạn chế tối thiểu một số nhược điểm của hệ thống PKI và tăng tính bảo mật, an toàn cho thông tin lưu truyền trên đó. PKI là công nghệ xác thực đầu tiên và hoàn thiện sử dụng phương pháp mã hoá dựa trên khoá bí mật và khoá công khai. Tuy nhiên, nhược điểm của PKI là việc truy cập đến khoá bí mật thường chỉ dùng mật khẩu, nhưng trên thực tế mật khẩu có nguy cơ bị lộ rất cao, mất hoặc bị đánh cắp... do vậy không đảm bảo được an toàn cho khoá bí mật của chủ sở hữu. Hơn nữa, PKI còn có hạn chế là không có dấu hiệu đặc trưng để nhận biết chủ sở hữu của chứng thư số và việc xác thực chứng thư số chỉ dựa vào số serialnumber do Cơ quan chứng thực - CA (Certificate Authority) cấp. Ngoài ra, khi có sự xâm hại đến khóa bí mật của người sử dụng dẫn đến họ không thể thực hiện được việc ký chữ ký số thì người sử dụng phải trực tiếp đến RA (Cơ quan đăng ký) hoặc CA để xác minh định danh (ID) của mình và yêu cầu thay đổi chứng thư số.... Các nhược điểm trên có thể giải quyết được bằng cách sử dụng đặc trưng sinh trắc của người dùng, nghĩa là sử dụng hệ thống tích hợp BioPKI. BioPKI kết hợp công nghệ sinh trắc học để truy cập khóa bí mật, tạo ra ký số dựa trên sự xác thực sinh trắc và kỹ thuật PKI theo chuẩn công nghiệp. Sự xác thực được thực hiện dựa trên việc đối sánh các dấu hiệu sinh trắc với khuôn mẫu đã biết để có thể truy cập tới khóa bí mật được lưu trữ an toàn trước khi hoạt động giao dịch diễn ra.
Việc ứng dụng BioPKI vào thực tiễn đã được các nước nghiên cứu từ lâu và triển khai thành công ở một số nước với nhiều mô hình ứng dụng khác nhau như: dùng đặc trưng sinh trắc để bảo vệ thiết bị lưu khoá bí mật, bảo vệ truy cập hệ thống PKI hoặc sinh khoá mật mã từ đặc trưng sinh trắc để mã hoá khoá bí mật....
2. Xác thực các giao dịch của người dùng với CA bằng dấu vân tay
Ngày nay, các kỹ thuật sinh trắc được ứng dụng khá rộng rãi, trong đó, nhận dạng vân tay được xem là một trong những kỹ thuật hoàn thiện và đáng tin cậy nhất để xác nhận người dùng. Kỹ thuật này cũng thích hợp với những ứng dụng có cơ sở dữ liệu nhỏ.
Hình 1: Xác thực giao dịch người dùng bằng dấu vân tay
Với cách kết hợp này, người dùng sẽ được yêu cầu nhập vào mẫu vân tay của mình. Hệ thống sẽ đối sánh mẫu nhận được với mẫu đã được lưu trữ trước đó. Nếu kết quả đối sánh là chấp nhận được thì người dùng mới được phép truy cập hệ thống để thực hiện các giao dịch an toàn của mình (Hình 1).
Để thực hiện được chức năng trên, người ta quan tâm nghiên cứu đến các giải pháp tích hợp dấu vân tay vào hệ thống PKI. Các giải pháp này phải đáp ứng yêu cầu là dễ dàng thực hiện và quản trị. Hiện nay, có rất nhiều giải pháp khác nhau được đưa ra. Sau đây, chúng tôi xin đề xuất 3 giải pháp: tích hợp mã vân tay người dùng vào chứng thư số X.509; dùng vân tay truy xuất khoá bí mật được lưu trữ trong etoken và dùng vân tay truy xuất khoá bí mật lưu trên server.
2.1. Tích hợp mã vân tay người dùng vào chứng thư số X.509
X.509 là một tiêu chuẩn của ITU-T (International Telecommunications Union) định ra những định dạng chuẩn cho các chứng thư khoá công khai và các thuật toán xác thực việc cấp chứng thư.
Các chứng thư số được tạo ra theo chuẩn X.509 phiên bản 3 có chứa hai phần là cấu trúc cơ bản và phần mở rộng. Phần cấu trúc cơ bản bao gồm các trường như: phiên bản (Version), số serial (Serial Number), nơi cấp (Issuer), thời gian hợp lệ (Period of Validity), khoá công khai,.... Trong phần này mã băm sẽ được tính, sau đó được CA ký và gán chữ ký vào. Phần mở rộng có chứa các trường mở rộng (Extensions) đóng vai trò làm tăng độ linh hoạt của chứng thư số. Nó có thể thêm một số thông tin mà không thể thêm vào phần cấu trúc cơ bản của chứng thư số định dạng chuẩn. Do vậy, mã vân tay của người chủ sở hữu chứng thư sẽ được tích hợp vào trong phần này.
Khi người dùng cần sử dụng khoá bí mật để thực hiện các giao dịch an toàn, họ phải đưa ra chứng thư số và đồng thời cả dấu vân tay của mình để hệ thống đối sánh. Khi dấu vân tay được quét vào, hệ thống sẽ tính toán và sinh khoá mã. Khoá này sẽ được băm và lấy một đoạn mã băm. Đồng thời, hệ thống cũng tự động đọc thông tin mã vân tay trong phần mở rộng để đối sánh. Toàn bộ quá trình đối sánh và truy xuất khoá bí mật được biểu diễn trong Hình 2.
Hình 2: Quá trình giải mã lấy khoá bí mật
2.2. Dùng vân tay truy xuất khoá bí mật lưu trong etoken
Với hình thức triển khai tích hợp sinh trắc vào hệ thống PKI này, khoá bí mật sau khi sinh ra sẽ được lưu vào etoken và được giao cho người dùng bằng con đường vật lý. Người dùng khi muốn thực hiện các giao dịch trong hệ thống thì phải đăng nhập vào hệ thống tại các máy user. Quá trình này yêu cầu người dùng phải kết nối etoken với hệ thống và nhập số PIN (password) để kích hoạt etoken. Nếu số này được xác nhận đúng, hệ thống ứng dụng sẽ yêu cầu người dùng cung cấp đặc trưng sinh trắc “sống” của mình để xác thực thông qua máy quét Biometric. Hệ thống sẽ thực hiện quá trình xác thực xem hình ảnh nhận được có đúng là của chủ sở hữu etoken đó hay không. Quá trình này được thực hiện tại máy Workstations. Nếu kết quả xác thực được chấp nhận thì người dùng có thể truy xuất khoá bí mật từ etoken.
Hệ thống này có thể được mô tả đơn giản như Hình 3.
Hình 3: Mô hình triển khai BioPKI với khoá bí mật lưu trên etoken
2.3. Dùng vân tay truy xuất khoá bí mật lưu trên server
Khoá bí mật được lưu tại một server an toàn trong hệ thống PKI, khi cần truy xuất khoá từ server này, người dùng cung cấp đặc trưng sinh trắc của mình cho hệ thống.
Cũng giống như với mô hình PKI chuẩn, mô hình tích hợp BioPKI này sử dụng mật mã khóa công khai theo chuẩn PKCS để đảm bảo tính bí mật của thông tin (hình 4). Theo đó, người sử dụng hợp lệ được phép nhận từ Máy khách PKdI (9) các thông tin như phần mềm, phần cứng lưu giữ chữ ký sinh trắc và mật mã riêng. Một cặp khóa gồm khóa công khai (2) và khóa bí mật (3) cũng sẽ được tạo ra để người dùng hợp lệ sử dụng trong hệ thống. Tuy nhiên không giống như mô hình PKI quy ước, khóa bí mật của người dùng được giữ bí mật và được lưu giữ trong một server an toàn và chỉ có thể truy cập sau khi dấu hiệu sinh trắc (chữ ký sinh trắc học (4)) hợp lệ được xác thực. Các khóa trong cặp khóa có sự liên quan về mặt toán học nên các văn bản đã được mã hoá bởi khóa bí mật (3) của người gửi chỉ có thể xác thực được bằng cách sử dụng khóa công khai (2) tương ứng. Người gửi mã hoá thông điệp gửi bằng khóa bí mật (3) của mình và người nhận xác thực tính hợp lệ của thông điệp đó bằng cách sử dụng khóa công khai (2) của người gửi. Khóa công khai có thể được công bố công khai và đưa lên danh bạ điện tử.
Mô hình BioPKI bao gồm một thành phần chính là Cơ quan chứng thực (1) - CA - chịu trách nhiệm phát hành chứng thư số (5) và quản lý các chứng thư này trong suốt thời gian sống của chúng. Tuy nhiên, khác với CA thông thường, CA (1) này còn bao gồm một Máy chủ PKdI (6) có chức năng tạo và quản lý kho chứa các khuôn mẫu sinh trắc và khóa bí mật của người dùng.
Chữ ký sinh trắc học (4) có thể dùng các dấu hiệu như dấu vân tay, mống mắt... của người dùng được lấy từ mẫu sinh trắc đã lưu trữ và trích ra các đặc trưng để tạo mẫu chữ ký sinh trắc. Quá trình đối sánh sinh trắc sẽ được thực hiện với mẫu đã được đăng ký để cấp quyền truy cập khóa bí mật (3) phục vụ cho các giao dịch điện tử an toàn.
Hình 4: Mô hình triển khai BioPKI với khoá bí mật lưu tại server
Chữ ký số (7) là một bộ định danh điện tử có các đặc tính như chữ ký trên giấy truyền thống (duy nhất, có thể xác minh được và chỉ có người ký mới có thể ký nó). Chữ ký số đảm bảo rằng các thông tin chứa trong thông điệp hoặc tài liệu được ký không bị thay đổi trong suốt quá trình truyền.
Máy khách PKdI (9) bao gồm thiết bị lấy mẫu sinh trắc và các phần mềm liên quan như: phần mềm quét vân tay/mống mắt và đặc trưng hóa, phần mềm mã hoá/giải mã trong quá trình truyền thông với Máy chủ PKdI (6).
3. Kết luận
Nhìn chung, có nhiều phương pháp khác nhau để tích hợp sinh trắc học vào PKI. Mỗi phương pháp đều có những đặc điểm riêng và phù hợp với từng môi trường cụ thể. Việc lựa chọn phương pháp nào phụ thuộc vào nhiều yếu tố, trong đó bao gồm cả mục tiêu mà nhà quản trị hệ thống muốn đạt tới cũng như đối tượng phục vụ của hệ thống. Tuy nhiên, đối với những tổ chức, tập đoàn lớn hoặc có cơ sở dữ liệu lớn, nhu cầu đảm bảo an toàn thông tin mức cao thì việc xây dựng một hệ thống BioPKI là cần thiết và phù hợp, đảm bảo được những yêu cầu của người sử dụng.