分组密码的工作模式及其特点

2019-09-10 11:33刘殷菡
锦绣·下旬刊 2019年12期
关键词:明文密钥加密

刘殷菡

第一章 分组密码

1.1节  分组密码的简述

分组密码是将明文编码表示后的数字序列划分成长为m组,各组分别在密码的控制下加密成密文。在相同的密钥下,通常得到的是与明文等长的密文分组,所以只需要研究任一祖的明文数字的变换规则。这种密码实质上是字长为m的数字序列的代换密码。

1.2节  分组密码简单模型

1.3节  分组密码的工作模型分类

根据不同的应用环境,需要对分组密码的加密方式做一些修改,用来增强密码的安全性和适应性。

常见的工作模式包括:

分组模式:

电码本模式(EBC)

密码分组连接模式(CBC)

序列模式:

输出反馈模式(OFB)

密码反馈模式(CFB)

计数器模式(CTR)

1.4节 分组密码的特点

分组密码加解密速度较快。明文,密文组长度为m,密文长度为t,密钥量为2^t。

密文中的任意一位数字与该组明文所有数字均有关。每组明文使用相同的密钥加密。

1.5节分组密码算法的问题和对策

分组长度足够大

问题:代换网络十分复杂,难以控制与实现。

对策:将分组划分为几个小段,分别设计这些小段的代换网络。

密钥量足够大

问题:密码系统十分复杂,同样难以控制与实现。

对策:概率加权法:设计多个子系统,使用时随机抽取。

乘积密码法:设计多个子系统,对明文进行多次加密。

密码变换足够复杂

问题:抗统计破译法的要求,难以简单实现。

对策:扩散法:将每一位明文和密钥数字的影响扩散到每一位密文数字。

混淆法:使明文与密文、密钥的统计特性复杂化。

第二章 分组密码的工作模式

2.1节  分组密码的工作模式的简述

分组模式的工作模式是指以某个分组密码算法为基础,来解决任意长度的明文的加密问题的方法。从本质上来说,为了使算法更适应具体的应用的一种技术。

分组密码的工作模式:

电码本模式(EBC);密码分组连接模式(CBC);输出反馈模式(OFB);密码反馈模式(CFB);计数器模式(CTR)这五种工作模式适用于不同的应用需求。

电码本模式(EBC)

1.定义:

ECB模式是将明文的各个分组独立地使用同一密钥加密,互不影响,最后统一拼接在一起,

2.优点:

(1)最简单,最直接的分组密码工作模式。

(2)可以对不同明文分组的加密并行实施,尤其是对硬件的实现,速度就很快了。

(3)可以独立的操作每个明文组,不必按照序列号依次加解密,这样对必须随机独立存储的数据块来说就很方便了。

(4)可以单独地增加或者删除任意的记录。

3.缺点:

(1)由于相同的明文分组对应相同的密文分组,所以在密文中暴露了明文数据的数据格式和特征,不能抵抗替换攻击。

(2)密码分析者在未知密码的情况下,利用已知的明文和密文进行替换、嵌入和删除等,从而进行主动攻击。

4.实现模型:

密码分组连接模式(CBC)

1.定义:

在CBC模式下,加密算法的输入是当前明文组与前一个密文组的异或,使用的密钥是相同的。解密时,每个密文分组分别进行解密,再与上一块密文异或就可恢复出明文。

优点:

明文的统计规律能够在密文中更好的隐藏。各个密文块不仅与当前的明文块有关,还与上一个明文块和初始向量有关,克服了EBC存在的弊端。

密文出现丢块和错块不影响后面的密文块的脱密。

缺点:

存在错误扩散(一个密文块的错误将导致两个密文块不能正确的进行脱密)

4.实验模型:

密码反馈模式(CFB)

1.定义:

若待加密的消息需要按字符、字节或者比特处理时,可采用CFB模式。待发送的字符流中任何一个字符都可以用面向字符的流密码加密后立即发送,在加密时每次传输s位的数据进行加密。

和OFB,CTR模式一样,将分组密码当做流密码使用,分组大小可以任意缩减。

CFB的解密过程几乎就是颠倒的CBC的加密过程

2.优点:

(1)与CBC的优点相似,可以用于认证。

(2)具有自同步功能。其本质是将分组密码当做序列密码使用的一种模式,但是乱数可能与明文与密文有关。

3.缺点:加密效率低。

4.实现模型:

输出反馈模式(OFB)

1.定义:

與CFB模式很相似,用加密函数的输出填充移位寄存器,需要对整个明文和密文分组进行运算,不仅仅是对s位的子集运算。

优点:

无错误扩散。传输过程中在某位上出现错误不会影响后续的位。

缺点:

(1)抗消息流篡改攻击的能力不如CFB,不能用于完整性认证。

(2)乱数序列的周期可能存在短周期现象

4.实现模型:

计数器模式(CTR)

1.定义:

利用固定密钥对自然序列加密,将得到的密文分组序列看成乱数序列,按照加减密码的方式与明文分组逐位模2加的一种模式。

CTR使用与明文分组规模相同的长度,所以加密不同的明文组所对应的的计数器的值也不同。

2.优点:

(1)软件效率高。使用这种方式可以产生伪随机数序列,其序列比计算机产生的随机数的性能好。

(2)硬件效率高。能够并行的进行加密和解密。

(3)可以用来做预处理提高效率。加解密过程中不需要依赖明文和密文。

(4)实现简单。

3.缺点:

暂不明确。

4.实现模型:

猜你喜欢
明文密钥加密
幻中邂逅之金色密钥
幻中邂逅之金色密钥
保护数据按需创建多种加密磁盘
谷歌禁止加密货币应用程序
BitLocker密钥恢复二三事
奇怪的处罚
加密与解密
奇怪的处罚
奇怪的处罚