




已阅读5页,还剩50页未读, 继续免费阅读
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
第18章网络安全I 密码学基础 1 网络安全基本概念安全服务对安全的攻击Internet上常见的攻击 IP欺骗 IPspoofing 服务拒绝 denialofservice 密码学基础 1 网络安全基本概念 安全服务 安全服务 国际标准化组织ISO在提出开放系统互连参考模型OSI之后 在1989年提出网络安全体系结构SA SecurityArchitecture 称为OSI SA 它定义了五类安全服务 身份认证 authentication 验证通信参与者的身份与其申明的一致 不是冒名顶替者 认证服务是向接收方保证消息确实来自所声称的源 身份认证是其它服务 如访问控制的前提 网络安全基本概念 安全服务 续 访问控制 accesscontrol 保证网络资源 主机系统 应用程序 不被未经授权的用户使用 访问权限包括读 写 删 执行等 在用户进程被授予权限访问资源前 必须首先通过身份认证 访问权限一般由目标系统控制 数据机密性 dataconfidentiality 通过加密 保护数据免遭泄漏 防止信息被未授权用户获取 包括防分析 网络安全基本概念 安全服务 续 不可抵赖 non repudiation 防止通信参与者事后否认曾参与通信 有两种不可抵赖服务 发送的不可抵赖 防止数据发送者否认曾发送过此数据 接收的不可抵赖 防止数据接收者否认曾收到此数据 例 签名函 挂号信 数据完整性 dataintegrity 确保收到的信息在传递过程中没有被插入 篡改 删除 重放 目前讨论安全服务 常常增加 可用性 availability 防止或恢复因攻击造成系统的不可用 对安全的攻击 假冒 fabrication 非授权用户假冒合法用户 甚至特权用户的身份进行通信 这是对身份认证和访问控制的攻击 它还包括在网络中插入伪造的报文 截取通信双方交换的信息进行重放攻击等 正常通信 假冒 对安全的攻击 续 截取 interception 非授权用户截获了对某资源的访问 这是对访问控制的攻击 例如通过监控网络或搭线窃听以获取数据 截取 对安全的攻击 续 篡改 modification 非授权用户不仅获得了对某资源的访问 而且篡改了某资源 这是对数据完整性的攻击 例如篡改文件 程序 在网络中传输的信息内容等 篡改 对安全的攻击 续 破坏 interruption 破坏系统资源 使系统不能使用或不可访问 如破坏通信设备 切断通信线路 破坏文件系统等 破坏性攻击还包括对特定目标发送大量信息流 使目标超载以至瘫痪 破坏 对安全的攻击 续 对网络的攻击又分主动攻击和被动攻击 被动攻击 是在传输中的偷听或监视 目的是截取在网上传输的重要敏感信息 包括消息内容析取和通信量分析 在局域网如以太网上监听是很容易的 在用telnet作远程登录时 用户的标识名和口令也是一个个字符封装传输 被动攻击检测困难 主要通过加密防止其成功 主动攻击 包括假冒 重放 篡改 破坏 杜绝主动攻击很困难 要对所有设施保护 主要是靠检测 及时发现和恢复 IP欺骗 IPspoofing IP欺骗是指攻击者在IP层假冒一个合法的主机 攻击者只要用伪造的源IP地址生成IP数据报 就可以进行IP欺骗了 IP欺骗常和其它攻击 如服务拒绝 结合使用 攻击者利用IP欺骗隐瞒自己的真实地址 攻击者可以使用窃听和协议分析确定TCP连接的状态和数据片序号 当某个连接建立后 在客户和服务器之间进行的数据片交换过程中 攻击者可利用IP欺骗冒充该客户方 插入自己的数据片 这种攻击称TCP会话劫持 Telnet 服务拒绝 denialofservice 所谓服务拒绝是一种破坏性攻击 是对某特定目标发送大量或异常信息流 使该目标无法提供正常服务 这类攻击有 PingO Death SYNflooding 等 pingA 是向主机A发送ICMP的 回答请求 报文 它封装在IP数据报中 IP数据报最大长度是216 1 65535字节 若攻击者发送ICMP 回答请求 报文 且总长度超过65535字节 IP层在发送此报文会分段 目标主机在段重组时会因缓冲区溢出而瘫痪 这就是 PingO Death 服务拒绝 续 TCP连接的建立需要三次握手 它以发起方的同步数据片SYN开始 并以发起方的确认数据片ACK结束 攻击者向某目标的某TCP端口发送大量的同步数据片SYN 但在收到目标方的ACK和SYN后 不发送作为第三次握手的ACK片 这样使大量TCP连接处于半建立状态 最终将超过TCP接收方设定的上限 而使它拒绝后面的连接请求 直至前面的连接过程超时 这就是 SYN泛滥 flooding 攻击 服务拒绝 续 2002年10月21日 有人针对DNS的13台根服务器发动了 服务拒绝 攻击 攻击持续了1个小时 13台中的9台受到影响 由于根服务器中设有安全措施 数据备份 全世界Internet用户对此毫无觉察 11月5日美国域名管理公司VERISIGN对其掌控的两台根服务器中的一台安装到公司内部网 密码学基础 1 概念传统密码体系 conventionalcryptography 传统密码的经典技术传统加密的现代技术 密码学基础 概念 迄今为止 网络和通信安全的最重要的工具是加密 身份认证 数据机密性 数字签名等都是以密码学为基础的 明文 plaintext 原始 可理解 有意义的消息 密文 ciphertext 经过 加密 处理的 表面上是一串杂乱 无规则 无意义的数据 加密 encryption 从明文变换成密文的过程 解密 decryption 从密文恢复成明文的过程 加密或解密变换由算法和密钥组成 传统密码体系 传输密文C 明文 明文 加密算法 解密算法 共享密钥K 传统密码系统模型 加密变换 解密变换 P P 传统密码体系 特点 加密变换由算法和密钥组成 记作C EK P 密钥独立于明文 它控制算法 同一明文用相同算法 不同的密钥将产生不同的密文 改变密钥就改变了算法的输出 解密算法是加密算法的逆过程 记作P DK C 解密和加密使用同一密钥 传统密码体系也称对称密钥密码体系 symmetrickeycryptography 对称密钥是通信双方共享的 也称共享密钥 sharedkey 传统密码体系 续 加密算法基于两个基本原理 替代 substitution 明文中每个元素 比特 字母 比特组 字符组 被映射为另一个元素 置换 transposition 明文中的元素被重排列 对它们的基本要求是不丢失信息 即所有操作是可逆的 多数系统包括多个阶段的替代和置换 传统密码经典技术 凯撒密码 凯撒密码 CaesarCipher 最早 最简单的替代密码 substitutioncipher 是JuliusCaesar所使用的密码 明文的每个字母用 字母表中 其后第3个字母来替换 注意字母循环排列 Z后是A abcdefghijklmnopqrstuvwxyzDEFGHIJKLMNOPQRSTUVWXYZABC例明文 meetusafterthedinner密文 PHHWXVDIWHUWKHGLQQHU 传统密码经典技术 凯撒密码 续 为每个字母指定数字 a 0 b 1 等 则算法 C E3 P P 3 mod26 P D3 C C 3 mod26 更通用的Caesar算法 C EK P P K mod26 P DK C C K mod26 凯撒密码是一种单字母表密码 monoalphabeticcipher 即一个明文字母对应的密文字母是确定的 它对频率分析攻击很脆弱 因消息中字母出现的频率和前后连缀关系有一定的统计规律 例如英文文本中e出现频率最高 此外密钥只有25个不同的值 非常不安全 传统密码经典技术 Vigenere密码 Vigenere密码 Vigenere是法国密码专家 以他命名的密码算法是一种最简单的多字母表密码 polyalphabeticcipher 设密钥K k1k2 kn 明文P p1p2 pn 其中ki pi都是字母 字母a z编码为0 25 编码后还是记作ki pi 则密文C c1c2 cn 其中ci pi ki mod26注意密钥的长短与明文长短没有关系 对于长度为n 个字母 的密钥K 可以把明文P分成n 个字母 长的段 一段一段进行加密 传统密码经典技术 Vigenere密码 续 例如 K bdcsig 若P money 则C NRPWG 若P internet 则C JQVWZTFW Vigenere密码可以看作是26个Caesar密码组成的 一组单字母表替代规则 每个密码由密钥的一个字母表示 多字母表密码方法的共同特点是 使用一组相关的单字母表替代规则 密钥确定变换中选择哪些特定规则 传统密码算法的安全性 加密算法必须足够强大 仅根据密文破译出明文是不切实际的 传统密码算法的安全性取决密钥的安全性 不是算法的安全性 知道密文和加密 解密算法 不知道密钥 要破译出明文是不现实的 所以不必保密算法 只需保密密钥 密钥的穷举猜测攻击不可避免 密钥必须足够长 足够随机 例密钥长256位 密钥空间为2256 约1077 若计算机每秒能对密钥空间进行1亿次搜索 全部搜索一遍需1061年以上 传统加密的现代技术 流密码和块密码现代密码设计基础数据加密标准DES DES算法 DES的雪崩效应 DES的强度 DES的操作模式三重DES 流密码和块密码 流密码 streamcipher 对数字数据流一次加密一个比特或一个字节 经典流密码的例子是Vigenere密码 块密码 blockcipher 明文分块 一个明文块被作为一个整体处理 产生一个等长的密文块 通常使用的块大小是64位 现代密码设计基础 ClaudeShannon1949年的论文 communicationTheoryofSecrecySystems 奠定了密码学的理论基础 假设密码攻击者对明文的统计特性有所了解 如字母频率分布等 若这些统计特性以某种方式反映在密文中 则攻击者就可以推测出密钥 Shannon提出用扰乱 confusion 和扩散 diffusion 交替的方法构造密码 目的是挫败基于统计分析的密码破译 现代密码设计基础 续 所谓扩散 明文的统计结构被扩散 消失到密文的长程统计特性中 即每个密文数字被许多明文数字影响 扩散机制使明文和密文之间的统计关系尽量复杂 所谓扰乱 使密文的统计特性与加密密钥的值之间的关系尽量复杂 Feistel基于Shannon的设想 提出用替代和置换交替方式构造密码 提出Feistel块密码结构 当前用的几乎所有对称加密算法都基于此结构 Feistel密码结构 明文 2w比特 F L0w比特 w比特R0 K1 L1 R1 第1轮 Feistel密码结构 续 F Ki Li Ri 第i轮 Li 1 Ri 1 Feistel密码结构 续 F Kn Ln Rn 密文 2w比特 第n轮 Feistel密码结构设计特点 块大小 块越大安全性越高 但加密 解密速度越慢 64比特的块大小是合理的折衷 在块密码设计中这几乎是通用的值 密钥长度 密钥越长安全性越高 但加密 解密速度越慢 64比特或更短的密钥长度现在广泛认为不够安全 128比特是常用的密钥长度 循环次数 一次循环不够安全 多次循环可增加安全性 典型的循环次数是16 子密钥Ki的生成算法 算法越复杂密码分析越困难 Feistel密码结构设计特点 续 轮函数F F越复杂则抗击密码分析能力越强 在密码设计中还要考虑 快速的软件加密 解密 在很多情况下加密被嵌入到应用程序中 以至无法用硬件实现 所以要考虑算法执行速度 便于分析 虽然希望算法难以破译 但使算法容易分析却有好处 若算法能简明地解释 就可以通过分析算法找到其弱点 进行强化 DES的功能原理就不容易分析 Feistel解密算法 Feistel解密过程和加密过程实质是相同的 解密规则 以密文作为算法输入 以相反的次序使用子密钥Ki 即第一轮使用Kn 第二轮使用Kn 1 最后一轮使用K1 这个特点使得加密 解密使用同一算法 相反的密钥次序就行 这容易证明 数据加密标准DES 是IBM开发 在1977年被美国标准局NBS 美国标准技术局NIST的前身 采纳为第46号联邦信息处理标准 是非绝密计算机数据的加密标准 DES是块密码算法 数据被分成64位的块进行加密 密钥56位 批评者担心56位密钥不足以抵御穷举式攻击 DES实际上很成功 它在工商业界广泛采用 特别是金融领域 1992年底NIST把联邦政府使用DES的有效期又延长了5年 1997年NIST公开征集新算法来取代DES DES算法 初始排列IP 排列PC 1 迭代1 迭代1 迭代16 迭代16 32位交换 逆初始排列 64位明文 56位密钥 64位密文 K1 K16 1 3 2 4 5 DES算法 续 DES加密算法 1 对64位明文进行初始排列IP 第1位是原来的第58位 第2位是原来的第50位等 按IP表进行 2 对56位密钥进行PC 1排列 密钥分为8组 每组7位 每组再加1个奇校验位 所以共64位 排列按PC 1表进行 输出56位 3 明文初始排列后与密钥经PC 1排列后的结果进行16次迭代 DES算法 续 密钥迭代结果分别为48位的Ki i 1 16 称为子密钥 4 将16次迭代后64位输出值的左 右32位交换 5 对交换后的64位结果再做一次排列 它是初始排列的逆 即IP 1 第1位换为第58位 第2位换为第50位等 按IP 1表进行 就得到密文 DES解密与加密使用相同算法 只是使用密文作为输入 而且以逆序使用密钥Ki 即第1次迭代使用K16 第16次迭代使用K1 DES算法 初始排列IP表 DES算法 迭代 迭代第 i 1 次迭代产生64位中间结果 记为LiRi 其中Li Ri分别是其左 右各32位 第 i 1 次迭代既产生56位的密钥 记为CiDi 其中Ci Di分别是密钥的左28位和右28位 也产生48位的子密钥记为Ki 一次迭代过程如下图所示 DES算法 迭代 续 Li 1 Ri 1 Ci 1 Di 1 扩展排列E 循环左移 循环左移 P排列 Ri Li Ci Di S替换 压缩排列PC 2 Ki 48位 F 32位 28位 DES算法 迭代 续 1 关于F中的运算下面介绍 2 密钥的循环左移 Ci 1和Di 1分别循环左移1或2位 i 1 2 9 16时左移1位 i为其它值时左移2位 移位后的值作为下次迭代的输入Ci和Di 3 密钥的压缩排列PC 2 利用PC 2表从56位的CiDi构造48位的符号串 作为迭代的子密钥Ki 此运算不仅重排列 也从中选择 称排列选择 4 将Li 1和F运算的结果进行异或后作为Ri 原Ri 1作Li DES算法 F运算 R 32位 扩展排列E 48位 K 48位 S1 S2 S8 S7 P排列 32位 DES算法 F运算 续 1 扩展排列E 利用表E将右半部分从32位扩展到48位符号串 Ri 1的第1位排到第2位和第48位 第4位排到第5和7位等 所以称扩展排列 这个运算有两个目的 产生和子密钥相同长度数据进行异或 在S替换运算时进行压缩 但从密码学看由于输入的一位将影响两个替换位 输出对输入依赖性将传播更快 这叫雪崩效应 2 将扩展排列E的48位结果和48位子密钥Ki进行异或运算 即按位做模2加 DES算法 F运算 续 3 S盒替换 将第2步的48位结果分成8组 每组6位分别按表S1 S2 S8替换为4位 在替换Si中 设6位输入为A a1a2a3a4a5a6 令c a2a3a4a5 r a1a6 作为十进制数 0 c 15 0 r 3 在Si表的第r行 第c列查出一个数B 0 B 15 可用4个二进制数表示为B b1b2b3b4 它就是替换Si的输出 每6位都替换为4位 因此合成32位 注意S盒替换是非线性的 它比DES的其它任何一步提供更好安全性 DES算法 F运算 续 4 P排列 将S替换后的32位结果按下表再排列 P排列的目的是增强算法的扩散特性 DES的雪崩效应 加密算法应有的一个特性是明文或密钥的一点小变动应该使密文发生大变化 这称雪崩效应 avalancheeffect DES具有很强的雪崩效应 例设两个明文块只差1位 一个64位全0 一个首位为1其余全为0 密钥 00000011001011010010011000100011100001100000111000110010在仅2次循环后两个数据块就有21位不同 见表 a DES的雪崩效应 续 DES的雪崩效应 续 假设两个密钥有一位不同密钥1 11100101111011110111100110000011101000010001100011101110密钥2 01100101111011110111100110000011101000010001100011101110明文 0110100010000101001011100111101000010011011101101110101110100100从表 b 看 雪崩效应同样在几轮循环后就很明显 DES的强度 RSA在1997年1月29日发起一个破译DES密钥的竞赛 奖金1万美元 要求在给定密文和部分明文的情况下找到密钥 明文开始的3个块包含24字符的短
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 行政面试题目答案及答案
- 2025年软件开发工程师高级技能评估与预测题
- 2025年物流经理供应链面试技巧与题库
- 2025年医卫类康复医学治疗技术(士)基础知识-基础知识参考题库含答案解析(5套)
- 二零二五年客运公司管理人员劳动合同规范
- 二零二五年度建筑模板购销及施工合同
- 二零二五版宾馆餐饮住宿租赁承包经营协议
- 二零二五年度户外广告场地租赁及运营管理合同
- 2025版电商商铺安全责任与风险管理协议书
- 二零二五版水电工程保险合同
- 心肾综合征及其临床处理
- 普通高中课程方案
- 2022年山东高考生物试卷真题及答案详解(精校版)
- GB/T 38936-2020高温渗碳轴承钢
- 高考地理一轮复习课件 【知识精讲+高效课堂】 农业区位因素及其变化
- 教师专业发展与名师成长(学校师范专业公共课)
- 互通立交设计课件
- 媒介批评导论课件
- 畜牧兽医法规课件
- 生物竞赛辅导 动物行为学第七章 行为发育(38)课件
- 《空中领航》全套教学课件
评论
0/150
提交评论