SSL协议工作过程及其应用

55
2004.10
0引言
目前,随着Internet的迅速发展,信息安全引起了越来越多人的注意。特别是近年来电子商务、电子政务发展,如何保证传输数据的保密性、完整性已成为急需解决的问题。安全套接字层协议(Security Socket Layer Protocol, SSL)是Internet上进行保密通信的一个安全协议,它的使用,保证了网上信息传输的保密性和完整性。下面,对SSL协议作一简单阐述。
1 SSL协议概述
安全套接层协议(Security Socket Layer,SSL)是由网景(Netscape)公司提出的基于公钥密码体制的网络安全协议,用于在浏览器软件(例如Internet Explorer、Netscape Navigator)和Web服务器之间建立一条安全通道,实现Internet 上信息传送的保密性。它包括服务器认证、客户认证(可选)、SSL链路上的数据完整性和SSL链路上数据保密性。现在一些对保密性要求较高的电子商务、电子事务等系统大多数是以SSL协议为基础建立的,SSL
协议已成为Web安全方面的工业标准。目前广泛采用的是SSLv3。SSL提供的面向连接的安全性具有以下在三个基本性质:
(1)连接是秘密的。在初始握手定义会话密钥后,用对称密码(例如用DES)加密数据。
(2)连接是可认证的。实体的身份能够用公钥密码(例如RSA、DSS等)进行认证。
(3)连接是可靠的。消息传输包括利用安全Hash函数产生的带密钥的MAC(Message Authentication Code,报文鉴别码)。
2 SSL协议的组成与结构
SSL协议由两层组成,分别是握手协议层和记录协议层,见
下图。主要包括记录协议以及建立在记录协议之上的握手协议、警告协议、更改密码说明协议和应用数据协议等对会话和管理提供支持的子协议。在每一层,消息可以包括长度、描述和内容字段。SSL发出消息,先把数据分为可管理的块,压缩、使用MAC和加密并发出加密的结果。接受消息就解密、验证、解压和重组,再把结果发往更高一层的客户。下面分别说明几种协议:
记录协议:具体实现压缩/解压缩、加密/解密、计算MAC等与安全有关的操作。
更改密码说明协议:此协议由一条消息组成,可由客户端或服务器发送,通知接收方后面的记录将被新协商的密码说明和密钥保护。接收方得此消息后,立即指示记录层把即将读状态变成当前读状态,发送方发送此消息后,应立即指示记录层把即将写状态变成当前写状态。
警告协议:警告消息传达消息的严重性并描述警告。一个致命的警告将立即终止连接。与其他消息一样,警告消息在当前状态下被加密和压缩。警告消息有以下几种:
关闭通知消息、意外消息、错误记录MAC消息、解压失败消
息、握手失败消息、
证书消息、错误证书消息、不支持的证书消息、证书撤回消息、证书期满消息、证书未知消息、非法参数消息等。
应用数据协议:把应用数据直接传递给记录协议。
握手协议:SSL握手协议是用来在客户端和服务器端传输应
时子环
用数据之前建立安全
    郭正荣 周城 
