《分组密码与数据加密标准 - 西安电子.ppt》由会员分享,可在线阅读,更多相关《分组密码与数据加密标准 - 西安电子.ppt(43页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、Chapter 3 分组密码与数据加密标准分组密码与数据加密标准 计算机与网络安全计算机与网络安全计算机与网络安全计算机与网络安全2023/1/4西安电子科技大学计算机学院2本节课程内容本节课程内容n分组密码一般原理、设计准则、设计方法nDES加解密算法nDES的强度2023/1/4西安电子科技大学计算机学院33.1 分组密码原理分组密码原理n流密码流密码q每次加密数据流的一位或一个字节每次加密数据流的一位或一个字节n分组密码分组密码q将一个明文组作为整体加密且通常得到的是与将一个明文组作为整体加密且通常得到的是与之等长的密文组之等长的密文组2023/1/4西安电子科技大学计算机学院42023
2、/1/4西安电子科技大学计算机学院5n分组密码的一般设计原理:分组密码的一般设计原理:q分组密码是将明文消息编码表示后的数字(简称明分组密码是将明文消息编码表示后的数字(简称明文数字)序列,划分成长度为文数字)序列,划分成长度为n的组(可看成长度的组(可看成长度为为n的矢量),每组分别在密钥的控制下变换成等的矢量),每组分别在密钥的控制下变换成等长的输出数字(简称密文数字)序列长的输出数字(简称密文数字)序列n理想分组密码体制理想分组密码体制q2n!个映射个映射q大规模大规模2023/1/4西安电子科技大学计算机学院6Feistel网络(网络(1)nFeistel网络的设计动机网络的设计动机q
3、密钥长为密钥长为k位,分组长为位,分组长为n位,采用位,采用2k个变换个变换2023/1/4西安电子科技大学计算机学院7nShannon n目的:挫败基于统计方法的密码分析目的:挫败基于统计方法的密码分析q混淆(混淆(confusion):使得:使得密文密文的统计特性的统计特性与密钥与密钥的取值之间的关系尽量复杂的取值之间的关系尽量复杂q扩散(扩散(diffusion):明文的统计特征消散在密文中,:明文的统计特征消散在密文中,使得使得明文和密文明文和密文之间的统计关系尽量复杂。之间的统计关系尽量复杂。刻画密码系统的两个基本构件刻画密码系统的两个基本构件Feistel网络(网络(2)2023/
4、1/4西安电子科技大学计算机学院8n分组长度分组长度 n密钥长度密钥长度 n轮数轮数 n子密钥生成算法子密钥生成算法n轮函数轮函数 n快速软件加解密快速软件加解密n易于分析易于分析Feistel网络(网络(3)2023/1/4西安电子科技大学计算机学院93.2 数据加密标准数据加密标准DESnDES的历史的历史nDES的基本结构的基本结构nDES核心构件的细节描述核心构件的细节描述nDES轮密钥的生成轮密钥的生成nDES的安全性分析的安全性分析2023/1/4西安电子科技大学计算机学院10数据加密标准(DES)第一个并且是最重要的现代分组密码算法2023/1/4西安电子科技大学计算机学院11历
5、史历史发明人发明人:美国:美国IBM公司公司 W.Tuchman 和和 C.Meyer 1971-1972年研制成功年研制成功基础:基础:1967年美国年美国Horst Feistel提出的理论提出的理论产生:美国国家标准局(产生:美国国家标准局(NBS)1973年年5月到月到1974年年8月两次发布通告,月两次发布通告,公开征求用于电子计算机的加密算法。经评选从一大批算法中采纳公开征求用于电子计算机的加密算法。经评选从一大批算法中采纳 了了IBM的的LUCIFER方案方案标准化:标准化:DES算法算法1975年年3月公开发表,月公开发表,1977年年1月月15日由美国国家标日由美国国家标 准
6、局颁布为数据加密标准(准局颁布为数据加密标准(Data Encryption Standard),于),于 1977年年7月月15日生效日生效2023/1/4西安电子科技大学计算机学院12DES是一种用是一种用56位密钥来加密位密钥来加密64位数据的方法。位数据的方法。概述概述2023/1/4西安电子科技大学计算机学院13DES算法框图算法框图 输入 64 bit明文数据 初始置换IP 乘积变换 (16轮迭代)逆初始置换IP-1 64 bit密文数据 输出标准数据加密算法DESDES的核心部件:的核心部件:的核心部件:的核心部件:两次置换(初始置两次置换(初始置两次置换(初始置两次置换(初始置
7、换和初始逆置换)换和初始逆置换)换和初始逆置换)换和初始逆置换)密钥控制下的十六密钥控制下的十六密钥控制下的十六密钥控制下的十六轮迭代加密轮迭代加密轮迭代加密轮迭代加密 轮密钥生成轮密钥生成轮密钥生成轮密钥生成2023/1/4西安电子科技大学计算机学院142023/1/4西安电子科技大学计算机学院15初初始始置置换换和和初初始始逆逆置置换换2023/1/4西安电子科技大学计算机学院16初始置换和初始逆置换初始置换和初始逆置换DES中的初始置换和初始逆置换中的初始置换和初始逆置换2023/1/4西安电子科技大学计算机学院17n 初始置换与初始逆置换是互逆的初始置换与初始逆置换是互逆的n 严格而言
8、不具有加密的意义严格而言不具有加密的意义Note2023/1/4西安电子科技大学计算机学院18DES的十六轮迭代加密的十六轮迭代加密十十六六轮轮迭迭代代加加密密Round i第第i i轮轮加加密密2023/1/4西安电子科技大学计算机学院19DES第第i轮迭代加密轮迭代加密2023/1/4西安电子科技大学计算机学院20F函数函数2023/1/4西安电子科技大学计算机学院21扩展扩展E置换(置换(E-盒)盒)2023/1/4西安电子科技大学计算机学院22S盒(盒(1)2023/1/4西安电子科技大学计算机学院23S-盒是盒是DES加密算法的唯一非线性部件加密算法的唯一非线性部件S盒(盒(2)20
9、23/1/4西安电子科技大学计算机学院24S-盒盒S盒(盒(3)2023/1/4西安电子科技大学计算机学院25 00 01 02 03 04 05 06 07 08 09 10 11 12 13 14 15012313 02 08 04 06 15 11 01 10 09 03 14 05 00 12 0701 15 13 08 10 03 07 04 12 05 06 11 00 14 09 0207 11 04 01 09 12 14 02 00 06 10 13 15 03 05 0802 01 14 07 04 10 08 13 15 12 09 00 03 05 06 11输输入入输
10、输出出S-盒的查表操作盒的查表操作S盒(盒(4)2023/1/4西安电子科技大学计算机学院26n DES中其它算法都是线性的,而中其它算法都是线性的,而S-盒运算盒运算则是非线性的则是非线性的n 提供了密码算法所必须的混乱作用提供了密码算法所必须的混乱作用n S-盒不易于分析,它提供了更好的安全性盒不易于分析,它提供了更好的安全性n S-盒的设计未公开盒的设计未公开NoteS盒(盒(5)2023/1/4西安电子科技大学计算机学院27P置换置换2023/1/4西安电子科技大学计算机学院28直接直接P置换(置换(P-盒)盒)P置换置换2023/1/4西安电子科技大学计算机学院29F函数函数2023
11、/1/4西安电子科技大学计算机学院30DES第第i轮迭代加密轮迭代加密2023/1/4西安电子科技大学计算机学院312023/1/4西安电子科技大学计算机学院32子密钥产生器子密钥产生器 密钥(64 bit)置换选择1,PC1置换选择2,PC2 Ci(28 bit)Di(28 bit)循环左移 循环左移除去第8,16,64位(8个校验位)ki2023/1/4西安电子科技大学计算机学院332023/1/4西安电子科技大学计算机学院34置换选择置换选择1循环左移的次数循环左移的次数(舍弃了奇偶校验位,即第8,16,64位)2023/1/4西安电子科技大学计算机学院35压缩置换压缩置换2舍弃了第9,
12、18,22,25,35,38,43,54比特位2023/1/4西安电子科技大学计算机学院36n加密过程加密过程:qL0R0 IP()qLiRi-1 i=1,.,16 (1)qRiLi-1f(Ri-1,ki)i=1,.,16 (2)q IP-1(R16L16)(1)(2)(1)(2)运算进行运算进行1616次后就得到密文组。次后就得到密文组。n解密过程解密过程:qR16L16 IP()qRi-1Li i=1,.,16 (3)qLi-1Rif(Li-1,ki)i=1,.,16 (4)qIP-1(R0L0)(3)(4)(3)(4)运算进行运算进行1616次后就得到明文组。次后就得到明文组。DES加解
13、密的数学表达加解密的数学表达2023/1/4西安电子科技大学计算机学院37n安全性安全性 qDES的安全性完全依赖于所用的密钥。从DES诞生起,对它的安全性就有激烈的争论,一直延续到现在n弱密钥和半弱密钥弱密钥和半弱密钥qDES算法在每次迭代时都有一个子密钥供加密用。如果给定初始密钥k,各轮的子密钥都相同,即有k1=k2=k16,就称给定密钥k为弱弱密密钥钥(Weak key)3.3 DES的强度的强度2023/1/4西安电子科技大学计算机学院38n若k为弱密钥,则有qDESk(DESk(x)=xqDESk-1(DESk-1(x)=xq即以k对x加密两次或解密两次都可恢复出明文。其加密运算和解
14、密运算没有区别。n而对一般密钥只满足qDESk-1(DESk(x)=DESk(DESk-1(x)=xq弱密钥下使DES在选择明文攻击下的搜索量减半。n如果随机地选择密钥,则在总数256个密钥中,弱密钥所占比例极小,而且稍加注意就不难避开。n因此,弱密钥的存在不会危及DES的安全性。DES的强度(的强度(1)2023/1/4西安电子科技大学计算机学院39雪崩效应雪崩效应DES的强度(的强度(2)2023/1/4西安电子科技大学计算机学院40n56位密钥的使用q256=7.2 x 1016q1997,几个月 q1998,几天 q1999,22个小时!nDES算法的性质:S盒构造方法未公开!n计时攻击DES的强度(的强度(3)2023/1/4西安电子科技大学计算机学院41n差分密码分析q通过分析明文对的差值对密文对的差值的影响来恢复某些密文比特n线性密码分析q通过寻找DES变换的线性近似来攻击 DES的强度(的强度(4)2023/1/4西安电子科技大学计算机学院42小结q分组密码与流密码 block vs stream ciphersqFeistel 密码设计与结构 design&structuren轮数,函数F,密钥扩展qDESn算法细节n密码强度n工作模式2023/1/4西安电子科技大学计算机学院43第三章作业第三章作业n思考题:思考题:3.5,3.7,3.8