PKI 简介
PKI( Public Key Infrastructure,公钥基础设施)是一个利用公开密钥理论和技术来实现并提供信息安全服务的具有通用性的安全基础设施。
公共密钥体制也称为非对称密钥体制,是目前应用最广泛的一种加密体制。这一体制使用一个非对称的密钥对,分别是一个公开的加密密钥(公钥)和一个保密的解密密钥(私钥),用公钥加密的信息只能用私钥解密,反之亦然。由于公钥是公开的,需要在网上传送,故公钥的管理问题就是公共密钥体制所需要解决的关键问题。
目前, PKI 系统中引出的数字证书机制就是一个很好的解决方案。基于公共密钥技术的数字证书是一个用户的身份和他所持有的公钥的结合,是使用 PKI 系统的用户建立安全通信的信任基础。
基于数字证书的 PKI 系统,能够为网络通信和网络交易,特别是电子政务和电子商务业务,透明地提供一整套安全服务,主要包括身份认证、保密、数据完整性和不可否认性。目前,我司的 PKI 可为安全协议 IPsec、 SSL、 WAPI 提供证书管理机制。
相关术语
1. 数字证书
数字证书是一个经 CA( Certificate Authority,证书机构)签名的、包含公开密钥及相关的用户身份信息的文件,它建立了用户身份信息与用户公钥的关联。 CA 对数字证书的签名保证了证书的合法性和权威性。数字证书的格式遵循 ITU-T X.509 国际标准,目前最常用的 为 X.509 V3 标准。一个数字证书中包含多个字段,包括证书签发者的名称、主体的公钥信息、 CA 对证书的数字签名、证书的有效期等。
本手册中涉及两类证书:本地( Local)证书和 CA( Certificate Authority)证书。本地证书是 CA签发给实体的数字证书; CA 证书是 CA 自身的证书。若 PKI 系统中存在多个 CA,则会形成一个CA 层次结构。最上层的 CA 是根 CA,拥有一个 CA“自签”的数字证书。
2. CRL
由于用户姓名的改变、私钥泄漏或业务中止等原因,需要存在一种方法将现行的证书撤消,即撤消公开密钥及相关的用户身份信息的绑定关系。在 PKI 中,所使用的这种方法为证书废除列表。任何一个证书被废除以后, CA 就要发布 CRL 来声明该证书是无效的,并列出所有被废除的证书的序列号。 CRL( Certificate Revocation List,证书废除列表)提供了一种检验证书有效性的方式。
当一个 CRL 的撤消信息过多时会导致 CRL 的发布规模变得非常庞大,且随着 CRL 大小的增加,网络资源的使用性能也会随之下降。为了避免这种情况,允许一个 CA 的撤消信息通过多个 CRL 发布出来,并且使用 CRL 发布点来指出这些小 CRL 的位置。
3. CA 策略
CA 在受理证书请求、颁发证书、吊销证书和发布 CRL 时所采用的一套标准被称为 CA 策略。通常,CA 以一种叫做 CPS( Certification Practice Statement,证书惯例声明)的文档发布其策略, CA策略可以通过带外(如电话、磁盘、电子邮件等)或其他方式获取。由于不同的 CA 使用不同的方法验证公开密钥与实体之间的绑定,所以在选择信任的 CA 进行证书申请之前,必须理解 CA 策略,从而指导对实体进行相应的配置。
体系结构
一个PKI体系由终端实体、证书机构、注册机构和PKI存储库四类实体共同组成,如 图 1-1 所示。
1. 终端实体
终端实体是 PKI 产品或服务的最终使用者,可以是个人、组织、设备(如路由器、交换机)或计算机中运行的进程。
2. CA
CA 是 PKI 的信任基础,是一个用于签发并管理数字证书的可信实体。其作用包括:发放证书、规定证书的有效期和通过发布 CRL 确保必要时可以废除证书。
3. RA
RA( Registration Authority,注册机构)是 CA 的延伸,可作为 CA 的一部分,也可以独立。 RA 功能包括个人身份审核、 CRL 管理、密钥对产生和密钥对备份等。 PKI 国际标准推荐由一个独立的RA 来完成注册管理的任务,这样可以增强应用系统的安全性。
4. PKI 存储库
PKI 存储库包括 LDAP( Lightweight Directory Access Protocol,轻量级目录访问协议)服务器和普通数据库,用于对用户申请、证书、密钥、 CRL 和日志等信息进行存储和管理,并提供一定的查询功能。
LDAP 提供了一种访问 PKI 存储库的方式,通过该协议来访问并管理 PKI 信息。 LDAP 服务器负责将 RA 服务器传输过来的用户信息以及数字证书进行存储,并提供目录浏览服务。用户通过访问LDAP 服务器获取自己和其他用户的数字证书。
主要应用
1. ×××
×××( Virtual Private Network,虚拟专用网络)是一种构建在公用通信基础设施上的专用数据通信网络,利用网络层安全协议(如 IPSec)和建立在 PKI 上的加密与数字签名技术来获得机密性保护。
2. 安全电子邮件
电子邮件的安全也要求机密、完整、认证和不可否认,而这些都可以利用 PKI 技术来实现。目前发展很快的安全电子邮件协议 S/MIME(Secure/Multipurpose Internet Mail Extensions,安全/多用途Internet 邮件扩充协议),是一个允许发送加密和有签名邮件的协议。该协议的实现需要依赖于 PKI技术。
3. Web 安全
为了透明地解决 Web 的安全问题,在两个实体进行通信之前,先要建立 SSL( Secure SocketsLayer,安全套接字层)连接,以此实现对应用层透明的安全通信。利用 PKI 技术, SSL 协议允许在浏览器和服务器之间进行加密通信。此外,服务器端和浏览器端通信时双方可以通过数字证书确认对方的身份。
PKI 的工作过程
针对一个使用 PKI 的网络,配置 PKI 的目的就是为指定的实体向 CA 申请一个本地证书,并由设备对证书的有效性进行验证。下面是 PKI 的工作过程:
(1) 实体向 CA 提出证书申请。
(2) RA 审核实体身份,将实体身份信息和公开密钥以数字签名的方式发送给 CA。
(3) CA 验证数字签名,同意实体的申请,颁发证书。
(4) RA 接收 CA 返回的证书,发送到 LDAP 服务器以提供目录浏览服务,并通知实体证书发行成功。
(5) 实体获取证书,利用该证书可以与其它实体使用加密、数字签名进行安全通信。
(6) 实体希望撤消自己的证书时,向 CA 提交申请。 CA 批准实体撤消证书,并更新 CRL,发布到LDAP 服务器。