PKI标准
在PKI技术框架中,许多方面都经过严格的定义,如用户的注册流程、数字证书的格式、CRL的格式、证书的申请格式以及数字签名格式等。
国际电信联盟ITU X.509协议,是PKI技术体系中应用最为广泛、也是最为基础的一个国际标准。它的主要目的在于定义一个规范的数字证书的格式,以便为基于X.500协议的目录服务提供一种强认证手段。但该标准并非要定义一个完整的、可互操作的PKI认证体系。
PKCS是由美国RSA数据安全公司及其合作伙伴制定的一组公钥密码学标准,其中包括证书申请、证书更新、证书作废表发布、扩展证书内容以及数字签名、数字信封的格式等方面的一系列相关协议。到1999年底,PKCS已经公布了以下标准:
- PKCS#1:定义RSA公开密钥算法加密和签名机制,主要用于组织PKCS#7中所描述的数字签名和数字信封。
- PKCS#3:定义Diffie-Hellman密钥交换协议。
- PKCS#5:描述一种利用从口令派生出来的安全密钥加密字符串的方法。使用MD2或MD5 从口令中派生密钥,并采用DES-CBC模式加密。主要用于加密从一个计算机传送到另一个计算机的私人密钥,不能用于加密消息。
- PKCS#6:描述了公钥证书的标准语法,主要描述X.509证书的扩展格式。
- PKCS#7:定义一种通用的消息语法,包括数字签名和加密等用于增强的加密机制,PKCS#7与PEM兼容,所以不需其他密码操作,就可以将加密的消息转换成PEM消息。
- PKCS#8:描述私有密钥信息格式,该信息包括公开密钥算法的私有密钥以及可选的属性集等。
- PKCS#9:定义一些用于PKCS#6证书扩展、PKCS#7数字签名和PKCS#8私钥加密信息的属性类型。
- PKCS#10:描述证书请求语法。
- PKCS#11:称为Cyptoki,定义了一套独立于技术的程序设计接口,用于智能卡和PCMCIA卡之类的加密设备。
- PKCS#12:描述个人信息交换语法标准。描述了将用户公钥、私钥、证书和其他相关信息打包的语法。
- PKCS#13:椭圆曲线密码体制标准。
- PKCS#14:伪随机数生成标准。
- PKCS#15:密码令牌信息格式标准。
另外,PKCS#2和PKCS#4已经合并到PKCS#1之中。PKIX是由IETF组织中的PKI工作小组制定的系列国际标准。此类标准主要定义基于X.509和PKCS的PKI模型框架。PKIX中定义的四个主要模型为用户、认证中心CA、注册中心RA和证书存取库。