您好,欢迎访问三七文档
0安全协议与标准北京信息科技大学刘凯liukai@bistu.edu.cn第7讲1安全协议与标准第五章SSL协议和TLS协议2第五章SSL协议和TLS协议概述SSL协议规范TLS协议规范TLS/SSL的应用安全性分析3上节课回顾ssl协议提供的服务?握手协议的作用及工作过程?SSL记录协议的功能及操作过程?45.3TLS协议规范5.3.1协议综述TLS体系结构与SSL相同TLS记录协议利用两种基本方式提供安全的连接连接的机密性连接的可靠性TLS握手协议使用3种基本方式提供安全的连接:(1)对等实体的认证使用不对称的或公钥密码体制(2)共享密码协商的安全性(3)密码协商的可靠性55.3TLS协议规范5.3.2TLS中的改进部分1.版本号:主要版本是3,次要版本是12.消息验证码:实际算法和MAC计算范围3.伪随机函数:使用了PRF伪随机函数以扩展密码为数据块4.警告码:还定义了许多附加码5.密码组:在密钥交换和对称加密算法中,不支持Fortezza65.3TLS协议规范5.3.2TLS中的改进部分6.客户机证书类型:TLS不包括Fortezza方案7.Certicate_Very和结束消息:Certicate_Very消息中,MD5和SHA-1只在handshake_message中计算;8.结束消息的哈希计算不同9.密码计算:master_secret的计算方法不同10.填充:填充字节可以是最大到255字节的任意数量。继续7消息验证码在TLS中采用了RFC2104定义的HMAC算法。返回8伪随机函数数据扩展函数9伪随机函数数据扩展函数返回105.4TLS/SSL的应用5.4.1TLS/SSL与电子商务SSL安全协议是国际上最早应用于电子商务的一种网络安全协议.被认为是WEB浏览器和服务器的标准安全性措施SSL在网上商店和电子交易中都有很多的应用,但存在很多弊端在涉及多方交易时,只能提供客户与服务器的双方认证,不能协调多方的安全传输和信任关系SSL协议有利于商家而不利于客户115.4TLS/SSL的应用5.4.1TLS/SSL与电子商务3-Dsecure技术125.4TLS/SSL的应用5.4.1TLS/SSL与电子商务3-Dsecure技术在线付款体系结构3-DSecure(表示三域安全性)是Visa和MasterCard于2001年推出的。它基于SSL和TLS,可提供由第三方进行的身份验证。三个域中的每个域都对应于一种用户类型:发卡行域,包含持卡人身份验证功能银行间域,允许其他两个域通过Internet进行通信收单行域135.4TLS/SSL的应用5.4.1TLS/SSL与电子商务3-Dsecure技术3-DSecure在三个域之间传送信息以完成信用卡支付的过程,并在三个域之间平均分配责任:持卡人的银行验证其客户身份商户的银行验证其商户身份银行间域允许商户开始以相同方式验证买方的身份,而无论买方使用的是什么方法•145.4TLS/SSL的应用5.4.2利用TLS/SSL保证HTTP的安全性目前已成为IETF的RFC草案的TLS应用有两种:HTTPUpgradetoTLS(RFC2817)HTTPoverTLS(RFC2818)TLS/SSL能以两种形式实现将TLS/SSL嵌入到操作系统内核在应用层以库形式实现将TLS/SSL应用于HTTP之中时,采用层无关技术可简化复杂性,增加可移植性.155.4TLS/SSL的应用5.4.2利用TLS/SSL保证HTTP的安全性1.HTTPS1998年IETF开始考虑将这类应用标准化,HTTPS由RFC2818所定义HTTPS是在互联网上利用TLS保证HTTP连接的安全性的第一个方案HTTPS使得用户在TLS之上使用HTTPHTTPS与传统HTTP使用不同的端口为区别与普通HTTP,使用”https”协议标识.165.4TLS/SSL的应用5.4.2利用TLS/SSL保证HTTP的安全性1.HTTPS(1)建立HTTPS连接HTTP客户的代理也可以作为TLS客户的代理.建立TLS连接后,客户可以开始HTTP请求所有HTTP数据必须作为TLS的应用数据发送(2)连接的关闭TLS规定通信的双方在关闭连接时,必须先交换关闭警告当应用层不再有数据发送时,可以产生一个”不完全关闭”175.4TLS/SSL的应用5.4.2利用TLS/SSL保证HTTP的安全性2.使用TLS将HTTP升级在已建立的TCP连接上使用HTTP/1.1的升级机制初始化TLS这种方式允许共用传统的HTTP端口允许虚拟主机185.4TLS/SSL的应用5.4.2利用TLS/SSL保证HTTP的安全性2.使用TLS将HTTP升级(1)客户升级选择升级强制升级服务器接受升级请求195.4TLS/SSL的应用5.4.2利用TLS/SSL保证HTTP的安全性2.使用TLS将HTTP升级(2)服务器升级选择列出强制列出(3)通过代理升级跳与跳之间升级的含义用CONNECT请求一个通道用CONNECT建立一个隧道205.5安全性分析1.验证思想在SSL协议中,信任是建立在CA的权威之上的.客户和服务器各自都存放着多个CA自签证书2.握手协议的安全性设计(1)验证支持三种验证方式.(2)密钥交换匿名密钥交换非匿名密钥交换215.5安全性分析3.应用数据的保护使用HMAC作为消息验证算法,可阻止重放攻击和截断连接攻击消息类型保证了发给一个SSL记录层客户的消息不会发给其他的客户序列号确保删除或者重排序消息攻击可以被检测出来序列号为64位,保证不会溢出从一个实体发出的消息不会被插入到另一个实体发出的消息225.5安全性分析4.对各种攻击的保护(1)防止版本重放攻击(2)对握手协议的攻击(3)会话的恢复(4)侦听和中间人攻击(5)流量数据分析攻击(6)截取再拚接攻击(7)短包攻击(8)报文重放攻击(9)密码组件回退攻击235.6SSL的配置及应用SSL的配置及应用在RedHat7.1中配置SSLSSL代理客户端使用在IIS上基于SSL的信息安全通道的构建CiscoCatalyst6500系列交换机和7600系列上的SSL服务模块OPENSSLAPI继续24在RedHat7.1中配置SSL在REDHAT7.1中进行SSL配置的基本过程:安装APACHE和OPENSSL创建自己的CA生成服务器的证书请求签署证书更改/etc/httpd/conf/httpd.conf示例文件测试返回25安装APACHE和OPENSSLREDHAT7.1中已经自带了APACHE1.3.19和OPENSSL0.9.6,在安装LINUX时选择安装WebServer和MOD_SSL即可,同时,配置Linux的起动模块,使HTTPD在Linux起动时自动运行。26#cd/usr/share/ssl/misc#./CA-newca屏幕提示:CAcertificatefilename(orentertocreate)MakingCAcertificate...Usingconfigurationfrom/usr/share/ssl/openssl.cnfGeneratinga1024bitRSAprivatekey.....++++++writingnewprivatekeyto'./demoCA/private/./cakey.pem'EnterPEMpassphrase:Verifyingpassword-EnterPEMpassphrase:-至此,在当前目录下生成了demoCA的目录,CA的证书就在该目录下,文件名为cacert.pem创建自己的CA27生成服务器的证书请求#./CA-newreq屏幕上出现如下的提示:Usingconfigurationfrom/usr/share/ssl/openssl.cnfGeneratinga1024bitRSAprivatekey.++++++writingnewprivatekeyto'newreq.pem'EnterPEMpassphrase:Verifyingpassword-EnterPEMpassphrase:在当前目录下生成了一个名为newreq.pem的文件,包含了要生成服务器数字证书的请求。28签署证书#./CA-sign屏幕上出现如下的提示:Usingconfigurationfrom/usr/share/ssl/openssl.cnfEnterPEMpassphrase:CertificateistobecertifieduntilNov1913:46:192002GMT(365days)Signthecertificate?[y/n]:y1outof1certificaterequestscertified,commit?[y/n]y29更改/etc/httpd/conf/httpd.conf建立一个新目录,如/var/。在<IfDefineHAVE_SSL>中修改DocumentRoot“/var/”为DocumentRoot“/var/”更改服务器的证书文件的相关配置#cpnewcert.pem/etc/httpd/conf/ssl.crt/server.pem在<IfDefineHAVE_SSL>中修改SSLCertificateFile/etc/httpd/conf/ssl.crt/server.crtSSLCertificateFile/etc/httpd/conf/ssl.crt/server.pem更改服务器的证书密钥文件的相关配置#cpnewreq.pem/etc/httpd/conf/ssl.key/server.pem在<IfDefineHAVE_SSL>中修改SSLCertificateKeyFile/etc/httpd/conf/ssl.key/server.key为SSLCertificateKeyFile/etc/httpd/conf/ssl.key/server.pem30示例文件在SSL的根目录中生成一个index.html,它是如下所示:<html>这是SSL示例!</html>31测试假如Web服务器的DNS名称是dell.es.com.在浏览器的URL地址栏里输入,浏览器便会显示APACHE安装时确省的TestPage.在浏览器的URL地址栏里输入,注意:是https而不是http!浏览器会提示站点已经采用了SSL进行数据的加密传输.32SSL代理客户端使用下载SSL到本地机器的硬盘上后,双击ssl.exe,按照提示默认提示安装。根据上网方式的不同,要作不同设置通过拨号上网通过局域网上网返回33通过拨号上网双击打开浏览器,在菜单中点选工具--Internet选项点选连接,在拨号设置里选择所用拨号连接,再点选设置按钮勾选使用代理服务器,然后点选高级按钮在Secure栏中输入代理服务器地址127.0.0.1,端口8080,点击确定按钮完成设置34通过局域网上网双击打开浏览器,在菜单中点选工具--Internet选项点选连接,然后点选局域网设置按钮在Secure栏中输入代理服务器地址127.0.0.1,端口8080,点击确定按钮完成设置(注意:上一栏中的代理服务器和端口均不能作设置)若需要使用代理服务器,则运行SSL客户端,启动后在桌面右下角的启动图标上点右键35在IIS上基于SSL的信息安全通道的构建操作系统为Windows2003Server;WEB服务器为IIS;CA认证中心采用Windows2003Serv
本文标题:第7讲 ssl协议
链接地址:https://www.777doc.com/doc-5017856 .html