密码学实验教程(第2版) 课件 第17、18章 SM4算法快速软件实现、分组密码算法的工作模式_第1页
密码学实验教程(第2版) 课件 第17、18章 SM4算法快速软件实现、分组密码算法的工作模式_第2页
密码学实验教程(第2版) 课件 第17、18章 SM4算法快速软件实现、分组密码算法的工作模式_第3页
密码学实验教程(第2版) 课件 第17、18章 SM4算法快速软件实现、分组密码算法的工作模式_第4页
密码学实验教程(第2版) 课件 第17、18章 SM4算法快速软件实现、分组密码算法的工作模式_第5页
已阅读5页,还剩55页未读 继续免费阅读

下载本文档

版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领

文档简介

第17章SM4算法快速软件实现主要内容算法测试3思考题4算法实现2算法原理1SM4算法回顾

SM4算法回顾

SM4算法回顾

SM4算法回顾

主要内容算法测试3思考题4算法实现2算法原理1算法实现算法/函数算法/函数名主要算法辅助算法

主要内容算法测试3思考题4算法实现2算法原理1算法测试

0123456789abcdef000010c08060f040e030d0b0a0209070516660cdc1dbd65257878ffdf2787f383b233f430fb6ad46cd9a94fa34be1baefb1322faf52059484c5c1e3a391fceAfa5c24dd7cb295d07bb99c3558a22b365da829算法测试

0123456789abcdef5998d1656859053174934b463374d65bf61167b55bbe5e1061e8c724d526d8e6cb7ffbd9fc5c996b6f01c7ed14541dc791d8aad3f6ea91548e18a0def9e49851861995584adecb34375c88c50e2a747b8c472算法测试

0123456789abcdefa88df4a2ac33ee39b4e2880d2ed92cf3dbee2f42945a6276f19d462de0fe71645fccc133fa49e73e9699774e76fc0123caed447aab81256b15da6d27d7147d4089a1ebb2c9aa68bf86eca68c683f793Acb02ef77b71bfc213282ebe58a3123f31abc70主要内容算法测试3思考题4算法实现2算法原理1思考题

请批评指正!第18章分组密码算法的工作模式主要内容算法测试3思考题4算法实现2算法原理1电码本工作模式ECB工作模式是最简单的工作模式,几乎不需要任何处理。左图是ECB工作模式加密算法过程,其首先将明文填充至分组密码加密函数输入长度的整数倍,之后直接将明文分组作为算法的输入,对应的输出作为密文分组。右图是ECB工作模式解密算法过程,其直接将各个密文分组经过解密函数之后得到对应的明文分组,最后对明文分组拼接后进行去填充操作得到初始明文。密文分组链接工作模式左图是CBC工作模式加密算法过程,其首先将明文填充至分组密码加密函数输入长度的整数倍,将初始向量视为第0个密文输出,将每个明文分组与前一密文分组进行异或运算之后再进行加密得到当前的密文分组。右图是CBC工作模式解密算法过程,其将初始向量视为第0个密文分组,将每个密文分组进行解密,之后将解密结果与前一个密文分组进行异或即得到对应的明文分组,最后对明文分组拼接后进行去填充操作得到初始明文。密文反馈工作模式CFB模式不同于ECB模式和CBC模式,其不需要对明文进行填充,因为它并不直接将明文分组输入到分组密码的加密函数中,而是将分组密码算法当前输出的若干比特与明文分组逐比特异或得到密文,该密文同时更新下一个分组密码算法的输入。下图为CFB模式的加密算法过程。密文反馈工作模式

输出反馈工作模式OFB工作模式类似于CFB工作模式,无需对明文进行填充,使用分组密码算法当前输出的若干比特与明文逐比特异或得到密文,并且直接使用分组密码算法的输出作为下一个分组密码算法的输入。下图是OFB模式加密算法过程。输出反馈工作模式下图是OFB模式解密算法过程。其上半部分与加密算法完全相同,只需将密文分组与加密函数输出逐比特异或即可得到对应的明文分组。计数器工作模式CTR模式使用计数器的值作为分组密码加密算法的输入,将输出与明文分组逐比特异或得到对应密文分组,然后对计数器的值作增量或减量作为下一分组加密算法的输入。下图是CTR模式加密算法过程。计数器工作模式下图是CTR模式解密算法过程,其大致与加密算法类似,只需将密文与加密函数输出逐比特异或即可得到对应的明文分组。主要内容算法测试3思考题4算法实现2算法原理1算法实现算法算法ECB加密ECB解密CBC加密CBC解密CFB加密CFB解密OFB加密OFB解密CTR加密CTR解密ECB加密算法

ECB解密算法

CBC加密算法

