标题:对称块加密算法加密模式详解作者: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 | [...]
| 一 | 二 | 三 | 四 | 五 | 六 | 日 |
|---|---|---|---|---|---|---|
| « 4 | ||||||
| 1 | 2 | 3 | 4 | 5 | ||
| 6 | 7 | 8 | 9 | 10 | 11 | 12 |
| 13 | 14 | 15 | 16 | 17 | 18 | 19 |
| 20 | 21 | 22 | 23 | 24 | 25 | 26 |
| 27 | 28 | 29 | 30 | |||