(计算机软件与理论专业论文)jfk协议的研究及改进.pdf_第1页
(计算机软件与理论专业论文)jfk协议的研究及改进.pdf_第2页
(计算机软件与理论专业论文)jfk协议的研究及改进.pdf_第3页
(计算机软件与理论专业论文)jfk协议的研究及改进.pdf_第4页
(计算机软件与理论专业论文)jfk协议的研究及改进.pdf_第5页
已阅读5页,还剩41页未读 继续免费阅读

下载本文档

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

文档简介

摘要 摘要 随着i p v 4 的网络空间的匮乏劣势越发的明显 随着下一代网络i p v 6 的推出 其中i p s e c 协议作为必选协议出现其中 上一代网络密钥交换协议i k e 存在着消 息轮数过多 容易受到攻击等缺陷 无论从安全 效率还是实用等方面都不能 适应现在的网络的高速发展 所以提出快速密钥交换j f k j u s tf a s tk e y i n g 协 议作为i k e 协议的替代协议 目的在于解决i k e 存在的缺陷 本文首先分析了i p v 6 及其必选协议i p s e c 并对i k e 的缺陷进行了分析 然 后研究分析了j f k 协议更加安全 高效和简单等优点 同时也提出了j f k 可能 会受到中间人攻击 并没有实现完全无状态交互等问题 随之对提出的问题进 行分析 并在保证了不影响协议的效率的前提下 对所提问题进行了针对性的 改进 论文对改进前j f k 协议方案 进行了详细的b a n 类逻辑推导 证实了缺陷的 存在性 并在最后对改进后的j f k 协议方案再次进行了b a n 类逻辑推导 结果 证明 改进后的协议在推导过程中无漏洞 关键词 j f k 协议 i k e 协议 中间人攻击 b a n 类逻辑 a b s t r a c t a b s t r a c t w i t hi n c r e a s i n g l yo b v i o u sd i s a d v a n t a g ef r o mt h el a c ko fi p v 4n e t w o r ks p a c ea n dt h e i n t r o d u c t i o no fn e x t g e n e r a t i o ni p v 6n e t w o r k s i nw h i c hi p s e cp r o t o c o lw i l lb e an e c e s s a r y a g r e e m e n t g e n e r a t i o ni n t e r a c tk e ye x c h a n g ei k ep r o t o c o lh a v es o m ed e f e c t s s u c ha ss om a n y m e s s a g er o u n d s e a s i l ys u f f e r e dt oa t t a c k s o m ea s p e c t sc a nn o ta d a p tt ot h er a p i dd e v e l o p m e n to f c u r r e n tn e t w o r k w h e t h e rf r o mt h es a f e e f f i c i e n t o rp r a c t i c a l a n dt h e r e f o r et h ep a p e rp r o p o s et o j u s tf a s tk e y i n ga g r e e m e n t sa sa na l t e m a t i v ei k ep r o t o c o la g r e e m e n t t h er e a s o ni st h a ts o l u t e t h es h o r t c o m i n g so fl k e a tf i r s t t h i sp a p e ra n a l y z e st h ei p v 6 i t sn e c e s s a r yp r o t o c o k t h a ti si p s e e a n dt h ed e f e c t s o fi k ep r o t o c o l t h e na n a l y z e sm o r es e c u r e m o r ee f f i c i e n ta n dm o r es i m p l ea d v a n t a g e sf o r mt h e j f kp r o t o c o l a tt h es o m e t i m ei ta l s op u t sf o r w a r ds o m ee a c ho t h e rp r o b l e m s i nw h i c hi n c l u d e s t h ej f km a yb es u f f e r e df r o mm i d d l em a n sa t t a c k sa n dd i dn o ta c h i e v ec o m p l e t en o n s t a t e i n t e r a c t i o na n ds oo n i nt h ee n d t h et h e s i sp r o p o s e ss o m ei m p r o v e dm e a s u r e su n d e rt h ep r e m i s e o f n o ta f f e c t i n gt h ee f f i c i e n c yo f t h ea g r e e m e n t f o rt h eu n i m p r o v e dj f kp r o g r a m t h et h e s i sc a r r i e so u tad e t a i l e dd e r i v a t i o no ft h eb a n l i k e l o g i c c o n f i r m st h ee x i s t e n c eo fd e f e c t s a n di nt h ef i n a lo ft h ep a p e r t h ea u t h o ra g a i nc a r r i e so u t t h eb a n l i k el o g i cd e r i v a t i o nt ot h ei m p r o v e dj f kp r o t o c o l w h i c ht h er e s u l t sp r o v et h a tt h e i m p r o v e d d e r i v a t i o nh a sn ol o o p h o l ei nt h ed e r i v a t i o np r o c e s s k e yw o r d s j f kp r o t o c o l i k ep r o t o c o l m a n i n t h e m i d d l ea t t a c k b a n l i k el o g i c 学位论文独创性声明 学位论文独创性声明 本人声明所呈交的学位论文是本人在导师指导下进行的研究工作及取得的 研究成果 据我所知 除了文中特别加以标注和致谢的地方外 论文中不包含 其他人已经发表或撰写过的研究成果 也不包含为获得窟昌盘堂或其他教育 机构的学位或证书而使用过的材料 与我一同工作的同志对本研究所做的任何 贡献均已在论文中作了明确的说明并表示谢意 靴做储擞浮剐啕 锢飙扩r 瑚期 学位论文版权使用授权书 本学位论文作者完全了解直昌太堂有关保留 使用学位论文的规定 有权 保留并向国家有关部门或机构送交论文的复印件和磁盘 允许论文被查阅和借 阅 本人授权直昌太堂可以将学位论文的全部或部分内容编入有关数据库进行 检索 可以采用影印 缩印或扫描等复制手段保存 汇编本学位论文 同时授 权中国科学技术信息研究所将本学位论文收录到 中国学位论文全文数据库 并通过网络向社会公众提供信息服务 保密的学位论文在解密后适用本授权书 学位论文作者签名c 亍写名卜 签字日期2 年 月加曰 导师签名 手写 巷夕 签字曰期 知哼年l 月矽e l 第一章引言 1 1 课题背景 第一章引言 中国互联网络信息中心 c n n i c 于2 0 0 9 年1 月发布了 第2 3 次中国互联网 络发展状况统计报告 根据该报告 截至2 0 0 8 年1 2 月底 中国上网人数达到 2 9 8 亿人 宽带上网人数为2 7 亿人 我们可以发现从新的世纪开始 互联网 开始走进千家万户 随着电子商务 网上银行 电子政务以及s n s 等兴起 互 联网对于现代社会的生活已经不可或缺 随着日常生活的互联网化 电子邮件 即时消息 视频会议 网络日志 b l o g 网上购物以及s n s 等已经逐渐成为人 们的一种日常休闲娱乐方式 而基于b 2 b b 2 c 等平台的电子商务 跨越洲际的 商务会谈以及电子政务等等为商业与政府办公 也会广大的公共机构创造了更 加安全 更加快捷的环境 随着互联网所将承受的数据量越来越大 所传输的 信息越来越重要 而互联网的攻击行为也在近几年进入了一个高峰期 无论是 垃圾邮件 网络蠕虫病毒 恶意代码还是恶意程序 都对于普通用户的互联网 行为构成了巨大的威胁 所以虽然互联网在近十年取得了别的行业无法比拟的 辉煌 但不可否认的 在这辉煌后面 一直存在着一个挥之不去的阴霾 那就 是网络安全问题 目前对于解决网络安全的主要方式有两种 一个就是防火墙技术 另一个 是虚拟私人网络技术 v p n 其中虚拟私人网络技术主要用了防止攻击者对于 传输信息的窃取以及修改 虚拟私人网络利用已加密的通道协议 t u n n e l i n g p r o t o c 0 1 来达到保密 传送端认证 讯息准确性等私人讯息安全效果 若使 用得法 这种技术可以用不安全的网路 例如 网际网络 来传送可靠 安全 的讯息 需要注意的是 加密讯息与否是可以控制的 值得注意的是 没有加 密的虚拟私人网络讯息 依然有被窃取的危险 常用的虚拟私人网络协议有 i p s e c p p t p s s lv p n l 2 f l 2 t p c i s c ov p n 等 而防火墙最基本的功能就 是控制在计算机网络中 不同信任程度区域间传送的数据流 例如互联网是不 可信任的区域 而内部网络是高度信任的区域 以避免安全策略中禁止的一些 通信 与建筑中的防火墙功能相似 它有控制信息基本的任务在不同信任的区 第一章引言 域n 吲 典型信任的区域包括互联网 一个没有信任的区域 和一个内部网络 一 个高信任的区域 最终目标是提供受控连通性在不同水平的信任区域通过安 全政策的运行和连通性模型之间根据最少特权原则 以作用的t c p i p 堆栈区分 主要分为网络层防火墙和应用层防火墙两种 但也有些防火墙是同时运作于网 络层及应用层 我们可以看到由于我国的密钥学起步比较晚 研究的人员也比较少 所以整 个密钥学技术远远落后于一些西方发达国家 而由于密钥学关系到一个国家的 国计民生 对于密钥技术的进口也受到重重封锁 所以我们在研究下一代网络 密钥协议的时候 要多创新 尽力结合我国网络的实际情况 在互联网密钥协 议研究的道路上 走出自我特色 故研究密钥学的自我知识产权有着重要的意 义 1 2 目前的研究现状 进入2 0 世纪 无论是国外还是国内 对于i n t e r n e t 密钥交换协议的研究愈 发的频繁 而主要的研究方向多集中在基于v p n 上的i n t e r n e t 密钥交换协议构 建 作为下一代的互联网协议i p v 6 相比如今使用的i p v 4 在地址扩展 报文 头的简化 可扩展性 流量标识 路由选择 流的支持 s u m 区域检查 最大传 输单元 m t u 可扩展协议和安全性等1 1 个方面进行了优化和改进 更为重要 的是i p v 6 把i p s e c 协议作为必选协议 这也是针对i p v 4 协议的网络安全方面 的缺陷而做的改进 i k e 是现在互联网所使用的标准密钥交换协议 但随着互联 网的发展 i k e 的缺陷越来越明显 主要归纳下来有一下三点 1 i k e 协议在进行密钥的过程中 消息传递轮次过多 消息交换数量过去 庞大 效率不高 2 i k e 对于d o s 攻击的抵御能力太差 攻击者很容易用d o s 攻击导致通信 者无法正常通信 3 i k e 对于中间人攻击也抵御不够 通信者双方的身份得不到足够的保证 因此各国的研究者都开始研究一些别的协议用来替代目前使用的i k e 协议 其中以由i k e 本身进化而来的i k e v 2 和一个全新设计的3 f k 协议受到了广大研 究者的青睐 当然还有些类似于a r c a n m 以及一些不知名的协议 但毫无疑问 i k e v 2 和j f k 将成为下一代密钥交换协议的有利争夺者 2 第一章引言 i k e v 2 协议是由i k e 协议改进而来 对i k e 协议的安全 效率等的主要问题 进行了优化 但由于其本身是由i k e 协议而来 些i k e 的本质无法做太多的 改进 比如在交换消息数量上 依旧与原来的i k e 协议一样 并没有多大的改 观 而相比于另一个替代协议j f k j u s tf a s tk e y i n g 取消了i k e 协议两个 阶段的思想 与上 代i n t e r n e t 密钥交换协议i k e 协议相比 j f k 采用一个阶段 的思想替代了i k e 协议两个阶段的思想 因此从协议的消息上来讲 巧k 协议 实现更为简单 效率更高 安全性更好 只有简单的两次交换 四条消息 j f k 具有安全性 完美向前保密 p f s 私密性 抵抗d o s 攻击 效率 不协商 简单等特性 尤其是其高效率 不协商 简单的特性 是i k e 系列协议所达不 到的 这也是j f k 的优势所在跚1 j f k 是优秀的 但不是完美的 由于d h 算法特性 d h 交换中其指数的计算 其代价非常昂贵 这使得j f k 虽然在消息轮次上相比i k e 大大减少 同样其在 计算密钥时所耗费的时间 资源的代价也相应的提高了 现阶段如何对于下一 代密钥的研究和探讨工作还一直在继续着 所以针对j f k 的缺陷 优化其成为 一种更安全 更实用的密钥交换协议已经迫在眉睫 并且有着很好的学术价值 和经济效应 1 3 课题的研究内容 本论文研究的主要内容有以下几个方面 1 对i p s e c 协议和i k e 协议进行了分析 本论文所研究的主要内容是i k e 的替代协议 所以首先对i p s e c 协议和i k e 协议进行了介绍和分析 并且在这 一部分介绍了安全协议所用到的一些概念和基础知识 2 对j f k 协议进行了分析 j f k 协议是i k e 协议的替代协议之一 相比较 i k e 协议 j f k 协议从实用的角度出发取消了两阶段的思想 使用更少的消息往 返数量 拥有更高的效率和更好的安全性 但是j f k 协议并不是一个完美的安 全协议 通过对j f k 协议的分析发现了j f k 协议的一些缺陷和不足 3 针对j f k 协议的缺陷和不足进行了改进 在对j f k 协议的详细分析基 础之上 本文对j f k 协议的一些缺陷提出了改进策略 在不影响j f k 优点的前 提下 通过增加阴队列 改变c o o k i e 值的计算方法以及改变部分消息内容和 处理方式等方法使得j f k 协议更加完善 第一章引言 4 本文将用形式化语言b a n 类逻辑对改进前和改进后的协议进行语义分 析 验证协议改进的可行性 具体的章节安排如下 第一章 第二章 第三章 第四章 第五章 第六章 引言 i p s e c 安全协议介绍 j f k 协议的分析 j f k 协议的改进 改进后的j f k 协议形式化分析 总结与展望 对研究进行总结并对以后的工作作出规划 4 第二章i p v 6 协议及其安全协议 第二章i p v 6 协议及其安全协议 2 1i p v 6 协议介绍 互联网的发展速度逐年递增 互联网的用户数更是以几何数的速度往上翻 番 而目前的互联网标准i p v 4 是2 0 多年前制定 经过这么年的发展 口v 4 的 劣势越发的明显 尤其以其网络空间的匮乏最为突出 从1 9 9 0 年开始 互联网 工程任务小组 i n t e m e te n g i n e e r i n gt a s kf o r c e 简称i e t f 开始规划i p v 4 的发 展并提出了i p v 6 其中主要对i p v 4 的地址扩展 报文头的简化 可扩展性 流 量标识 路由选择 流的支持 s u m 区域检查 最大传输单元 m t u 可扩 展协议和安全性等1 1 个方面进行了改进 但同时我们也可以发现 虽然i p v 6 相比i p v 4 能够有很明显的效率性和经济性 但是目前这个优势只有制造商较能 够感受到 用户和运营商无法直接感受到 这也导致i p v 6 虽然提出了1 5 年 但 是由于产业链的缺乏 发展缓慢 但是我们应该看到 i p v 4 的缺陷是不可避免 的 i p v 6 始终是个大方向 所以我们对口v 6 的研究也一刻没有停止过 i p v 6 与i p v 4 的最大的不同就是网络地址的长度的变化 i p v 6 地址的表达形 式一般采用3 2 个十六进制数 i p v 6 中可能的地址有2 1 2 8 3 4 1 0 3 8 个 也 可以想象为1 6 3 2 个 因为3 2 位地址每位可以取1 6 个不同的值 在很多场合 i p v 6 地址由两个逻辑部分组成 一个6 4 位的网络前缀和一个6 4 位的主机地址 主机地址通常根据物理地址自动生成 叫做e u i 6 4 或者6 4 一位扩展唯一标识 i p v 6 曾有两个有着细微差别的版本 在r f c1 8 8 3 中定义的原始版本 现在废 弃 和r f c2 4 6 0 中描述的现在提议的标准版本 两者主要在通信类别这个选项 上有所不同 它的位数由4 位变为了8 位 其他的区别都是微不足道的 i p v 6 数据包的结构如下图所示2 一l 所示 第二章i p v 6 协议及其安全协议 一x i r l i 扩聪报又n 上层协议数据母 已 i i p v 6 掇又扩艇报又l i i 版本i 传输类掰l数据漆标签l 卜 卜 卜 一 卜 卜 卜 一 卜 一 卜 卜q 一 l 有效数据长度 i 下 个首巷l 跳敦限制 i 卜 卜 十 卜 卜 一 卜 十 卜叫 啼 源地址 卜叫卜 一 一 l 卜叫卜 卜 卜1 一 一 一叶一 卜 目的地址 一 卜 一 一 一 叶 图2 1 i p v 6 数据包的结构 i p v 6 封包由两个主要部分组成 头部和负载 包头是包的前4 0 字节并且包 含有源和目的地址 协议版本 通信类别 8 位元 包优先级 流标记 2 0 位 元 q o s 服务质量控制 负载长度 1 6 位 下一个头部 用于向后兼容性 和跳段数限制 8 位元 生存时间 相当于i p v 4 中的t t l 后面是负载 至少 1 2 8 0 字节长 或者在可变m t u 最大传输单元 大小环境中这个值为1 5 0 0 字 节 负载在标准模式下最大可为6 5 5 3 5 字节 或者在扩展包头的 j u m b op a y l o a d 选项进行设置 2 2i p s e e 协议介绍 i p s e c i ps e c u r i t y 是i e t fi p s e c 工作组为了在i p 层提供通信安全而制定的一 套协议族口一刳 它包括安全协议部分和密钥协商部分 安全协议部分定义了对通 信的各种保护方式 密钥协商部分定义了如何为安全协议协商保护参数 以及如 何对通信实体的身份进行鉴别口3 嗡1 i p s e c 作为一个协议族 即一系列相互关联的协议 由以下部分组成 1 保护分组流的协议 6 第二章i p v 6 协议及其安全协议 2 用来建立这些安全分组流的密钥交换协议 前者又分成两个部分 加密分组流的封装安全载荷 e s p 及较少使用的认 证头 a h 认证头提供了对分组流的认证并保证其消息完整性 但不提供保密 性 当i p s e c 接收到一个口数据包时 由于i p s e c 本身没有安全策略 所以对 于碑包的处理主要参考s p d 安全策略数据库 即每个进入的i p 包都要经过 的s p d 数据库的检索 然后进行操作 其操作主要包括丢弃 直接转发 绕过 i p s e c 以及进行s a d 安全关联数据库 处理等n 鄹 2 3i p s e e 的组成 基于p 协议安全的i p s e c 是一组开放协议的总称 i p s e c 协议包括安全协议 和密钥协商密钥协商协议两部分 而i p s e c 协议中的安全协议由安全载荷封装协 议 e n e a p s u l a t i n gs e c u r i t yp a y l o a d e s p 口6 1 和认证头协议 a u t h n e t i c a t o i nh e a d e r a i r 乜剐组成 而密钥协商协议包括互联网密钥交换协议 i m e m e tk e ye x c h a n g e i r e 等h 1 4 羽 2 3 1e s p 协议 e s p 是i p s e c 中的重要协议 与a h 头不同的是 i p 分组头部不被包括在 内 其主要对消息进行提供了源可靠性 完整性和保密性的支持 其可以单独 使用 也可以和a h 一起使用 同时提供认证和加密两种功能 其字段含义 a 安全参数索引 与i p 地址一同用来标识安全参数 b 序列号 单调递增的数值 用来防止重放攻击 c 载荷数据 实际要传输的数据 d 填充 某些块加密算法用此将数据填充至块的长度 e 填充长度 以位为单位的填充数据的长度 f 下一个头 标识被传送数据所属的协议 g 认证数据 包含了认证当前包所必须的数据 e s p 报头格式见图2 2 7 第二章i p v 6 协议及其安全协议 0123 o i l2 1 34 56 1 7011 234 1 567 0123456 1 7o 1 23 456 1 7 安全参数序歹 s p i 序列号 载荷 可变长度 f填充 0 2 5 5 字节 填充长度 i 下一个头 a u t h e n t i c a t i o nd a t a v a r i a b l e 认证数据 可变长度 2 3 2a i i 协议 图2 2 e p s 报头格式 鉴别头 a h 被用来保证被传输分组的完整性和可靠性 此外 它还保护 不受重发攻击 认证头试图保护p 数据报的所有字段 那些在传输i p 分组的过 程中要发生变化的字段就只能被排除在外 a h 的机制可以有效的预防攻击者的 重放攻击 因为当通信双方的s a 建立后 无论是发送方还是接受方的计数器的 值都将清零 然后发送的包从1 开始计数 这样只要在一个确定的s a 的生命周 期里收到了相同序列号的包 便可断定该包是非法的h 钔 a h 协议可采用多种认证算法 在通信的过程中 通信的通信发起主体用一个密 钥算出整个i p 包的摘要值 然后发送 通信的通信接收主体用相同的密钥和算 法进行解密 两者对比结果如果不同 则表明包被人修改过了 反之亦然 这 样 数据的完整性和认证安全得到了保证 其字段含义 钆下一个头 标识被传送数据所属的协议 b 载荷长度 认证头包的大小 c 保留 为将来的应用保留 目前都置为0 d 安全参数索引 与i p 地址一同用来标识安全参数 e 序列号 单调递增的数值 用来防止重放攻击 认证数据 包含了认证当前包所必须的数据 a h 报头的结构如图2 3 8 第二章i p v 6 协议及其安全协议 012 1 3 0123 456 7 01234 5 670123 4 567 i o123 4567 下一个头载荷长度保留 安全参数索引 s p i 序列号 认证数据 可变长度 2 3 3i p s e c 的两种模式 图2 3a h 报头格式 隧道模式 t u n n e l i n gm o d e 隧道模式主要用于当e s p 与多台主机关联时使 用 他可以帮助内部服务器和客户隐藏自己的地址信息 其主方式是利用i p 头 的填充的方式 将自己的源地址加入到原来的t c p i p 或u d p i p 头和数据中 从而实现对m 数据包进行压缩 传送模式 t r a n s p o r tm o d e 传送模式主要用于当e s p 与单个主机关联时使 用 他仅仅是对t c p 和u d p 头进行加密 而i p 头却使用的是未加密的明文传 输 从而实现远程计算机之间安全的i p 服务 2 4 因特网密钥交换协议i k e 2 4 1i k e 协议概述及分析 i k e 协议是由o a k l e y 和s k e m e 这两种密钥管理协议发展而来 i k e 协议是 i p v 4 网络下重要的互联网密钥交换协议 对碑v 4 网络安全取得了至关重要的作 用 i k e 的协议规范主要由r f c 2 4 0 7 r f c 2 4 0 8 嘲和r f c 2 4 0 9 泓3 来定义 其中 i k e 协议由两个阶段构成 2 4 2i k e 协议的缺陷 通过以上对i k e 协议的简单介绍 我们可以看到i k e 在通信时 交换的消息 数量过于庞大 需要两个阶段的密钥生成和交换 消息轮次太多 这样将会导 9 第二章i p v 6 协议及其安全协议 致i k e 对于d o s 攻击的抵御能力太差 攻击者很容易用d o s 攻击导致通信者无 法正常通信 和i k e 对于中间人攻击也抵御不够 通信者双方的身份得不到足 够的保证 下面将对这两点进行探讨 一 容易受到d o s 攻击 我们知道i k e 是使用c o o k i e 来抵御d o s 2 9 1 攻击的 c o o k i e 对d o s 的攻击确 实能到一定的防止作用 但是我们注意到 在i k e 中 c o o k i e 并不是必选项 而是可选项 这样就很容易出现问题 假设接受方资源足够 其可以将c o o k i e 作为必选并进行处理分析 要是接受方资源并不是很宽裕 很有可能将c o o k i e 作为可选甚至不选 这样就很可能受到d o s 攻击了 二 存在中间人攻击 i k e 协议第一阶段交换相当复杂 这也给中间人提供了广阔的攻击攻击空间 我们研究到 攻击者一般可以使用攻击者修改身份标识符的攻击方式进行攻击 模拟攻击如下 在第一阶段交换过程中 攻击者预先可以生成好一个包含另一个提案p 2 的 s a a 然后攻击者在通信过程中截获响应方发送的第2 条消息 并将自己的生成 的s a a 替换掉消息本身的s a t 在协议正常完成后 虽然攻击者不会得到密钥 而正常的通信双方也无法判断出认证消息是否被修改 但是会影响双方的正常 通信 2 5 总结 本章中 首先对i p v 6 协议进行了介绍 然后对于i p s e c 进行了简单的阐述 对i p s e c 的两种模式进行了探讨 从而进一步分析了上一代的互联网密钥交换协 议i k e 分析其缺陷总结如下 一 交换的消息数量过于庞大 需要两个阶段的密钥生成和交换 轮次太多 二 i k e 对于d o s 攻击的抵御能力太差 攻击者很容易用d o s 攻击导致通信 者无法正常通信 三 i k e 对于中间人攻击也抵御不够 通信者双方的身份得不到足够的保证 由于i k e 协议的以上三条缺陷实属致命伤 如果对i k e 进行修改 其工作量 不如重新提出一种心得密钥交换协议来代替i k e 协议 目前 主流的替代协议 为i k e v 2 协议和j f k 协议 本文选择了j f k 协议进行分析和研究 1 0 第三章j f k 协议的分析 3 1j f k 概述 第三章j f k 协议的分析 j f k 协议是专为下 代网络所设计的i n t e m e t 密钥交换协议 由于对于通信主 体的身份保护策略不同 又可以分为j f 飚和j f k r 其中对发起方身份进行保护 的j f 瞄 而对双方身份都进行了保护的是j f k r 之所以有两种不同的协议 是 由于不同的网络的应用 所需求的也不同 j f 鼬主要是应用c s 模式的网络应 用 因为c s 模式只需要对用户进行保护而无需对服务器进行保护 而j f 心则 通常用于p 2 p 结构的情况 此时同时保护i n i t i a t o r 和r e s p o n d e r 身份信息 与上一代i n t e m e t 密钥交换协议i k e 协议相比 j f k 采用一个阶段的思想替 代了i k e 协议两个阶段的思想 因此从协议的消息上来讲 j f k 协议实现更为 简单 效率更高 安全性更好 只有简单的两次交换 四条消息 j f k 协议是基于d h 交换的协议 并没有实现无状态连接思想 由于d h 值 交换中d h 指数的计算其代价相当昂贵 在综合效率和安全的考虑下 j f k 协议 采用在一个预先设定的时间所有与通信主体会话的主体都使用同一个d h 指数 预设时间过后 更新一个新的d h 指数进行下一轮的会话 这时的d h 指数与开 始一样 同时用于不同的会话主体 3 2j f k 设计目标 1 安全性 任何协议的实现都是基于安全的前提下的 j f k 也不例外 2 简单 四条消息 两次交换 无协商 这是j f k 比任何其他协议都要 简单的前提 3 完美向前保密 p f s 所谓p f s 指即使攻击者破解了整个协议过程 中的某一消息所使用的一个密钥 它也只能得到用密钥解开的信息内容 而不能 得到任何与之相关的信息内容 4 不协商 y f k 协议的不协商原则 大大的提高了协议的效率 5 效率 在之前的许多互联网密钥交换协议中 频繁的密钥更新一直是效 第三章j f k 协议的分析 率低下的首要问题 而总共需要两个消息来回就可以建立有效的安全关联的j f k 协议 显然与上一代交换协议i k e 比起来要高效的多 6 抵抗d o s 攻击 d o s 攻击主要对象伪面向主机 而其又可划分为耗尽 存储资源的d o s 攻击和耗尽计算资源的d o s 攻击 j f k 通过几个方面 更好的 抵抗了该攻击 7 私密性 私密性是指通信的双方的身份进行保护 j f k 协议采用对于不 同的网络需求 采用不同的子协议的方法解决私密性问题 对于c s 结构的通信 主题 只需提供对通信发起主体的身份提供防主动攻击的保护 顾而采用j f k i 协议 而对于p 2 p 的通信 采用的则是j f 鼬协议进行保护 同时保护发起和相 应放的身份安全口7 1 3 3j f k i 协议 j f k i 协议包括四条消息 两个来回 消息l i r n i g 1 d 消息2 r i n l n r g r g r p i n f o g i d s i g 工g g r p i n f o r l h 巨x r g n r n i i p 0 消息3 i r n i n r g g h h x r g r n r n i i 酗 崛 s a s 1 6 n r g 9 7 以 勋 岂 消息4 r i s g m 9 7 g 1 d s a s a q 勋 岂 j f k 中主要的密钥算法如下 加密密钥 k e h g 打 n i n r 1 验证密钥 k a h g 打 n i n r 2 1 2 第三章j f k 协议的分析 k i r 传递给具体应用 如i p s e c 的共享密钥 k i r h g n i n r 0 在产生密钥的过程中 有两种情况需要注意 密钥位数少于或者多于所需位 数 如少 则参照i k e 协议使用的方法对密钥进行扩充 如多 则直接截取所 需位数 下面将详细分析消息1 至消息4 的内容 消息1 为明文传输 其内容比较简单 整条消息由三个值组成 分别是m g 皿 其中g 是i n i t i a t o r 所计算出的d h 公开值 i o 则用户i n i t i a t o r 向 r e s p o n d e r 提出用了何种方式来认证自己 而m 的存在主要有两个目的 一是允 许i 同一时间与不同对象进行的会话过程中 可以使用同一个指数 二是保证在 即使在同一时间内 r 与不同的i 同时通信 也将使用不同密钥进行会话 消息2 与消息l 比较 相对复杂了些 分别由m 9 7 g r p i n f o r i o r 田q 9 7 g r p i n f o r 日脓 9 7 m 皿 7 个值构成 g r p i n f o r 在消息2 中很 重要 因为它将指定后面两条消息进行加密和认证所采用密码算法 够撇 9 7 m i p 由9 7 m n r 皿和密钥h k r 共同计算而来 计算结果 作为c o o k i e 值使用的 其目的是对发送主体进行验证 在此处设立c o o k i e 的主 要目的是防止攻击者进行d o s 攻击 发送伪造消息使其资源耗尽 仍 是代表接 受方相应发送方消息时表明的身份 其可以是证书或者是公钥 这样可以很好的 防止身份的不确定 消息3 是所有消息里最复杂的一条 他不仅包含了前两天消息的信息 而且 还包含了通信所需的s a 的信息和发送方的签名信息 崛 s a s i g n g g r 皿 勋 岂的意思是用k e 密钥对通信要使用的s a 信息和签名 发送者的身份进行加密 而l a 密钥的作用是对其进行认证 这里 需要注意的是在消息2 中我们已经提到了g r p i n f o r 将指定所用的加密认证算法 消息3 是3 条消息中最容易出现消息拒绝的 当接收方收到发送方送发来的 消息里含有载荷出错 或s a 的建立时遇到发送方提出的加密算法恰好不适用于 第三章j f k 协议的分析 接收方时 都会产生消息的拒绝 消息3 将c o o k i e 值作为缓存暂时存储 当受到重放攻击时 把消息3 中的 c o o k i e 值缓存中所存储的c o o k i e 值进行比对 如遇到重放攻击 直接转发开始 的消息4 这样就大大的减轻了c p u 的压力 最后在消息4 中 一切都是按部就班的进行 首先相应方再次发回发起方和 相应方共同选择确定的d h 随机数 然后对g n n i 进行数字签名 随之 用k e 密钥进行加密 k a 密钥进行认证 最后得到最终的安全关联 双方通信正 式开始 3 4j f k r 协议 由于j f k r 与j f k i 都属于j f k 协议的变种协议 只是服务的对象不同 加密 算法及认证方法原理都相同 故j f 鼬协议的消息交换如下所述 消息1 i r 忒t g 消息2 r i n l n g r g r p i n f o r i d r ts i q g rg r p i n f o r l h h 殴 g l n r n i i 聃 消息3 i r n t nr g g h h k r 0 9 r nr n i l p 皿 s a s i g n g r 以 勋 笔 消息4 r i 鹏 m n r g r g 以 s a s a 勋 岂 1 4 第三章j f k 协议的分析 3 5 协议分析 3 5 1 消息的拒绝 在通信的过程中 通信的两大主体发送方和接受方都可以拒绝对方的消息 当然 一般情况下是接受方拒绝发送方的消息 在j f k 协议的通信过程中 消 息l 至消息3 都存在这消息拒绝的情况 下面就详细的说明下各条消息的拒绝t 消息1 t 在消息l 的通信过程中 接受方只有一个理由可以拒绝发送方的连 接请求 那就是接受方不接收发送方提出的d h 的组值 消息2 由于g r p i n f o r 中说明了接受方所能接受的值 所以在消息2 中 接 受方不需要明显的拒绝消息便可拒绝发送者 消息3 消息3 是3 条消息中最容易出现消息拒绝的 当接收方收到发送方 送发来的消息里含有载荷出错 或s a 的建立时遇到发送方提出的加密算法恰好 不适用于接收方时 都会产生消息的拒绝 消息的拒绝是通信过程中的正常现象 只要针对通信的错误重发一次 通信 便能顺利进行 3 5 2s a 的删除 s a 的出现总是成对的 也就是说发送方有一个 接收方处也必然存在相应的 一个s a 在通信的过程中 假设通信双方的其中一个希望关闭自己的s a 时 首先必须发消息通知通信的另一方关闭所对应的s a 下面举一个实例进行阐述 通信的发送主体和接收主体在通信过程中 经过协商建立了i p s e cs a 这时 发送主体和接收主体的双方就各自存在一个s a 我们用s ai n 和s ao u t 来表示 这时发送主体发送一个数据d a t a 给接收主体 经过s ai ni 处理后d a t a 就变 成了d a t a 当接收主体接收到d a t a 后 由于d a t a 是加密过的 所以对其 进行解密 使用s ai nr 当通信进行到这个时候 发送主体希望终止与接收主 体的通信 这时就需要删除彼此之间的s a 具体步骤是这样的 首先发送方删 除自己的s a o u ti 然后给通信的对方发送消息通知其删除相应的s a 即s a i n r 当通信对方收到删除s a 的消息后 就删除自己的s ai nr 然后发送一个响 应消息给发送方 这样对应的s a 就被删除了 第四章j f k 协议的改进 第四章j f k 协议的改进 4 1j f k 协议不足及改进思想 在j f k 协议设计过程中 采用一个阶段的思想 取消了多种认证方式的选择 简化了密钥协商所要交换消息的内容 这样做优点是大大的提高了协议的在通信 中的效率 但是过分追求效率j f k 协议 在实际通信中产生2 个问题 1 首选由于j f k 协议放弃了协商环节 那么实际通信中就很可能会出现当消 息2 时 r 向i 提出加密和认证算法时 i 却不支持r 提出的算法 这样就会导 致通信的中断 如果此现象频繁出现 必将印象通信的质量 对于以上提出的由 于加密和认证算法不支持导致通信中断的问题的解决方法 我们可以选择采用局 部协商的方式解决 那就是在i 给r 所发送消息1 时 提出自己所支持的加密和 认证算法群 这样 r 就可以其中选择同时适合自己的算法用于以后的加密和认 证 对于这个加密和认证算法群 我们可以用一个映射来封装它 这样 r 只要 在消息2 中返回映射的k e y 值就可以了 这样也可以减少协议的长度n 1 2 其次由于j f k 允许在某段时间内 规定允许多个会话可以重复使用同一个 d i f f i e h e l l m a n 指数进行协议通讯 理论上不能保证p f s 在一定情况下 会招 到重放攻击 泄露参与通讯者的信息险蚴1 4 2 对j f k i 的改进 改进后的j f k i 传递的消息如下所述 消息1 i r m g i d r m k 消息2 r i m 9 7 g r p i n f o r i o k s i g e g i g r p i n f o r h h k r g r nr n i i e k 消息3 i r n i nr g i k h 吨k r t g r nr n t i e k 1 6 第四章j f k 协议的改进 皿 s a s i g n r g g r 以 勋 笔 消息4 r i s i g r n g r g i i d s a s a 3 勋 嚣 消息l 中 增加 个映射类型的可选项m 七 v m g r d r m k 1 为了避免映射集过于庞大 这里采用i k e 中提到的方法 分别提供加密和认 证算法 而不是列出所有加密认证算法的组合 然后由r 从中选择一个算法来 使用 假设此项不为空 则由i 列出支持的所有加密和认证算法 假设此项为空 的话 则由r 在消息2 中指定采用的加密和认证算法 消息2 中 r 接收到i 所发送的m k v 而m k v 的作用在消息1 中已经提 到 即列出所支持的加密和认证的算法 等待消息2 的通信接收主体r 去选择 并回复 这里有一个情况 即有可能m k v 的值有可能为空 这时消息2 则按 照未改进的j f k 的思想处理 用g r p i n f o r 来指定r 本身所支持的加密及认证算 法 这样就可以保证通信的畅通性 实现了无状态交互 除此之外 消息2 的长 度也由原来的7 个参数增加到了8 个 增加的参数k 主要作用是对d h 映射中所 对应的v a l u e 真实值 进行指定 由于参数的增加 以往的c o o k i e 值计算方法也 相应的作出了调整 在c o o k i e 的生成公式中 也加上了参数k 作为生成材料 c o o k i e h 腿 g r n n i 珥 k 由于c o o k i e 是用于防止中间人攻击的 所以将参数k 加入c o o k i e 值计算里声 可以放置k 被篡改 消息2 还在签名中加入了 做此改动的主要目的是为了 保持消息2 对与后面消息的的新鲜性 加入m 后的签名如下 s i g g r j g r pi n fo r 由于签名的新鲜性得到了保证 也就很好的阻止了重放攻击 消息3 与未改进的消息3 相比 显著的变化就是9 7 项被k 项给取代了 这 样处理一方面是由于消息2 的改进 另一方面也可以减少i 与r 之间通信交换的 消息的长度 在双方通信的过程中 r 在收到i 发送的消息3 后 首先在缓存中 查询该条消息中的c o o k i e 值是否存在 如果c o o k i e 值在缓存中存在 毫无疑问 不需要做出任何任何处理 直接转发相应的消息4 给i 这样就可以节约很多资 源 如果c o o k i e 值在缓存中并不存在 通信接收主体首先检查d h 映射中的k 项 是否为合法且可用 如不可用 则直接弃之 假设k 项是合法且可用的 这时取 出d h 映射中的k 所指向的v a l u e 值对消息3 进行c o o k i e 验证 如果c o o k i e 验 1 7 第四章j f k 协议的改进 证也通过了 就可以开始正式通信的加密和解密工作了 在消息3 通过了c o o k i e 验证后 同是已经对i 的身份及其他的信息认证也 都全都通过了 r 则便把d h 映射中使用过的这组值设为冷却 冷却一般可以 设一个时间限制 这样等时间限制一过 使用过的d h 指数便又处于激活状态了 等待r 的使用 最后r 对i 进行消息4 的回应 通信完成 但如果碰到特殊情况 即消息3 通过了c o o k i e 验证并且通过了身份验证 但是提交的s a 请求不合理或者载荷有错误 这样的话 r 便有义务发送相应的 提示消息指出错误之处 并要求i 对该消息进行重发 当然 如果消息3 通过了c o o k i e 验证 但是r 发现i 是非法的用户 身份 验证错误 那么r 除了不做任何回复外 同时把消息3 中的c o o k i e 值设为黑 名单 防止非法用户通过不停的重发同一个消息3 而对r 发动耗尽计算

温馨提示

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

评论

0/150

提交评论