ImageVerifierCode 换一换
格式:PPT , 页数:52 ,大小:3.46MB ,
文档编号:7571149      下载积分:15 文币
快捷下载
登录下载
邮箱/手机:
温馨提示:
系统将以此处填写的邮箱或者手机号生成账号和密码,方便再次下载。 如填写123,账号和密码都是123。
支付方式: 支付宝    微信支付   
验证码:   换一换

优惠套餐
 

温馨提示:若手机下载失败,请复制以下地址【https://www.163wenku.com/d-7571149.html】到电脑浏览器->登陆(账号密码均为手机号或邮箱;不要扫码登陆)->重新下载(不再收费)。

已注册用户请登录:
账号:
密码:
验证码:   换一换
  忘记密码?
三方登录: 微信登录  
下载须知

1: 试题类文档的标题没说有答案,则无答案;主观题也可能无答案。PPT的音视频可能无法播放。 请谨慎下单,一旦售出,概不退换。
2: 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。
3: 本文为用户(momomo)主动上传,所有收益归该用户。163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(点击联系客服),我们立即给予删除!。
4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
5. 本站仅提供交流平台,并不能对任何下载内容负责。
6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

版权提示 | 免责声明

1,本文(《应用密码学》课件第3章 分组密码(3).ppt)为本站会员(momomo)主动上传,163文库仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对上载内容本身不做任何修改或编辑。
2,用户下载本文档,所消耗的文币(积分)将全额增加到上传者的账号。
3, 若此文所含内容侵犯了您的版权或隐私,请立即通知163文库(发送邮件至3464097650@qq.com或直接QQ联系客服),我们立即给予删除!

《应用密码学》课件第3章 分组密码(3).ppt

1、12024-3-192024-3-191112024-3-192024-3-19113.5 其他对称密码体制其他对称密码体制3.5.1 SM4简介 继美国将Rijndael算法作为(AES)、欧洲将Camellia等算法作为NESSIE分组加密标准之后,中国国家密码管理局于2006年1月6日发布第7号公告,将我国无线局域网产品的加密算法确定为SMS4算法(无线局域网标准的分组数据算法)。这是国内官方公布的第一个商用密码算法。SMS4是一个分组算法。该算法的分组长度为128比特,密钥长度为128比特。加密算法与密钥扩展算法都采用32轮非线性迭代结构。解密算法与加密算法的结构相同,只是轮密钥的使用

2、顺序相反,解密轮密钥是加密轮密钥的逆序。SMS4算法采用的基本运算:算法采用的基本运算:异或和循环左移异或和循环左移等。等。1.SM4描述22024-3-192024-3-192222024-3-192024-3-1922SM4 轮函轮函数计算数计算32024-3-192024-3-193332024-3-192024-3-1933-SM4算法中算法中S盒代替与盒代替与AES算法算法S盒盒代替类似,代替类似,S盒的代替规则:输入的盒的代替规则:输入的前前4位为行号,后位为行号,后4位为列号,行列位为列号,行列交叉点处交叉点处S盒列表中的数据为输出盒列表中的数据为输出(见下页表)见下页表),例如

3、输入,例如输入“2a”,则,则行号为行号为“2”,列号为,列号为“a”,根据,根据表表4-13,第,第2行第行第a列输出值为列输出值为“0b”,即。,即。42024-3-192024-3-194442024-3-192024-3-194452024-3-192024-3-195552024-3-192024-3-195562024-3-192024-3-196662024-3-192024-3-19662.SM4算法流程算法流程72024-3-192024-3-197772024-3-192024-3-197782024-3-192024-3-198882024-3-192024-3-1988

4、3.密钥扩展算法密钥扩展算法92024-3-192024-3-199992024-3-192024-3-1999T变换和变换和L变变换换102024-3-192024-3-191010102024-3-192024-3-1910104.具体实例具体实例112024-3-192024-3-191111112024-3-192024-3-191111122024-3-192024-3-191212122024-3-192024-3-191212132024-3-192024-3-191313142024-3-192024-3-191414 IDEA算法中明文和密文的分组长度都是64位,密钥长128

5、位,该算法既可用于加密,也可用于解密。设计原则采用的是基于“相异代数群上的混合运算”的设计思想,三个不同的代数群(异或、模216加和模216+1乘)进行混合运算,所有这些运算(仅有运算,没有位的置换)都在16位子分组上进行,无论用硬件还是软件实现,都非常容易(对16位微处理器尤其有效)。IDEA的设计者在设计时已尽最大努力使该算法不受差分密码分析的影响,赖学嘉已证明IDEA算法在其8轮迭代的第4轮之后便不受差分密码分析的影响。IDEA比同时代的算法:FEAL,REDOC-II、LOKI、Snefru和Khafre都要坚固,而且到目前为止几乎没有任何关于IDEA密码分析攻击法的成果案例发表,因此

