Thời gian tồn tại của một chứng chỉ khoá công khai bị giới hạn, có thể biết đợc thời gian này thông qua giờ/ngày bắt đầu có hiệu lực và giờ/ngày hết hạn của một chứng chỉ, tất cả những thông tin này nằm trong phần đợc ký của chứng chỉ. Khoảng thời gian hợp lệ này kéo dài bao lâu là do chính sách của CA phát hành, thông thờng thời gian tồn tại kéo dài từ vài tháng đến vài năm.
Khi một chứng chỉ đợc phát hành, nó có thể đợc sử dụng trong suốt thời gian hợp lệ của mình. Tuy nhiên, trong một số trờng hợp, những ngời sử dụng không nên tiếp tục tin tởng vào một chứng chỉ mặc dù thời hạn hợp lệ của chứng chỉ này cha kết thúc. Những trờng hợp đó bao gồm phát hiện hoặc nghi ngờ khoá riêng bị lộ, thay đổi tên và thay đổi mối quan hệ giữa chủ thể và CA (ví dụ nh một ngời làm công kết thúc hợp đồng làm thuê với một tổ chức). Trong những trờng hợp nh vậy, CA có thể thu hồi chứng chỉ. Do có thể bị thu hồi, khoảng thời gian hoạt động của một chứng chỉ có thể ngắn hơn so với khoảng thời gian hợp lệ đợc định trớc.
63
Quyết định thu hồi một chứng chỉ thuộc trách nhiệm của một CA, nói chung để đáp ứng một yêu cầu từ một ngời có quyền nào đó. Ngời có quyền thu hồi chứng chỉ dựa vào các hoạt động của một CA, thuê bao phải đợc biết các hoạt động này. Nói chung, thuê bao có quyền yêu cầu thu hồi chứng chỉ của mình. Những ngời có trách nhiệm của CA cũng có quyền thu hồi chứng chỉ của một thuê bao trong các tr- ờng hợp bắt buộc, ví dụ nh vi phạm nghiêm trọng vào những điều khoản bắt buộc trong hoạt động chứng thực (CPS) do CA đa ra. Ngoài ra, những ngời khác có thể có quyền yêu cầu thu hồi, ví dụ những ngời làm công của thuê bao có thể yêu cầu thu hồi chứng chỉ liên quan đến hợp đồng làm thuê.
CA sẽ xác thực nguồn gốc của bất cứ yêu cầu thu hồi nào. Khi có cơ quan đăng ký địa phơng, trách nhiệm tiếp nhận và phê chuẩn các yêu cầu thu hồi thuộc trách nhiệm của cơ quan này.
Danh sách chứng chỉ bị thu hồi (CRL)
Sau khi quyết định thu hồi một chứng chỉ, CA cần thông báo cho những ngƣời sử dụng chứng chỉ biết sự thu hồi này. Giải pháp thông báo thông dụng nhất là CA phát hành định kỳ một cấu trúc dữ liệu đƣợc gọi là danh sách các chứng chỉ bị thu hồi. Khái niệm CRL đƣợc trình bày trong chuẩn X.509. CRL là một danh sách các chứng chỉ bị thu hồi đƣợc gán nhãn thời gian, danh sách này đƣợc CA ký và công bố. CRL có thể phân tán, ví dụ gửi nó đến một địa chỉ Web xác định hoặc thông qua đầu vào danh bạ X.500 của CA. Mỗi chứng chỉ bị thu hồi đƣợc CRL nhận dạng thông qua số hiệu của nó, mỗi chứng chỉ có một số hiệu duy nhất, số hiệu này do CA phát hành sinh ra và nó nằm trong chứng chỉ. Các thông tin chính của một CRL đơn giản đƣợc trình bày trong hình 2.8.
64
Khi hệ thống sử dụng một chứng chỉ, nó phải kiểm tra chữ ký số có trong chứng chỉ, khoảng thời gian hợp lệ của chứng chỉ, một CRL phù hợp gần nhất để biết đƣợc rằng số hiệu của chứng chỉ không nằm trong CRL này. CRL phù hợp gần nhất không đƣợc chuẩn hoá và có thể thay đổi theo chính sách cục bộ; Nhƣng trong hầu hết các chính sách, điều này có nghĩa là một CRL đƣợc phát hành trong khoảng thời gian gần nhất.
CA phát hành các CRL định kỳ, thời gian phát hành kế tiếp có thể tính theo giờ, ngày hoặc tuần. Khoảng thời gian này do chính sách của CA quyết định.
Một CRL mới đƣợc phát hành theo từng giai đoạn khác nhau mà không cần để ý đến quyết định thu hồi mới đƣợc bổ sung thêm vào danh sách trong khoảng thời gian cuối cùng, điều này rất cần thiết, do đó một hệ thống sử dụng chứng chỉ có thể chắc chắn rằng đây là một CRL mới cập nhật. Một đặc điểm hấp dẫn của giải pháp thu hồi là các CRL có thể đƣợc phân phối cùng một cách thức nhƣ đã dùng để phân phối chứng chỉ khoá công khai, tức là thông qua truyền thông và các hệ thống máy
Tên ngƣời phát hành Tên ngƣời phát hành Giờ/Ngày phát hành CRL Giờ/Ngày phát hành CRL Số hiệu của chứng chỉ Số hiệu của chứng chỉ Giờ/Ngày huỷ bỏ Giờ/Ngày huỷ bỏ Số hiệu của chứng chỉ Số hiệu của chứng chỉ Giờ/Ngày huỷ bỏ Giờ/Ngày huỷ bỏ Số hiệu của chứng chỉ Số hiệu của chứng chỉ Giờ/Ngày huỷ bỏ Giờ/Ngày huỷ bỏ Chữ ký số của ngƣời phát hành Chữ ký số của ngƣời phát hành
Khoá riêng của CA Khoá riêng của CA
Tạo chữ ký số Tạo chữ ký số
Hình 2.8 Danh sách các chứng chỉ bị huỷ bỏ Hình 2.8 Danh sách các chứng chỉ bị huỷ bỏ
65
chủ không cần đảm bảo chặt chẽ tính toàn vẹn của dữ liệu (một khi CRL đã đƣợc ký). Vì vậy, cách thức này trở nên kinh tế hơn khi cài đặt và thực hiện (ở đây không cần các máy chủ tin cậy đắt tiền hoặc các kênh truyền thông an toàn).
Một hạn chế của giải pháp này là thời gian định kỳ, nó hạn chế khoảng thời gian phát hành CRL. Ví dụ, khi có một thông báo thu hồi không đƣợc chuyển tới các hệ thống sử dụng chứng chỉ một cách tin cậy cho đến khi thời gian phát hành CRL kế tiếp bắt đầu (ví dụ, có thể khoảng 1 giờ, 1 ngày, 1 tuần hoặc lâu hơn). Lƣu ý rằng, không có gì ngăn cản đƣợc một CA sinh ra và gửi đi một CRL mới ngay khi có một thu hồi mới xuất hiện (hoặc đã trở nên rõ ràng). Tuy nhiên, không gì có thể đảm bảo rằng các CRL không định kỳ (off cycle CRL) nhƣ vậy có đến đƣợc các hệ thống sử dụng chứng chỉ hay không. Ví dụ, nếu một đối tƣợng truy nhập trái phép xoá một CRL không định kỳ từ một máy chủ không tin cậy và thay thế vào đó là một CRL đã đƣợc phát hành trƣớc đó, mà hệ thống sử dụng chứng chỉ không thể phát hiện ra đƣợc.
Việc quảng bá các CRL
Một đặc tính quan trọng của giải pháp “phát hành các CRL định kỳ” là hệ thống sử dụng chứng chỉ có thể tìm kiếm các CRL từ một danh bạ khi nó cần. Đôi khi, giải pháp này còn đƣợc gọi là một giải pháp “kéo” (pull).
Một giải pháp phân phối lựa chọn là giải pháp “đẩy” (push), trong đó CA quảng bá CRL cho các hệ thống sử dụng chứng chỉ. Việc quảng bá này cần sử dụng các phƣơng tiện truyền thông có bảo vệ nhƣ thƣ điện tử an toàn hoặc một giao thức giao dịch đƣợc bảo vệ, bởi vì các đối tƣợng tấn công có thể chặn và xoá bỏ các thông báo về sự thu hồi. Thuận lợi chính của giải pháp "đẩy" chính là các thu hồi thiết yếu hơn (ví dụ do lộ khoá hoặc do lỗi của CA) có thể đƣợc thông báo một cách nhanh nhất mà không cần để ý đến thời gian định kỳ.
66
Một mối quan tâm thƣờng xuyên đối với giải pháp "phát hành các CRL định kỳ" là các hệ thống sử dụng chứng chỉ không thể chấp nhận sự chậm trễ các thông báo thu hồi vì lý do thời gian định kỳ. Tuỳ thuộc vào môi trƣờng ứng dụng, sẽ có nhiều thiệt hại nếu khoá bị lộ trong một ngày. Đúng ra, thông tin về một chứng chỉ bị thu hồi có giá trị ngay lập tức đối với ngƣời sử dụng chứng chỉ khi anh ta muốn sử dụng chứng chỉ đó. Vì vậy, các cách thu hồi ngay lập tức cũng đƣợc quan tâm.
Với việc kiểm tra thu hồi trong thời gian thực (real-time revocation checking) và kiểm tra tình trạng trực tuyến (online status checking), một hệ thống sử dụng khoá công khai muốn xác nhận thời gian hợp lệ của một chứng chỉ (sử dụng trong một giao dịch trực tuyến với một máy chủ đang liên kết với CA phát hành). Cuộc giao dịch sẽ trả lại một thông báo về tình trạng thu hồi hiện thời của chứng chỉ. Nó phải đƣợc tiến hành an toàn, đảm bảo đƣợc tính đúng lúc và nguồn của nó cho hệ thống sử dụng khoá công khai. Các yêu cầu đặc thù này có trong từng cuộc giao dịch, khi CA sinh một chữ ký số và khi hệ thống sử dụng khoá công khai kiểm tra chữ ký số này. CA phải thực hiện các dịch vụ trực tuyến có giá trị cao, tiếp cận đƣợc tất cả những ngƣời sử dụng và dịch vụ này phải đƣợc thực hiện trong một môi trƣờng an toàn.
Kiểm tra thu hồi trong thời gian thực có thể hiệu quả trong một số môi trƣờng, đặc biệt trong các cộng đồng khép kín gồm các chủ thể và những ngƣời sử dụng khoá công khai. Chi phí cũng cần đƣợc quan tâm. Chi phí mua và hoạt động của các máy chủ trực tuyến tin cậy có thể rất cao. Dễ nhận thấy rằng, một máy chủ nhƣ vậy cần tạo ra chữ ký số cho mỗi cuộc giao dịch hỏi đáp và các tài nguyên cần cho quá trình xử lý mật mã có thể rất đắt. Chi phí hoạt động cho một máy chủ an toàn (gồm cả chi phí thiết lập tất cả các kiểm soát an toàn cần thiết) cũng rất cao.
Ở đây có bao nhiêu giải pháp thu hồi khác có thể giúp chúng ta đạt đƣợc mục đích "thu hồi ngay lập tức" mà không phải chịu các chi phí trong giải pháp kiểm tra thu hồi trong thời gian thực? Sau đây có một số giải pháp có thể, đƣợc đề xuất từ các nguồn khác nhau:
67
đơn giản vì CA có thể loại bỏ ngay lập tức một chứng chỉ từ đầu vào danh bạ khi chứng chỉ bị thu hồi; Giải pháp này rất dễ thực hiện nhƣng lại không an toàn do các máy chủ danh bạ và việc truyền thông với các máy chủ danh bạ này không đủ tin cậy. Ví dụ, một đối tƣợng truy nhập trái phép có thể chèn một bản sao của chứng chỉ cũ vào kênh truyền thông trong một giao dịch với máy chủ thƣ mục, ngay cả khi chứng chỉ này đã bị thu hồi. Hơn nữa, việc phân phối các chứng chỉ không cần các giao thức đặc biệt, thông thƣờng chúng đƣợc phân phối bằng cách gắn vào các thông báo đƣợc ký, các thông báo này yêu cầu phải sử dụng khoá đƣợc chứng thực trong các quá trình kiểm tra.
(b)Máy chủ hoặc danh bạ lưu giữ chứng chỉ tin cậy (Trusted certificate server or directory): Để tăng cƣờng cho giải pháp (a), chúng ta cần đảm bảo rằng máy chủ lƣu giữ chứng chỉ đƣợc thiết lập nhƣ một hệ thống tin cậy và đáp ứng giao dịch (đƣợc máy chủ này ký số) và có gắn thêm một tem thời gian. Ví dụ, một giao dịch Web có thể đƣợc sử dụng, trong đó SSL quy định phải bảo vệ đáp ứng giao dịch theo yêu cầu. Nhƣ một sự lựa chọn, các giao thức của danh bạ X.500 chứa một đặc tính tuỳ chọn, đƣợc sử dụng để bảo vệ đáp ứng giao dịch. Có thể sử dụng cách này để thu đƣợc sự thu hồi ngay lập tức. Nó quy định cho tất cả các máy chủ và máy khách có thiết lập giao thức bảo vệ, hay các hệ thống sử dụng chứng chỉ có sự tin cậy, vì vậy danh bạ hay các máy chủ lƣu giữ chứng chỉ hoạt động tuỳ thuộc vào các điều kiện tin cậy và theo chính sách của CA. Giải pháp này không thể thoả mãn tất cả các yêu cầu, ít nhất về yêu cầu giá cả, nó tốn kém ngang với giải pháp kiểm tra huỷ bỏ trong thời gian thực.
(c)Chu kỳ phát hành các CRL đủ nhỏ (Fine granularity periodic CRLs): Nhƣ đã biết, CA quyết định chu kỳ phát hành của các CRL, có thể khởi tạo khoảng thời gian này vừa đủ ngắn nhƣng các thông báo thu hồi vẫn kịp thời sử dụng giải pháp CRL cơ bản mà không yêu cầu các máy chủ tin cậy hoặc các giao thức bảo vệ? Vấn đề chính ở đây không phải là tạo chu kỳ phát hành CRL một ngày, một giờ hoặc 10 phút, mà là quy định rằng các danh sách không đƣợc quá lớn (sao cho chi phí xử lý và truyền thông có thể chấp nhận đƣợc) và hệ thống danh bạ có khả năng đáp ứng
68
đƣợc việc phân phối. Thời gian định kỳ này nên phù hợp cho nhiều ứng dụng, có thể tính theo giờ hoặc thậm chí theo ngày nhƣng khi một CA thông báo „nghi ngờ lộ khoá‟ thì chu kỳ phát hành này trở nên vô nghĩa.
Các giải pháp thu hồi khác nhau (với các mức độ trực tiếp khác nhau) có thể có ứng dụng trong các môi trƣờng khác nhau. Giải pháp thích hợp nhất sẽ tuỳ thuộc vào các rủi ro (đƣợc ƣớc tính trƣớc) và chi phí. Các giải pháp mới vẫn tiếp tục đƣợc tìm kiếm và phát triển.
Dòng thời gian xử lý thu hồi
Để hiểu đƣợc một số các liên kết giữa các CRL và các vấn đề pháp lý liên quan, chúng ta có thể xem xét dòng thời gian xảy ra các sự kiện trong hình vẽ 2.9.
Chuỗi sự kiện nhƣ sau:
(a)Phát hành CRL1: Một CRL đƣợc phát hành trƣớc khi xảy ra thu hồi.
(b)Sự kiện lộ khoá: Một sự kiện xảy ra dẫn đến việc thu hồi, ví dụ có một thông báo „nghi ngờ khoá riêng bị lộ‟. Không nhất thiết phải biết chính xác thời gian nhƣng cần biết khoảng thời gian của sự kiện này. Sự kiện này có thể xảy ra trƣớc sự kiện (a).
(c)Yêu cầu thu hồi: Một ngƣời có quyền gửi một yêu cầu thu hồi tới cho CA hoặc cơ quan đăng ký địa phƣơng (đại diện cho CA). Sự kiện này có thể xảy ra trƣớc hoặc sau sự kiện (a).
(d)Thời gian thu hồi: CA chính thức chấp nhận thu hồi. Phát hành CRL1 Phát hành CRL1 Yêu cầu huỷ bỏ Yêu cầu huỷ bỏ Phát hành CRL2 Phát hành CRL2 Sự kiện lộ khoá Sự kiện lộ khoá
Thời gian huỷ bỏ Thời gian huỷ
bỏ (a)
(a) (b) (b) (c) (c) (d) (d) (e) (e)
Hình 2.9 Dòng thời gian hủy bỏ Hình 2.9 Dòng thời gian hủy bỏ
69
(e)Phát hành CRL2: CRL (có chứa chứng chỉ bị thu hồi) đƣợc phát hành và công bố.
Một chứng chỉ đƣợc sử dụng bất kỳ thời gian nào sau khi sự kiện (b) phê chuẩn một khoá công khai. Rõ ràng là, thành viên mà ngƣời sử dụng chứng chỉ mong muốn - có thể không kiểm soát đƣợc khoá riêng tƣơng ứng, có khả năng gây thiệt hại đáng kể cho ngƣời sử dụng chứng chỉ và/hoặc đối tƣợng nắm giữ khoá công khai hợp pháp (thuê bao). Để giải quyết đƣợc tình trạng này, rủi ro giữa các thành viên cần đƣợc chia nhỏ. Rủi ro lớn nhất nên để thành viên có khả năng kiểm soát tốt nhất chống đỡ. Để thực hiện đƣợc điều này quả là không dễ dàng, đặc biệt từ khi tình trạng thay đổi tại các thời điểm khác nhau (các điểm này đã đƣợc chỉ rõ trong dòng thời gian). Ví dụ, sự thu hồi liên quan đến khoá riêng bị lộ. Các phân nhánh trong các giai đoạn khác nhau có thể là:
Giai đoạn (b)-(c): Tình trạng lộ khoá xảy ra nhƣng CA không đƣợc thông báo. Ngƣời sử dụng chứng chỉ không thể trông chờ để biết tình trạng lộ khoá. Thuê bao có thể biết hoặc không biết điều này. Đây có thể là lý do để thuê bao phải chịu rủi ro lớn (do bị lạm dụng khoá riêng) trong giai đoạn này.
Giai đoạn (c)-(d): Tình trạng lộ khoá đƣợc thông báo nhƣng CA không gửi đi một thu hồi nào. Ngƣời sử dụng chứng chỉ không thể trông chờ để biết điều này. Đây có thể là lý do CA phải chịu rủi ro lớn (do bị lạm dụng khoá riêng) trong giai đoạn này.
Giai đoạn (d)-(e): Thông báo thu hồi chính thức đƣợc gửi đi nhƣng ngƣời sử dụng chứng chỉ có thể không có cách nào biết đƣợc sự thu hồi này. Tình trạng chia nhỏ rủi ro sẽ phụ thuộc vào việc sử dụng giải pháp thu hồi nào (và có thể đƣợc thoả thuận giữa các thành viên). Khi phát hành các CRL định kỳ, ngƣời sử dụng chứng chỉ sẽ không biết có sự thu hồi cho đến khi CRL2 đƣợc phát hành. Do có thu hồi trực tiếp, nên đây có thể là lý do ta muốn ngƣời sử dụng chứng chỉ biết đƣợc sự thu hồi trong giai đoạn này. Đây có thể là mối quan tâm hàng đầu của ngƣời sử dụng