最新消息: USBMI致力于为网友们分享Windows、安卓、IOS等主流手机系统相关的资讯以及评测、同时提供相关教程、应用、软件下载等服务。

应用密码学第三章分组密码体制习题参考答案道

IT圈 admin 45浏览 0评论

2024年5月7日发(作者:爱半槐)

第三章 习题 1简述分组密码算法的基本工作原理。 答分组密码在加密过程中不是

将明文按字符逐位加密而是首先要将待加密的明文进行分组每组的长度相同然后对

每组明文分别加密得到密文。分组密码系统采用相同的加密密钥和解密密钥这是对

称密码系统的显著特点。例如将明文分为m块0121mPPPP每个块在密钥作用下执行

相同的变换生成m个密文块0121mCCCC每块的大小可以任意长度但通常是每块的

大小大于等于64位块大小为1比特位时分组密码就变为序列密码如图是通信双方最

常用的分组密码基本通信模型。 加密算法解码算法明文x密文y明文x密钥k密钥

kkExykDyxAliceBob不安全信道安全信道密钥k攻击者 图分组密码基本通信模型图

在图中参与通信的实体有发送方Alice、接收方Bob。而攻击者是在双方通信中试图

攻击发方或者收方信息服务的实体攻击者经常也称为敌人、对手、搭线者、窃听者、

入侵者等并且攻击者通常企图扮演合法的发送方或者接收方。 2为了保证分组密码

算法的安全对分组密码算法的要求有哪些 答为了保证分组密码的安全强度设计分

组密码时应遵循如下的基本原则 1分组长度足够长防止明文穷举攻击例如DESData

Encryption Standard、IDEAInternational Data Encryption Algorithm等分组密码算法分

组块大小为64比特在生日攻击下用322组密文破解成功概率为0.5同时要求

32152642bitsMB大小的存储空间故在目前环境下采用穷举攻击DES、IDEA等密码算

法是不可能而AES明文分组为128比特同样在生日攻击下用642组密文破解成功概率

为0.5同时要求存储空间大小为644821282bitsMB采用穷举攻击AES算法在计算上就

更不可行。 2 密钥量足够大同时需要尽可能消除弱密钥的使用防止密钥穷举攻击但

是由于对称密码体制存在密钥管理问题密钥也不能过大。 3密钥变换足够复杂能抵

抗各种已知攻击如差分攻击、线性攻击、边信道攻击等即使得攻击者除了穷举攻击

外找不到其它有效攻击方法。 4加密和解密的运算简单易于软硬件高速实现。 5数

据扩展足够小一般无数据扩展。 6差错传播尽可能小加密或解密某明文或密文分组

出错对后续密文解密影响尽可能小。 3以DES为例画出分组密码的密码本ECB模式

的加密解密示意图并简述一下ECB模式的优缺点 答ECB模式是最简单的模式直接

利用加密算法分别对分组数据组加密。明文分成64比特的分组进行加密必要时填充

每个分组用同一密钥加密同样明文分组得到相同密文。图演示了这种操作模式。 假

设输入密钥为K明文分组为1NPP输出为1NCC。 ECB操作模式加密1jKjjNCEP ECB

操作模式解密1jKjjNPDC 分组加密明文分组P1密文分组C1K分组加密明文分组P2

密文分组C2K分组加密明文分组PN密文分组a 加密 密文分组C1密文分组C2

密文分组CN分组加密K分组加密K分组加密K...明文分组P1明文分组P2明文分组

PNb 解密 图 3 ECB加密解密运行模式 ECB模式的特性 1ECB运行模式在给定的

密钥下同一明文组总产生同样的密文组。 2链接依赖性各组的加密独立于其它分组

重排密文分组将导致相应的明文分组重排。 3错误传播单个密文分组中有一个或多

个比特错误只会影响该分组的解密结果。 4安全性由于同一明文产生同样的密文这

会暴露明文数据的格式和统计特征。特别是若明文数据都有固定的格式例如图像并

需要以协议的形式定义那么重要的数据常常在同一位置上出现使密码分析者可以对

其进行统计分析、重传和代换攻击。因此当消息长度超过一个组或者重复使用密钥

加密多个单组消息不建议使用ECB模式。 4以DES为例画出分组密码的CBC、CFB、