6、目前IDEA的攻击方法只有“直接攻击”或者说是“密钥穷举”法了。152024-3-192024-3-191515 IDEA分组密码已在欧洲和美国等取得专利,不存在非商用所需的使用许可证费用问题。IDEA设计原理与具体算法本书不再作讨论,有兴趣的读者可以查阅相关资料。假如为了试探出一个特定的密钥,一般来说平均要试探一半上面的可能性。那么即使设计一种每秒钟试探10亿个密钥的芯片,并将10亿片这样的芯片用于此项工作,仍需要1013年的时间才能解决问题。因此,从现在来看应当IDEA是非常安全的,而且它比DES在软件实现上快得多。由于IDEA具有128位密钥长度的密钥空间,用十进制表示所有可能的密钥个数

7、将是一个天文数字:34028236692093846346337460743176 8211456。162024-3-192024-3-1916163.5.3 RC5或RC6.172024-3-192024-3-191717 RC6是AES候选算法之一,由Rivest、Robshaw、Sidney和Yin提交的,它可能是最简单的AES算法,RC6是RC5的进一步改进。像RC5那样,RC6实际上是利用数据的循环移位。它的明文分组块大小为128位,密钥可以为128、192或256,共进行20轮的加密。3.5.4 Twofish对称密码体制对称密码体制 182024-3-192024-3-19181

8、8 大多数密码算法都是将明文切成固定长度的多个块,以块为单位进行加密,而不是逐个字节地加密数据。不管什么样的密码算法,任何时候当同样的明文块从算法前端输入,同样的密文块就从后端输出。入侵者可以充分发掘这种特性来协助攻破密码系统。下面举个例子来说明。下面这个表描述的是三个人的年终奖金额度。Alice8000Bob12000Trudy3000 老板授权秘书MM整理好这张表后,秘书MM将其加密,然后提交给财务部门。为了清楚地描述问题,这里假设这张表的每个字段都是64位,而且刚好秘书MM用的加密算法的加密块长度也是64位,那么加密结果可能就是像下面这个样子:192024-3-192024-3-1919

9、19 假设在秘书MM发送这段密文之前,不巧让Trudy看到了。尽管Trudy看不懂这个表的内容,但是当秘书MM抱怨就两个字段的表为什么么要定死每个字段长度为64位的时候,Trudy获得了足够的信息。她知道由于自己刚和老板吵过嘴,奖金肯定没有其它人高,于是她尝试将这些密文块的顺序调整了一下,变成下面这个样子:As9d8912h3a98q 9SDJKVNI9d89821as89982mHSLkpanm09djhASDFQWER78sdfHD,zx0812UtWEQ23;X/;DSKg5p78723G/CC;D;LFSDF/;LXPASh/.,;ISOFIWERIIOC7kjJKJDFNSAnAs9

10、d8912h3a98q 9SDJKVNI0812UtWEQ23;X/;DSKg5p 09djhASDFQWER78sdfHD,zx/.,;ISOFIWERIIOC7kjJKJDFNSAn78723G/CC;D;LFSDF/;LXPASh9d89821as89982mHSLkpanm 202024-3-192024-3-192020 仅仅是调整一下密文块的顺序,财务部解密消息的时候完全察觉不到有任何异常。尽管Trudy还是不知道奖金是多少,但是可以很有把握地相信自己的奖金会比原来高。为了对抗这种问题,需要采取某种加密模式,需要把各个密文块关联起来,使得密文任何一处有异常更改,都会导致整个密文作废

11、。密码体制的工作模式!212024-3-192024-3-1921213.6 对称密码体制的工作模式对称密码体制的工作模式 FIPS FIPS中定义了五种运行模式:电子码本中定义了五种运行模式:电子码本(ECB)ECB)、密码分组链接密码分组链接(CBC)CBC)、计计数器模式(数器模式(CTRCTR)、)、输出反馈输出反馈(OFB)OFB)、密码反馈密码反馈(CFB)CFB)。即使有了安全的分组密码算法,也需要采用适当的工作模式来隐蔽明文的统计特性、数据的格式等,以提高整体的安全性,降低删除、重放、插入和伪造成功的机会。美国在FIPS中定义了五种运行模式。1G=220*8 bit DES算法

