第3章_分组密码和DES.ppt

  1. 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
  2. 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载
  3. 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
查看更多
第3章_分组密码和DES

第3章 分组密码和数据加密标准 3.1 分组密码原理 3.2 数据加密标准 3.3 DES的强度 3.4差分分析和线性分析 3.5分组密码的设计原理 3.1 分组密码原理 3.1 分组密码原理 通常,一个分组长度为n的分组密码可以看做长度为n的比特串集合上的一个双射。 它把一个n比特的明文分组映射成一个n比特的密文分组。 这样的双射实际上就是长度为n的比特串集合上的一个单表代换。 单表代换的密钥是代换表。 当代换表足够大的时候,单表代换密码具有较好的安全性。 Feistel网络是SPN的一种特殊情形 差分密码分析法 3.7.3习题 3.2 3.8 3.9 3.15 选做 在第三轮选第二和第四个S盒S23 , S43, 及线性表示式T3=U63 ? V63 ? V83,偏差为-1/4, T4=U143 ? V143 ? V163,偏差为-1/4. (NL(4, 5)=4) 所选的这些线性表示式都有大的偏差绝对值. 而且它们的和可 以满足我们前面所期望的性质. 首先T1? T2?T3?T4的偏差用堆积引理计算的结果为-1/32. (但 这个结果未必准确) 其次我们将会看到,它们的和会消去中间轮的输入和输出比特. T1=U51 ? U71 ? U81 ? V61=X5 ?K51 ? X7? K71?X8 ? K81?V61, T2=U62 ? V62 ? V82=V61 ? K62 ? V62 ? V82 , T3=U63 ? V63 ? V83= V62 ? K63 ? V63 ? V83 T4=U143 ? V143 ? V163= V82 ?K143? V143 ? V163 T1? T2?T3?T4=X5 ? X7? X8? V63 ? V83 ? V143 ? V163 ?K51 ? K71? K81?K62 ? K63 ? K143 接下来把第三轮的输出用第四轮的输入和子密钥表示, 就可得 到第一轮的一些输入, 第四轮的一些输入及一些密钥比特的一 个线性表示式. V63 =U64?K64 , V83=U144?K144 , V143=U84?K84 , V163 =U164?K164 因此得到 T1? T2?T3?T4=X5 ? X7? X8? U64 ? U84 ? U144 ? U164 ?K51 ? K71? K81?K62 ? K63 ? K143 ?K64 ?K84 ?K144 ?K164 上式中, 对任何明文, 那些密钥比特的和总是取固定的值0或1. 因 此, T1? T2?T3?T4的偏差与X5 ? X7? X8? U64 ? U84 ? U144 ? U164的偏差有相同的绝对值. 一些明文比特与最后一轮的一些输入比特的异或有偏离0的偏 差可作为攻击密码系统的有利条件。 设有用同一未知密钥K加密的T 对明-密文. 用T 表示T对明-密文 的集合. X5 ? X7? X8? U64 ? U84 ? U144 ?U164中的U64 ? U84 ? U144?U164 涉及了最后一轮的第二和第四个S盒. 线性攻击将会导出最后一 轮与这两个S盒相关的8比特密钥K55, K65, K75, K85, K135, K145, K155, K165. 对这8比特密钥来说, 共有28=256种可能. 把每一种可能的取值叫 做一个候选子密钥. 并对每一个候选子密钥建立一个计数器. 对每一个(x, y)? T , 用每一个候选子密钥对y进行部分解密, 获得 V(2)4, V(4)4, 进而利用S盒的逆变换获得U(2)4, U(4)4即U54,U64, U74 , U84 , U134 , U144 , U154 , U164. 然后计算出X5 ? X7? X8? U64 ? U84 ? U144 ?U164, 如果值为0, 就给对应的子密钥的计数器加1. 穷尽所有的(x, y)?T , 计数器的值与T/2差距最大的一个就是真 正的子密钥. 线性攻击的算法如下 算法3.2 线性攻击 Linear Attack(T , T, ?S-1) 一般来说, 基于偏差为?的线性逼近的线性攻击要获得成功, 所 需要的明密文对的数量要接近于c? -2, c是一个小的常数. 对于 这里的例子, 取T=8000, 攻击常常会成功. T=8000对应于c?8. 差分密码分析是一个选择明文攻击. 在有些方面它与线性密码 分析相似. 不同之处在于差分密码分析是通过分析明文对的差 值对密文对的差值的影响来恢复某些密钥比特. 对两个长度为明文分组长度的比特串x与x*, 它们的差分定义 为x’= x?x* . 差分密码分析假定攻

文档评论(0)

yaocen + 关注
实名认证
内容提供者

该用户很懒,什么也没介绍

1亿VIP精品文档

相关文档