Trường tbsCertificate

Một phần của tài liệu Xây dựng hệ thống quản lý chứng chỉ số sử dụng công nghệ IAIK và SSL (Trang 52)

Trường tbsCertificate chứa tên của đối tượng được cấp và đối tượng cấp, khĩa cơng khai, thời hạn sử dụng và các thơng tin liên quan khác. Nĩ cũng cĩ

2.2.3.2. Trường signatureAlgorithm

Trường signatureAlgorithm chứa thơng tin về thuật tốn mà CA dùng để ký. Cấu trúc ASN.1 của trường này cĩ dạng như sau:

AlgorithmIdentifier ::= SEQUENCE { algorithm OBJECT IDENTIFIER,

parameters ANY DEFINED BY algorithm OPTIONAL }

algorithm định danh thuật tốn (ví dụ RSAwithSHA-1). parameters là thành phần tùy chọn, nĩ biến đổi tùy theo thuật tốn. Thơng tin về thuật tốn của trường này phải trùng với thơng tin về thuật tốn trong trường chữ ký số cĩ trong chứng chỉ số (signatureValue).

2.2.3.3. Trường signatureValue

Trường signatureValue chứa giá trị của chữ ký số được tính từ trường tbsCertificate. Ở đây sẽ khơng đề cập chi tiết đến các bước tạo ra chữ ký số, mà chỉ cần hiểu rằng tbsCertificate sẽ là dữ liệu đưa vào hàm ký. Dựa vào trường này, CA cĩ thể kiểm tra thơng tin trong trường tbsCertificate và mối quan hệ giữa khĩa cơng khai và đối tượng sở hữu chứng chỉ số.

2.2.3.4. Trường version

Mơ tả phiên bản định dạng của chứng chỉ số. Khi sử dụng các trường mở rộng phiên bản sẽ là 3 (giá trị là 2). Khi khơng cĩ trường mở rộng, nhưng cĩ thơng tin về UniqueIdentifier thì phiên bản sẽ là 2 (giá trị là 1). Nếu chỉ cĩ các trường cơ bản, phiên bản sẽ là 1 (giá trị sẽ khơng được quan tâm đến, mặc địch là 0).

2.2.3.5. Trường serialNumber

Serial number là một số nguyên khơng âm, được CA gắn cho mỗi chứng chỉ số, nĩ là duy nhất đối với mỗi chứng chỉ số mà được cấp bởi một CA.

2.2.3.6. Trường signature

Chứa định danh thuật tốn được CA sử dụng để ký cho chứng chỉ số. Trường này phải chứa định danh thuật tốn trùng với trường signatureAlgorithm trong chuỗi Certificate. Nội dung phần tùy chọn sẽ biến đổi theo thuật tốn.

2.2.3.7. Trường issuer

Định danh đối tượng được ký và cấp bởi CA. Giá trị của trường này khơng được rỗng. Các giá trị được định nghĩa trong X.501.

Name ::= CHOICE { RDNSequence }

RDNSequence ::= SEQUENCE OF RelativeDistinguishedName RelativeDistinguishedName ::=

SET OF AttributeTypeAndValue

AttributeTypeAndValue ::= SEQUENCE { type AttributeType,

value AttributeValue }

AttributeType ::= OBJECT IDENTIFIER

AttributeValue ::= ANY DEFINED BY AttributeType DirectoryString ::= CHOICE {

teletexString TeletexString (SIZE (1..MAX)), printableString PrintableString (SIZE (1..MAX)), universalString UniversalString (SIZE (1..MAX)), utf8String UTF8String (SIZE (1.. MAX)), bmpString BMPString (SIZE (1..MAX)) }

Name gồm các thành phần, mỗi thành phần gồm 2 trường: tên thuộc tính và giá trị. Ví dụ: thuộc tính quốc tịch C, giá trị tương ứng là VN.

AttributeValue được xác định thơng qua AttributeType, nĩ được định dạng theo DirectoryString. DirectoryString là một trong các giá trị sau: PrintableString, TeletexString, BMPString, UTF8String, và UniversalString. UTF8 String là kiểu được được ưu tiên. Tất cả các chứng chỉ số được cấp sau ngày 31-12-2003 phải sử dụng UTF8 String. Thơng tin chi tiết về các thuộc tính của các loại này khơng được đề cập đến trong tài liệu này. Chi tiết các kiểu này tham khảo trong [6].

2.2.3.8. Trường validity

