
| 出版日期:2002-12-09 总期号:1175 本年期号:92 |
|
PKI:认证和加密
卿斯汉 网络环境下的电子商务的安全决非某一个或一类安全产品所能完全奏效,而是必须有一个系统的、安全的解决方案。电子商务整体的安全不仅要采用防火墙、入侵检测系统、审计、弱点检测、防病毒、认证和加密等系统或技术,甚至要采用安全的操作系统作为安全的基础。在此,本文并不对网络环境下的电子商务安全所涉及的方方面面给予介绍,而是针对网络环境下的电子商务的特别之处——认证和加密及对其解决方法——PKI作初步探讨。 Internet商务标准在涉及“保密和安全”的第四项中指出两个有关的最低要求:在整个交易过程中,销售商必须对所有消费者提供的信息进行加密传输;销售商必须对销售商存储的消费者资料进行加密处理。在电子商务完整的交易中,除了消费者和销售商外,还需要有关交易的第三方的参与。例如,银行的支付网关。可见,消费者、销售商、支付网关之间的信赖关系,以及信息的加密传输和存储在电子商务的运行中起到至关重要的作用。 什么是PKI? 公钥基础设施——PKI(Public-key Infrastructure)是解决信任和加密问题的基本解决方案。基于Internet的增值应用呼唤一个真正可靠、稳定、高性能、安全、互操作性强、完全支持交叉认证的PKI系统。 网络环境下,特别是Internet环境下的电子交易往往是在互不相识的消费者和销售商、或企业和企业之间发生的。对“互不相识”更加准确的描述应当是“互不信任”。公钥加密技术的发明使得互不相识的两个人(或主体)可以安全地通信。在规模不大的网络或较为封闭的网络中,通信主体可以通过KDC这一类的密钥分发或管理中心可靠地获得通信对方的公钥,即通过KDC和协议可以实现安全的公钥分发。但是在较大规模的网络环境中,特别是在Internet环境下,KDC不再适用,因而这种环境下的公钥分发问题成为最突出的问题。可靠地获得通信对方公钥的问题在网络环境下就是信任的问题。PKI的本质就是实现了大规模网络中的公钥分发问题,建立了大规模网络中的信任基础。 PKI是创建、管理、存储、分发和取消基于公钥加密的公钥证书所需要的一套硬件、软件、人、策略和过程的集合。 PKI的核心元素 PKI框架中的核心元素是公钥证书;PKI的核心实施者是认证中心(CA,Certification Authority)。公钥证书是CA对主体的公钥和主体的其它属性做签名而形成的一种信息结构。公钥证书将主体的公钥以及其它属性与主体的身份绑定。主体之间对彼此的信任,也即对彼此公钥和其它属性的相信,建立在主体对CA的信任的基础上。尽管两个主体互不认识,或互不相信,但只要二者都通过同一个CA的考察并获得该CA签发的证书,则二者通过成功地验证彼此的证书的正确性、有效性,就可以建立信任关系。当然,在实际网络环境中不可能只有一个CA,因此PKI给出了两种传统的信任模型——层次信任模型和网状信任模型,以解决不同的管理域(即一个CA所管理的域)中的主体间的信任问题。层次信任模型中,上层CA为下层CA发证书。这种信任模型中有且只有一个根CA,每个证书使用者都知道根CA的公钥。只要找到一条从根CA到一个证书的认证路径(certification path),就可实现对这个证书的验证,建立对该证书的主体的信任。网状信任模型中,两个CA彼此为对方发证书,形成同等CA间的网状信任关系。证书使用者只要找到一条从它临近的CA(通常是为其发证书的CA)到被验证的证书的认证路径,就可实现对这个证书的验证。此外,美国和加拿大的政府和研究机构还推出了桥CA信任模型。桥CA的目的是连接多个PKI,建立PKI间的信任关系和实现PKI间的互操作。这些PKI的信任模型可以是任何传统类型的信任模型。桥CA与各个PKI中被选作主CA(principal CA)的CA做交叉认证。若一个PKI用层次信任模型实现,则桥CA与其根CA建立交叉认证;若一个PKI用网状信任模型实现,则桥CA只与其中的一个CA建立交叉认证。桥CA只是一个中介,它不直接向用户发证书,也不作为一个根信任点。 PKI很好地解决了大规模网络环境中的信任这一难题,从而保证了验证、机密性、完整性和非否认的有效实施。验证、机密性、完整性和非否认都是电子商务所必需的安全服务。 PKI的互操作性 PKI的互操作性是一个普遍关注的课题,其互操作性框架如左图所示。
图中,中间部分表示PKI内部的互操作,需要解决证书格式、密钥/证书请求和管理、灵活的体系结构、算法、证书库、证书撤销、硬件和平台等技术问题。左上角表示PKI互联间的互操作,需要解决CA互联(交叉认证)、策略互联、目录互联、撤销互联、算法和密钥对等技术问题。右上角表示应用间的互操作,需要解决数据格式、协议、算法、密钥对等技术问题。左下角表示边界间的互操作,需要解决算法、开放的工具、安全管理等技术问题。右下角表示各解决方案间的互操作,需要解决单点登录(SSO)、密钥存储、密钥可移动性、安全策略、PKI互联、密钥/证书管理、证书库/撤销、开发工具等技术问题。 |
|||||||||||||||||||||||||||