安全套接层协议SSL_第1页
安全套接层协议SSL_第2页
安全套接层协议SSL_第3页
安全套接层协议SSL_第4页
安全套接层协议SSL_第5页
已阅读5页,还剩39页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

1、第七章第七章安全套接层协议安全套接层协议SSL l7.1SSL协议概述 l7.2SSL原理 l7.3SSL协议的加密和认证算法l7.4SSL协议分析 l7.5SSL协议的应用 7.1SSL协议概述协议概述l7.1.1SSL协议总述 l7.1.2SSL的工作原理 7.1.1SSL协议总述l1.SSL协议的作用l2.SSL协议的目标l3.SSL的主要组成协议 1.SSL协议的作用lSSL协议是一种在可持有证书的浏览器软件上和WWW服务器之间构造的安全通道中传输数据的协议。lTCPIP是整个Internet数据传输和通信所使用的最基本的控制协议,在它之上还有HTTP等应用层传输协议。而SSL是位于T

2、CP/IP和各种应用层协议之间的一种数据安全协议。SSL协议可以有效地避免网上信息的偷听、篡改以及消息的伪造。 7.1.1 SSL协议 SSL协议在整个网络协议中的位置 1.SSL协议的作用lSSL标准的关键是要解决以下几个问题。l(1)客户对服务器的身份确认:lSSL服务器允许客户的浏览器使用标准的公钥加密技术和一些可靠的认证中心(CA)的证书,来确认服务器的合法性(检验服务器的证书和ID的合法性)。对于用户服务器身份的确认与否是非常重要的,因为客户可能向服务器发送自己的信用卡密码。1.SSL协议的作用l(2)服务器对客户的身份确认:l允许SSL服务器确认客户的身份,SSL协议允许客户服务器

3、的软件通过公钥技术和可信赖的证书,来确认客户的身份(客户的证书clients certificate)。对于服务器客户身份的确认与否是非常重要的,因为网上银行可能要向客户发送机密的金融信息。l(3)建立起服务器和客户之间安全的数据通道:lSSL要求客户和服务器之间的所有的发送数据都被发送端加密,所有的接收数据都被接收端解密,这样才能提供一个高水平的安全保证。同时SSL协议会在传输过程中检查数据是否被中途修改。 2SSL协议的目标 l按它们的优先级,SSL协议的目标如下。l(1)在通信双方之间利用加密的SSL消息建立安全的连接。l(2)操作性。通信双方的程序是独立的,即一方可以在不知道对方程序编

4、码的情况下利用SSL成功地交换加密参数。2SSL协议的目标l(3)可扩展性。SSL寻求提供一种框架结构,在此框架结构中,在不对协议进行大的修改的情况下,新的公钥算法和单钥算法可以在必要时被加入。这样做还可以实现两个子目标:l避免产生新协议的需要,因而进一步避免了产生新的不足的可能性。l避免了实现一完整的安全协议的需要。l相对的有效性加密操作,尤其是公钥加密,对CPU来说是一种很耗时的事,因此SSL协议引入一可选的对话缓存(CACHE)来减少从头开始的连接的数目。同时,它还注意减少网络的活动。 3SSL的主要组成协议 lSSL协议主要包含:握手协议(handshake protocol)和记录协

5、议(record protocol)。l记录协议:定义了信息传输的格式。l握手协议:用来交换双方的SSL版本号,数字证书、密钥、会话ID等信息。4.SSL协议的系统框架消费者客户端CA认证 中心 商家服务器 银行服务器7.1.2SSL的工作原理的工作原理l当一个使用者在Web上用Netscape浏览器漫游时,浏览器利用HTTP协议与Web服务器沟通。例如,浏览器发出一个HTTP GET命令给服务器,想下载一个首页的HTML档案,而服务器会以传送档案的内容给浏览器来响应。GET这个命令的文字和HTML档案的文字会通过会话层(socket)的连接来传送。Socket使两台远程的计算机能利用Inte

6、rnet来通话。通过SSL,资料在传送出去之前就自动被加密了,它会在接收端被解密。对没有解密钥的人来说,其中的资料是无法阅读的。 7.1.2 SSL协议的工作原理 客 户 端 服 务 器 客户端SSL版本号等信息 服务器SSL版本号等信息验证服务 器身份验证客户 端身份 用服务器公钥加密的预密码由预密钥生成会话密钥用私钥解密得到预密钥并生成会话密钥 握手协议完成 传输数据丢弃会话密钥, 安全通道断开丢弃会话密钥, 安全通道断开第一阶段:申请建立会话第二阶段:协商密钥第三阶段:SSL握手协议完成第四阶段:数据传输第五阶段:SSL协议结束7.2SSL记录层协议记录层协议 lSSL记录层协议限定了所

