>>X.509数字证书

●  简介

      X.509被广泛使用的数字证书标准,是由国际电联电信委员会(ITU-T)为单点登录(SSO-Single Sign-on)和授权管理基础设施(PMI-Privilege Management Infrastructure)制定的PKI标准。X.509定义了(但不仅限于)公钥证书、证书吊销清单、属性证书和证书路径验证算法等证书标准。

      X.509是X.500标准系列的一部分,在PKI的发展中,X.509起到了无可比拟的作用。它定义并标准化了一个通用的、灵活的证书格式,增强了实用性。而X.509的实用性来源于它为X.509 v3和X.509 v2 CRL定义的强有力的扩展机制。

      在X.509系统中,CA签发的证书依照X.500的管理,绑定了一个唯一甄别名(DN-Distinguished Name ),可以包含多个字段和值,还可以支持别名(Alternative Name )。

      X.509包含了一个证书吊销列表(CRL-Certificate Revocation List)实施的标准,这在PKI系统中经常被人所忽略。IETF提出的检查证书有效性的方法是在线证书状态(OCSP- Online Certificate Status Protocol)。Firefo3 缺省就是使用OCSP协议。


●  X.509数字证书内容


alt


●  X.509数字证书的格式

      X.509数字证书格式有三个不同版本

alt 


●  X.509数字证书的编码

      X.509证书的结构是用ASN1(Abstract Syntax Notation One)进行描述数据结构,并使用ASN1语法进行编码。

      ASN1采用一个个的数据块来描述整个数据结构,每个数据块都有四个部分组成:

      1、  数据块数据类型标识(一个字节)

      数据类型包括简单类型和结构类型。

       ◆  简单类型是不能再分解类型,如整型(INTERGER)、比特串(BIT STRING)、字节串(OCTET STRING)、对象标示符(OBJECT IDENTIFIER)、日期型(UTCTime)等。

       ◆  结构类型是由简单类型和结构类型组合而成的,如顺序类型(SEQUENCE, SEQUENCE OF)、选择类型(CHOICE)、集合类型(SET)等。

            •  顺序类型的数据块值由按给定顺序成员成员数据块值按照顺序组成;

            •  选择类型的数据块值由多个成员数据数据块类型中选择一个的数据块值;

            •  集合数据块类型由成员数据块类型的一个或多个值构成。

      2、  数据块长度(1-128个字节)

      长度字段,有两种编码格式。

      若长度值小于等于127,则用一个字节表示,bit8 = 0, bit7-bit1 存放长度值;

      若长度值大于127,则用多个字节表示,可以有2到127个字节。第一个字节的第8为1,其它低7位给出后面该域使用的字节的数量,从该域第二个字节开始给出数据的长度,高位优先。

      还有一种特殊情况,这个字节为0x80,表示数据块长度不定,由数据块结束标识结束数据块。

      3、  数据块的值

      存放数据块的值,具体编码随数据块类型不同而不同

      4、  数据块结束标识(可选)

      结束标示字段,两个字节(0x0000),只有在长度值为不定时才会出现。

      目前,采用X.509数字证书的安全应用系统已被广泛应用于开发事务处理、工作流等业务。在WWW系统中,采用Borwser/Server模式工作。