700字范文,内容丰富有趣,生活中的好帮手!
700字范文 > 【密码学】三 分组密码

【密码学】三 分组密码

时间:2023-11-23 14:42:30

相关推荐

【密码学】三 分组密码

文章目录

1. 基本概念1.1 分组密码的长度1.2 分组密码安全性的要求1.3 分组密码遵从的基本指导原则1.4 分组密码的实现原则1.4 des 结构、Feistel 结构1.5 Feistel 结构的实现1.6 DES 基本参数1.7 AES 算法参数1.8 AES 基本运算由以下四个环节组成1.9 分组密码常见的工作模式

1. 基本概念

1.1 分组密码的长度

其中 L 称为分组规模,t称为分组密码的密钥长度

按目前的国际标准,L一般为128比特,t一般有三种比特长度:128,192,256。

1.2 分组密码安全性的要求

分组长度足够大:以抵抗频次分析。密钥量足够大:以抵抗穷尽攻击。密码变换足够复杂:采用弱的****函数多次迭代,即所谓的乘积密码。

总之,能够抵抗目前已知的所有攻击。

1.3 分组密码遵从的基本指导原则

扩散:①扩散是指将每一位明文的影响尽可能迅速作用到较多的输出密文位中去,以便隐藏明文的统计特征。②也就是说,当一个明文比特或密钥比特发生变化时,每个密文比特都有可能发生变化。③扩散原则一方面要求具有一定结构和统计规律的明文经过变换后,使得密文不再显示出任何形式的规律性;另一方面要求密钥的每一比特要影响尽可能多的密文比特,使得密钥的每一比特在密文中都得到充分扩散。

混乱:①混乱是指密文与明文之间的统计特征尽可能的复杂化。所谓乘积密码,即是指迭代密码,通过圈函数的多次迭代,实现扩散与混乱。②破译密码无外乎解析法和统计法。③因此混乱原则一方面要求密文应当是明文和密钥足够复杂的函数,另一方面要求密文与其对应的明文和密钥之间不存在任何形式的统计相关性。

1.4 分组密码的实现原则

硬件实现原则

①加、脱密结构相同

②规则的编码结构

③设计成迭代型

④选择易于硬件实现的编码环节软件实现原则

①加、脱密结构相似

②使用子块

③设计成迭代型

④尽量使用既简单又易于软件实现的运算

1.4 des 结构、Feistel 结构

Feistel 结构:

/Drifter_Galaxy/article/details/107702084

1.5 Feistel 结构的实现

参数和特性:

1. 分组大小: 分组越大则安全性越高,但加密速度就越慢。

2. 密钥大小:密钥越长则安全性越高,但加密速度就越慢。

3. 轮数:单轮结构远不足以保证安全性,但多轮结构可提供足够的安全性。典型地,轮数取为16。

4. 子密钥产生算法:该算法的复杂性越大,则密码分析的困难性就越大。

5. 轮函数:轮函数的复杂性越大,密码分析的困难性也越大。

在设计 Feistel 网络时,还有以下两方面需要考虑:

1. 快速的软件实现:在很多情况中,算法是被镶嵌在应用程序中,因而无法用硬件实现。此时算法的执行速度是考虑的关键。

2. 算法容易分析:如果算法能被无疑义地解释清楚,就可容易地分析算法抵抗攻击的能力,有助于设计高强度的算法。

1.6 DES 基本参数

1. 分组长度:64比特

2. 密钥长度:64比特

3. 有效密钥长度:56比特

4. 迭代圈数:16圈

5. 每圈子密钥长度:48比特

1.7 AES 算法参数

分组长度:128 比特

密钥长度:128、192 或 256 比特

圈数:

1.8 AES 基本运算由以下四个环节组成

1.9 分组密码常见的工作模式

1. 电码本模式 ECB

ECB模式是将明文的各个分组独立地使用同一密钥k加密。

优点:

(1)实现简单;

(2)不同明文分组的加密可并行实施。

缺点:

(1)相同明文分组对应相同密文分组,因而不能隐蔽明文分组的统计规律和结构规律;

(2)不能抵抗替换攻击。

为了克服ECB的安全性缺陷,我们希望设计一种工作模式,可以使得当同一个明文分组重复出现时产生不同的密文分组。

一个简单的方法是密文分组链接,使得各输出分组不仅与当前输入分组有关,而且与以前各输入分组和输出分组有关。

2. 密文分组链接模式 CBC

3. 密文反馈模式 CFB

在CBC模式下,加密算法的输入是当前明文组与前一密文组的异或

优点:

(1)适用于用户数据格式的需要。例如对于数据库加密,要求加密时不能改变明文的字节长度,这时就要以明文字节为单位进行加密。

(2)具有有限步(l+1步)的错误传播,可用于认证。

(3)可实现自同步。

缺点:

(1)错误传播:若一个j比特块密文错误,具有l+1步的错误传播。

(2)加密效率低:一次只能完成j个比特的明文数据加密。

4. 输出反馈模式 OFB

OFB模式在结构上类似于CFB模式,但反馈的内容是加密算法输出的乱数而不是密文!

优点:

(1)这是将分组密码当作序列密码使用的一种方式,但乱数与明文和密文无关;

(2)不具有错误传播特性,是一种同步序列密码。

缺点:

(1)加密效率低;

(2)乱数序列的周期可能有短周期现象。

本内容不代表本网观点和政治立场,如有侵犯你的权益请联系我们处理。
网友评论
网友评论仅供其表达个人看法,并不表明网站立场。