12、总块数:算法总块数:220*8/64=215*8AES算法总块数:算法总块数:220*8/128=213*8一个一个50B大小的文件,采用大小的文件,采用DES和和AES加密?加密?222024-3-192024-3-192222222024-3-192024-3-192222分组密码填充分组密码填充(Padding)大多数密码算法都是块密码算法,需要将明文消息切成固定大小的块,一块一块地进行加密。例如DES就需要将消息切割成一个个64位的块。如果消息长度不是64的整数倍,最后一个消息块就不够64位,这时就要对最后一个消息块进行填充。填充本身是很简单的事情,问题在于有很多种可行的填充方式,如果

13、加密时以某种方式填充,解密时就得理解这种填充方式并去除填充内容,否则很可能解密出来得到的数据就是“脏”数据。某些加密标准指定了特定的填充方案。下面简单描述一下这些模式的工作原理。假定块长度为8字节,要加密的明文数据长度为9字节。那么消息被切成两个块,第二块只有1个字节,需要填充7个字节。假定9字节的明文数据如下:F1 F2 F3 F4 F5 F6 F7 F8 F9232024-3-192024-3-192323以下是常见的四种填充方式:1)Zeros填充:全部填充为0的字节,结果如下:F1 F2 F3 F4 F5 F6 F7 F8 /第一块 F9 00 00 00 00 00 00 00 /第

14、二块 2)X923 填充:填充为0的字节序列,最后一个字节记录填充的总字节数,结果如下:F1 F2 F3 F4 F5 F6 F7 F8 /第一块 F9 00 00 00 00 00 00 07 /第二块 3)PKCS7 填充:每个填充的字节都记录了填充的总字节数,结果如下:F1 F2 F3 F4 F5 F6 F7 F8 /第一块 F9 07 07 07 07 07 07 07 /第二块 4)ISO10126 填充:填充随机字节序列,最后一个字节记录填充的总字节数,结果如下:F1 F2 F3 F4 F5 F6 F7 F8 /第一块 F9 7D 2A 75 EF F8 EF 07 /第二块2420

15、24-3-192024-3-192424分组密码填充分组密码填充 若需要加密若需要加密 Emerald若1字符1字节,8bits,则56bits,则需要填充。填充方法:填充方法:填充为所需要补足的字节数。1个字节,因此填充为 0 x01填充方法很多,如前面介绍的4种方式,比如可以填充0 x00252024-3-192024-3-192525252024-3-192024-3-1925251、电码本、电码本ECB(Electronic codebook)模式)模式262024-3-192024-3-192626262024-3-192024-3-192626ECB模式实例模式实例 例如明文“I

16、thought was not the thought I thought I thought”,空白去掉,则采用ECB模式加密?Ithought wasnotth ethought Ithought Ithought272024-3-192024-3-192727272024-3-192024-3-192727分组重放攻击分组重放攻击分组重放攻击282024-3-192024-3-192828282024-3-192024-3-192828 明:转给小王一万元整 密:5F31D9A7E4BDB4FC062771312CDD9244 C1ACB090312B22F6 明:转给小李十万元整 密:

17、CB56AF881079B6B0E454B1C39D2E0E0D 777CCD4C6A40E7BF 重放攻击:密文:5F31D9A7E4BDB4FCE454B1C39D2E0E0DC1ACB090312B22F6 明:转给小王十万元整 分组重放攻击分组重放攻击292024-3-192024-3-192929日期/时间标记:1分组银行1:发送者1.5分组银行2:接收者1.5分组储户姓名6分组储户帐号2分组存款金额1分组分组重放攻击分组重放攻击302024-3-192024-3-193030302024-3-192024-3-193030To:Bank From:ATMAction:Deposit

18、Amount:$100.00To:Bank From:ATMAction:DepositAmount:$900.00“1”=0011001“9”=0011101分组重放攻击分组重放攻击312024-3-192024-3-193131312024-3-192024-3-193131ECB模式模式322024-3-192024-3-193232322024-3-192024-3-193232ECB模式DES算法加密后ECB模式模式332024-3-192024-3-193333332024-3-192024-3-193333电码本电码本ECB模式模式直接利用加密算法分别对分组数据组加密。最大特性:

19、在给定的密钥下,同一明文组总产生同样的密文组。这会暴露明文数据的格式和统计特征。明文数据都有固定的格式,需要以协议的形式定义,重要的数据常常在同一位置上出现,使密码分析者可以对其进行统计分析、重传和代换攻击。错误传播:单个密文分组中有一个或多个比特错误只会影响该分组的解密结果。342024-3-192024-3-193434密码分组链接CBC模式(Cipher-block chaining)1nKnnCECP352024-3-192024-3-19353511111KnnKKnnnnnnnDCCDECPCCPCP密码分组链接CBC模式(Cipher-block chaining)362024-

