
分组密码模式.ppt
25页1 1分组密码的运行模式2 2即使有了安全的分组密码算法,也需要采用适当的工作模式来隐蔽明文的统计特性、数据的格式等,以提高整体的安全性,降低删除、重放、插入和伪造成功的机会美国在FIPS中定义了五种运行模式电码本(ECB)密码分组链接(CBC) 密码反馈(CFB)输出反馈(OFB)计数器模式(CTR)分组密码的运行模式3 3一个1G大小的文件,采用DES和AES加密?1G=220 *8 bit DES算法总块数: 220*8/64=215*8AES算法总块数:220*8/128=213*8一个50B大小的文件,采用DES和AES加密?4 4填充(Padding) 给定加密消息的长度是随机的,按64 bit分组时,最后一组消息长度可能不足64 bit可以填充一些数字,通常用最后1字节作为填充指示符(PI)它所表示的十进制数字就是填充占有的字节数数据尾部、填充字符和填充指示符一起作为一组进行加密 数据填 充PI5 5电码本ECB(Electronic codebook )模式6 6ECB模式实例例如明文“I thought was not the thought I thought I thought”,空白去掉,则采用ECB模式加密?7 7EBC模式8 8EBC模式EBC模式DES算法加密后9 9分组重放攻击银行转帐的例子:日期/时间标记:1分组银行1:发送者 1.5分组银行2:接收者 1.5分组储户姓名6分组储户帐号2分组存款金额1分组1010分组重放攻击To: Bank From: ATMAction: DepositAmount: $100.00To: Bank From: ATMAction: DepositAmount: $900.00“1” = 0011001“9” = 00111011111电码本ECB模式直接利用加密算法分别对分组数据组加密。
最大特性:在给定的密钥下,同一明文组总产生同样的密文组这会暴露明文数据的格式和统计特征 明文数据都有固定的格式,需要以协议的形式定义,重要的数据常常在同一位置上出现,使密码分析者可以对其进行统计分析、重传和代换攻击错误传播:单个密文分组中有一个或多个比特错误只会影响该分组的解密结果1212密码分组链接CBC模式(Cipher-block chaining )1313CBC模式原始图CBC模式1414ECB 模式与CBC模式originalECBCBChttp://en.wikipedia.org/wiki/Block_cipher_modes_of_operation1515密码分组链接CBC模式初始矢量IV(Initial Vector):第一组明文加密时无反馈密文,为此需要在寄存器中预先置入一个,收发双方必须选用同一IV每个明文组加密之前,先与反馈至输入端的前一组密文按位模2求和后,再送至加密算法加密实际上,IV的完整性要比其保密性更为重要在CBC模式下,最好是每发一个消息,都改变IV,比如将其值加一1616CBC的错误传播1. 明文有一组中有错,会使以后的密文组都受影响,但经解密后的恢复结果,除原有误的一组外,其后各组明文都正确地恢复。
2.若在传送过程中,某组密文组出错时,则该组恢复的明文和下一组恢复数据出错再后面的组将不会受中错误比特的影响1717j-比特密码反馈CFB模式(Cipher feedback )1818j-比特密码反馈CFB模式若待加密消息必须按字符(如电传电报)或按比特处理时,可采用CFB模式CFB实际上是将加密算法DES作为一个密钥流产生器CFB与CBC的区别是反馈的密文长度为j,且不是直接与明文相加,而是反馈至密钥产生器解密:采用相同方案,但是使用加密函数而非解密函数1919CFB模式错误传播1、明文某一组中有错,会使以后的密文组都受影响,但经解密后的恢复结果,除原有误的一组外,其后各组明文都正确地恢复2、密文里的一位错误会引起明文的一个单独错误,此处,错误进入移位寄存器,导致密文成为无用信息,直到该错误从移位寄存器中移出例:对于8位(1个字节)的加密,则会产生9字节的错误2020输出反馈OFB模式(Output feedback )2121输出反馈OFB模式1、将分组密码算法作为一个密钥流产生器,其输出的j-bit密钥直接反馈至分组密码的输入端,同时这j-bit密钥和输入的j-bit明文段进行对应位模2相加。
2、克服了CBC和CFB的错误传播所带来的问题 3、对于密文被篡改难以进行检测2222计数器模式 (CTR) Counter mode 2323CTR模式–使用与明文分组规则相同的计数器长度–加密不同的分组所使用的计数器值必须不同–解密:采用相同方案,但是使用加密函数而非解密函数计数器模式 (CRT)2424处理效率:能够对多块报文的加、解进行并行处理预处理:进行异或之前的基本加密处理不依赖明文和密文的输入随机访问:密文分组的处理与其它密文无关实现简单计数器模式(CTR)2525比较和选用ECB模式,简单、高速,但最弱、易受重发攻击,一般不推荐CBC适用于文件加密,但较ECB慢安全性加强OFB和CFB较CBC慢许多每次迭代只有少数bit完成加密若可以容忍少量错误扩展,此时用CFB在字符为单元的流密码中多选CFB模式OFB用于高速同步系统,没有错误传播CTR适用于对实时性和速度要求比较高的场合。












