PKI & thương mại điện tử - Phần 3



Phỏng dịch từ "PKI Implementing and Managing E-Security" - các tác giả: Andrew Nash, William Duane, Celia Joseph và Derek Brink

PHẦN 3 - CHỨNG CHỈ SỐ (DIGITAL CERTIFICATE) & TÓM LƯỢC VỀ MẬT MÃ

CHỨNG CHỈ SỐ

Mã khóa công khai được phổ biến để mọi người có thể tham chiếu và sử dụng, vì thế dẫn đến nguy cơ mã khóa này bị thay hoặc sửa đổi. Giải pháp để bảo đảm xuất xứ và sự toàn vẹn của nó là chứng chỉ số (tạm dịch từ digital certificate)

Chứng chỉ số là một văn bản chứng nhận rằng mã khóa công khai Pa thực sự thuộc về sở hữu chủ có tên là A, và chỉ có thế mà thôi. Vấn đề quan trọng là nhân vật phát hành chứng chỉ (và chứng nhận nội dung) phải là một nhân vật có đầy đủ uy tín với những ai muốn dùng mã khóa công khai đó. Nhân vật ấy được gọi là Trusted Certification Authority - hay CA - (xin tạm dịch là nhà cung cấp chứng chỉ số được tin tưởng). CA chứng nhận bằng cách tạo một chữ ký số ứng với nội dung chứng chỉ. Việc thẩm định một chứng chỉ số thực chất là thẩm định chữ ký số này bằng cách dùng mã khóa công khai của CA.

Đến đây có lẽ bạn sẽ phát hiện ra một vòng lẩn quẩn: Vì e ngại mã khóa công khai bị thay đổi nên phải cấp chứng chỉ, thế mà chứng chỉ (hay mã khoá công khai thể hiện trên chứng chỉ) lại được thẩm định bằng cách dùng một mã khóa công khai khác!!! Nếu "bọn xấu" thay mã khóa của CA bằng mã khóa của chúng thì sao?
Để chống lại nguy cơ này, cần thực hiện 02 việc:
- Thừ nhất, CA cấp cho chính mình một chứng chỉ số. Chứng chỉ này được gọi là self-signed certificate.
- Thứ hai, các phần mềm liên quan (trình duyệt web, duyệt mail...) sẽ lưu trữ và bảo vệ nghiêm ngặt các chứng chỉ của các CA.

Trích:
Bạn có thể thử quan sát chứng chỉ số của trusted CA được trình duyệt web lưu trữ sẵn:
- Trong Internet Explorer 6.x: menu Tools > Internet Options > tab Contents > Certificates.... > tab Trusted Root Certification Authorities > chọn 1 dòng nào đó > View.
- Trong Firefox 3.x: menu Tools > Options... > Advanced > tab Encryption > View Certificates > tab Authorities > chọn 1 dòng nào đó > View.
Các nhà sản xuất (Microsoft và Mozilla) đã kiểm định các chứng chỉ này trước khi lưu chúng vào trình duyệt của họ.
Có nhiều cách để quản lý danh sách các trusted CA nhưng ta sẽ bàn đến trong các bài sau. Bây giờ ta sẽ cùng tìm hiểu chi tiết hơn một chút về quá trình cấu tạo và kiểm định chứng chỉ số.

Quá trình phát sinh chứng chỉ số:



Quá trình phát sinh self-signed certificate qua sơ đồ:



Quá trình thẩm định chứng chỉ số:



Nếu certificate được cấp bởi một CA không tồn tại trong danh sách trusted CA thì quá trình thẩm định cũng chấm dứt.

Bạn có thể cho qua sự kiện CA là "một kẻ vô danh trên chốn giang hồ" và tiếp tục quá trình xử lý.
Thậm chí bạn có thể thêm CA "vô danh tiểu tốt" vào danh sách trusted CA. Tuy nhiên, chỉ nên thực hiện việc ấy sau khi đã cân nhắc cẩn thận vì nếu CA "vô danh tiểu tốt" ấy là một trong "bọn xấu" (hacker) thì bạn đã mở toang cửa trước để tạo điều kiện cho hắn âm thầm tạo một cửa sau (back door) trong ngôi nhà máy tính của bạn!