20、3-192024-3-193636362024-3-192024-3-193636CBC模式模式原始图CBC模式372024-3-192024-3-193737372024-3-192024-3-193737originalECBCBChttp:/en.wikipedia.org/wiki/Block_cipher_modes_of_operation382024-3-192024-3-193838382024-3-192024-3-193838 初始矢量IV(Initial Vector):第一组明文加密时无反馈密文,为此需要在寄存器中预先置入一个,收发双方必须选用同一IV。每个明文组加密之

21、前,先与反馈至输入端的前一组密文按位模2求和后,再送至加密算法加密 实际上,IV的完整性要比其保密性更为重要。在CBC模式下,最好是每发一个消息,都改变IV,比如将其值加一。392024-3-192024-3-193939392024-3-192024-3-193939CBC的错误传播的错误传播402024-3-192024-3-194040402024-3-192024-3-194040CBC的错误传播的错误传播412024-3-192024-3-194141412024-3-192024-3-194141 1.明文有一组中有错,会使以后的密文组都受影响,但经解密后的恢复结果,除原有误的一组

22、外,其后各组明文都正确地恢复。2.若在传送过程中,某组密文组出错时,则该组恢复的明文和下一组恢复数据出错。再后面的组将不会受中错误比特的影响。CBC的错误传播的错误传播422024-3-192024-3-194242422024-3-192024-3-19424211jCPSE IVj-比特密码反馈CFB模式(Cipher feedback)432024-3-192024-3-194343432024-3-192024-3-19434311jPCSE IVj-比特密码反馈CFB模式(Cipher feedback)442024-3-192024-3-194444442024-3-192024-

23、3-194444 若待加密消息必须按字符(如电传电报)或按比特处理时,可采用CFB模式。CFB实际上是将加密算法DES作为一个密钥流产生器。CFB与CBC的区别是反馈的密文长度为j,且不是直接与明文相加,而是反馈至密钥产生器。解密:采用相同方案,但是使用加密函数而非解密函数。j-比特密码反馈CFB模式(Cipher feedback)452024-3-192024-3-194545CFB模式错误传播模式错误传播1、明文某一组中有错,会使以后的密文组都受影响,但经解密后的恢复结果,除原有误的一组外,其后各组明文都正确地恢复。2、密文里的一位错误会引起明文的一个单独错误,此处,错误进入移位寄存器,

24、导致密文成为无用信息,直到该错误从移位寄存器中移出。例:对于例:对于8 8位(位(1 1个字节)的加密,则会产生个字节)的加密,则会产生9 9字节的错误字节的错误462024-3-192024-3-194646462024-3-192024-3-194646输出反馈输出反馈OFB模式(模式(Output feedback)472024-3-192024-3-194747472024-3-192024-3-194747输出反馈输出反馈OFB模式(模式(Output feedback)482024-3-192024-3-194848482024-3-192024-3-1948481、将分组密码算法

25、作为一个密钥流产生器,其输出的j-bit密钥直接反馈至分组密码的输入端,同时这j-bit密钥和输入的j-bit明文段进行对应位模2相加。2、克服了CBC和CFB的错误传播所带来的问题。3、对于密文被篡改难以进行检测输出反馈输出反馈OFB模式(模式(Output feedback)492024-3-192024-3-194949492024-3-192024-3-194949计数器模式计数器模式(CTR)Counter mode 502024-3-192024-3-195050502024-3-192024-3-195050 CTR模式 使用与明文分组规则相同的计数器长度 加密不同的分组所使用的计数器值必须不同解密:采用相同方案,但是使用加密函数而非解密函数。计数器模式计数器模式(CTR)Counter mode 512024-3-192024-3-195151512024-3-192024-3-195151 处理效率:能够对多块报文的加、解进行并行处理 预处理:进行异或之前的基本加密处理不依赖明文和密文的输入 随机访问:密文分组的处理与其它密文无关 实现简单计数器模式计数器模式(CTR)Counter mode 522024-3-192024-3-195252522024-3-192024-3-195252

侵权处理QQ:3464097650--上传资料QQ:3464097650

【声明】本站为“文档C2C交易模式”,即用户上传的文档直接卖给(下载)用户,本站只是网络空间服务平台,本站所有原创文档下载所得归上传人所有,如您发现上传作品侵犯了您的版权,请立刻联系我们并提供证据,我们将在3个工作日内予以改正。


163文库-Www.163Wenku.Com |网站地图|