分组加密模式 ECB CBC OFB CFB ,分组加密填充

目录

分组加密模式

ECB模式

CBC模式

CFB/OFB都可以作为流加密

CFB模式

OFB模式

分组加密的填充 PKCS7

分组加密模式

多个分组加密互相之间如何关联

ECB模式

每个分组之间单独加密,互不关联

2个分组明文一样,结果也一样,那么只需爆破其中1个就可以了

每个分组互不关联,可以分段同时来爆破,不安全

可以通过替换某段密文来达到替换明文的目的

CBC模式

每个明文分组先和上个分组的密文块进行异或,得到的结果进行加密

第1个明文块没有上个分组的密文块,需要指定一个64比特的输入,也就是初始化向量IV

 例:

明文:123456789ABCDEF0

密钥:133457799BBCDFF1

IV:0123456789ABCDEF

结果:0ecb68bac16aece0 7cbadcfa7a974bcc

第一个分组123456789ABCDEF0

123456789ABCDEF0 ^ 0123456789ABCDEF = 1317131f1317131f

DES(1317131f1317131f)=0ecb68bac16aece0

第二个分组,0808080808080808

0ecb68bac16aece0 ^ 0808080808080808 = 06c360b2c962e4e8

对06c360b2c962e4e8进行DES_ECB加密,得到7cbadcfa7a974bcc 

CFB/OFB都可以作为流加密

CFB模式

明文:123456789ABCDEF0

密钥:133457799BBCDFF1

IV:0123456789ABCDEF

结果:97dc452c95b66af5

IV即0123456789ABCDEF的des加密结果85e813540f0ab405

85e813540f0ab405 与 123456789ABCDEF0 的异或结果是97dc452c95b66af5

OFB模式

 明文:123456789ABCDEF0

密钥:133457799BBCDFF1

IV:0123456789ABCDEF

结果:97dc452c95b66af5

即只有一个分组时,OFB与CFB是一样一样的

分组加密的填充 PKCS7

DES分组长度为64bit

1. 明文长度不够1个分组,就需要填充。

2. 明文没有内容或者明文刚好一个分组长度,都需要再填充一个分组,

    填充内容08 08 08 08 08 08 08 08

3. 其他填充的情况

ab cd ef ab cd ef ab 01

ab cd ef ab cd ef 02 02

ab cd ef ab cd 03 03 03

...

ab 07 07 07 07 07 07 07

0a 07 07 07 07 07 07 07

//如果明文里有半个字节,现在半个字节前补0再填充,0a算最终明文,填充部分解密后会去掉

5. DES的密文长度是8字节的倍数, 但密钥不存在填充,DES密钥必须8字节

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值