OFB工作模式的加密解密示意图并比较三者不同运行模式有何区别 答CBC模式比

ECB模式实现复杂、更安全因此它是最普遍使用的对称密码运行模式。CBC模式中

加密过程第一个明文分组与初始矢量IVInitial Vector进行异或运算而后面的明文分

组和前一密文分组的做异或运算再使用相同的密钥送至加密算法加密形成一条链这

样每个明文分组的加密函数输入与明文分组之间不再有固定的关系。如图演示了这

种操作。 分组加密明文分组P1密文分组C1K分组加密明文分组P2密文分组C2K分组

加密明文分组PN密文分组a 加密初始变量IV 密文分组C1密文分组C2密文分

组CN分组解密K分组解密K分组解密K...明文分组P1明文分组P2明文分组PNb 解密

初始变量IV 图 3-43 CBC加密解密运行模式 如上所述DES是分组长为64比特的分

组密码但利用CFB模式或OFB模式可将DES转换为流密码。流密码不需要对消息填

充而且运行是实时的。因此如果传送字母流可使用流密码对每个字母直接加密并传

送。流密码具有密文和明文一样长这一性质因此如果需要发送的每个字符长为8比特

就应使用8比特密钥来加密每个字符。如果密钥长超过8比特则造成浪费。 图3-44

是CFB模式示意图设传送的每个单元如一个字符是j比特长通常取j8与CBC模式一样

明文单元被链接在一起使得密文依赖是前面所有明文的函数。 密文分组C1分组加

密K明文分组P1移位寄存器选j比特64-j比特选j比特丢弃64-j比特初始变量IV密文分

组C2分组加密K明文分组P2移位寄存器选j比特64-j比特选j比特丢弃64-j比特jjj密文

分组CN分组加密K移位寄存器选j比特64-j比特选j比特丢弃64-j比特jjjjjj明文分组

PN...a 加密646464646464密文分组C1分组加密K明文分组P1移位寄存器选j比特64-j

比特选j比特丢弃64-j比特初始变量IV密文分组C2分组加密K明文分组P2移位寄存器

选j比特64-j比特选j比特丢弃64-j比特jjj密文分组CN分组加密K移位寄存器选j比特

64-j比特选j比特丢弃64-j比特jjjjjj明文分组PN...b 解密646464646464 图 3-44 CFB

加密解密运行模式 OFB模式的结构类似于CFB将分组密码算法作为一个密钥流产

生器其输出的j-bit密钥直接反馈至分组密码的输入端同时这j-bit密钥和输入的j-bit

明文段进行异或运算见图3-45所示。不同之处如下OFB模式是将加密算法的输出反

馈到移位寄存器而CFB模式中是将密文单元反馈到移位寄存器克服了CBC和CFB的

错误传播所带来的问题。 密文分组C1分组加密K明文分组P1移位寄存器选j比特64-j

比特选j比特丢弃64-j比特密文分组C2分组加密K明文分组P2移位寄存器选j比特64-j

比特选j比特丢弃64-j比特jjj密文分组CN分组加密K移位寄存器选j比特64-j比特选j

比特丢弃64-j比特jjjjjj明文分组PN...a 加密646464646464密文分组C1分组加密K明

文分组P1移位寄存器选j比特64-j比特选j比特丢弃64-j比特初始变量IV密文分组C2

分组加密K明文分组P2移位寄存器选j比特64-j比特选j比特丢弃64-j比特jj密文分组

CN分组加密K移位寄存器选j比特64-j比特选j比特丢弃64-j比特jjjjjj明文分组PN...b

解密646464646464jj 图 3-45 OFB加密解密运行模式 ?? CBC适用于文件加密但较

ECB慢。安全性加强。 ?? OFB和CFB较CBC慢许多。每次迭代只有少数bit完成加密。

若可以容忍少量错误扩展此时用CFB。在字符为单元的流密码中多选CFB模式。 ??

OFB用于高速同步系统没有错误传播。 5CBCCFB工作模式中都具有错误传播的特

性以DES为例例如图3-34中若密文组2C出错。 1明文组1P和2P分别会受到什么影响

2明文组3P后的分组是否会受到影响 3若CFB工作模式反馈值可以设定为j比特为8

比特如图3-44中若密文组2C 中有3比特的数据出错对哪些明文造成影响 解1在

