网上数字信息的传输安全,除要在通信传输中进行加密外,还一定得建立一种信任及信任验证机制,也就是参与各方需得有一个可被验证的标识,其即为数字证书。数字证书把实体的公开密钥与其自身联系起来。为保证这一联系关系的真实性,须保证数字证书的来源可靠。这就需有一个各方均信任的机构,负责发放与管理数字证书。第三方机构就是证书认证机构。
证书认证机构也称为电子认证服务机构。CA的职责是签发、认证与管理证书的机关。它由本身的注册审核体系,核查申请证书的用户身份与其他有关信息,使用户属性和证书的真实性相同。认证中心专门负责发放数字证书。
CA通常采用多层次的分级结构。上级CA的职责是签发与管理下级的证书,认证中心的最下一级直接面向最终用户。若用户想有一份自己的证书,则应先对CA提出申请。在CA说明申请者的身份之后,就为其分配一个公钥,把这个公钥和申请者的身份信息绑起来,并为之计算数字签名后,形成证书发向申请者。
数字证书的颁发有如下步骤:
(1)用户先得到自己的密钥对,并把公钥与一些个人身份信息传至CA。
(2)CA在身份核实之后,会实施某些一定要的过程,来确认请求肯定是由用户发送来的。之后,CA会发一个数字证书给用户,该证书内含用户的个人信息与其公钥信息,同时附有CA的签名信息。
(3)用户可用其拥有的数字证书实施有关的各种活动。
CA用私钥对证书内容进行数字签名,保证了数字证书的完整性与不可篡改性。PKI应用系统接收数字证书之前,需验证证书上的CA数字签名,检查证书的撤销状态。目前,最常用的撤销状态检查方式是证书废除列表(CRL)机制,而CRL也同样需要数字签名保护。CA私钥是保护私钥的机密性与可用性是安全的基础。只要掌握CA私钥就能签发证书。而且,一般CRL也由CA来签发。所以,若CA私钥泄露,攻击者就能签发含有虚假信息的数字证书,PKI的安全服务也将完全失效。若CA私钥不可用,就不能及时地签发CRL以撤销证书,也会给应用系统带来风险。为了保护私钥,CA系统一般会用专门的硬件密码设备生成密钥对,存储私钥并进行数字签名。