标题:对称块加密算法加密模式详解作者:DragonKing Email: wzhah@263.net原发网站:中国openssl专业论坛 http://openssl.126.com版权声明:未经作者允许,不能转载和在出版物中使用本文
在openssl或其他密码相关的资料中,我们经常看到对称加密算法有ECB、CBC之类加密模式的简称,到底这些加密模式是什么呢?它们之间有什么不同呢,今天就是为大家解开这个迷。在现有的对称加密算法中,主要有4种加密处理模式,这4种加密处理模式一般是针对块加密算法而言的,如DES算法。这4种加密模式罗列如下:
   模式中文描述            英文名称(Openssl缩写)  电子密码本模式  Electronic Code Book(ECB)   加密块链模式          Cipher Block Chaining(CBC)   加密反馈模式          Cipher Feedback Mode(CFB)   输出反馈模式          Output Feedback Mode(OFB)   下面我们分别介绍这4种加密模式。【电子密码本模式】这
种模式是最早采用和最简单的模式,它将加密的数据分成若干组,每组的大小跟加密密钥长度相同,然后每组都用相同的密钥进行加密。比如DES算法,一个64
位的密钥,如果采用该模式加密,就是将要加密的数据分成每组64位的数据,如果最后一组不够64位,那么就补齐为64位,然后每组数据都采用DES算法的
64位密钥进行加密。下图:_______________________My name |is Drago|nKing———————–上图“My name is DragonKing”这句话每8个字符(64位)作为一块,然后使用一个相同的64位的密钥对每个块进行加密,最后一块不足64位,就补齐后再进行加密。可以看到,因为ECB方式每64位使用的密钥都是相同的,所以非常容易获得密文进行密码破解,此外,因为每64位是相互独立的,有时候甚至不用破解密码,只要简单的将其中一块替换就可以达到黑客目的。【加密块链模式】该模式如下图所示:            P0           P1                              C0            C1            |               |                                  |              |            |               |                                  |—-|        |—>…IV—>XOR  |—>XOR  |—>…          Key Dec  |      [...]