




已阅读5页,还剩51页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
0 安全协议与标准 第7讲 1 安全协议与标准 第五章SSL协议和TLS协议 2 第五章SSL协议和TLS协议 概述SSL协议规范TLS协议规范TLS SSL的应用安全性分析 3 上节课回顾 ssl协议提供的服务 握手协议的作用及工作过程 SSL记录协议的功能及操作过程 4 5 3TLS协议规范 5 3 1协议综述TLS体系结构与SSL相同TLS记录协议利用两种基本方式提供安全的连接连接的机密性连接的可靠性TLS握手协议使用3种基本方式提供安全的连接 1 对等实体的认证使用不对称的或公钥密码体制 2 共享密码协商的安全性 3 密码协商的可靠性 5 5 3TLS协议规范 5 3 2TLS中的改进部分1 版本号 主要版本是3 次要版本是12 消息验证码 实际算法和MAC计算范围3 伪随机函数 使用了PRF伪随机函数以扩展密码为数据块4 警告码 还定义了许多附加码5 密码组 在密钥交换和对称加密算法中 不支持Fortezza 6 5 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 伪随机函数 数据扩展函数 返回 10 5 4TLS SSL的应用 5 4 1TLS SSL与电子商务SSL安全协议是国际上最早应用于电子商务的一种网络安全协议 被认为是WEB浏览器和服务器的标准安全性措施SSL在网上商店和电子交易中都有很多的应用 但存在很多弊端在涉及多方交易时 只能提供客户与服务器的双方认证 不能协调多方的安全传输和信任关系SSL协议有利于商家而不利于客户 11 5 4TLS SSL的应用 5 4 1TLS SSL与电子商务3 Dsecure技术 12 5 4TLS SSL的应用 5 4 1TLS SSL与电子商务3 Dsecure技术在线付款体系结构3 DSecure 表示三域安全性 是Visa和MasterCard于2001年推出的 它基于SSL和TLS 可提供由第三方进行的身份验证 三个域中的每个域都对应于一种用户类型 发卡行域 包含持卡人身份验证功能银行间域 允许其他两个域通过Internet进行通信收单行域 13 5 4TLS SSL的应用 5 4 1TLS SSL与电子商务3 Dsecure技术3 DSecure在三个域之间传送信息以完成信用卡支付的过程 并在三个域之间平均分配责任 持卡人的银行验证其客户身份商户的银行验证其商户身份银行间域允许商户开始以相同方式验证买方的身份 而无论买方使用的是什么方法 14 5 4TLS SSL的应用 5 4 2利用TLS SSL保证HTTP的安全性目前已成为IETF的RFC草案的TLS应用有两种 HTTPUpgradetoTLS RFC2817 HTTPoverTLS RFC2818 TLS SSL能以两种形式实现将TLS SSL嵌入到操作系统内核在应用层以库形式实现将TLS SSL应用于HTTP之中时 采用层无关技术可简化复杂性 增加可移植性 15 5 4TLS SSL的应用 5 4 2利用TLS SSL保证HTTP的安全性1 HTTPS1998年IETF开始考虑将这类应用标准化 HTTPS由RFC2818所定义HTTPS是在互联网上利用TLS保证HTTP连接的安全性的第一个方案HTTPS使得用户在TLS之上使用HTTPHTTPS与传统HTTP使用不同的端口为区别与普通HTTP 使用 https 协议标识 16 5 4TLS SSL的应用 5 4 2利用TLS SSL保证HTTP的安全性1 HTTPS 1 建立HTTPS连接HTTP客户的代理也可以作为TLS客户的代理 建立TLS连接后 客户可以开始HTTP请求所有HTTP数据必须作为TLS的应用数据发送 2 连接的关闭TLS规定通信的双方在关闭连接时 必须先交换关闭警告当应用层不再有数据发送时 可以产生一个 不完全关闭 17 5 4TLS SSL的应用 5 4 2利用TLS SSL保证HTTP的安全性2 使用TLS将HTTP升级在已建立的TCP连接上使用HTTP 1 1的升级机制初始化TLS这种方式允许共用传统的HTTP端口允许虚拟主机 18 5 4TLS SSL的应用 5 4 2利用TLS SSL保证HTTP的安全性2 使用TLS将HTTP升级 1 客户升级选择升级强制升级服务器接受升级请求 19 5 4TLS SSL的应用 5 4 2利用TLS SSL保证HTTP的安全性2 使用TLS将HTTP升级 2 服务器升级选择列出强制列出 3 通过代理升级跳与跳之间升级的含义用CONNECT请求一个通道用CONNECT建立一个隧道 20 5 5安全性分析 1 验证思想在SSL协议中 信任是建立在CA的权威之上的 客户和服务器各自都存放着多个CA自签证书2 握手协议的安全性设计 1 验证支持三种验证方式 2 密钥交换匿名密钥交换非匿名密钥交换 21 5 5安全性分析 3 应用数据的保护使用HMAC作为消息验证算法 可阻止重放攻击和截断连接攻击消息类型保证了发给一个SSL记录层客户的消息不会发给其他的客户序列号确保删除或者重排序消息攻击可以被检测出来序列号为64位 保证不会溢出从一个实体发出的消息不会被插入到另一个实体发出的消息 22 5 5安全性分析 4 对各种攻击的保护 1 防止版本重放攻击 2 对握手协议的攻击 3 会话的恢复 4 侦听和中间人攻击 5 流量数据分析攻击 6 截取再拚接攻击 7 短包攻击 8 报文重放攻击 9 密码组件回退攻击 23 5 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和OPENSSL REDHAT7 1中已经自带了APACHE1 3 19和OPENSSL0 9 6 在安装LINUX时选择安装WebServer和MOD SSL即可 同时 配置Linux的起动模块 使HTTPD在Linux起动时自动运行 26 cd usr share ssl misc CA newca屏幕提示 CAcertificate orentertocreate MakingCAcertificate Usingconfigurationfrom usr share ssl fGeneratinga1024bitRSAprivatekey writingnewprivatekeyto demoCA private cakey pem EnterPEMpassphrase Verifyingpassword EnterPEMpassphrase 至此 在当前目录下生成了demoCA的目录 CA的证书就在该目录下 文件名为cacert pem 创建自己的CA 27 生成服务器的证书请求 CA newreq屏幕上出现如下的提示 Usingconfigurationfrom usr share ssl fGeneratinga1024bitRSAprivatekey writingnewprivatekeyto newreq pem EnterPEMpassphrase Verifyingpassword EnterPEMpassphrase 在当前目录下生成了一个名为newreq pem的文件 包含了要生成服务器数字证书的请求 28 签署证书 CA sign屏幕上出现如下的提示 Usingconfigurationfrom usr share ssl fEnterPEMpassphrase CertificateistobecertifieduntilNov1913 46 192002GMT 365days Signthecertificate y n y1outof1certificaterequestscertified commit y n y 29 更改 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 pem 30 示例文件 在SSL的根目录中生成一个index html 它是如下所示 html 这是SSL示例 html 31 测试 假如Web服务器的DNS名称是 在浏览器的URL地址栏里输入在浏览器的URL地址栏里输入浏览器会提示站点已经采用了SSL进行数据的加密传输 32 SSL代理客户端使用 下载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认证中心采用Windows2003Server自带的 证书服务 组件 浏览器为IE5 0配置DNS ActiveDirectory以及CA服务服务器端证书的获得与安装客户端证书的获得与安装通过安全信息通道访问WEB网站 返回 36 配置DNS ActiveDirectory以及CA服务 要建立一个独立根的CA认证服务器需要WINDOWS2003SERVER上有DNS和ActiveDirectory服务 所以配置这两项服务必不可少 这两项的配置不是本文的重点 用户只要按照 管理工具 中的 配置服务器 向导操作就可以了 另外为了实验方便 CA认证中心的颁发策略要设置成 始终颁发 37 服务器端证书的获得与安装 获得WEB站点数字证书启动web服务器的 Internet信息服务 在 Internet信息服务 界面中右击要申请数字证书的站点 在弹出的快捷菜单中选择 属性 出现站点属性对话框 安装WEB站点数字证书进入到站点属性对话框中 单击 服务器证书 在 IIS证书向导 对话框中 按提示操作即可安装服务器证书 设置 安全通信 属性选择网站属性对话框中的 编辑 按纽 选中 申请安全通道 与 申请客户证书 再单击确定 38 客户端证书的获得与安装 申请客户端证书打开IE浏览器 在地址栏中输入认证服务器名称 CertSrv然后回车 选择 申请证书 单击 下一步 然后选择 用户证书 单击 下一步 安装证书链或CRL在浏览器中输入认证服务器名称 CertSrv default asp 载入CA认证中心页面 单击 下载一个CA证书 证书链或CRL 选择安装 此证书链 39 通过安全信息通道访问WEB网站 在浏览器中输入以下网址服务器地址 SSL端口 index htm在连接刚建立时浏览器会弹出一个安全警报对话框 用户单击 确定 以后 浏览器把客户端目前已有的用户证书全部列出来供用户选择 选择正确的证书后单击 确定 至此安全通道正式建立 40 CiscoCatalyst6500系列交换机和7600系列上的SSL服务模块 它可以完成及其消耗主机处理器资源的安全套接字 SSL 计算任务 从而增加网站同时支持的安全连接数量 并减少高性能网站服务器群运行的复杂性 41 CiscoCatalyst6500系列交换机和7600系列上的SSL服务模块 服务模块的主要特性包括服务器SSL卸载 集成SSL处理 执行与SSL相关的所有任务 使服务器能处理高速纯文本流量 性能可扩 只要简单地在机箱里增加安装模块就可以满足性能升级的要求永久连接 用CiscoCSM 集成模式 操作时 及时客户机请求新对话ID时 也能保持永久连接 证书优化 对传输到Web服务器的用户数据进行加密 提供私密性 保密性和认证 SSL使用驻留在模块上的多种证书 能集中证书管理 由于无需在单独的服务器上管理证书 只需一份证书就能完成管理 因而能显著降低成本 42 CiscoCatalyst6500系列交换机和7600系列上的SSL服务模块 服务模块的主要特性包括后台加密 SSL模块可以对服务器到模块的之间的通信进行加密从而提供端到端的安全保证在每个机箱内最多可以安装4块SSL服务模块 提供业界最快的SSL对话建立速度和最高的加密吞吐量 支持最高数量的并发连接 每个模块每秒建立3 000条连接 每个机箱10 000条 每个模块的加密吞吐量高达300Mbps 每个机箱1 2Gbps 能同时保留64 000条并发的客户机连接 每个机箱256 000个 43 什么是OpenSSL OpenSSL是一个支持SSL认证的服务器 它是一个源码开放的自由软件 支持多种操作系统 OpenSSL软件的目的是实现一个完整的 健壮的 商业级的开放源码工具 通过强大的加密算法来实现建立在传输层之上的安全性 OpenSSL包含一套SSL协议的完整接口 应用程序应用它们可以很方便的建立起安全套接层 进而能够通过网络进行安全的数据传输 44 OpenSSLAPI1 1 OpenSSL初始化在使用OpenSSL之前 必须进行相应的协议初始化工作 这可以通过下面的函数实现 intSSL library int void 2 选择会话协议在利用OpenSSL开始SSL会话之前 需要为客户端和服务器制定本次会话采用的协议 目前能够使用的协议包括TLSv1 0 SSLv2 SSLv3 SSLv2 v3 需要注意的是 客户端和服务器必须使用相互兼容的协议 否则SSL会话将无法正常进行 45 OpenSSLAPI2 3 创建会话环境在OpenSSL中创建的SSL会话环境称为CTX 使用不同的协议会话 其环境也不一样的 申请SSL会话环境的OpenSSL函数是 SSL CTX SSL CTX new SSL METHOD method 当SSL会话环境申请成功后 还要根据实际的需要设置CTX的属性 通常的设置是指定SSL握手阶段证书的验证方式和加载自己的证书 制定证书验证方式的函数是 intSSL CTX set verify SSL CTX ctx intmode int verify callback int X509 STORE CTX 为SSL会话环境加载CA证书的函数是 SSL CTX load verify location SSL CTX ctx constchar Cachar Capath 为SSL会话加载用户证书的函数是 SSL CTX use certificate ctx constchar type 为SSL会话加载用户私钥的函数是 SSL CTX use PrivateKey ctx constchar type 在将证书和私钥加载到SSL会话环境之后 就可以调用下面的函数来验证私钥和证书是否相符 intSSL CTX check private key SSL CTX ctx 46 OpenSSLAPI3 4 建立SSL套接字SSL套接字是建立在普通的TCP套接字基础之上 在建立SSL套接字时可以使用下面的一些函数 SSL SSl new SSL CTX ctx 申请一个SSL套接字intSSL set fd SSL ssl intfd 绑定读写套接字intSSL set rfd SSL ssl intfd 绑定只读套接字intSSL set wfd SSL ssl intfd 绑定只写套接字 47 OpenSSLAPI4 5 完成SSL握手在成功创建SSL套接字后 客户端应使用函数SSL connect 替代传统的函数connect 来完成握手过程 intSSL connect SSL ssl 而对服务器来讲 则应使用函数SSL accept 替代传统的函数accept 来完成握手过程 intSSL accept SSL ssl 握手过程完成之后 通常需要询问通信双方的证书信息 以便进行相应的验证 这可以借助于下面的函数来实现 X509 SSL get peer certificate SSL ssl 该函数可以从SSL套接字中提取对方的证书信息 这些信息已经被SSL验证过了 X509 NAME X509 get subject name X509 a 该函数得到证书所用者的名字 48 OpenSSLAPI5 当SSL握手完成之后 就可以进行安全的数据传输了 在数据传输阶段 需要使用SSL read 和SSL write 来替代传统的read 和write 函数 来完成对套接字的读写操作 intSSL read SSL ssl void buf intnum intSSL write SSL ssl constvoid buf int
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 浙江公务员真题试卷2025
- 汉中市消防救援支队消防员及消防文员招聘笔试真题2024
- 农发行金华市婺城区2025秋招笔试性格测试题专练及答案
- 2025年新能源汽车智能化车载环境控制系统报告
- 2025年太阳能硅片硅碇行业市场分析:技术创新推动行业发展报告
- 农发行盘锦市大洼区2025秋招笔试创新题型专练及答案
- 农发行宜昌市远安县2025秋招笔试创新题型专练及答案
- 2025年新能源企业国际化经营风险防范与技术创新应对报告
- 农发行酒泉市玉门市2025秋招笔试专业知识题专练及答案
- 2025年工业互联网平台数字签名技术规范与工业互联网安全态势感知技术研究进展报告
- 全套课件-食品营养学-王莉
- htri手册HTRIExchanger使用手册
- 四年级数学上册试题 一课一练2.3《平移与平行》习题1-北师大版(含答案)
- 小学英语外研版5A Unit2 They sell many different things Module 2部优课件
- 中国文学史概述
- 9.10.11有机、酸碱一般排-盛剑
- 完整版:美制螺纹尺寸对照表(牙数、牙高、螺距、小径、中径外径、钻孔)
- 毕业设计-太平哨水利枢纽引水式水电站设计
- 陈氏太极56式拳谱
- 机电技术应用专业岗位任务分析表
- 2019法考主观题考前聚焦2小时商法曹新川案例题参考答案
评论
0/150
提交评论