Trường Validity là hạn sử dụng của chứng chỉ số. Trường Validity được biểu diễn dưới dạng SEQUENCE gồm 2 thành phần thời gian: thời gian bắt đầu (notAfter) và thời gian kết thúc (notBefore). Thời gian được định dạng theo UTCTime hoặc GeneralizedTime. CA sử dụng dụng định dạng nào tùy thuộc vào thời gian hiện tại, thời gian hợp lệ đến 2049 thì sử dụng UTCTime, thời gian hợp lệ đến 2050 và muộn hơn sử dụng GeneralizedTime. UTCTime là một kiểu trong chuẩn ASN.1, được sử dụng cho các ứng dụng tồn cầu, thời gian cục bộ là khơng tương thích. Định dạng dữ liệu như sau: YYMMDDHHMMSSZ. Ký tự Z cuối cùng sử dụng cho Zulu hoặc Greenwich Mean Time. Ký tự này cĩ thể là khác, nhưng hiện tại chỉ hỗ trợ Z. GeneralizedTime là một kiểu trong chuẩn ASN.1, dùng để mơ tả thời gian cĩ độ lệch thay đổi. Trường này cĩ thể bao gồm mơ tả về độ lệch thời gian giữa địa phương và Greenwich Mean Time. Định dạng dữ liệu như sau: YYYYMMDDHHMMSSZ.

2.2.3.9. Trường subject

Trường Subject định danh đối tưởng sở hữu khĩa cơng khai. Tên của đối tượng này cĩ thể cĩ ở trong trường Subject hoặc trong trường rộng subjectAltName. Nếu tên của đối nằm trong trường subjectAltName thì trường Subject phải là một chuỗi rỗng và subjectAltName phải bị ràng buộc. Thơng tin trong trường Subject được định dạng theo X.500, ký hiệu là DN. DN phải là duy nhất đối với các đối tượng khác nhau được chứng thực bởi một CA. Điều này khơng cĩ nghĩa là hạn chế số lượng chứng chỉ số cĩ cùng thơng tin DN, áp dụng cho một người cĩ nhiều chứng chỉ số do một CA cấp. Tên của các thuộc tính giá trị được định nghĩa trong X.501.

2.2.3.10. Trường subjectPublicKeyInfo

Subject Public Key Info chứa thơng tin về khĩa cơng khai, thuật tốn và cách thức định dạnh dữ liệu (các tham số của khĩa cơng khai).

Ví dụ: RSA Publickey Định danh thuật tốn:

pkcs-1 OBJECT IDENTIFIER ::= { iso(1) member-body(2) us(840) rsadsi(113549) pkcs(1) 1 }