CBC工作模式假设输入密钥为K明文分组为1NPP输出为1NCC初始IV变量为0C

CBC操作模式加密11jKjjjNCECP CBC操作模式解密11jjKjjNPCDC 因此若某组密文

组jC出错时则会影响到分组jC和1jC的解密因为jP依赖1jC和jC1jP依 赖jC和1jC即该

组恢复的明文jP和下一组1jP一般来说完全随机的50有错因此若密文jC有错但1jC之

后没有错误2jC及后面的分组解密将不会受中错误比特的影响。 因此若密文2C出错

则明文组1P将不受影响能正确解密出1P。而明文2P分别会受到影响不能 正确解密

出来。3P也会受到影响不能正确解密 2明文组3P后的分组是不会受到影响。 3若

CFB工作模式反馈值可以设定为j比特为8比特在CFB模式中若一个或多个比特错误

出现在r比特的密文组jC中则会影响到分组jC和后续/nr个密文分组的解密直到n个比

特的密文被处理在此之后出错的分组jC完全移出移位寄存器。例对于8位1个字节的

加密则会产生9字节的错误。 6以DES为例8比特的分组密码的输出反馈OFB模式若

加密时明文的一个比特错误对密文造成什么影响在传输过程中密文的一个比特发生

错误对接收方解密会造成什么影响 解OFB模式的传输过程中加密明文的一个比特

错误则会造成本组的密文出错后续密文没有影响。OFB模式的传输过程中的比特错

误不会被传播。例如jC中出现一个或多个比特错误在解密结果中只有jP受到影响以

后各明文单元则不受影响。 8对DES的S盒3输入100100请指出有多少个输出位用二

进制表示。 解对于DES 的S盒3输入100100行值为2列值为2因此S盒3中第2行第2列

对应的值为十进制为4二进制为0100 9写出模59同余的两个整数。 解1≡60 mod 59 10

利用欧拉定理计算32007mod 41的余数。 解根据欧拉定理设n≥2且an1则1modnan 因

为3411所以3411mod41因为4140即340≡1mod41。 而200750×407 3200134050 ·37

≡33 .34 mod 41 ≡ 27 81 mod 41 ≡ 27 40 mod 41 ≡ 14 mod 41 即32007mod 41的余数为

14。 11已知a25m59利用欧几里得除法计算a1mod m。 解采用欧几里得扩展算法求

解251mod 59。 592×259 252×97 91×72 73×21 则17-3×2 7-3×9-1×7 -3×94×7

-3×94×25-2×9 4×25-11×9 4×25-11×59-2×25 26×25-11×59 等式两端同时mod59得

26×25 ≡1mod59 故25模59的逆元为16故一般说25模59的逆元为16. 12计算12×15×18

的欧拉函数的值。 解12×15×18 12×15×18 23×34×52-1×22×3-1×33×442274864 13给

出群的定义并举出一个含有限个元素的群。 解设G为非空集合在G内定义了一种代

数运算为ο若满足下述公理 1有封闭性。对任意a、b∈G恒有aοb∈G. 2结合律成立。

对任意a、b、c∈G有aοbοcaοbοc 3G中有一恒等元e存在对任意a∈G 有e∈G 使

aοeeοaa 4对任意a∈G 存在a的逆元a-1∈G使aοa-1 a-1οae 则G构成一个群。 若群G

满足交换律则称群G为交换群 例如对于非空集合G0 1 2 3 4 5 6 7 8 9 10在mod11的

情况下做加法运算构成一个群且是交换群。下面看看G满足公理的情况。 1封闭性。

对任意a、b∈G恒有abmod11∈G. 例如 8917≡6mod11∈G 满足封闭性性质。 2结合

律成立。对任意a、b、c∈G有ab ca bc。这个容易理解。 3G中有一恒等元e存在对

任意a∈G 有e∈G 使aeeaa. 在给定的集合G中e0 满足上面的性质故恒等元存在。 4

对任意a∈G存在a的逆元a-1∈G使aa-1 a-1ae. 例如 7在集合中的逆元为4因74mod11

≡0 显然加法满足交换律故该群是交换群。 14已知x4x1是F2x中的不可约多项式在

F2x/ x4x1中的计算1. x31×x31 2. x2-1mod x4x1。 解x31×x31 mod x4x1 x61mod x4x1

