分组密码(DES、分组密码工作模式、AES)

本文深入探讨了分组密码的概念,重点介绍了DES和AES两种经典加密算法,包括它们的安全性设计原则、轮函数结构、密钥生成和工作模式。同时讨论了如ECB、CBC等不同的工作模式,及其优缺点和应用场景。
摘要由CSDN通过智能技术生成

分组密码

在这里插入图片描述

安全性设计原则

  • 混淆原则,明文密文密钥统计关系和代数关系尽可能复杂
  • 扩散原则,明文每一位影响密文多的位

DES

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
Li=Ri-1
Ri=Li-1 ⨁ \bigoplus f(Ri-1,ki)

IP

在这里插入图片描述

DES轮函数结构

在这里插入图片描述
在这里插入图片描述

f(R,K)

在这里插入图片描述

E表扩展置换

在这里插入图片描述

S盒

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

P盒置换

在这里插入图片描述

DES子密钥生成在这里插入图片描述

DES过程

  1. 64bit明文IP初始置换打乱顺序;
  2. 将IP置换后的64bit分为两组L0、R0,16轮迭代乘积变换;
    每轮DES轮函数执行过程为Li=Ri-1;Ri=Li-1 ⨁ \bigoplus f(Ri-1,ki)。
    文字表述为
  • Li直接等于Ri-1;Ri结果由Ri-1E表扩展置换成48bit;
  • DES子密钥生成由种子密钥置换选择1,丢掉奇偶效验位并置换,把结果分为两组都为28bit的C0、D0,经过移位次数表循环左移得到28bit的C1、D1,置换选择2并去除8bit得到子密钥k1
  • DES子密钥XOR经E表扩展结果,S盒代换将XOR后的48bit结果分8组放入不同S盒;
    每个S盒具体操作为将输入端8bit取首位两位二进制b1b6转化为十进制i,二进制b2b3b4b5转化为十进制j,把i作为行,j作为列带入到S表找出对应十进制数并将其转化为4位二进制数;
  • 经过S盒代换后,P盒置换,打乱排列
  • P盒置换结果与Li-1XOR得到Ri
  1. 逆初始置换IP-1得到64bit密文

DES安全性

  • 互补性y=DESk(x)则 y ‾ \overline{y} y=DES k ‾ \overline{k} k (x)选择明文攻击工作量减半
  • 弱密钥,DESk(DESk(x))=x,DES有4个弱密钥
    0000000 0000000
    0000000 FFFFFFF
    FFFFFFF 0000000
    FFFFFFF FFFFFFF

多重DES

多个密钥对明文多次加密,增大了密钥量

双重DES

在这里插入图片描述
y=DESk2(DESk1(xi))
中间相遇攻击z=Ek1(xi)=Dk2(yi);攻击复杂度256+256=257

三重DES

双密钥三重DES-EDE

C=Ek1(DK2(EK1(M)))
M=Dk1(Ek2(Dk1(C )))
抗中间相遇攻击,复杂度2112

分组密码的工作模式(各分组如何协调)

电码本ECB模式

在这里插入图片描述
优点:实现简单、并行加密
缺点:相同明文对应相同密文,不能抵抗替换攻击
应用:随机数的加密,单分组明文加密

密码分组链接CBC模式

在这里插入图片描述
加密:Ci=EK(Mi ⨁ \bigoplus Ci-1)
解密:Mi=DK(Ci) ⨁ \bigoplus Ci-1
统计特性得到隐藏、密文与初始化向量以及以前的明文有关;较小的错误传播特性

密码反馈CFB模式

在这里插入图片描述
相同明文加密得到不同密文
链接依赖性:密钥流依赖于明文
较小的错误传播,影响[n/j]个密文分组解密

输出反馈OFB模式

在这里插入图片描述
OFB与CFB相似,但反馈内容为DES输出,不是密文
密钥流独立于明文
密文出错仅会影响当前密文分组解密,没有错误传播

计数器模式CTR

在这里插入图片描述
并行加密
预处理
相同明文加密成不同密文
加密数据块的随机访问

AES

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述

轮密钥加

在这里插入图片描述

字节代换

在这里插入图片描述

AES的S盒构建/字节代换步骤

  • 将字节作为GF(28)上的元素映射到自己的逆元(m(x)=x8+x4+x3+x1+1)
  • 将字节做GF(2)上的仿射变换

例:12–>C9
1.十六进制12转化为二进制00010010
2. 二进制00010010转化为多项式x4+x
3. 求模 m ( x ) = x 8 + x 4 + x 3 + x + 1 m(x)=x^8+x^4+x^3+x+1 m(x)=x8+x4+x3+x+1的乘法逆元
              x 4 + x + 1 ‾ \underline{x^4+x+1} x4+x+1
x 4 + x ∣ x 8 + x 4 + x 3 + x + 1 x^4+x | x^8+x^4+x^3+x+1 x4+xx8+x4+x3+x+1
              x 8 + x 5 x^8+x^5 x8+x5
              x 5 + x 4 + x 3 + x + 1 ‾ \overline{x^5+x^4+x^3&

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值