2.2分组密码

目录

2.2.1分组密码的概念

2.2.2 DES算法

2.2.2.1 DES的加密过程

2.2.2.2子密钥的产生

2.2.3 AES算法

2.2.3.1状态

2.2.3.2 轮函数

1、S盒变换ByteSub


2.2.1分组密码的概念

根据明密文的划分和密钥的使用不同,可将密码体制分为分组密码和序列密码体制。

中号文明文,

分组密码M划分为一系列明文块M i,通常每个块包含若干位或字符,并且对于每一块M i都用一个密钥Ke加密。即:

其中

序列密码将明文和密钥都划分为位(bit)和字符的序列,并且对于明文中的序列中的每一位或字符都用密钥序列中的对应序列来加密,即:

其中

分组密码每次加密一个明文块,而序列密码每次加密一位或一个字符。序列密码是要害部门使用的主流密码,而商用领域多用分组密码。

2.2.2 DES算法

2.2.2.1 DES的加密过程

2.2.2.2子密钥的产生

2.2.3 AES算法

特点:安全、性能好、效率高、实用、灵活。

数据块长度和密钥长度都可变。数据块长度和密钥长度都可以独立的选定为大于等于128位且小于等于256位的32位的任意倍数。美国颁布是规定数据块长度为128位,密钥长度为128位、192位或256位。

结构:对轮函数实施迭代的结构(分组密码的一组通用结构)。只是轮函数结构采用的是代替/置换网络结构(SP结构),没有采用DES的Feistal结构。如下图:AES的轮函数由以下三层组成

(一)非线性层:进行非线性S盒变换ByteSub,由16个盒并置而成,其混淆的作用。

(二)线性混合层:进行行移位变换ShiftRow和列混合变换MixColumn以确保多圈之上的高度扩散。

(三)密钥加层:进行圈密钥加变换AddRoundKey,将圈密钥简单地异或到中间状态上,实现密钥的加密控制作用。

2.2.3.1状态

状态:加解密要经过多次数据变换操作,每一次变换操作产生的一个中间结果。各种不同的密码变换都是对状态进行的。

2.2.3.2 轮函数

1、S盒变换ByteSub

2.2.3.3 圈密钥产生算法

2.2.3.4 加密算法

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值