x2x4x1 x3 x21mod x4x1 x3 x21mod x4x1 x2-1mod x4x1可以采用欧几里得扩展算法

如下求解 x4x1 x2× x2x1 x2x1 ×x11 1 x2-x1 ×x1 1 x2-x1 × x4x1- x2× x2 1 x2×x3x -x1

× x4x1 两边同时模x4x1可得x2×x3x 1mod x4x1因此x2-1 x3x mod x4x1 16AES的主

要优点是什么 解AES算法的主要优点是安全性、效率、可实现和灵活等优点成为美

国新的高级加密标准AES 17AES的基本变换有哪些其基本运算方法。 答1.字节代替

SubBytes通过一个非线性的替换函数用查找表的方式把每个字节替换成对应的字

节。 2. 行移位ShiftRows将矩阵中的每个横列进行循环式移位。 3. 列混合

MixColumns为了充分混合矩阵中各个直行的操作。这个步骤使用线性转换来混合每

行内的四个字节。 4. 轮?茉考覣ddRoundKey矩阵中的每一个字节都与该次循环的

子密钥round key做XOR逻辑运算每个子密钥由密钥生成方案产生。 18AES的解密

算法和AES的加密算法有什么不同 答AES算法解密过程中的基本运算除了轮密钥

加AddRoundKey与AES加密算法中一样其它基本运算字节替代SubBytes、行移位

ShiftRows、列混合MixColumns都要求逆解密过程中的基本运算为逆字节替代

InvSubBytes、逆行移位InvShiftRows、逆列混合InvMixColumns 19简述SMS4算法的

加密过程。 设明文输入为X0X1 X2 X33242Z密文输出为Y0Y1 Y2 Y3X35X34 X33

X323242Z轮密钥为rk0 rk1 … rk31322Z。 则SMS4具体算法如下如图3-38所示

4123123iiiiiiiiiiiXFXXXXrkXTXXXrk0131.i 密文Y Y0Y1 Y2 Y3X35X34 X33 X32

SM4算法的解密变换与加密变换结构相同不同的仅是轮密钥的使用顺序。 加密时轮

密钥的使用顺序为rk0 rk1 … rk31 解密时轮密钥的使用顺序为rk31 rk30 … rk0 定义

反序变换R为X32X33 X34 X35 经反序变换R为X35X34 X33 X32。 输出第1轮

X1X2X3X0128比特明文X第2轮X1X2X3X4X5X2X3X4…………X34X31X32X33第

32轮X32X33X34X35反序变换RY1Y2Y3Y0128比特密文Yrk0rk1rk31XiS盒置换线性

变换LT变换Xi1Xi2Xi3Xi1Xi2Xi3Xi4轮函数F第i1轮X32X33X34X35X32X33X34X35

反序变换R 图3-38 SMS4加密算法流程 20RC6加密体制与Twofish加密体制有何区

别 RC6是AES候选算法之一由Rivest、Robshaw、Sidney和Yin提交的它可能是最 简

单的AES算法RC6是RC5的进一步改进。它的明文分组块大小为128比特密钥可以为

128、192或256比特共进行20轮的加密。 RC6整个加密过程需要44个子密钥这些密

钥都是从初始的128比特密钥通过一系列复杂运算而生成的。 Twofish 是

counterpane 公司向NIST提交的一种满足AES要求的加密算法设计者 为Schneier。

Twofish 采用128比特数据块128 bits block128、192、256比特可变长度密钥。Twofish

算法是进入NIST第二轮 5种加密算法中的一种它同时具有RC6和Rijndael的某些特

性与DES算法一样使用了16轮的Feistel结构来加密明文并应用了一些特殊的操作例

如与密钥相关的S盒和矩阵相乘操作等。 Twofish加密过程中需要40个子密钥由初始

密钥通过复杂的密钥生成算法而生成的。其中子密钥既要用于Feistel结构的各轮F盒

中也用于生成与密钥相关的S盒因而S盒具有动态特性使得攻击者无法预先分析增

强了算法的安全性。 Twofish加密算法与RC6算法类似128比特数据也即16字节。然

后将这16字节分为 4组每组32比特即 4字节。在循环之前首先对这 4 组数据分别用

