分组密码(全).

上传人:我** 文档编号:116457998 上传时间:2019-11-16 格式:PPT 页数:154 大小:5MB
返回 下载 相关 举报
分组密码(全)._第1页
第1页 / 共154页
分组密码(全)._第2页
第2页 / 共154页
分组密码(全)._第3页
第3页 / 共154页
分组密码(全)._第4页
第4页 / 共154页
分组密码(全)._第5页
第5页 / 共154页
点击查看更多>>
资源描述

《分组密码(全).》由会员分享,可在线阅读,更多相关《分组密码(全).(154页珍藏版)》请在金锄头文库上搜索。

1、第四讲:分组密码 分组密码体制 代换置换网络 DES AES 1 分组密码的定义 o分组密码(block cipher)是现代密码学中的重要体制之 一,其主要任务是提供数据保密性 o分组密码加解密速度较快 (对称密码特点) o现代分组密码发展非常快,技术较成熟(公开测评) ,使 用广泛 o其他密码算法设计领域有广泛应用,例如:可以用于构造 伪随机数生成器、流密码、认证码和哈希函数等 2 所谓分组密码是将明文分成一组一组,在密钥的控制下 ,经过加密变换生成一组一组的密文。具体而言,分组密码就 是将明文消息序列 划分成等长的消息组 在密钥 的控制下按固定的加密算法一组一 组进行加密,输出一组一组密

2、文 3 分组密码加密解密框图 4 o分组密码的思想:将明文消息编码表示后 的数字序列划分成长为n的组,各组分别在 密钥k控制下变换成等长的输出数字序列。 o在相同密钥下,分组密码对长为n的输入明 文组所实施的变换是等同的,所以只需研 究对任一组明文数字的变换规则。这种密 码实质上是字长为n的数字序列的代换密码 。 5 分组密码的定义 定义 一个分组密码体制(P, K, C, E, D) ,其中P=C=0,1l ;K=0,1t. 加密变换: E:PKC, 当k K确定时 ,Ek为P C的一一映射. 解密变换: D: CK P, 当k K确定时 ,Dk为C P的一一映射. Dk Ek=I 6 特点

3、 o明文、密文组长度为n,密钥长度为t,密钥量 为2t o密文中的任一位数字与该组明文所有的数字均 有关 o每组明文使用相同密钥加密 o本质是0,1,2n-1集合上的自映射或 置换 7 分组密码的发展历史 o二十世纪之前的密码算法 算法、密钥保密 o二十世纪之后的密码算法 Kerckhoffs假设:密码分析者已有密码算法 及实现的全部详细资料. Kerckhoff假设蕴涵着密码的安全性完全依赖 于密钥. 8 分组密码的发展历史 o民用 o不存在陷门 o足够的安全强度 o标准化通信需求 9 分组密码的发展历史 o1973年5月美国联邦政府提出征求在传输和存储 数据中保护计算机数据的密码算法的建议

4、; o1975年3月,美国国家标准局(NBS) 首次公布 IBM公司提出的算法Lucifer中选; o1977年1月NBS正式向社会公布,采纳IBM公司 设计的方案作为非机密数据的数据加密标准 (Data Encryption Standard). DES正式成为美 国联邦政府信息处理标准,即FIPS-46标准,同 年7月开始生效。 o此后,每隔5年美国国家保密局(NSA)对DES 作新的评估,并重新审定它是否继续作为联邦加 密标准。 10 分组密码的发展历史 o理论强度,97年$100000的机器可以在6 小时内用穷举法攻破DES. o实际攻破的例子,97年1月提出挑战,有人 利用Inter

5、net的分布式计算能力,组织志 愿军连接了70000多个系统在96天后攻破. 这意味着随着计算能力的增长,必须 相应地增加算法密钥的长度。 11 分组密码的发展历史 o1997年, 美国标准技术研究所(NIST)对 DES进行再次评测并宣布:DES算法的安全 强度已经不足以保障联邦政府信息数据的安 全性, 所以NIST建议撤销相关标准. o同时, NIST开始征集新的数据加密标准- 高级数据加密标准(Advanced Encryption Standard). o新算法的分组长度为128, 支持可变密钥长 度128、192、256比特. 12 分组密码的发展历史 o1999年,NIST从提交的