Trong quá trình phát sinh certificate, CA không chỉ hash mã khóa công khai và thông tin chủ thể mà còn hash cả thời hạn hiệu lực và thời điểm phát sinh certificate. Nếu CA được tin tưởng (tồn tại trong danh sách trusted CA) thì quá trình thẩm định tiếp tục bằng việc so sánh digest mà CA đã mã hóa (Hs) với digest của thông tin dạng bạch văn trên certificate (Hs'). Khi 02 digest trùng khớp, certificate được xem là hợp lệ (valid) hay nói một cách khác, mã khóa công khai thể hiện trên certificate là đúng xuất xứ và không bị sửa đổi.
Trích:
Một số phần mềm (thường là các trình duyệt web) sẽ phát sinh cảnh báo khi phát hiện certificate bất hợp lệ và đề nghị người dùng ra quyết định.
Bạn có thể thử quan sát cảnh báo về thời hạn hiệu lực bằng thí nghiệm nhỏ sau đây:
- Điều chỉnh ngày hệ thống trên máy tính của bạn thành năm 2005
- Dùng trình duyệt web truy cập mail.yahoo.com
Nhớ chỉnh lại ngày sau khi thử nghiệm xong
TÓM LƯỢC VỀ MẬT MÃ

Tôi xin tóm lược những điểm chính yếu liên quan đến mật mã trong 3 phần đầu của loạt bài này:

- Các ứng dụng mật mã tối ưu luôn luôn kết hợp hai hình thức đối xứng và bất đối xứng để tận dụng ưu điểm của cả hai.
- Khi kết hợp mật mã đối xứng và bất đối xứng thì cô nàng mã khóa đối xứng thật sự là "một đóa phù dung sớm nở tối tàn": mã khóa đối xứng được phát sinh ngẫu nhiên, chỉ dùng một lần rồi hủy bỏ. Mã khóa đối xứng dùng để mã hóa thông tin có dung lượng lớn.
- Mã khóa công khai của người nhận dùng đóng gói (wrap) mã khóa đối xứng trước khi chuyển đi. (key exchange)
- Mã khóa cá nhân của người gửi dùng mã hóa phần cô đọng (digest) của thông tin để tạo ra chữ ký số.
- Để không bị sửa dổi, mã khóa công khai được ghi trong chứng chỉ số (digital certificate) cùng với các thông tin của chủ sở hữu.
- Các nhà cung cấp chứng chỉ số được tin cậy (Trusted Certification Authority - CA -) tạo chữ ký số trên chứng chỉ số. Các phần mềm có liên quan bảo mật thường tích hợp danh sách các trusted CA.


- Cuối cùng thì Ất (a) cũng có thể gửi bí kiếp bún mắm gia truyền cho Bính (b) và Bính có thể an tâm quảng bá món ăn thơm tho độc nhất vô nhị này trên đất Mỹ.

Ất mã hóa bí kiếp, tạo chữ ký số và gửi cho Bính. Lưu ý rằng chứng chỉ số của người gửi sẽ được đính kèm vào thông điệp có chữ ký số.

Hình ảnh này đã được thay đổi kích thước. Click vào đây để xem hình ảnh gốc với kích thước là 1050x704


Bính kiểm định xuất xứ và toàn vẹn mã khoá công khai của Ất.

Hình ảnh này đã được thay đổi kích thước. Click vào đây để xem hình ảnh gốc với kích thước là 1179x492


Bính giải mã thông điệp, kiểm định xuất xứ và sự toàn vẹn thông điệp.

Hình ảnh này đã được thay đổi kích thước. Click vào đây để xem hình ảnh gốc với kích thước là 1285x606


Chúng ta đã trao đổi những vấn đề cơ bản liên quan đến Public Key Infrastructure và có một cái nhìn tổng quát về phương cách bảo vệ thông tin. Thật ra, còn một khái niệm rất quan trọng nữa là "Non-repudiation" mà tôi mong sẽ có cơ hội trình bày trong các phần sau.
SHARE

The Blues

Wellcome to my blog

  • Image
  • Image
  • Image
  • Image
  • Image
    Blogger Comment
    Facebook Comment

0 nhận xét:

Post a Comment