K0、 K1 、K2 、K3进行异或操作称之为input whitening然后对 异或后的数据分组

进行计算。

2024年5月7日发(作者:爱半槐)

第三章 习题 1简述分组密码算法的基本工作原理。 答分组密码在加密过程中不是

将明文按字符逐位加密而是首先要将待加密的明文进行分组每组的长度相同然后对

每组明文分别加密得到密文。分组密码系统采用相同的加密密钥和解密密钥这是对

称密码系统的显著特点。例如将明文分为m块0121mPPPP每个块在密钥作用下执行

相同的变换生成m个密文块0121mCCCC每块的大小可以任意长度但通常是每块的

大小大于等于64位块大小为1比特位时分组密码就变为序列密码如图是通信双方最

常用的分组密码基本通信模型。 加密算法解码算法明文x密文y明文x密钥k密钥

kkExykDyxAliceBob不安全信道安全信道密钥k攻击者 图分组密码基本通信模型图

在图中参与通信的实体有发送方Alice、接收方Bob。而攻击者是在双方通信中试图

攻击发方或者收方信息服务的实体攻击者经常也称为敌人、对手、搭线者、窃听者、

入侵者等并且攻击者通常企图扮演合法的发送方或者接收方。 2为了保证分组密码

算法的安全对分组密码算法的要求有哪些 答为了保证分组密码的安全强度设计分

组密码时应遵循如下的基本原则 1分组长度足够长防止明文穷举攻击例如DESData

Encryption Standard、IDEAInternational Data Encryption Algorithm等分组密码算法分

组块大小为64比特在生日攻击下用322组密文破解成功概率为0.5同时要求

32152642bitsMB大小的存储空间故在目前环境下采用穷举攻击DES、IDEA等密码算

法是不可能而AES明文分组为128比特同样在生日攻击下用642组密文破解成功概率

为0.5同时要求存储空间大小为644821282bitsMB采用穷举攻击AES算法在计算上就

更不可行。 2 密钥量足够大同时需要尽可能消除弱密钥的使用防止密钥穷举攻击但

是由于对称密码体制存在密钥管理问题密钥也不能过大。 3密钥变换足够复杂能抵

抗各种已知攻击如差分攻击、线性攻击、边信道攻击等即使得攻击者除了穷举攻击

外找不到其它有效攻击方法。 4加密和解密的运算简单易于软硬件高速实现。 5数

据扩展足够小一般无数据扩展。 6差错传播尽可能小加密或解密某明文或密文分组

出错对后续密文解密影响尽可能小。 3以DES为例画出分组密码的密码本ECB模式

的加密解密示意图并简述一下ECB模式的优缺点 答ECB模式是最简单的模式直接

利用加密算法分别对分组数据组加密。明文分成64比特的分组进行加密必要时填充

每个分组用同一密钥加密同样明文分组得到相同密文。图演示了这种操作模式。 假

设输入密钥为K明文分组为1NPP输出为1NCC。 ECB操作模式加密1jKjjNCEP ECB

操作模式解密1jKjjNPDC 分组加密明文分组P1密文分组C1K分组加密明文分组P2

密文分组C2K分组加密明文分组PN密文分组a 加密 密文分组C1密文分组C2

密文分组CN分组加密K分组加密K分组加密K...明文分组P1明文分组P2明文分组

PNb 解密 图 3 ECB加密解密运行模式 ECB模式的特性 1ECB运行模式在给定的

密钥下同一明文组总产生同样的密文组。 2链接依赖性各组的加密独立于其它分组

重排密文分组将导致相应的明文分组重排。 3错误传播单个密文分组中有一个或多

个比特错误只会影响该分组的解密结果。 4安全性由于同一明文产生同样的密文这

会暴露明文数据的格式和统计特征。特别是若明文数据都有固定的格式例如图像并

需要以协议的形式定义那么重要的数据常常在同一位置上出现使密码分析者可以对

其进行统计分析、重传和代换攻击。因此当消息长度超过一个组或者重复使用密钥

加密多个单组消息不建议使用ECB模式。 4以DES为例画出分组密码的CBC、CFB、

OFB工作模式的加密解密示意图并比较三者不同运行模式有何区别 答CBC模式比

ECB模式实现复杂、更安全因此它是最普遍使用的对称密码运行模式。CBC模式中