6、15个候选草案中 选取了5个优良的算法作为AES的候选算法 :MARS、RC6、Rijndael、Serpent和 Twofish, o综合评价最终确定Rijndael算法为新的数 据加密标准,2001年12月正式公布FIPS- 197标准。 owww.nist.gov/aes 13 分组密码的发展历史 o欧洲于2000年1月启动了NESSIE工程, 该 工程的目的是评价出包含分组密码, 流密码 等在内的一系列安全, 高效和灵活的密码算 法. o至2000年9月, 共征集到了17个分组密码 算法, 同时将TDES和AES纳入了评估范围 ,并作为分组密码算法的评测基准. o经过3年2个阶段的筛选

7、,最终确定下列算 法为推荐的分组密码算法:MISTY-64、 Camllia-128、AES-128和SHACAL-2。 14 分组密码的发展历史 o日本政府在2000年成立了密码研究与评估委员会( CRYPTREC)并参考欧洲NESSIE工程的作法对密 码算法的安全性和效率等问题进行评估,以备政府 使用. o2002年初步拟定了推荐算法的草案, 2003年3月确 定了推荐算法名单, 其中分组密码算法包括: (1)分组长度为64比特的算法:CIPHERUNICORN -E、MISTY1和3-key-TDES. (2)分组长度为128比特的算法:Camellia、 CIPHERUNICORN-A

8、、Hierocrypt-3、SC2000 和Rijndael128. 15 分组密码体制的设计准则一般包括以下内容: 1混乱原则 又称混淆原则,是指明文与密钥以及密文之间的统计关系尽可能复杂化 ,使破译者无法推导出相互间的依赖关系,从而加强隐蔽性。 2扩散原则 扩散原则是让明文中的每一位(包括密钥中的每一位)直接和间接影响 输出密文中的许多位,或者让密文中的每一位受制于输入明文以及密钥 中的若干位,以便达到隐蔽明文的统计特性。(明文和密钥中任何一比 特值得改变,都会在某种程度上影响到密文值的变化,以防止将密钥分 解成若干个孤立的小部分,然后各个击破。) 扩散和混淆是由Shannon提出的设计密

9、码系统的两个基本方法, 目的是抗击敌手对密码系统的统计分析。 分组密码体制设计准则 16 3迭代结构 选择某个较为简单的密码变换,在密钥控制下以迭代方式 多次利用它进行加密变换,就可以实现预期的扩散和混乱 效果。 分组密码体制设计准则 17 分组密码算法的基本要求 o分组长度足够大 防止明文穷举法奏效 o密钥量足够大 防止密钥穷举法奏效 o密码变换足够复杂 使对手除了用穷举法破译外,无其它捷径可走, 有效对抗统计破译法 18 问题与对策 o分组长度足够大:代换网络十分复杂,难以控制与实现 对策 将分组划分为几个小段,分别设计这些小段的代换网络 o密钥量足够大:密码系统十分复杂,同样难以控制与实

10、现 对策 概率加权法:设计多个子系统,使用时随机抽取 乘积密码法:设计多个子系统,对明文多次加密 o密码变换足够复杂:抗统计破译法的要求,难以简单实现 对策 扩散法:将每1位明文和密钥数字的影响扩散到每1位密文数字 混淆法:使密文与明文、密钥的统计特性复杂化 揉面团乘积密码 置乱主要实现扩散,非线性代换主要实现混淆 19 SP(替换-置换) oS变换起到混淆的作用 oP变换起到扩散的作用 20 保密系统的安全性分析 及分组密码攻击手段 o攻击目的 1. 完全破译:破译使用者的密钥 例:备用钥匙 2. 部分破译:恢复某些密文对应的明文 例:猜测出某些特定格式的明文 信函开头:DEAR * 21