重庆通信学院电子工程系 重庆400035隔爆型防爆灯
作者简介:郭正荣(1979-),男,解放军重庆通信学院野战指挥自动化研究生,研究方向:野
战指挥自动化、网络
安全理论及应用。周城(1963-),男,重庆通信学院电子工程系副教授。
摘要:本文首先介绍了SSL协议的组成与结构,分析了SSL协议的具体握手过程,讨论了几种常见的SSL协议应用模式。然后通过某个应用为例,介绍了Web服务器证书的安装与建立SSL安全通道的具体步骤。最后,指出了SSL协议的一些缺点和局限性。
关键词:SSL协议;握手协议;记录协议;数字证书
SSL协议工作过程及其应用
图1 SSL协议在TCP/IP中的位置
56
2004.10
通信机制。首次通信时,双方通过握手协议协商密钥加密算法、数据加密算法和文摘算法。然后互相验证对方身份,最后使用协商好的密钥交换算法产生一个只有双方知道的秘密信息,客户端和服务器
各自根据这个秘密信息确定数据加密算法的参数(一般是密钥)。
SSL协议在网络协议族中处于HTTP、FTP、TELNET等应用层协议和TCP、UDP等传输层协议之间,其设计对应用层透明。
3SSL协议工作过程原理
SSL协议具体握手过程描述如下:
(1)Client 发送Client Hello消息给Server,Server回应ServerHello。这个过程建立的安全参数包括协议版本、“会话”标识、加密算法、压缩方法。另外,还交换2个随机数:ClientHello.ran-dom和 ServerHello.random,用以计算“会话主密钥”。
(2)Hello消息发送完后,Server会发送它的证书或密钥交换信息,如果Server被认证,它会请求Client的证书,然后Server发送Hello-done消息以示握手协议完成。
(3)Server请求Client证书时,Client要返回证书或“没有证书”的提示,然后Client发送密钥交换消息。
(4)Server回答“握手完成”消息。
(5)握手协议完成后,Client 和Server就可以传输加密数据。完整握手的消息交换过程如图2所示:
图2 完整握手的消息交换过程
说明:
(1)带*号的命令是可选的,或依据状态而发的消息。(2)改换加密算法协议(ChangeCipherSpec)并不是实际的握手协议中,它的作用是Client和Server协商新的加密SSL数据包的算法。
如果客户端和服务器决定恢复前一个会话或者重复一个已经存在的会话,则可省略不必要的握手消息,采取如图3所示的握手过程。       
4 SSL的应用
由于SSL协议简洁、透明、易于实现等一些特点,使得它有着广泛的应用。根据应用场合不同,SSL协议有多种应用模式。
(1)匿名SSL连接:这种模式是SSL安全连接的最基本模式,便于使用,主要的浏览器都支持这种方式,很适合单向的安全数据传输应用。这种模式下客户端没有数字证书,用户以匿名方式访问服务器。服务器具有数字证书,以使用户能确认是自己要访问的站
点。用户知道服务器的身份,但服务器不能确
定用户的身份。建立SSL连接时客户端先随机地生成公私密钥对,再用这对密钥进行SSL握手协议,一个会话完成后,这对密钥就丢弃。典型的应用是当用户进行网站注册时,为防止私人信息(如信用卡号、口令、电话)泄露,就采用匿名SSL连接该网站。
图4 匿名SSL连接
(2)对等安全服务:这种模式通信双方都可以发起和接收SSL连接请求,既作服务器又作客户端。通信双方可以是应用程序、安全协议代理服务器。下图所示的是一种类似VPN的应用。双方的内部通信可以不用安全协议,中间的公用网部分用SSL协议连接。其中,安全协议代理服务器相当于一个加密/解密网关,把内部对外部网络的访问转换为SSL数据包,接收时把SSL数据包解密。这种模式不需要为每一主机申请数字证书,简化了数字证书的管理和使用。
图5 类似VPN的应用
(3)电子商务:在电子商务中,一般有顾客、商家、银行参与到交易中。顾客到商家指定的网站去填写订单,向商家报出信用卡号,商家向银行查询信用卡号,有效了才能继续交易。其中顾客可以没有数字证书,商家和银行必须有数字证书。在顾客与商家通信中采用匿名SSL连接。而商家与银行之间传送的是顾客数据,必须互相验证对方的数字证书,采用SSL连接保证传输信息的安全。
结合上面介绍的两种运用,网上交易的安全方案如图所示。
图6 网上交易的安全方案
图3 握手过程
超高压汞灯
57
2004.10
5Web服务器证书的安装与SSL安全通道的开放
下面以“重庆轻轨工程申报表审批流程跟踪公示系统”为例,介绍Web服务器证书安装与建立SSL安全通道的具体步骤。
“重庆轻轨工程申报表审批流程跟踪公示系统”是重庆市建委信息中心设计开发的网上信息化项目,重庆市CA中心提供保障系统信息安全所需的数字证书及其相关技术。由于系统使用了数字证书及相关技术,所以审批方可以确认申报方的身份。同时由于申报文件数据属于敏感信息,采用数字证书的加密技术,利用SSL安全套接层协议对传输信息进行加密,从而保证了申报文件的保密性和完整性。
5.1生成服务器证书请求文件
(1)单击开始->程序->管理工具->Internet 服务管理器,进入Internet信息服务界面,右键点击“默认Web站点”,选属性项,然后点击“目录安全性”页面,单击“服务器证书”项;
(2)选择“创建一个新证书”,单击“下一步”;(3)输入要申请的证书的名称并选择加密密钥的位长;(4)以后依次填写所在组织、站点和有关地理信息的信息,(5)单击“完成”,服务器的证书
请求就生成了,默认的请求代码是放在certreq.txt内,打开该文件,即可看到生成的请求代码,如图7所示。液压滑环
图7 生成的请求代码
5.2申请服务器证书
将该请求文件作为附件形式发送至重庆市CA中心,并在邮件内附上生成请求时所填写的相关信息,如:组织、组织部门、公用名称、省、市、自治区等。等待CA中心对证书申请进行批准。
5.3发布服务器证书
(1)CA中心收到用户的请求文件后,在对用户身份审核通过后,进入证书签发服务器的证书申请页面,添入与用户申请时相对应的信息(如图8)。
远控多叶排烟口
图8 证书申请页面
提交后得到用户参考码和用户授权码(如图9)。
图9 用户参考码和用户授权码
进入下载页面后输入两次确认密码,并选择PKCS10申请书(如图10)。然后将请求文件内的代码拷贝到申请框内(如图11),点击下载,就可以得到由重庆CA中心颁发的后缀名为.cer的批准证书文件。
图10 下载证书步骤1
图11 下载证书步骤2
(2)用户从重庆CA中心那里得到一个后缀名为.cer的批准文件后,再打开Internet 服务管理器,进入Internet信息服务界面,右键点击“默认 Web 站点”,选属性项,然后点击“目录安全性”页面,单击“服务器证书”项,点击下一步;
(3)选择“处理挂起的请求并安装证书”,单击“下一步”;(4)点击“浏览”,打开得到的批准文件,单击“下一步”,会看到生成证书摘要;
(5)单击“下一步”、“完成”。至此,服务器证书安全成功,单击“查看证书”项,可以查看当前的服务器证书。
(6)回到“目录安全性”页面,单击“编辑项”,选中“申请安全通道 (SSL) (R)”选项和“申请客户证书”;
[下转54页]
54
2004.10
涂料分散机
传输时被截取。您可以通过IIS证书向导程序来向证书授权机构—通常称为CA—即可信的第三方申请获得一个证书,然后将证书安装到WEB服务器上。证书安装完以后,站点上的目录安全属性页上的编辑按钮会被加亮。你可以要求整个站点或者目录(真实的或者虚拟的)具有SSL安全特性。要使整个站点或者目录具有安全特性,进入相应站点或者目录的目录安全属性页面,单击编辑按钮,会进入安全通信属性对话框。在这个页面中,选择请求安全通道:SSL。这样会强迫所有访问这种资源(目录或者站点)的人执行安全通讯。任何使用HTTP连接访问资源的人都会被通知它们不能访问没有被保护的内容。
上述步骤只是实现了加密通讯,那如何进行访问控制呢?当客户访问你的系统时,你可以要求客户提供证书来进行身份验证。在安全通信属性对话框中选择“要求客户证书”。这样任何用户在它们的系统上如果没有安装证书,就不能访问你站点上的安全内容,但这样还不能进行身份验证。你还必须选择“启用客户证书映射”,然后单击编辑按钮,你可以将特定的客户证书“映射”到Windows用户账号,然后对这些Windows用户设置不同的权限,这样不仅实现的加密通信而且通过证书映射实现了权限控制。
2小结
以上方法只是从WEB服务器和编程的角度对WEB站点的权限进行控制,对于一些安全性要求比较高的站点,IP地址限制可以和身份验证结合起来使用。有的用户长期工作在家里,其计算机有固定IP地址,你可以只允许特定IP地址的机器才能连接并且在连接前进行安全的身份验证来加强Web站点(或者站点的一部分)的安全性。另外,对于安全性要求更高的站点,可进一步采用防火墙、入侵检测以及在路由器或多层交换机上设置访问控制列表等方法提高网站的安全性。
〖参考文献〗
[1]Mark Minasi.Windows 2000 Server从入门到精通[M].北京:电子工业出版社.2001
[2]李毅骋.Windows 2000 Server网络系统与服务[M].北京:清华大学出版社.2001
[3]徐跃进.计算机网络安全与应用技术[M].北京:清华大学出版社.2002
[4]徐国平.网页设计与制作教程[M].北京:高等教育出版社.2002
(7)选择“Web站点”页面,将SSL所需的443端口(默认)开放。经如上步骤就成功为服务器配置了数字证书,申请方(客户端)利用各自的数字证书就能和审批方(服务器)进行安全通信了。
说明:访问支持SSL协议的页面时,必须使用HTTPS协议,地址开头输入“https://”,而不是“http://”。
6结束语
(1)SSL协议应用仅对双方通信的数据进行透明的加密传输,而不进行访问抑制。用户是否有权访问应用系统,应由应用系统或操作系统通过用户名和口令控制。
(2)SSL使用复杂的数学公式进行数据加密和解密,这些公式
的复杂性根据密码的强度不同而不同。浏览器通过SSL协议访问服务器时,浏览器的访问速度会有所降低。尤其在第一次连接时,由于要初始化SSL会话和连接的状态信息,并协商加密和解密方案,因而速度降低更为明显。
(3)在电子商务中,SSL协议可保证信息的完整性和保密性,但由于购买者不对订购信息进行数字签名,从而保证不了交易信息的不可否认性。
〖参考文献〗
[1]谢冬青,冷健. PKI原理与技术.清华大学出版社.2004
[2]李朔京.SSL的原理与应用.微型机与应用.2002[3]The SSL Protocol(V3.o)(IETF draft )
[4]雷信生等.电子商务安全技术.国防工业出版社.2003
[上接57页]

本文发布于:2024-09-24 19:16:26,感谢您对本站的认可!

本文链接:https://www.17tex.com/tex/1/201470.html

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系,我们将在24小时内删除。

标签:协议   证书   消息
留言与评论(共有 0 条评论)
   
验证码:
Copyright ©2019-2024 Comsenz Inc.Powered by © 易纺专利技术学习网 豫ICP备2022007602号 豫公网安备41160202000603 站长QQ:729038198 关于我们 投诉建议