加密过程第一个明文分组与初始矢量IVInitial Vector进行异或运算而后面的明文分

组和前一密文分组的做异或运算再使用相同的密钥送至加密算法加密形成一条链这

样每个明文分组的加密函数输入与明文分组之间不再有固定的关系。如图演示了这

种操作。 分组加密明文分组P1密文分组C1K分组加密明文分组P2密文分组C2K分组

加密明文分组PN密文分组a 加密初始变量IV 密文分组C1密文分组C2密文分

组CN分组解密K分组解密K分组解密K...明文分组P1明文分组P2明文分组PNb 解密

初始变量IV 图 3-43 CBC加密解密运行模式 如上所述DES是分组长为64比特的分

组密码但利用CFB模式或OFB模式可将DES转换为流密码。流密码不需要对消息填

充而且运行是实时的。因此如果传送字母流可使用流密码对每个字母直接加密并传

送。流密码具有密文和明文一样长这一性质因此如果需要发送的每个字符长为8比特

就应使用8比特密钥来加密每个字符。如果密钥长超过8比特则造成浪费。 图3-44

是CFB模式示意图设传送的每个单元如一个字符是j比特长通常取j8与CBC模式一样

明文单元被链接在一起使得密文依赖是前面所有明文的函数。 密文分组C1分组加

密K明文分组P1移位寄存器选j比特64-j比特选j比特丢弃64-j比特初始变量IV密文分

组C2分组加密K明文分组P2移位寄存器选j比特64-j比特选j比特丢弃64-j比特jjj密文

分组CN分组加密K移位寄存器选j比特64-j比特选j比特丢弃64-j比特jjjjjj明文分组

PN...a 加密646464646464密文分组C1分组加密K明文分组P1移位寄存器选j比特64-j

比特选j比特丢弃64-j比特初始变量IV密文分组C2分组加密K明文分组P2移位寄存器

选j比特64-j比特选j比特丢弃64-j比特jjj密文分组CN分组加密K移位寄存器选j比特

64-j比特选j比特丢弃64-j比特jjjjjj明文分组PN...b 解密646464646464 图 3-44 CFB

加密解密运行模式 OFB模式的结构类似于CFB将分组密码算法作为一个密钥流产

生器其输出的j-bit密钥直接反馈至分组密码的输入端同时这j-bit密钥和输入的j-bit

明文段进行异或运算见图3-45所示。不同之处如下OFB模式是将加密算法的输出反

馈到移位寄存器而CFB模式中是将密文单元反馈到移位寄存器克服了CBC和CFB的

错误传播所带来的问题。 密文分组C1分组加密K明文分组P1移位寄存器选j比特64-j

比特选j比特丢弃64-j比特密文分组C2分组加密K明文分组P2移位寄存器选j比特64-j

比特选j比特丢弃64-j比特jjj密文分组CN分组加密K移位寄存器选j比特64-j比特选j

比特丢弃64-j比特jjjjjj明文分组PN...a 加密646464646464密文分组C1分组加密K明

文分组P1移位寄存器选j比特64-j比特选j比特丢弃64-j比特初始变量IV密文分组C2

分组加密K明文分组P2移位寄存器选j比特64-j比特选j比特丢弃64-j比特jj密文分组

CN分组加密K移位寄存器选j比特64-j比特选j比特丢弃64-j比特jjjjjj明文分组PN...b

解密646464646464jj 图 3-45 OFB加密解密运行模式 ?? CBC适用于文件加密但较

ECB慢。安全性加强。 ?? OFB和CFB较CBC慢许多。每次迭代只有少数bit完成加密。

若可以容忍少量错误扩展此时用CFB。在字符为单元的流密码中多选CFB模式。 ??

OFB用于高速同步系统没有错误传播。 5CBCCFB工作模式中都具有错误传播的特

性以DES为例例如图3-34中若密文组2C出错。 1明文组1P和2P分别会受到什么影响

2明文组3P后的分组是否会受到影响 3若CFB工作模式反馈值可以设定为j比特为8

比特如图3-44中若密文组2C 中有3比特的数据出错对哪些明文造成影响 解1在

CBC工作模式假设输入密钥为K明文分组为1NPP输出为1NCC初始IV变量为0C