rsaEncryption OBJECT IDENTIFIER ::= { pkcs-1 1} Cấu trúc các tham số của RSA public key theo ASN.1: RSAPublicKey ::= SEQUENCE {

modulus INTEGER, -- n

2.2.4. Định dạng PEM của chứng chỉ số

Định dạng PEM được sử dụng để trao đổi bảo mật các thơng tin cho thư tín điện tử và cũng được sử dụng để cĩ thể hiện thị trong các ứng dụng. Định dạng PEM của chứng chỉ số bắt đầu bằng dịng

“---BEGIN CERTIFICATE---” à kết thúc bằng “---END CERTIFICATE--- --”. Phân thân là mã hĩa theo định dạng Base64.

Ví dụ: ---BEGIN CERTIFICATE--- MIIDrTCCApWgAwIBAgICBIgwDQYJKoZIhvcNAQEFBQAwgZ0xCzAJ BgNVBAYTAlZOMQ4wDAYDVQQIEwVIYW5vaTEOMAwGA1UEBxM FSGFub2kxDTALBgNVBAoTBFZBU0MxEDAOBgNVBAsTB1ZBU0Mg Q0ExKDAmBgNVBAMTH1ZBU0MgU2VjdXJlIFNlcnZlciBDQSAtIENsY XNzIDMxIzAhBgkqhkiG9w0BCQEWFGNhbWFzdGVyQHZhc2MuY29tL nZuMB4XDTAzMDgyNjE3MDAwMFoXDTA4MDgyNjE3MDAwMFowS zELMAkGA1UEBhMCVk4xDzANBgNVBAgTBkhhIE5vaTENMAsGA1U EChMEVkFTQzEcMBoGA1UEAxMTdmFzYy1jYS52YXNjLmNvbS52bjC BnzANBgkqhkiG9w0BAQEFAAOBjQAwgYkCgYEAwobepX/fULy6jgOl LXXDUOcYIemeZ/n2BtQf4YJm1jnQWmF5UvkjMWUyx6PUXOK4Blqisb 9/1u4A5/lOh7FrQUwLxRzihOZYrbi5Wg1WAGGyEGBW6bY7WJiYlOxL NsbyKriLaRjjrKpu33J2ENoZk/sCnFpvhtHeLXyEzoDA+K0CAwEAAaOBy zCByDAMBgNVHRMBAf8EAjAAMAsGA1UdDwQEAwIFoDAdBgNVH Q4EFgQU2kzGUXejrrzb7WDHbn2DQd1k9kkwQAYDVR0fBDkwNzA1o DOgMYYvaHR0cHM6Ly92YXNjLWNhLnZhc2MuY29tLnZuL3JlcG9zaX Rvcnkvc2NhMy5jcmwwEQYJYIZIAYb4QgEBBAQDAgZAMBMGA1UdJ QQMMAoGCCsGAQUFBwMBMCIGA1UdIwQbMBmAFJ0U5ro4YI193B EHINzYA2cnzKV1ggEIMA0GCSqGSIb3DQEBBQUAA4IBAQBjd3T8r5Y reb9vTVxYW+MmU/Et/3cAh2ag6lBr/kW7hcoL6eYwQCz3meoi9RxEcG3 UH6BbX2Oa08Z7RqzwGRTgPbSOnn9q+xr6+XEObnrkB/UdxM2gizm7zT sTW5vii9KPC69cg8aG7Npmm7SNllNpHEmc5DztfsCLrngRnLABRdyf2Qo DLhPmq6Cdv8XaPdzZbbCFazCc9HMzXs1b12JhN8M6lCoxcjC+VbT0Yhfl HpJsBSx2fgFcojfn6+xhIq/7NY/qgDlnl9fVMlGnmLjf+06Zhhpm+O8ff715Zt lAB9Xit+LJ3wlWF8lpHYUoRQEK+GxWnoB2CRjLNXwAz+4M ---END CERTIFICATE---

2.2.5. Mơ hình quản lý chứng chỉ số

Mơ hình kiến trúc PKIX hầu như vẫn khơng thay đổi nhiều, nĩ được cơng bố trong “Internet Certificate and Certificate Revocation List (CRL)” [RFC2459]. Mơ hình mới nhất của phiên bản “Internet Certificate and CRL Profile” được cơng bố trong RFC3280. Hình 2-2 mơ tả các hoạt động trong mơ hình này, và bảng 2-1 đưa ra tên và mục đích của mỗi thành phần. Tài liệu này chỉ đề cập đến khía cạnh cơng nghệ, nhưng cần phải chú ý rằng PKI khơng chỉ cĩ cơng nghệ. PKI bao gồm cĩ phần cứng, phần mềm, con người, chính sách và các thủ tục cần thiết để tạo, quản lý, lưu trữ, phân phối và thu hồi chứng chỉ số...

Đối tượng sử dụng RA CA 1 CRL Uûy quyền CA 2 K ho th ôn g tin Công bố chứng chỉ số Công bố chứng chỉ và CRL Công bố CRL Chứng thực chéo Truy cập thông tin về chứng chỉ

số và danh sách thu hồi (CRL)

Tải ngoài kênh truyền

Công bố ngoài kênh truyền Đăng ký, khởi tạo, chứng thực, phục hồi cặp khóa, cặp nhật cặp khóa, yêu cầu thu hồi

Đối tượng sử dụng PKI

Các thành phần của PKI

Bảng 2-1. Các thành phần cĩ trong PKI

Thành phần Vai trị chính

Đối tượng sử dụng Đối tượng sử dụng là một thành phần cơ bản đại diện cho người sử dụng cuối, các thiết bị (ví dụ: server, router), hoặc là bất kỳ một thực thể cuối nào mà cĩ thể được định danh trong trường Subject của một chứng chỉ số. Đối tượng này sử dụng các dịch vụ cĩ trong PKI.

CA

(Certification Authority)

CA chịu trách nhiệm cấp chứng chỉ số và thường kiêm luơn việc cơng bố CRL. Nĩ cĩ thể hỗ trợ một số các chức năng quản trị, mặc dù các chức năng đĩ được ủy quyền cho một hay nhiều RA. RA (Registration

Authority)

RA là một thành phần tùy chọn, đảm đương một số chức năng quản trị của CA. RA thường chịu trách nhiệm quản lý đăng ký, nhưng cũng cĩ thể cĩ một số chức năng khác.

Kho thơng tin Repository cĩ chức năng lưu trữ chứng chỉ số và CRL. Các End Entities cĩ thể sử dụng các chức năng này.

CRL Ủy quyền CRL Ủy quyền là một thành phần tùy chọn, được CA ủy quyền cơng bố các CRL.

2.2.5.1. Đối tượng sử dụng

Đối tượng sử dụng cĩ thể là một người sử dụng cuối (end-user), một thiết bị giống như server, router, process, hoặc bất kỳ thứ gì mà cĩ thể định danh trong trường Subject của chứng chứng chỉ số. Đối tượng sử dụng cũng cĩ thể là một thực thể trong PKI, cần phải cân nhắc và cũng tùy quan niệm. Ví du, RA cũng cĩ thể được coi như một đối tượng sử dụng dưới gĩc nhìn của CA. Các đối tượng sử dụng giống như server và người sử dụng cuối cần phải đăng ký xin cấp chứng chỉ số trước khi trở thành một thành viên của PKI.

2.2.5.2. Thành phần CA

Các khĩa cơng khai được cơng bố trong chứng chỉ số. CA là thành phần rất quan trọng của PKI, đĩ là thành phần duy nhất cĩ chức năng cấp chứng chỉ số. Do chứng chỉ số chứa chữ ký điện tử của CA nên nội dung của nĩ khơng thể thay đổi được. CA cũng chịu trách nhiệm cơng bố CRL, trừ khi nĩ ủy quyền cho CRL Ủy quyền. CA cũng cĩ thể thực hiện một số chức năng quản trị như RA. CA cũng cĩ chức năng sao lưu và phục hồi khĩa, mặc dù chức năng này cĩ thể được ủy quyền cho một thành phần khác. CA cũng được xem như là một thành phần được tin tưởng trong PKI. CA được xem như là nguồn tin cậy để kiểm tra tính hợp lệ của một đường chứng thực (Certification Path). Certification Path là một chuỗi các chứng chỉ số đặc biệt, nĩ là nguồn tin cậy của CA. Mỗi chứng chỉ số cĩ trong chuỗi phải được kiểm tra theo thứ tự chứng thực, chức năng này là một trong chức năng then chốt của PKI.

2.2.5.3. Thành phần RA

RA là một thành phần tùy chọn của PKI, nĩ cĩ một số chức năng được CA ủy quyền. RA thường chịu trách nhiệm quản lý đăng ký, bao gồm luơn việc xác thực chỉ danh của đối tượng sử dụng. RA cĩ thể thực hiện một số chức năng khác:

 Xác nhận các thuộc tính của đối tượng đăng ký (Subject)

 Kiểm tra Subject cĩ sở hữu khĩa riêng mà được đăng ký khơng  Hỗ trợ Subject đăng ký thực hiện quá trình đăng ký

 Tạo ra cặp khĩa Public/private key

 Làm trung gian giữa CA và đối tượng sử dụng, gửi các thơng báo khĩa bị lộ/hỏng/mất, và kiểm tra các yêu cầu phục hồi khĩa.

 Xác nhận các tham số của khĩa cơng khai trong quá trình đăng ký

RA cĩ thể được CA ủy quyền cho một số chức năng, nhưng khơng bao giờ cĩ quyền cấp chứng chỉ số. Việc sử dụng các RA sẽ cĩ 2 lợi ích chính. Trước tiên, RA cĩ thể làm giảm chi phí. Nĩ rất cĩ lợi trong trường hợp cách xa về khoảng cách địa lý. Thứ hai, việc RA đảm nhiệm một số chức năng của CA cho phép một tổ chức cĩ thể thực hiện các chức năng của CA một cách off-line, sẽ làm giảm đi cơ hội cho những đối tượng muốn tấn cơng với mục đích phá hoại.

2.2.5.4. Kho thơng tin

Kho thơng tin thường cĩ liên quan đến một dịch vụ thư mục. Nĩ cĩ các chức năng lưu trữ và nhận các thơng tin cĩ liên quan đến PKI, ví dụ như chứng chỉ số và CRL. Kho thơng tin cĩ thể sử dụng chuẩn X.500/LDAP, hoặc cĩ thể là bất cứ thứ gì mà cĩ thể nhận được thơng tin từ server thơng qua giao thức FTP, HTTP hoặc một giao thức khác. Cĩ một số chức năng cĩ thể được CA ủy quyền cho một đối tác tin tưởng, ví dụ như giao thức xem trạng thái trực tuyến của chứng chỉ số (Online Certificate Status Protocol [RFC2560]).

2.2.5.5. CRL Ủy quyền

Thơng thường, CA sau khi cấp các chứng chỉ số thì cũng chịu trách nhiệm thu hồi các chứng chỉ số nếu cĩ vấn đề gì. Nhưng các chức năng này cũng cĩ thể được CA ủy quyền cho một thực thể nào đĩ. CRL được cơng bố của các đối tượng này chỉ để tham chiếu gián tiếp. Đây thực sự là một thành phần mới làm cho PKIX trở nên phức tạp hơn.

2.2.6. Các chức năng quản lý chứng chỉ số

PKIX định ra một số các chức năng quản lý cần thiết, xem RFC3280. Xem hình 2-2 để thấy các mối tương tác giữa các thành phần của PKI. Các chức năng riêng của từng thành phần sẽ được mơ tả chi tiết trong các đoạn sau. Chú ý là một trong các chức năng này cĩ thể được thực hiện off-line.

Một phần của tài liệu Xây dựng hệ thống quản lý chứng chỉ số sử dụng công nghệ IAIK và SSL (Trang 52)

Tải bản đầy đủ (PDF)

(120 trang)