11、保密系统的安全性分析 及分组密码攻击手段 o攻击种类 被动攻击:守株待兔 1. 唯密文攻击:密码分析者有一个或更多的 用同一个密钥加密的密文,通过对这些截 获的密文进行分析得出明文或密钥. 2. 已知明文攻击:除待解的密文外,密码分 析者有一些明文和用同一个密钥加密这些 明文所对应的密文. 22 保密系统的安全性分析 及分组密码攻击手段 主动攻击:主动出击,先发制人 3. 选择明文攻击:密码分析者可得到所需要的任 何明文所对应的密文,这些密文与待解的密文是 用同一个密钥加密得来的. 4. 选择密文攻击:密码分析者可得到所需要的任 何密文所对应的明文,解密这些密文所使用的密 钥与解密待解的密文的

12、密钥是一样的. 23 保密系统的安全性分析 及分组密码攻击手段 o攻击手段 1. 穷举法:当分组长度n较小时,攻击者可以有效 地穷举明文空间,得到密钥。 2. 差分分析 3. 线性分析 4. 相关密钥 5. 侧信道攻击 利用一些先验知识(如字典攻击),达到快速攻击的 目的;攻击复杂度小于穷举攻击,则理论有效 24 25 DES(Data Encryption Standard)算法 一种用56位密钥来加密64位数据的方法。 o发明人: nIBM公司 W.Tuchman和C.Meyer. o基础: n1967年美国Horst Feistel提出的理论; o产生: n美国国家标准局1973年开始研

13、究除国防部外的其它部 门的计算机系统的数据加密标准,于1973年5月15日和 1974年8月27日先后两次向公众发出了征求加密算法的公 告,最终选定DES。 DES算法概述 26 DES技术特点 o 分组加密算法:明文和密文为64位分组长度; o 对称算法:加密和解密除密钥编排不同外,使用同一 算法; o DES的安全性不依赖于算法的保密,安全性仅以加密 密钥的保密为基础; o 密钥可为任意的56位数,具有复杂性,使得破译的开 销超过可能获得的利益; o 采用替代和置换的组合,共16轮; o 只使用了标准的算术和逻辑运算,易于实现 27 DES算法概述 o明文和密文分组长度为64比特 o算法包

14、含两部分:迭代加解密和密钥编排 oFeistel结构(加解密相似):加密和解密除密钥编排不同外, 完全 相同 (思考:1 为什么解密函数不是逆函数?2 为什么不用逆函数来解密) o密钥长度:56比特(DES的密钥空间:256),每7比特后为 一个奇偶校验位(第8位),共64比特 o轮函数采用混乱和扩散的组合,共16轮 28 DES算法概述 DES的基本工作原理:用56位的密钥对64位长的数据块进行16 轮加密处理由此得到64位长的密文。 29 30 31 oDES算法的整体结构Feistel结构 oDES算法的轮函数 oDES算法的密钥编排算法 oDES的解密变换 32 DES算法的整体结构F

15、eistel结构 DES是从1975年被美国联邦政府确定为非敏 感信息的加密标准,它利用56比特长度的 密钥K来加密长度为64比特的明文,得到 64比特长的密文. 1997年,由于计算机技术迅速发展,DES的 密钥长度已经太短,NIST建议停止使用 DES算法作为标准. 目前,二重DES和三 重DES仍然广泛使用. 33 DES算法的整体结构Feistel结构 K1K16 思考:攻击 者可以剥离IP 置换和逆置 换? 34 DES算法的整体结构Feistel结构 1. 给定明文,通过一个固定的初始置换IP来重排输入明 文块P中的比特,得到比特串P0=IP(P)=L0R0,这里L0和 R0分别是

16、P0的前32比特和后32比特 IP 585042342618102 605244362820124 625446383022146 645648403224168 57494133251791 595143352719113 615345372921135 635547393123157 初始置换IP 35 DES算法的整体结构Feistel结构 2. 按下述规则进行16次 迭代,即1i16 这里 是对应比特的模 2加,f是一个函数 (称为轮函数); 16个长度为48比特的子 密钥Ki(1i16)是 由密钥k经密钥编排 函数计算出来的. Li-1 Ri-1 F + Li Ri Ki 36 DES算法的整体结构Feistel结构 IP-1 408481656246432 397471555236331 386461454226230 375451353216129 364441252206028 353431151195927 342

展开阅读全文
相关资源
相关搜索

当前位置:首页 > 高等教育 > 大学课件

电脑版 |金锄头文库版权所有
经营许可证:蜀ICP备13022795号 | 川公网安备 51140202000112号