7、有发送和接收数据的打包,它提供了通信、加密功能,它是一个面向连接的可靠传输协议,为TCPIP提供安全保护。l在SSL中,所有数据被封装在记录中。一个记录由两部分组成:记录头和非零长度的数据。记录头可以是2字节或3字节(当有填充数据时使用)。7.2SSL记录层协议记录层协议记录头类型记录长度MAC数据记录头类型Escape位填充长度记录长度MAC数据填充数据2字节记录头3字节记录头7.2.1SSL记录头格式lSSL的记录头可以是两个或三个字节长的编码。lSSL记录头包含的信息有记录头的长度、记录数据的长度、记录数据中是否有填充数据。l最高位为1时,不含有填充数据,记录头的长度为两个字节,记录数据

8、的最大长度为32767个字节;最高位为0时,含有填充数据,记录头的长度为三个字节,记录数据的最大长度为16383个字节。 7.2.2SSL记录数据格式记录数据格式 lSSL记录数据部分有三个分量:MAC-DATA、ACTUAL-DATA、PADDING-DATA。lMAC数据用于数据完整性检查。MAC的计算公式:MAC数据:Hash密钥,实际数据,填充数据,序号。 取决于传递取决于传递消息的对象消息的对象和加密类型和加密类型计数器,长计数器,长度度32bit,初,初始值为始值为07.3SSL握手协议握手协议 lSSL协议主要由握手协议和记录层协议所组成,握手协议位于应用层之下的协议,用于服务器

9、和客户机在开始传输数据之前,通信双方进行身份认证、协商加密算法和交换加密钥等。7.3.1握手阶段握手阶段l1接通阶段 l2密钥交换阶段 l3会话密钥生成阶段l4服务器证实阶段 l5客户机认证阶段 l6结束阶段1接通阶段l从客户机向服务器发送CLIENT-HELLO消息,其中包括SSL版本号,客户端可处理的数据加密算法设置,会话ID,用来询问用的随机产生的数据。l服务器向客户机发出SERVER-HELLO,如果服务器识别出以前的会话ID,则会话要重新开始;如果是一次新的会话,则服务器向客户机发送服务器端SSL版本号,数据处理所需要的加密算法设置,用来询问的随机产生的数据和一个X.509证书,证书

10、包括服务器的公钥,并用证书发行机构(CA)的秘密密钥签署。l客户机以CA的公钥解密出服务器的公钥,然后用它解读服务器的证书。此阶段交换的消息为CLIENT-HELLO和SERVER-HELLO。 2密钥交换阶段 l在该阶段,客户机和服务器之间交换建立主密钥。SSL V3支持三种密钥交换,即RSA、Diffie-Hellman和Fortezza-KEA,利用服务器的公开密钥来实现。3会话密钥生成阶段 l该阶段客户机送出CLIENTSESSIONKEY,并和服务器建立一个或两个会话密钥。此阶段交换的消息为CLIENT-SESSION-KEY。会话密钥是从客户机选择的数据中推导出来的,该数据用服务器

11、的公开密钥加密。4服务器证实阶段 l仅当采用RSA密钥交换算法时才执行此步骤。l一旦收到了主密钥和相继来自客户机的会话密钥,服务器就用其秘密密钥解密出密钥,然后服务器向客户机送出认可信息。 5客户机认证阶段 l若要求客户机认证,则服务器要求客户机的证书,客户机以CLIENT-CERTIFICATE进行响应,早期版本的SSL只支持X.509证书,此阶段交换的消息为REQUEST-CERTIFICATE和CLIENTCERTIFICATE。 6结束阶段 l此阶段客户机服务器交换各自的结束消息,客户机通过送会话ID作为加密文本表示完成了认证,服务器送出消息SERVER-FINISHED,其中包括以主

12、密钥加密会话ID,这样在客户机与服务器之间就建立了可信赖的会话。此阶段交换的消息为CLIENT-FINISHED和SERVER-FINISHED。 简要说明lPaul黄裳:你好 黄裳 Paul :嗨,我是黄裳,黄裳的公钥 Paul黄裳:prove it 黄裳 Paul : Paul ,我是黄裳信息段Paul ,我是黄裳 黄裳的私钥 简要说明l如果一个黑客,叫白开心 Paul白开心:你好 白开心不能建立一个令Paul相信的从黄裳的消息l交换密码(secret) 一旦Paul已经验证黄裳后,他可以发送给黄裳一个只有黄裳可以解密、阅读的消息: Paul黄裳:secret黄裳的公钥 简要说明lPaul

