Web通迅过程中使用证书,图解

 

1.只有服务端有证书的情况

 

2.客户与服务端均有证书的情况

客户端在访问服务器的时候,他们要进行互相的认证,即客户端将自己的证书发往服务器进行认证;服务器将服务器证书发往客户端进行认证;认证成功后,客户端用自己的私钥签名数字,用服务器证书中的公钥加密数据,然后发给服务器.服务端接收到后,用服务端自己的私钥解密数据,用客户端证书中的公钥验证签名。反之易然。

过程如下:
    (1)客户A准备好要传送的数字信息(明文)。  


  (2)客户A对数字信息进行哈希(hash)运算,得到一个信息摘要。


  (3)客户A用自己的私钥(SK)对信息摘要进行加密得到客户A的数字签名,并将其附在数字信息上。  


  (4)客户A随机产生一个加密密钥(DES密钥),并用此密钥对要发送的信息进行加密,形成密文。


  (5)客户A用双方共有的公钥(PK)对刚才随机产生的加密密钥进行加密,将加密后的DES密钥连同密文一起传送给乙。  


  (6)银行B收到客户A传送过来的密文和加过密的DES密钥,先用自己的私钥(SK)对加密的DES密钥进行解密,得到DES密钥。  


  (7)银行B然后用DES密钥对收到的密文进行解密,得到明文的数字信息,然后将DES密钥抛弃(即DES密钥作废)。  


  (8)银行B用双方共有的公钥(PK)对客户A的数字签名进行解密,得到信息摘要。银行B用相同的hash算法对收到的明文再进行一次hash运算,得到一个新的信息摘要。  


  (9)银行B将收到的信息摘要和新产生的信息摘要进行比较,如果一致,说明收到的信息没有被修改过。

 

银行系统一般是:

1. 用对方的公钥加密数据,对方收到后用对方自己的私钥解密;
2. 用你自己的私钥签名数据,对方收到后用你自己的公钥验证签名。

 银行系统一般有三种证书,比如:建行CA认证中心的根证书、建行网银中心的服务器证书,每 个网上银行用户在浏览器端的客户证书。有了这三个证书,就可以在浏览器与建行网银服务器之间建立起SSL连接。这样,您的浏览器与建行网银服务器之间就有 了一个安全的加密信道。您的证书可以使与您通讯的对方验证您的身份(您确实是您所声称的那个您),同样,您也可以用与您通讯的对方的证书验证他的身份(他 确实是他所声称的那个他),而这一验证过程是由系统自动完成的。

posted on 2008-12-10 15:46  魏绰  阅读(394)  评论(0编辑  收藏  举报

导航