【IT168 专稿】PKI(Public Key Infrastructure)含义为“公钥基础设施”,PKI技术是利用公钥理论和技术建立的提供信息安全服务的基础设施,PKI的基础技术包括加密、数字签名、数据完整性机制、数字信封、双重数字签名等。PKI基础设施采用证书管理公钥,通过第三方的可信任机构--认证中心,把用户的公钥和用户的其他标识信息捆绑在一起,在Internet网上验证用户的身份。PKI基础设施把公钥密码和对称密码结合起来,在Internet网上实现密钥的自动管理,保证网上数据的安全传输。
从广义上讲,所有提供公钥加密和数字签名服务的系统,都可归结为PKI系统的一部分,PKI的主要目的是通过自动管理密钥和证书,为用户建立起一个安全的网络运行环境,使用户可以在多种应用环境下方便的使用加密和数字签名技术,从而保证网上数据的机密性、完整性、有效性。
一、PKI原理
PKI公共密钥体系是利用公共密钥算法的特点,建立一套证书发放、管理和使用的体系,来支持和完成网络系统中的身份认证、信息加密、保证数据完整性和抗抵赖性。PKI 体系可以有多种不同的体系结构、实现方法和通信协议。
公共(非对称)密钥算法使用加密算法和一对密钥:一个公共密钥(公钥,public key)和一个私有密钥(私钥,private key)。其基本原理是:由一个密钥进行加密的信息内容,只能由与之配对的另一个密钥才能进行解密。公钥可以广泛地发给与自己有关的通信者,私钥则需要十分安全地存放起来。使用中,甲方可以用乙方的公钥对数据进行加密并传送给乙方,乙方可以使用自己的私钥完成解密。公钥通过电子证书与其拥有者的姓名、工作单位、邮箱地址等捆绑在一起,由权威机构(CA, Certificate Authority)认证、发放和管理。把证书交给对方时就把自己的公钥传送给了对方。证书也可以存放在一个公开的地方,让别人能够方便地找到和下载。
公共密钥方法还提供了进行数字签名的办法:签字方对要发送的数据提取摘要并用自己的私钥对其进行加密;接收方验证签字方证书的有效性和身份,用签字方公钥进行解密和验证,确认被签字的信息的完整性和抗抵赖性。公共密钥方法通常结合使用对称密钥(单密钥)方法,由计算效率高的对称密钥方法对文件和数据进行加密。目前在 Internet 上主要使用 RSA 公共密钥方法,密钥长度 512 或 1024 位,是广泛使用的 SSL/TLS 和S/MIME 等安全通信协议的基础。
二、PKI的应用模式
PKI作为安全基础设施,能为不同的用户按不同安全需求提供多种安全服务。这些服务主要包括认证、数据完整性、数据保密性、不可否认性、公正服务等。PKI提供的这些安全服务恰好能满足电子商务、电子政务、网上银行、网上证券等金融业交易的安全需求,是确保这些活动顺利进行必备的安全措施。
模式1:电子商务应用
电子商务的参与方一般包括买方、卖方、银行和作为中介的电子交易市场。买方通过自己的浏览器上网,登录到电子交易市场的Web服务器并寻找卖方。当买方登录服务器时,互相之间需要验证对方的证书以确认其身份,这被称为双向认证。
在双方身份被互相确认以后,建立起安全通道,并进行讨价还价,之后向商场提交订单。订单里有两种信息:一部分是订货信息,包括商品名称和价格;另一部分是提交银行的支付信息,包括金额和支付账号。买方对这两种信息进行“双重数字签名”,分别用商场和银行的证书公钥加密上述信息。当商场收到这些交易信息后,留下订货单信息,而将支付信息转发给银行。商场只能用自己专有的私钥解开订货单信息并验证签名。同理,银行只能用自己的私钥解开加密的支付信息、验证签名并进行划账。银行在完成划账以后,通知起中介作用的电子交易市场、物流中心和买方,并进行商品配送。整个交易过程都是在PKI所提供的安全服务之下进行,实现了安全、可靠、保密和不可否认性。
模式2:网上银行
网上银行是指银行借助于互联网技术向客户提供信息服务和金融交易服务。银行通过互联网向客户提供信息查询、对账、网上支付、资金划转、信贷业务、投资理财等金融服务。网上银行的应用模式有B2C个人业务和B2B对公业务两种。
网上银行的交易方式是点对点的,即客户对银行。客户浏览器端装有客户证书,银行服务器端装有服务器证书。当客户上网访问银行服务器时,银行端首先要验证客户端证书,检查客户的真实身份,确认是否为银行的真实客户;同时服务器还要到CA的目录服务器,通过LDAP协议查询该客户证书的有效期和是否进入“黑名单”;认证通过后,客户端还要验证银行服务器端的证书。双向认证通过以后,建立起安全通道,客户端提交交易信息,经过客户的数字签名并加密后传送到银行服务器,由银行后台信息系统进行划账,并将结果进行数字签名返回给客户端。这样就做到了支付信息的保密和完整以及交易双方的不可否认性。
模式3:网上证券
网上证券广义地讲是证券业的电子商务,它包括网上证券信息服务、网上股票交易和网上银证转账等。一般来说,在网上证券应用中,股民为客户端,装有个人证书;券商服务器端装有Web证书。在线交易时,券商服务器只需要认证股民证书,验证是否为合法股民,是单向认证过程,认证通过后,建立起安全通道。股民在网上的交易提交同样要进行数字签名,网上信息要加密传输;券商服务器收到交易请求并解密,进行资金划账并做数字签名,将结果返回给客户端。