CBC解密算法

CFB加密算法

CFB解密算法

OFB加密算法

OFB解密算法

CTR加密算法

CTR解密算法

主要内容算法测试3思考题4算法实现2算法原理1ECB算法测试在ECB测试样例中,测试明文为0x6bc1bee22e409f96e93d7e117393172aae2d8a571e03ac9c9eb76fac45af8e5130c81c46a35ce411e5fbc1191a0a52eff69f2445df4f9b17ad2b417be66c3710,对其进行ECB模式加密。密钥0x6bc1bee22e409f96e93d7e117393172aae2d8a571e03ac9c9eb76fac45af8e5130c81c46a35ce411e5fbc1191a0a52eff69f2445df4f9b17ad2b417be66c3710填充后的明文0x6bc1bee22e409f96e93d7e117393172aae2d8a571e03ac9c9eb76fac45af8e5130c81c46a35ce411e5fbc1191a0a52eff69f2445df4f9b17ad2b417be66c371010101010101010101010101010101010密文0xa51411ff04a711443891fce7ab842a29d5b50f46a9a730a0f590ffa776d99855c9a86a4d71447f4e873ada4f388af9b92b25557b50514d155939e6ec940ad90ec24141e7de80f1fe458fd44abcb8ee8eCBC算法测试

加密算法输入加密算法输出06bc1bee22e409f96e93d7e117393172a6bc0bce12a459991e134741a7f9e1925ac529af989a62fce9cddc5ffb84125caac529af989a62fce9cddc5ffb84125ca1ae2d8a571e03ac9c9eb76fac45af8e51027f10ae97a58352026aaa53fdeeab9bb168dd69db3c0eea1ab16de6aea43c59b168dd69db3c0eea1ab16de6aea43c59230c81c46a35ce411e5fbc1191a0a52ef81a0c12f7860eafbff4aacffb4ae6eb62c15567bff8f707486c202c7be59101f2c15567bff8f707486c202c7be59101f3da8a723e20c0eb632be943bc5835270f74a629b350cd7e11be99998af5206d6c74a629b350cd7e11be99998af5206d6cda8a723e20c0eb632be943bc5835270f464b639a340dd6e01ae89899ae5307d7c5a2cd37d4987d9676b6a1b9e29cfa3225a2cd37d4987d9676b6a1b9e29cfa32264b639a340dd6e01ae89899ae5307d7cCBC算法测试对上述数据进行CBC模式解密。测试数据及中间结果如表。其中以16进制描述中间数据,描述时省略“0x”。解密算法输入解密算法输出0ac529af989a62fce9cddc5ffb84125caac529af989a62fce9cddc5ffb84125ca6bc0bce12a459991e134741a7f9e19256bc1bee22e409f96e93d7e117393172a1b168dd69db3c0eea1ab16de6aea43c59b168dd69db3c0eea1ab16de6aea43c59027f10ae97a58352026aaa53fdeeab9bae2d8a571e03ac9c9eb76fac45af8e5122c15567bff8f707486c202c7be59101f2c15567bff8f707486c202c7be59101f81a0c12f7860eafbff4aacffb4ae6eb630c81c46a35ce411e5fbc1191a0a52ef374a629b350cd7e11Be99998af5206d6c74a629b350cd7e11Be99998af5206d6cda8a723e20c0eb632Be943bc5835270ff69f2445df4f9b17Ad2b417be66c371045a2cd37d4987d9676b6a1b9e29cfa3225a2cd37d4987d9676b6a1b9e29cfa32264b639a340dd6e01Ae89899ae5307d7c10101010101010101010101010101010CFB算法测试

加密算法输入加密算法输出06b000102030405060708090a0b0c0d0e0fd7b0b394034794b0df20d63a27c5496cbc1c10102030405060708090a0b0c0d0e0fbc590b8185e6b10e0d71838fdcd0706ff5982be02030405060708090a0b0c0d0e0fbc9808db5e724d537170c6c53d22cf9c2aaeb63e2030405060708090a0b0c0d0e0fbc98b67e5370a2654330641081e3feb85ac8719c42e0405060708090a0b0c0d0e0fbc98b69c25f88d7ba32c5a5305e4f141b21bbfc60b54005060708090a0b0c0d0e0fbc98b69c0b7a3705b7023a0a3b5b628ca0da6d6ee23a69f060708090a0b0c0d0e0fbc98b69c0b3a572474e196f3c58b6e8f8be6b1712ebec87960708090a0b0c0d0e0fbc98b69c0b3ac8eddca0de36ff1e6355d0d67da3b9c7237bCFB算法测试对上述数据进行CFB模式解密。测试数据及中间结果如表。其中以16进制描述中间数据,描述时省略“0x”。解密算法输入解密算法输出0bc000102030405060708090a0b0c0d0e0fd7b0b394034794b0df20d63a27c5496c6b1980102030405060708090a0b0c0d0e0fbc590b8185e6b10e0d71838fdcd0706ff5c12b602030405060708090a0b0c0d0e0fbc9808db5e724d537170c6c53d22cf9c2aaebe39c030405060708090a0b0c0d0e0fbc98b67e5370a2654330641081e3feb85ac871e240b0405060708090a0b0c0d0e0fbc98b69c25f88d7ba32c5a5305e4f141b21bbfc62e53a05060708090a0b0c0d0e0fbc98b69c0b7a3705b7023a0a3b5b628ca0da6d6ee2406c8060708090a0b0c0d0e0fbc98b69c0b3a572474e196f3c58b6e8f8be6b1712ebe9f77b0708090a0b0c0d0e0fbc98b69c0b3ac8eddca0de36ff1e6355d0d67da3b9c723

