Mô hình thử nghiệm đơn giản được thực hiện trên một domain bao gồm một chứng thực ủy quyền gốc root CA và hai chứng thực ủy quyền trung gian (intermidiate CA) hay còn gọi là subordinate CA . Chứng thực ủy quyền gốc cấp chứng thực cho các chứng thực ủy quyền trung gian, đến lượt mình các CA trung gian cấp các chứng thực cho các client. Các chứng thực này dùng để bảo mật thư điện tử
Root CA
Subordinate CA cung cấp chứng thực
Hình 4.1: Mô hình thử nghiệm Windows 2000 PKI trên một domain
4.2.1.1 Các yêu cầu tiền triển khai Windows PKI
Để cài đặt mô hình thử nghiệm trong một domain trước hết chúng ta cần ít nhất một máy điều khiển miền (domain controller) để thực hiện việc cài đặt Active Directory, do việc thực hiện cài đặt Enterprise CA chỉ thực hiện đuợc trên domain đã có Active Directory (Xem 3.4.1).
4.2.1.2 Cài đặt Certificate Services
Việc cài đặt Windows 2000 Certificate Services cho phép chúng ta lựa chọn hai dạng của CA, xác định bởi module chính sách nào được lựa chọn trong quá trình cài đặt Certificate Services. Hai dạng đó gồm:
• Enterprise CA
• Stand-alone CA
Với mỗi dạng, enterprise CA hay stand-alone CA chúng ta lại có hai lựa chọn :
• CA gốc-root CA
Mỗi lựa chọn sẽ tác động đến cách thức hoạt động của CA, cách thức đáp ứng các yêu cầu chứng thực.
Trong mô hình thực nghiệm này, em chỉ thực hiện việc cài đặt trên các enterprise CA, tuy nhiên trước khi cài đặt em xin nêu ra các yêu cầu để cài đặt từng loại CA, cụ thể như sau:.
Enterprise Root CA: Enterprise root CA là gốc của hệ thống phân cấp chứng thực trên môi trường Windows 2000. Thông thường chức năng của Enterprise Root CA là cung cấp chứng thực cho các CA bổ trợ trong hệ thống. Enterprise Root CA yêu cầu :
• Windows 2000 DNS Services
• Windows 2000 Active Directory. Các thông tin của enterprise được lưu trữ trên Active Directory.
• Đặc quyền quản trị hệ thống .
Enterprise Subordinate CA: Một subordinate CA là một CA cấp các chứng thực bên trong môi trường xí nghiệp, nhưng nó không phải là CA có mức độ tin tưởng cao nhất. Enterprise Subordinate CA yêu cầu các điểm sau:
• Một CA cha (trong mô hình phân cấp): CA này có thể là một CA thương mại bên ngoài, hoặc là một CA gốc độc lập.
• Windows 2000 Active Directory. Các thông tin của enterprise được lưu trữ trên Active Directory.
• Đặc quyền quản trị hệ thống .
Stand-alone Root CA: là gốc của hệ thống phân cấp chứng thực, Stand- alone CA không những cấp chứng thực bên trong tổ chức mà nó còn dùng để thực hiện việc cấp chứng thực cho các thực thể bên ngoài.Thông thường stand- alone CA chỉ cấp các chứng thực cho các subordinate CA Stand-alone CA yêu cầu phải có đặc quyền trên máy chủ cục bộ.
Stand-alone Root CA: là một dạng CA hoạt động độc lập hoặc thuộc một hệ thống phân cấp. Thông thường chúng ta cài đặt Stand-alone subordinate CA khi chúng ta có nhu cầu cấp chứng thực bên ngoài.
Quá trình cài đặt Enterprise Root CA:
Sau đây là qúa trình cài đặt Enterprise Root CA:
Cài đặt Certificate Services từ Windows Component Wizard:
Hình 4.2: Thêm thành phần Certificate Cervices
Hình 4.3: Chi tiết các thành phần của Certificate Services.
Lựa chọn loại CA: Nếu trong trường hợp cài đặt trên hệ thống chưa cài đặt Active Directory thì chúng ta không thể cài đặt được các enterprise CA. Trong mô hình thử nghiệm của mình em chọn Enterprise Root CA.
Hình 4.4: Các dạng CA
Qúa trình cài đặt được thực hiện tiếp theo bằng việc lựa chọn các CSP(Crypto Services Provider) sẽ tạo cặp khóa cho CA, các thuật toán băm và các độ dài khóa đáp ứng chính sách bảo mật.
Hình 4.5: Chỉ định các đặc tính của khóa cho CA.
Sau đó chúng ta cung cấp các thông tin về CA. Các thông tin đó bao gồm:
Trường Mô tả
CA name Tên của CA
Organization Tên hợp pháp của tổ chức Organizational Unit
City Thành phố mà tổ chức trực thuộc
State or Province Bang hay tỉnh
Country/Region Tên quốc gia, theo chuẩn X.500 Naming Schema
E-mail e-mail của tổ chức hay của người quản trị CA description Những mô tả về CA. Trường này không
xuất hiện trên chứng thực của CA
Valid for Khoảng thời gian hợp lệ của chứng thực của CA.
Hình 4.6: cung cấp các thông tin về CA.
Chỉ định cơ sở dữ liệu và cơ sở dữ liệu lỗi
Hình 4.8: Chứng thực tự ký của Root CA
Quá trình cài đặt các subordinate CA
Việc thêm vào cây phân cấp CA một subordinate CA được thực hiện trên một máy Windows 2000 Server trong domain, và được thực hiện bởi người quản trị miền.
Quá trình cài đặt subordinate CA nhìn chung thì giống với quá trình cài đặt của Enterprise Root CA, tuy nhiên chúng cũng khác nhau ở một điểm đó là trong quá trình cài đặt Enterprise subordinate CA yêu cầu được cấp chứng thực từ Root CA.
Hình 4.9: Lựa chọn Enterprise subordinate CA
Hình 4.11: Yêu cầu được cấp chứng thực từ Root CA
Hình 4.12: Chứng thực được cấp bởi Root CA
4.2.1.3 Quản trị Certificate Services CA
Sau khi cài đặt CA chúng ta phải thực hiện một số thao tác cấu hình policy module (chính chính sách), cấu hình exit module, và đặt lịch phát hành các CRL. Sau đó trong quá trình quản trị chúng ta phải thực hiện các công việc khác một các
thường xuyên, bao gồm thu hồi các chứng thực, cấp các chứng thực trong danh sách chờ (pending), chúng ta cũng cần thực hiện các cơng việc như back up CA certificate, tạo mới CA certificate định kỳ...
Cấu hình cho các module: Ta sử dụng Dialog box Enterprise CA Properties:
Hĩnh.13 : Cấu hình của policy module đã được đặt mặc định trong Root CA
Hình 4.14: policy module với các phần mở rộng CDP và AIA.
Sau khi cài đặt CA, các client tiến hành đăng ký các chứng thực từ CA. Việc đăng ký chứng thực có thể được thực hiện thông qua hai cách:
o Sử dụng Certificate snap-in
o Sử dụng Web client.
Khi đăng ký chứng thực sử dụng Web client, enterprise CA đòi hỏi chúng ta phải đăng nhập vào trang web bằng username và password của mình. Sau đó CA tìm thấy tài khoản của người đăng nhập trong dịch vụ Active Directory. CA phát sinh chứng thực dựa trên các thông tin mà nó tìm thấy trong Active Directory và dựa vào khuôn mẫu chứng thực mà người dùng lựa chọn.
Hình 4.15: enterprise CA đòi hỏi username và password
Sau đó người dùng lựa chọn mà CA cung cấp:
o Lấy chứng thực của CA hay lấy danh sách chứng thực bị loại bỏ.
o Yêu cầu một chứng thực mới
o Kiểm tra các chứng thực nào đang còn trong tình trạng chờ cấp phát. Người dùng chọn một tùy chọn thích hợp. Trong trường hợp cần một chứng thực mơi thì người dùng chọn tùy chọn thứ hai.
Hình 4.16: các lựa chọn đăng ký chứng thực.
Tiếp sau đó người dùng sẽ lựa chọn một trong các hai loại yêu cầu: Mặc định thì chứng thực được cấp là user certificate. Nếu người dùng chọn loại yêu cầu là advanced request thì họ được lưa chọn các khuôn mẫu chứng thực.
Với loại yêu cầu là advanced request thì người dùng sẽ được chọn các phương pháp đăng ký chứng thực: đăng ký theo form, đăng ký theo tập tin được mã hoá theo chuẩn PKCS#10, hay đăng ký chứng thực cho smart card.
Hình 4.18: Các loại yêu cầu chứng thực
Và với mỗi loại yêu cầu chứng thực trên chúng ta có thể cấu hình chi tiết các CSP, độ dài khóa,.. và khuôn mẫu chứng thực:
Sau khi submit các thông tin này lên CA, CA sẽ trả về cho người dùng một chứng thực và người dùng có thể cài đặt chứng thực để sử dụng theo mục đích (khuôn dạng) của chứng thực đã chọn.
4.2.1.5 Ánh xạ tài khoản người dùng với chứng thực
Hệ điều hành Windows 2000 cung cấp một mô hình quản trị tài khoản người dùng có sự kết hợp với các chứng thực mà người dùng sở hữu. Trong một môi trường mà sự đe dọa là không đáng kể, thì mô hình mỗi người dùng có một tài khoản và mật mã tương ứng là phù hợp. Tuy nhiên Internet là một môi trường nhiều sự đe dọa, ánh xạ chứng thực là một giải pháp sử dụng công nghệ khóa công khai giảm thiểu sự tấn công vào tài khoản người dùng. Trong Windows chúng ta có thể ánh xạ chứng thực với tài khoản người dùng, sau đó một ứng dụng server sẽ sử dụng công nghệ khóa công khai để xác thực người dùng, nếu người dùng được xác thực thì tài khoản được đăng nhập.
Một cách truyền thống, mỗi hệ thống có một cơ sở dữ liệu quản lý các tài khoản người dùng. Tuy nhiên môi trường ngày càng phân tán, hệ thống quản lý tập trung không còn đáp ứng được yêu cầu khi mà lượng tài khoản tăng lên con số hàng triệu. Chứng thực khóa công khai có thể giải quyết được vấn đề này, bởi vì khi kiểm tra chứng thực, không cần phải tham chiếu đến các cơ sở dữ liệu tập trung.
Các dạng ánh xạ:
o Ánh xạ một-một (one-to-one mapping): Liên quan đến việc ánh xạ một chứng thực với một tài khoản người dùng.
o Ánh xạ nhiều-một(many-to-one mapping): Liên quan đến việc ánh xạ nhiều chứng thực với một tài khoản.
Trong Windows 2000, ánh xạ chứng thực được thực hiện ở hai nơi: IIS, và Active Directory:
o IIS: Khi IIS thực hiện ánh xạ, chứng thực được so sánh với các qui tắc mà IIS lưu trong dữ liệu của nó. Ánh xạ IIS được cấu hình cho mỗi Web server và nó rất hữu ích trong trường hợp chúng ta cần ít ánh xạ.
o Active Directory: Với việc ánh xạ được thực hiện trong Active Directory, khi IIS nhận được một chứng thực từ phía người dùng, IIS chuyển chứng thực đó đến Active Directory, và Active Directory chịu trách nhiệm ánh xạ với tài khoản người dùng.
4.2.1.6 Sử dụng các đặc điểm PKI với Outlook 2000
Cấu hình Outlook để có thể gửi và nhận các thông điệp mã hoá một cách an toàn
Hình 4.21: Các yếu tố bảo mật
Outlook sẽ tự chọn một chứng thực phù của người dùng (người đang thực hiện cấu hình), nếu chứng thực mà Outlook tự chọn không phù hợp thì người dùng có thể chọn một chứng thực khác.
4.2.1.7 Mã hoá hệ thống tập tin (Encrypting File System-EFS)
Mã hoá tập tin hệ thống được kèm theo hệ điều hành Windows 2000 dựa trên mã hoá khóa công khai và tận dụng các lợi điểm của kiến trúc CryptoAPI trong Windows 2000.
Mỗi file được mã hoá sử dụng một khóa mã hoá file phát sinh ngẫu nhiên (khóa này không phụ thuộc vào cặp khoá của người dùng).
EFS hỗ trợ việc mã hóa và giải mã các tập tin lưu trữ trong các ổ đĩa cục bộ cũng như ở một file server từ xa. Khi sử dụng EFS chúng ta không phải tự giải mã các tập tin đã được mã hoá mà thay vào đó EFS tự động phát hiện một file đã được mã hoá và định vị khóa mã hoá file của người dùng trong hệ thống lưu trữ khóa.
EFS được thực hiện ở cả hai phía: người dùng và quản trị.
Mã hoá thư mục và tập tin đối với người dùng
Mã hoá và giải mã thư mục, tập tin với Windows Explorer:
Mã hoá với Cipher.exe
Kết luận
Trong quá trình thực hiện, luận văn đã tiến hành nghiên cứu các khái niệm cơ bản của công nghệ mã hóa khóa công khai, vai trò, cách thức hoạt động, và mối quan hệ giữa chúng. Từ những khái niệm cơ bản như mã hóa khóa công khai, chứng thực số, chữ ký số..đến các hệ thống chứng thực ủy quyền, các hoạt động cấp phát, quản trị chứng thực, cách thức hoạt động của các danh sách chứng thu hồi. Có thể tóm tắt lại các ý niệm cơ bản như sau :
o Khi sử dụng mã hóa khóa công khai, chúng ta cần một cặp khóa, khóa riêng (private key) và khóa công khai(public key). Khóa công khai được công bố rộng rãi trong khi khóa riêng phải được giữ bí mật. Trong trao đổi thông tin người gửi mã hoá dữ liệu bằng khóa công khai của người nhận và gửi cho người nhận, đến lượt mình người nhận, sau khi nhận được, dùng khóa riêng của mình để giải mã.
o Để đảm bảo tính toàn vẹn và xác thực của dữ liệu, người ta đưa ra hai khái niệm là chứng chỉ số (digital certificate) và chữ ký số
(digital signature). Chứng chữ số chứa đựng những thông tin đảm bảo tính hợp pháp của một chủ thể sở hữu cặp khóa (public key/private key) và là phương tiện để trao đổi các khóa công khai. Chữ ký số có chức năng như chữ ký tay, đảm bảo tính xác thực của chủ thể tham gia trong các giao dịch và đồng thời nó cũng đảm rằng các thực thể không thể từ chối vai trò của mình trong các phiên giao dịch.
o Chứng thực số được cấp bởi các chứng thực ủy quyền CA (Certificate Authority). Các CA tạo nên một hệ thống phân cấp, với CA ở gốc Root CA có mức độ tin tưởng lớn nhất. Các CA cung cấp chứng thực
cho các client có yêu cầu, quản trị các chứng thực và thu hồi các chứng thực.
o Mỗi chứng thực có một khoảng thời gian hợp lệ, sau khoảng thời gian đó nó sẽ không còn giá trị sử dụng và được đưa vào một danh sách có tên là danh sách thu hồi chứng thực Certificate Revocation List- CRL.
o Các khái niệm chứng thực, chữ ký, và và chứng thực ủy quyền là những khái niệm nền tảng của hạ tầng kiến trúc khóa công khai
PKI-Public Key Infrastructure. Và với sự hỗ trợ của các tổ chức quốc tế như ITTU, IETF,..PKI đã được chuẩn hoá trở thành chuẩn chung được sử dụng rộng rãi trên toàn thế giới.
Trên cơ sở những khái niệm cơ bản đó, luận văn tiến hành nghiên cứu kiến trúc của PKI trong môi trường Windows theo hướng từ kiến trúc cốt lõi bên trong đến kiến trúc ở mức logic, trừu tượng bên ngoài. Thành phần của của cá kiến trúc đó, vai trò, và sự phối hợp lẫn nhau trong quá trình hoạt động của các thành phần PKI . Có thể tóm tắt như sau:
o Microsoft đã tích hợp nền tảng khóa công khai PKI vào hệ điều hành Windows. Kiến trúc PKI trong Windows cho phép lập trình viên tạo nên các ứng dụng hỗ trợ PKI bằng bộ thư viện hàm CryptoAPI cũng như cho phép triển khai các hệ thống chứng thực dựa trên Certificate Services. Windows cũng hỗ trợ rất nhiều thuật toán trong việc tạo chữ ký, mã hoá dữ liệu và nhiều ứng dụng dưa trên chứng thực như: mã hoá tập tin hệ thống, gửi nhận các thư điện tử an toàn,...
o Certificate Services là hạt nhân của kiến trúc PKI trên Windows, dựa trên Certificate Services chúng ta có thể xây dựng nên các hệ thống tin cậy, cung cấp các chứng thực để thực hiện các tác vụ truy cập tài nguyên hệ thống, đảm bảo xác thực trong giao dịch. Ngoài ra Certificate Services còn được thiết kế để tùy biến cho phù hợp với nhu cầu của tổ chức sử dụng. Tính linh động của Certificate Services còn cho phép chúng ta tạo
nên những hệ thống chứng thực ở nhiều mức độ và quy mô khác nhau. Chúng ta có thể xây dựng các hệ thống Enterprise CA tích hợp hoạt động với hoạt động với Active Directory, hay là các hệ thống Stand-alone hoạt động độc lập. Chúng ta cũng có thể xây dựng các hệ thống CA phục vụ cho các hoạt động nội bộ hay là các CA cung cấp cả chứng thực cho các thành phần bên ngoài, thâm chí chúng ta có thể xây dựng cả những dịch vụ cung cấp chứng thực thương mại..
o Các hệ thống chứng thực trong Windows 2000, tùy qui mô, có thể là một hệ thống phân cấp, hoặc cũng có thể là nhiều hệ thống phân cấp. Các hệ thống phân cấp thường bắt đầu bằng một CA gốc. CA gốc phát