CBC操作模式加密11jKjjjNCECP CBC操作模式解密11jjKjjNPCDC 因此若某组密文

组jC出错时则会影响到分组jC和1jC的解密因为jP依赖1jC和jC1jP依 赖jC和1jC即该

组恢复的明文jP和下一组1jP一般来说完全随机的50有错因此若密文jC有错但1jC之

后没有错误2jC及后面的分组解密将不会受中错误比特的影响。 因此若密文2C出错

则明文组1P将不受影响能正确解密出1P。而明文2P分别会受到影响不能 正确解密

出来。3P也会受到影响不能正确解密 2明文组3P后的分组是不会受到影响。 3若

CFB工作模式反馈值可以设定为j比特为8比特在CFB模式中若一个或多个比特错误

出现在r比特的密文组jC中则会影响到分组jC和后续/nr个密文分组的解密直到n个比

特的密文被处理在此之后出错的分组jC完全移出移位寄存器。例对于8位1个字节的

加密则会产生9字节的错误。 6以DES为例8比特的分组密码的输出反馈OFB模式若

加密时明文的一个比特错误对密文造成什么影响在传输过程中密文的一个比特发生

错误对接收方解密会造成什么影响 解OFB模式的传输过程中加密明文的一个比特

错误则会造成本组的密文出错后续密文没有影响。OFB模式的传输过程中的比特错

误不会被传播。例如jC中出现一个或多个比特错误在解密结果中只有jP受到影响以

后各明文单元则不受影响。 8对DES的S盒3输入100100请指出有多少个输出位用二

进制表示。 解对于DES 的S盒3输入100100行值为2列值为2因此S盒3中第2行第2列

对应的值为十进制为4二进制为0100 9写出模59同余的两个整数。 解1≡60 mod 59 10

利用欧拉定理计算32007mod 41的余数。 解根据欧拉定理设n≥2且an1则1modnan 因

为3411所以3411mod41因为4140即340≡1mod41。 而200750×407 3200134050 ·37

≡33 .34 mod 41 ≡ 27 81 mod 41 ≡ 27 40 mod 41 ≡ 14 mod 41 即32007mod 41的余数为

14。 11已知a25m59利用欧几里得除法计算a1mod m。 解采用欧几里得扩展算法求

解251mod 59。 592×259 252×97 91×72 73×21 则17-3×2 7-3×9-1×7 -3×94×7

-3×94×25-2×9 4×25-11×9 4×25-11×59-2×25 26×25-11×59 等式两端同时mod59得

26×25 ≡1mod59 故25模59的逆元为16故一般说25模59的逆元为16. 12计算12×15×18

的欧拉函数的值。 解12×15×18 12×15×18 23×34×52-1×22×3-1×33×442274864 13给

出群的定义并举出一个含有限个元素的群。 解设G为非空集合在G内定义了一种代

数运算为ο若满足下述公理 1有封闭性。对任意a、b∈G恒有aοb∈G. 2结合律成立。

对任意a、b、c∈G有aοbοcaοbοc 3G中有一恒等元e存在对任意a∈G 有e∈G 使

aοeeοaa 4对任意a∈G 存在a的逆元a-1∈G使aοa-1 a-1οae 则G构成一个群。 若群G

满足交换律则称群G为交换群 例如对于非空集合G0 1 2 3 4 5 6 7 8 9 10在mod11的

情况下做加法运算构成一个群且是交换群。下面看看G满足公理的情况。 1封闭性。

对任意a、b∈G恒有abmod11∈G. 例如 8917≡6mod11∈G 满足封闭性性质。 2结合

律成立。对任意a、b、c∈G有ab ca bc。这个容易理解。 3G中有一恒等元e存在对

任意a∈G 有e∈G 使aeeaa. 在给定的集合G中e0 满足上面的性质故恒等元存在。 4

对任意a∈G存在a的逆元a-1∈G使aa-1 a-1ae. 例如 7在集合中的逆元为4因74mod11

≡0 显然加法满足交换律故该群是交换群。 14已知x4x1是F2x中的不可约多项式在

F2x/ x4x1中的计算1. x31×x31 2. x2-1mod x4x1。 解x31×x31 mod x4x1 x61mod x4x1

x2x4x1 x3 x21mod x4x1 x3 x21mod x4x1 x2-1mod x4x1可以采用欧几里得扩展算法