96OFB算法测试

加密算法输入加密算法输出06bc1bee22e409f96e93d7e117393172a000102030405060708090a0b0c0d0e0fd7b0b394034794b0df20d63a27c5496cbc710d762d070b26361da82b54565e461ae2d8a571e03ac9c9eb76fac45af8e51d7b0b394034794b0df20d63a27c5496ca98d4c7f2a77a64fbaba4c3d604e987007a0c62834740ad3240d239125e11621230c81c46a35ce411e5fbc1191a0a52efa98d4c7f2a77a64fbaba4c3d604e9870e4beae5a6aacad40158fdc37e3eac677d476b21cc9f04951f0741d2ef9e094983f69f2445df4f9b17ad2b417be66c3710e4beae5a6aacad40158fdc37e3eac677e31bd851f4bea1b18b936ee69b6b5bde1584fc142bf13aa626b82f9d7d076cceOFB算法测试对上述数据进行OFB模式解密,解密测试数据及中间结果如表。其中以16进制描述中间数据,描述时省略“0x”。解密算法输入解密算法输出0bc710d762d070b26361da82b54565e46000102030405060708090a0b0c0d0e0fd7b0b394034794b0df20d63a27c5496c6bc1bee22e409f96e93d7e117393172a107a0c62834740ad3240d239125e11621d7b0b394034794b0df20d63a27c5496ca98d4c7f2a77a64fbaba4c3d604e9870ae2d8a571e03ac9c9eb76fac45af8e512d476b21cc9f04951f0741d2ef9e09498a98d4c7f2a77a64fbaba4c3d604e9870e4beae5a6aacad40158fdc37e3eac67730c81c46a35ce411e5fbc1191a0a52ef31584fc142bf13aa626b82f9d7d076ccee4beae5a6aacad40158fdc37e3eac677e31bd851f4bea1b18b936ee69b6b5bde

f69f2445df4f9b17ad2b417be66c3710CTR算法测试在CTR测试样例中,选择计数器初始值为0xf0f1f2f3f4f5f6f7f8f9fafbfcfdfeff,计算完每个分组后计数器的值加1,测试明文为0x6bc1bee22e409f96e93d7e117393172aae2d8a571e03ac9c9eb76fac45af8e5130c81c46a35ce411e5fbc1191a0a52eff69f2445df4f9b17ad2b417be66c3710。测试数据及中间结果如表。其中以16进制描述中间数据,描述时省略“0x”。加密算法输入加密算法输出06bc1bee22e409f96e93d7e117393172af0f1f2f3f4f5f6f7f8f9fafbfcfdfeff7f6ff490973a0c58fb2bb2c8eb7066eb14ae4a72b97a93ce1216ccd998e371c11ae2d8a571e03ac9c9eb76fac45af8e51f0f1f2f3f4f5f6f7f8f9fafbfcfdff00ceda65dc7d4711f13f2e4aa9a053afca60f7ef8b6344bd6da1992505e5fc219b230c81c46a35ce411e5fbc1191a0a52eff0f1f2f3f4f5f6f7f8f9fafbfcfdff013b384bbecf019101d9f487488675e0080bf057f86c5d75103c0f46519c7fb2e73f69f2445df4f9b17ad2b417be66c3710f0f1f2f3f4f5f6f7f8f9fafbfcfdff02dfb721468594018741c45528bfbbf81e292805035adb9a90ecef145359d7cf0eCTR算法测试对上述数据进行CTR模式解密,解密测试数据及中间结果如表。其中以16进制描述中间数据,描

温馨提示

  • 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
  • 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
  • 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
  • 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
  • 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
  • 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
  • 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。

评论

0/150

提交评论