《安全生产_安全套接层协议》由会员分享,可在线阅读,更多相关《安全生产_安全套接层协议(27页珍藏版)》请在金锄头文库上搜索。
1、第7章 安全套接层协议 (SSL),第7章 安全套接层协议(SSL),【本章提要】 SSL协议概述 SSL握手协议、记录协议 SSL协议的加密和认证算法 SSL协议分析及应用,第7章 安全套接层协议(SSL),7.1 SSL协议概述 7.2 SSL原理 7.3 SSL协议的加密和认证算法 7.4 SSL协议分析 7.5 SSL协议的应用,7.1 SSL协议概述,Internet上对应的七层网络模型的每一层都已经提出了相应的加密协议。SSL是工作于网络会话层(Socket Layer)的网络安全协议,7.1.1 SSL协议,SSL协议在整个网络协议中的位置,7.1.2 SSL协议的安全交易过程,
2、7.1.3 SSL协议的安全通道,SSL提供的安全通道具有3个特征: (1)具有私密性 (2)具有确认性 (3)具有可靠性,7.1.4 SSL协议的基本安全服务,(1)提供认证服务 (2)提供加密服务 (3)保证数据的完整性,7.2 SSL原理,SSL提供的安全通道会将双方传输的数据全部加密,这样就保证了数据在传输的过程中不能被恶意的窃取和更改。 SSL协议是由SSL握手协议(SSL HAND SHAKE PROTOCOL)和SSL记录协议(SSL RECORD PROTOCOL)两个子协议构成的,7.2.1 SSL握手协议,握手过程一般是由五个阶段构成的: 1.接通阶段(Hello阶段) 2
3、.密钥交换阶段 3.会话密钥(会话-钥匙)生成阶段 4.认证阶段 5.结束阶段,7.2.2 SSL记录协议,SSL的记录层协议是为信息的交流提供通信和认证功能的,并且它的保护是建立在一个面向连接的可靠传输协议(例如TCPIP)之上的。在SSL中,所有传输的数据都是存放在记录当中被传送的,SSL握手层协议的报文也要求必须是放在一个SSL记录层的记录里来传送的。只有应用层协议的报文允许放在多个SSL记录层的记录来传送,7.3 SSL协议的加密和认证算法,SSL协议在工作的过程中,涉及到安全的技术基本上可以分为两类,即用来保护数据安全的加密算法和用来鉴定用户身份的认证技术。这些算法和技术在整个交易过
4、程中起着至关重要的作用,7.3.1 加密算法,SSL协议支持很多的加密算法,比如说对称加密体制(DES加密算法)、RC2、RC4和IDEA,7.3.2 身份认证,SSL协议采用的是X.509电子证书标准,通过RSA算法来实现数字签名 1. 服务器认证 2. 客户端认证阶段 如果在连接中服务器端也要求客户端的认证的话,则服务器端就会要求客户端出示自己的证书。,7.3.3 会话层的密钥分配协议,现在主要使用的是三个协议: (1)SKEIP(Simple Key Exchange for Internet Protocol) (2)Photuris (3)ISAKMP(Internet安全协会的密钥
5、管理协议),7.4 SSL协议分析,SSL运行在一种可靠的通信协议之上,比如说TCP。SSL的上层是HTTP等应用层,SSL为其提供安全通信。SSL协议使用X.509来认证,RSA作为公钥算法,可选用RC4-128、RC-128、DES或IDES作为数据加密算法。SSL分为两层:记录层和握手层,每层使用下层服务,并为上层服务,介于ISO模型的应用层和传输层之间。,7.4.1 对协议安全性的分析,1“监听”和“中间人”式攻击 2“流量数据分析”式攻击 3截取再拼接式攻击 4报文重发式攻击,7.4.2 SSL与SET协议的比较,1.功能比较 1)SET是一个提供多方通讯的报文协议,而SSL则只能在
6、客户端和服务器端两者之间建立一条安全的连接。 2)SSL协议在进行报文交换的时候需要实时通信,也就是需要双方都要在线。而SET协议允许交易各方在交换报文的时候不是实时的。 3)SET协议不仅可以在Internet上使用,而且也可以在公共网络和银行内部网络等其他网络使用。而建立在SSL协议上的支付系统只能和Web浏览器捆绑使用。,7.4.2 SSL与SET协议的比较,4)SSL和SET都为客户提供了商家的认证,保证商家的合法性,但是SET协议更能保证用户的信用卡号不会在通信的时候被窃取,它替客户保守了更多的机密信息,使用户可以放心地在网络上进行有关银行卡的交易。 5)SET协议是由VISA、Ma
7、sterCard推出的安全协议,而这两个公司是信用卡方面的权威机构,这样就使得SET协议能够比较容易地被广泛应用。 6)SET协议对于参与信用卡交易的各方定义了互操作接口,每个交易系统可以使用不同厂商的产品来构造自己的服务器。 7)SET协议的安全性需求比较高,7.4.2 SSL与SET协议的比较,2.性能比较 使用SSL协议的缺点是: 1)客户不得不信任服务器端能够安全地保护它的信用卡 2)客户不能保证商家是自己支付卡的特约商家 3)商家在交易当中要承担一定的风险 4)由于SSL在传输信息的时候,需要对信息加密,所以如果被传输的页面很复杂得话,显示起来就会很慢,7.4.2 SSL与SET协议
8、的比较,3.费用比较 (1)小型和中型电子商务应用,差别不大 (2)大型服务器电子商务应用 需要进行大量的数据处理和密钥计算,所以要使用SET协议,那么就需要购买额外的设备来进行硬件加速,而SSL协议就没有这个需要 (3)小型网关的应用 小型网关的运算要求要比服务器更加严格,都需要设备对其进行硬件加速。对一样的处理速度,SET协议要比SSL协议使用更加昂贵的硬件加速设备 (4)大型支付网关的应用 使用的都是双机群系统,所以对于SET协议和SSL协议的费用主要是在双机群上的投资,7.5 SSL协议的应用,利用IIS申请服务器证书的时候,IIS本身先产生公私密钥对,并产生相应的证书申请信息,最后把
9、这个信息交给CA(该CA只能为Windows2000企业CA或其他商业CA,Windows2000独立CA不能签发服务器证书),由CA签发以后形成证书。其具体步骤如下: 1)首先在操作系统2000中找到有关设置,方法有两种。第一种,从控制面板中找到“管理工具”,从这个文件夹中找到“Internet服务管理”并执行。第二种,从“开始”菜单的“程序”菜单中执行“管理工具”“Internet管理工具”。这样就可以将IIS的管理界面打开,7.5 SSL协议的应用,2)选取本机下的“默认Web站点”,并用鼠标右击。在弹出的菜单中选择“属性”命令。选择“目录安全性”标签,7.5 SSL协议的应用,3)单击
10、该标签上“安全通信”栏目中的“服务器证书”按钮。这时会弹出“Web服务器证书向导对话框” 4)单击“下一步”按钮,会进入到IIS证书安装向导界面,并且要求你选择对证书动作的方式 5)选择“创建一个新证书”,并单击“下一步”按钮,7.5 SSL协议的应用,7.5 SSL协议的应用,6)选择好发送方式后单击“下一步”按钮,会进入到“密钥”对话框。这里要求用户输入申请证书的名称和密钥的长度,7.5 SSL协议的应用,7)弹出的界面要求输入申请该证书的机构或组织的有关信息,包括组织的名称和组织部门等 8)单击“下一步”按钮,在弹出的对话框中输入拥有这个证书的Web站点的公用名称 9)输入相应的信息后单击“下一步”按钮。进入的下一个界面需要输入的是有关服务器的地理信息,包括国家、省份和城市名称 10)单击“下一步”按钮,这里要求输入的是处理证书申请的证书颁发机构 11)填好机构以后单击“下一步”按钮。最后对整个设置做一个检查,