问答题 试简述SSL和SET的工作过程。
【正确答案】正确答案:首先举例说明SSL的工作过程。假定A有一个使用SSL的安全网页,B上网时用鼠标点击到这个安全网页的链接。接着,服务器和浏览器就进行握手。其主要过程如下。 (1)浏览器向服务器发送浏览器的SSL版本号和密码编码的参数选择。 (2)服务器向浏览器发送服务器的SSL版本号、密码编码的参数选择及服务器的证书。证书包括服务器的RSA分开密钥。此证书用某个认证中心的秘密密钥加密。 (3)浏览器有一个可信赖的CA表,表中有每一个CA的分开密钥。当浏览器收到服务器发来的证书时,就检查此证书是否在自己的可信赖的CA表中。如不在,则后来的加密和鉴别连接就不能进行下去;如在,浏览器就使用CA的公开密钥对证书解密,这样就得到了代服务器的公开密钥。 (4)浏览器随机地产生一个对称会话密钥。并用服务器的分开密钥加密,然后将加密的会话密钥发送给服务器。 (5)浏览器向服务器发送一个报文,说明以后浏览器将使用此会话密钥进行加密。然后浏览器再向服务器发送一个单独的加密报文,表明浏览器端的握手过程已经完成。 (6)服务器也向浏览器发送一个报文,说明以后服务器将使用此会话密钥进行加密。然后服务器再向浏览器发送一个单独的加密报文,表明服务器端的握手过程已经完成。 (7)SSL的握手过程到此已经完成,下面就可开始SSL的会话过程。 下面再以顾客B到公司A用SET购买物品为例来说明SET的工作过程。这里涉及两个银行, 即A的银行(公司A的支付银行)和B的银行(给B发出信用卡的银行)。 (1)B告诉A他想用信用卡购买公司A的物品。 (2)A将物品清单和一个唯一的交易标识符发送给B。 (3)A将其商家的证书,包括商家的公开密钥发送给B。A还向B发送其银行的证书,包括银行的公开密钥。这两个证书都用一个认证中心CA的秘密密钥进行加密。 (4)B使用认证中心CA的公开密钥对这两个证书解密。 (5)B生成两个数据包:给A用的定货信息OI和给A的银行用的购买指令PI。 (6)A生成对信用卡支付请求的授权请求,它包括交易标识符。 (7)A用银行的公开密钥将一个报文加密发送给银行,此报文包括授权请求、从B发过来的PI数据包及A的证书。 (8)A的银行收到此报文,将其解密。A的银行要检查此报文有无被篡改,以及检查在授权请求中的交易标识符是否与B的PI数据包给出的一致。 (9)A的银行通过传统的银行信用卡信道向B的银行发送请求支付授权的报文。 (10)一旦B的银行准许支付,A的银行就向A发送响应(加密的)。此响应包括交易标识符。 (11)若此次交易被批准,A就向B发送响应报文。
【答案解析】