13、黄裳:你好 黄裳 Paul :嗨,我是乙,乙的校验 Paul黄裳:prove it 黄裳 Paul : Paul ,我是黄裳信息段Paul ,我是黄裳 黄裳的私钥 Paul黄裳:ok黄裳,here is a secret secret黄裳的公钥 黄裳 Paul :some messagesecret-key 简要说明l黑客窃听 那么如果有一个恶意的黑客白开心在Paul和黄裳中间,虽然不能发现Paul和黄裳已经交换的密码,但能干扰他们的交谈。他可以放过大部分信息,选择破坏一定的信息(这是非常简单的,因为他知道Paul和黄裳通话采用的协议)。 简要说明lPaul白开心:你好白开心黄裳:你好 黄裳白

14、开心:嗨,我是黄裳,黄裳的校验 白开心 Paul :嗨,我是黄裳,黄裳的校验 Paul白开心:prove it 白开心黄裳:prove it 黄裳白开心: Paul ,我是黄裳信息段Paul ,我是黄裳 黄裳的私钥 白开心 Paul : Paul ,我是黄裳信息段Paul ,我是黄裳 黄裳的私钥 Paul白开心:ok 黄裳,here is a secret secret黄裳的公钥 白开心黄裳:ok 黄裳,here is a secret secret黄裳的公钥 黄裳白开心:some messagesecret-key 白开心 Paul :Garblesome messagesecret-key

15、 简要说明l白开心忽略一些数据不修改,直到Paul和黄裳交换密码。然后白开心干扰黄裳给Paul的信息。在这一点上, Paul相信黄裳,所以他可能相信已经被干扰的消息并且尽力解密。 需要注意的是,白开心不知道密码,他所能做的就是毁坏使用秘钥加密后的数据。基于协议,白开心可能不能产生一个有效的消息。但下一次呢? 简要说明lPaul黄裳:你好 黄裳 Paul :嗨,我是乙,乙的校验 Paul黄裳:prove it 黄裳 Paul :嗨,我是黄裳,黄裳的校验 Paul ,我是黄裳信息段Paul ,我是黄裳 黄裳的私钥 Paul黄裳: ok 黄裳,here is a secret secret黄裳的公钥

16、some message,MACsecret-key 简要说明l现在白开心已经无技可施了。他干扰了得到的所有消息,但MAC计算机能够发现他。Paul和黄裳能够发现伪造的MAC值并且停止交谈。白开心不再能与黄裳通讯。 7.4.2SSL安全优势安全优势lSSL使用一个经过通信双方协商确定的加密算法和密钥,对不同的安全级别应用都可找到不同的加密算法,从而用于数据加密。它的密钥管理处理比较好,在每次连接时通过产生一个Hash函数生成一个临时使用的会话密钥,因此对监听和中间人式攻击而言,具有较高的防范性。 7.5.1SET与与SSL的特点的特点lSET是一个多方的消息报文协议,它定义了银行、商家、持卡人

17、之间必须符合的报文规范。lSSL只是简单地在两方之间建立了一条安全连接。SSL是面向连接的,SET允许各方之间的报文交换不是实时的。SET报文能够在银行内部网络或者其他网络上传输,而SSL之上的支付系统只能与Web浏览器捆绑在一起。 7.8.1SET与与SSL的特点的特点l(1)认证机制方面:SET的安全需求较高,因此所有参与SET交易的成员(持卡人、商家、付款转接站等)都必须先申请数字证书来识别身份,而在SSL中只有商店端的服务器需要认证,客户端认证则是有选择性的。l(2)对消费者而言,SET保证了商家的合法性,并且用户的信用卡号不会被窃取。SET替消费者保守了更多的秘密,使其在线购物更加轻松。7.8.1SET与与SSL的特点的特点l(3)安全性:一般公认SET的安全性较SSL高,主要原因是在整个交易过程中,包括持卡人到商店、商店到付款转接站再到银行网络,都受到严密的保护;而SSL的安全范围只限于持卡人到商店端的信息交流。l(4)SET对于参与交易的各方定义了互操作接口,一个系统可以由不同厂商的产品构筑。l(5)采用比率:由于SET的设置成本较SSL高许多,SET的操作对用户来说不太方便,且进

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论