如下求解 x4x1 x2× x2x1 x2x1 ×x11 1 x2-x1 ×x1 1 x2-x1 × x4x1- x2× x2 1 x2×x3x -x1

× x4x1 两边同时模x4x1可得x2×x3x 1mod x4x1因此x2-1 x3x mod x4x1 16AES的主

要优点是什么 解AES算法的主要优点是安全性、效率、可实现和灵活等优点成为美

国新的高级加密标准AES 17AES的基本变换有哪些其基本运算方法。 答1.字节代替

SubBytes通过一个非线性的替换函数用查找表的方式把每个字节替换成对应的字

节。 2. 行移位ShiftRows将矩阵中的每个横列进行循环式移位。 3. 列混合

MixColumns为了充分混合矩阵中各个直行的操作。这个步骤使用线性转换来混合每

行内的四个字节。 4. 轮?茉考覣ddRoundKey矩阵中的每一个字节都与该次循环的

子密钥round key做XOR逻辑运算每个子密钥由密钥生成方案产生。 18AES的解密

算法和AES的加密算法有什么不同 答AES算法解密过程中的基本运算除了轮密钥

加AddRoundKey与AES加密算法中一样其它基本运算字节替代SubBytes、行移位

ShiftRows、列混合MixColumns都要求逆解密过程中的基本运算为逆字节替代

InvSubBytes、逆行移位InvShiftRows、逆列混合InvMixColumns 19简述SMS4算法的

加密过程。 设明文输入为X0X1 X2 X33242Z密文输出为Y0Y1 Y2 Y3X35X34 X33

X323242Z轮密钥为rk0 rk1 … rk31322Z。 则SMS4具体算法如下如图3-38所示

4123123iiiiiiiiiiiXFXXXXrkXTXXXrk0131.i 密文Y Y0Y1 Y2 Y3X35X34 X33 X32

SM4算法的解密变换与加密变换结构相同不同的仅是轮密钥的使用顺序。 加密时轮

密钥的使用顺序为rk0 rk1 … rk31 解密时轮密钥的使用顺序为rk31 rk30 … rk0 定义

反序变换R为X32X33 X34 X35 经反序变换R为X35X34 X33 X32。 输出第1轮

X1X2X3X0128比特明文X第2轮X1X2X3X4X5X2X3X4…………X34X31X32X33第

32轮X32X33X34X35反序变换RY1Y2Y3Y0128比特密文Yrk0rk1rk31XiS盒置换线性

变换LT变换Xi1Xi2Xi3Xi1Xi2Xi3Xi4轮函数F第i1轮X32X33X34X35X32X33X34X35

反序变换R 图3-38 SMS4加密算法流程 20RC6加密体制与Twofish加密体制有何区

别 RC6是AES候选算法之一由Rivest、Robshaw、Sidney和Yin提交的它可能是最 简

单的AES算法RC6是RC5的进一步改进。它的明文分组块大小为128比特密钥可以为

128、192或256比特共进行20轮的加密。 RC6整个加密过程需要44个子密钥这些密

钥都是从初始的128比特密钥通过一系列复杂运算而生成的。 Twofish 是

counterpane 公司向NIST提交的一种满足AES要求的加密算法设计者 为Schneier。

Twofish 采用128比特数据块128 bits block128、192、256比特可变长度密钥。Twofish

算法是进入NIST第二轮 5种加密算法中的一种它同时具有RC6和Rijndael的某些特

性与DES算法一样使用了16轮的Feistel结构来加密明文并应用了一些特殊的操作例

如与密钥相关的S盒和矩阵相乘操作等。 Twofish加密过程中需要40个子密钥由初始

密钥通过复杂的密钥生成算法而生成的。其中子密钥既要用于Feistel结构的各轮F盒

中也用于生成与密钥相关的S盒因而S盒具有动态特性使得攻击者无法预先分析增

强了算法的安全性。 Twofish加密算法与RC6算法类似128比特数据也即16字节。然

后将这16字节分为 4组每组32比特即 4字节。在循环之前首先对这 4 组数据分别用

K0、 K1 、K2 、K3进行异或操作称之为input whitening然后对 异或后的数据分组

进行计算。

发布评论

评论列表 (0)

  1. 暂无评论