《分组密码与数据加密标准课件.pptx》由会员分享,可在线阅读,更多相关《分组密码与数据加密标准课件.pptx(63页珍藏版)》请在taowenge.com淘文阁网|工程机械CAD图纸|机械工程制图|CAD装配图下载|SolidWorks_CaTia_CAD_UG_PROE_设计图分享下载上搜索。
1、Chapter 3 分组密码与数据加密标准分组密码与数据加密标准 计算机与网络安全计算机与网络安全计算机与网络安全计算机与网络安全2023/5/131培训专用nPlayfair、hill、Vigenre的密钥空间?n单表和多表的区别?2023/5/132西安电子科技大学计算机学院培训专用本节课程内容本节课程内容n分组密码一般原理、设计准则、设计方法nDES加解密算法nDES的强度2023/5/133西安电子科技大学计算机学院培训专用3.1 分组密码原理分组密码原理n流密码流密码q每次加密数据流的一位或一个字节每次加密数据流的一位或一个字节n分组密码分组密码q将一个明文组作为整体加密且通常得到的
2、是与将一个明文组作为整体加密且通常得到的是与之等长的密文组之等长的密文组2023/5/134西安电子科技大学计算机学院培训专用2023/5/135西安电子科技大学计算机学院培训专用n分组密码的一般设计原理:分组密码的一般设计原理:q分组密码是将明文消息编码表示后的数字(简称明分组密码是将明文消息编码表示后的数字(简称明文数字)序列,划分成长度为文数字)序列,划分成长度为n的组(可看成长度的组(可看成长度为为n的矢量),每组分别在密钥的控制下变换成等的矢量),每组分别在密钥的控制下变换成等长的输出数字(简称密文数字)序列长的输出数字(简称密文数字)序列n理想分组密码体制理想分组密码体制q2n!个
3、映射个映射q大规模大规模2023/5/136西安电子科技大学计算机学院培训专用Feistel网络(网络(1)nFeistel网络的设计动机网络的设计动机q密钥长为密钥长为k位,分组长为位,分组长为n位,采用位,采用2k个变换个变换2023/5/137西安电子科技大学计算机学院培训专用nShannon n目的:挫败基于统计方法的密码分析目的:挫败基于统计方法的密码分析q混淆(混淆(confusion):使得:使得密文密文的统计特性的统计特性与密钥与密钥的取值之间的关系尽量复杂的取值之间的关系尽量复杂q扩散(扩散(diffusion):明文的统计特征消散在密文中,:明文的统计特征消散在密文中,使得
4、使得明文和密文明文和密文之间的统计关系尽量复杂。之间的统计关系尽量复杂。刻画密码系统的两个基本构件刻画密码系统的两个基本构件Feistel网络(网络(2)2023/5/138西安电子科技大学计算机学院培训专用n分组长度分组长度 n密钥长度密钥长度 n轮数轮数 n子密钥生成算法子密钥生成算法n轮函数轮函数 n快速软件加解密快速软件加解密n易于分析易于分析Feistel网络(网络(3)2023/5/139西安电子科技大学计算机学院培训专用3.2 数据加密标准数据加密标准DESnDES的历史的历史nDES的基本结构的基本结构nDES核心构件的细节描述核心构件的细节描述nDES轮密钥的生成轮密钥的生成
5、nDES的安全性分析的安全性分析2023/5/1310西安电子科技大学计算机学院培训专用数据加密标准(DES)第一个并且是最重要的现代分组密码算法2023/5/1311西安电子科技大学计算机学院培训专用历史历史发明人发明人:美国:美国IBM公司公司 W.Tuchman 和和 C.Meyer 1971-1972年研制成功年研制成功基础:基础:1967年美国年美国Horst Feistel提出的理论提出的理论产生:美国国家标准局(产生:美国国家标准局(NBS)1973年年5月到月到1974年年8月两次发布通告,月两次发布通告,公开征求用于电子计算机的加密算法。经评选从一大批算法中采纳公开征求用于电
6、子计算机的加密算法。经评选从一大批算法中采纳 了了IBM的的LUCIFER方案方案标准化:标准化:DES算法算法1975年年3月公开发表,月公开发表,1977年年1月月15日由美国国家标日由美国国家标 准局颁布为数据加密标准(准局颁布为数据加密标准(Data Encryption Standard),于),于 1977年年7月月15日生效日生效2023/5/1312西安电子科技大学计算机学院培训专用DES是一种用是一种用56位密钥来加密位密钥来加密64位数据的方法。位数据的方法。概述概述2023/5/1313西安电子科技大学计算机学院培训专用DES算法框图算法框图 输入 64 bit明文数据
7、初始置换IP 乘积变换 (16轮迭代)逆初始置换IP-1 64 bit密文数据 输出标准数据加密算法DES的核心部件:的核心部件:两次置换(初始置换两次置换(初始置换两次置换(初始置换两次置换(初始置换和初始逆置换)和初始逆置换)和初始逆置换)和初始逆置换)密钥控制下的十六轮迭密钥控制下的十六轮迭密钥控制下的十六轮迭密钥控制下的十六轮迭代加密代加密代加密代加密 轮密钥生成轮密钥生成轮密钥生成轮密钥生成2023/5/1314西安电子科技大学计算机学院培训专用2023/5/1315西安电子科技大学计算机学院培训专用初初始始置置换换和和初初始始逆逆置置换换2023/5/1316西安电子科技大学计算机
8、学院培训专用初始置换和初始逆置换初始置换和初始逆置换DES中的初始置换和初始逆置换中的初始置换和初始逆置换2023/5/1317西安电子科技大学计算机学院培训专用n 初始置换与初始逆置换是互逆的初始置换与初始逆置换是互逆的n 严格而言不具有加密的意义严格而言不具有加密的意义Note2023/5/1318西安电子科技大学计算机学院培训专用DES的十六轮迭代加密的十六轮迭代加密十十六六轮轮迭迭代代加加密密Round i第第i i轮轮加加密密2023/5/1319西安电子科技大学计算机学院培训专用DES第第i轮迭代加密轮迭代加密2023/5/1320西安电子科技大学计算机学院培训专用F函数函数202
9、3/5/1321西安电子科技大学计算机学院培训专用扩展扩展E置换(置换(E-盒)盒)2023/5/1322西安电子科技大学计算机学院培训专用S盒(盒(1)2023/5/1323西安电子科技大学计算机学院培训专用S-盒是盒是DES加密算法的唯一非线性部件加密算法的唯一非线性部件S盒(盒(2)2023/5/1324西安电子科技大学计算机学院培训专用S-盒盒S盒(盒(3)2023/5/1325西安电子科技大学计算机学院培训专用 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
10、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输入输入输出输出S-盒的查表操作盒的查表操作S盒(盒(4)2023/5/1326西安电子科技大学计算机学院培训专用n DES中其它算法都是线性的,而中其它算法都是线性的,而S-盒运算则盒运算则是非线性的是非线性的n 提供了密码算法所必须的混乱作用提供了密码算法所必须的混乱作用n S-盒不易于分析
11、,它提供了更好的安全性盒不易于分析,它提供了更好的安全性n S-盒的设计未公开盒的设计未公开NoteS盒(盒(5)2023/5/1327西安电子科技大学计算机学院培训专用P置换置换2023/5/1328西安电子科技大学计算机学院培训专用直接直接P置换(置换(P-盒)盒)P置换置换2023/5/1329西安电子科技大学计算机学院培训专用F函数函数2023/5/1330西安电子科技大学计算机学院培训专用DES第第i轮迭代加密轮迭代加密2023/5/1331西安电子科技大学计算机学院培训专用2023/5/1332西安电子科技大学计算机学院培训专用子密钥产生器子密钥产生器 密钥(64 bit)置换选择
12、1,PC1置换选择2,PC2 Ci(28 bit)Di(28 bit)循环左移 循环左移除去第8,16,64位(8个校验位)ki2023/5/1333西安电子科技大学计算机学院培训专用2023/5/1334西安电子科技大学计算机学院培训专用置换选择置换选择1循环左移的次数循环左移的次数(舍弃了奇偶校验位,即第8,16,64位)2023/5/1335西安电子科技大学计算机学院培训专用压缩置换压缩置换2舍弃了第9,18,22,25,35,38,43,54比特位2023/5/1336西安电子科技大学计算机学院培训专用n加密过程加密过程:qL0R0 IP()qLiRi-1 i=1,.,16 (1)qR
13、iLi-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加解密的数学表达加解密的数学表达2023/5/1337西安电子科技大学计算机学院培训专用n安全性安全性 qDES的安全性完全依赖于所用的密钥。从DES诞生起,对它的安全性就有激烈的
14、争论,一直延续到现在n弱密钥和半弱密钥弱密钥和半弱密钥qDES算法在每次迭代时都有一个子密钥供加密用。如果给定初始密钥k,各轮的子密钥都相同,即有k1=k2=k16,就称给定密钥k为弱密钥弱密钥(Weak key)3.3 DES的强度的强度2023/5/1338西安电子科技大学计算机学院培训专用n若k为弱密钥,则有qDESk(DESk(x)=xqDESk-1(DESk-1(x)=xq即以k对x加密两次或解密两次都可恢复出明文。其加密运算和解密运算没有区别。n而对一般密钥只满足qDESk-1(DESk(x)=DESk(DESk-1(x)=xq弱密钥下使DES在选择明文攻击下的搜索量减半。n如果随
15、机地选择密钥,则在总数256个密钥中,弱密钥所占比例极小,而且稍加注意就不难避开。n因此,弱密钥的存在不会危及DES的安全性。DES的强度(的强度(1)2023/5/1339西安电子科技大学计算机学院培训专用雪崩效应雪崩效应DES的强度(的强度(2)2023/5/1340西安电子科技大学计算机学院培训专用n56位密钥的使用q256=7.2 x 1016q1997,几个月 q1998,几天 q1999,22个小时!nDES算法的性质:S盒构造方法未公开!n计时攻击DES的强度(的强度(3)2023/5/1341西安电子科技大学计算机学院培训专用n差分密码分析q通过分析明文对的差值对密文对的差值的
16、影响来恢复某些密文比特n线性密码分析q通过寻找DES变换的线性近似来攻击 DES的强度(的强度(4)2023/5/1342西安电子科技大学计算机学院培训专用3.4 分组密码的工作模式分组密码的工作模式nFIPS 81中定义了中定义了4种模式,到种模式,到800-38A中将其中将其扩展为扩展为5个。个。n可用于所有分组密码。可用于所有分组密码。nDES的工作模式的工作模式若明文最后一段不足分组长度,则补若明文最后一段不足分组长度,则补0或或1,或随机串。,或随机串。2023/5/1343西安电子科技大学计算机学院培训专用模式描述典型应用电码本(电码本(ECBECB)单个数据的安全传输密码分组链接
17、(密码分组链接(CBCCBC)普通目的的面向分组的传输;认证密码反馈(密码反馈(CFBCFB)普通目的的面向分组的传输;认证输出反馈(输出反馈(OFBOFB)噪声信道上的数据流的传输计数器(计数器(CTRCTR)普通目的的面向分组的传输;用于高速需求DESDES的工作模式的工作模式2023/5/1344西安电子科技大学计算机学院培训专用电码本电码本模式模式ECBn工作模式工作模式 q加密:Cj=Ek(Pj),(j=1,2,n)q解密:Pj=Dk(Cj)n应用应用n特点特点n错误传播错误传播 q不传播,即某个不传播,即某个Ct的传输错误只影响到的传输错误只影响到Pt的恢复,不影响的恢复,不影响后
18、续的(后续的(jt)。)。2023/5/1345西安电子科技大学计算机学院培训专用Electronic Codebook Book(ECB)2023/5/1346西安电子科技大学计算机学院培训专用摘自:NIST Special Publication 800-38A 2001 Edition2023/5/1347西安电子科技大学计算机学院培训专用密码分组链接模式n工作模式工作模式 q加密q解密n应用应用q加密长度大于加密长度大于64位的明文位的明文Pq认证认证n特点特点n错误传播错误传播 2023/5/1348西安电子科技大学计算机学院培训专用Cipher Block Chaining(CBC
19、)2023/5/1349西安电子科技大学计算机学院培训专用摘自:NIST Special Publication 800-38A 2001 Edition2023/5/1350西安电子科技大学计算机学院培训专用n工作模式工作模式q加密q解密n应用应用q保密:加密长度大于保密:加密长度大于64位的明文位的明文P;分组随意;可作为流密码使;分组随意;可作为流密码使用。用。q认证:认证:n特点特点q分组任意分组任意q安全性优于安全性优于ECB模式模式q加、解密都使用加密运算(不用解密运算)加、解密都使用加密运算(不用解密运算)n错误传播错误传播q有误码传播,设 ,则错误的Ct会影响到Pt,Pt+r。
20、密码反馈模式2023/5/1351西安电子科技大学计算机学院培训专用Cipher FeedBack(CFB)2023/5/1352西安电子科技大学计算机学院培训专用摘自:NIST Special Publication 800-38A 2001 Edition2023/5/1353西安电子科技大学计算机学院培训专用输出反馈模式n工作模式工作模式 q加密加密q解密解密n应用应用n特点特点q缺点:抗消息流篡改攻击的能力不如缺点:抗消息流篡改攻击的能力不如CFB。n错误传播错误传播 q不传播不传播 2023/5/1354西安电子科技大学计算机学院培训专用Output FeedBack(OFB)202
21、3/5/1355西安电子科技大学计算机学院培训专用摘自:NIST Special Publication 800-38A 2001 Edition2023/5/1356西安电子科技大学计算机学院培训专用n工作模式工作模式 q加密:加密:给定计数器初值给定计数器初值IV,则,则 j=1,2,N q解密解密n特点特点q优点优点n硬件效率:可并行处理;硬件效率:可并行处理;n软件效率:并行化;软件效率:并行化;n预处理;预处理;n随机访问:比链接模式好;随机访问:比链接模式好;n可证明的安全性:至少与其它模式一样安全;可证明的安全性:至少与其它模式一样安全;n简单性:只用到加密算法。简单性:只用到加
22、密算法。n错误传播错误传播 q不传播不传播计数器模式2023/5/1357西安电子科技大学计算机学院培训专用Counter(CTR)2023/5/1358西安电子科技大学计算机学院培训专用摘自:NIST Special Publication 800-38A 2001 Edition2023/5/1359西安电子科技大学计算机学院培训专用小结q分组密码与流密码 block vs stream ciphersqFeistel 密码设计与结构 design&structuren轮数,函数F,密钥扩展qDESn算法细节n密码强度n工作模式2023/5/1360西安电子科技大学计算机学院培训专用第三章
23、作业第三章作业n思考题:思考题:3.5,3.7,3.82023/5/1361西安电子科技大学计算机学院培训专用演讲完毕,谢谢观看!培训专用内容总结Chapter 3 分组密码与数据加密标准。2022/12/27。Playfair、hill、Vigenre的密钥空间。分组密码一般原理、设计准则、设计方法。将一个明文组作为整体加密且通常得到的是与之等长的密文组。密钥长为k位,分组长为n位,采用2k个变换。产生:美国国家标准局(NBS)1973年5月到1974年8月两次发布通告,。标准化:DES算法1975年3月公开发表,1977年1月15日由美国国家标。准局颁布为数据加密标准(Data Encryption Standard),于。DES是一种用56位密钥来加密64位数据的方法。两次置换(初始置换和初始逆置换)。初始置换和初始逆置换。DES中的初始置换和初始逆置换。初始置换与初始逆置换是互逆的。直接P置换(P-盒)。密钥(64 bit)。除去第8,16,64位(8个校验位)。舍弃了第9,18,22,25,35,38,43,54比特位。L0R0 IP()。(1)(2)运算进行16次后就得到密文组。R16L16 IP()。IP-1(R0L0)。(3)(4)运算进行16次后就得到明文组培训专用