网络与信息安全概论,第三章 作业
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
网络与信息安全概论作业3
一、思考题:
3.1 为什么说研究Feistel密码很重要?
答:Feistel 密码结构是用于分组密码中的一种对称结构。Feistel提出利用乘积密码可获得简单的代换密码,乘积密码指顺序的执行两个或多个基本密码系统,使得最后结果的密码强度高于每个基本密码系统产生的结果。他的优点在于:由于它是对称的密码结构,所以对信息的加密和解密的过程就极为相似,甚至完全一样。这就使得在实施的过程中,对编码量和线路传输的要求就减少了几乎一半。此外,Feistel密码结构开辟了新的加密算法模式,很多密码标准都采用了Feistel 结构,其中包括DES。
3.2 分组密码和流密码的区别是什么?
答:分组密码是将一个明文分组作为整体加密并且通常得到的是与明文等长的密文分组。流密码是每次加密一个字节或一个位。
3.3 为什么使用表3.1所示的任意可逆代替密码不实际?
答:对于像N=4这样的较小分组,密码系统等价于传统代替密码。用明文的统计分析方法攻击它是轻而易举的。这种脆弱性并非来自于代替密码,而是因为使用的分组规模太小。如果N充分大,并且允许明密文之间采用任意的变换,那么明文的统计特征将被掩盖从而不能用统计方法来攻击这种体制,但是对于系统来说不切实际。从实现的角度来看,分组长度很大的可逆代换结构是不实际的。如果分组长度太小,系统则等价于古典的代换密码,容易通过对明文的统计分析而被攻破。表3.1定义了n=4时从明文到密文的一个可逆映射,
其中第2列是每个明文分组对应的密文分组的值,可用来定义这个可逆映射。因此从本质上来说,第2列是从所有可能映射中决定某一特定映射的密钥。这个例子中,密钥需要64比特。一般地,对n比特的代换结构,密钥的大小是n×2n比特。如对64比特的分组,密钥大小应是64×264=270≈1021比特,因此难以处理。
3.4 什么是乘积密码?
答:乘积密码就是以某种方式连续执行两个或多个简单密码(如替代、置换),以使得所得到的最后结果或乘积从密码编码的角度比其任意一个组成密码都更强的分组密码。
3.5 混淆与扩散的差别是什么?
答:(1) 扩散(diffusion):将明文的统计特性散布到密文中去,实现方式是使得明文的每一位影响密文中多位的值,使得每一字母在密文中出现的频率比在明文中出现的频率更接近于相等。其方法是尽可能的使明文和密文间的统计关系变得复杂,以挫败推倒出密钥的企图。
(2) 混淆则是尽可能的使密文和加密密钥间的统计关系变得更加复杂,以阻止攻击者发现密钥。其目的在于使作用于明文的密钥和密文之间的关系复杂化,使明文和密文之间、密文和密钥之间的统计相关特性极小化,从而使统计分析攻击不能奏效。
3.6 哪些参数与设计选择决定了实际的Feistel密码算法?
答:(1) 分组长度:分组越长意味着安全性越高,但是会降低加/解密的速度。
(2) 密钥长度:密钥越长意味着安全性越高,但是会降低加/解密的速度。
迭代轮数:Feistel密码的本质在于单轮不能提供足够的安全性,而多轮加密可取的很高的安全性。景点轮数是16。
(3) 子密钥产生算法:子密钥产生越复杂,密码分析就越困难。
(4) 快速软件加/解密:加密算法被嵌入到应用程序中,以避免硬件实现的麻烦,因此,算法执行的速度很重要。
(5) 简化分析难度:如果算法描述起来简洁清楚,那么分析其脆弱性也就容易一些,因而可以开发出更强的算法。
3.7 设计DES S盒的目的是什么?
答:S盒是一种代替方法,增加了非线性的置换的复杂性。每个S-盒将6位输入变成4位的输出。它是非线性的,决定了DES算法的安全性。
3.8 解释什么是雪崩效应?
答:明文或密钥的某一位发生变化会导致密文的很多位发生变化,这被称为雪崩效应。3.9 差分分析与线性分析的区别是什么?
答:(1) 线性密码分析是一种已知明文攻击,也是一种统计攻击,它以求线性近似为基础。通过寻找现代密码算法变换的线性近似来攻击。差分密码分析的基本思想是:通过分析明文对的差值与密文对的差值的影响来恢复某些密钥位。
(2) 差分密码分析可用来攻击任何由迭代一个固定的轮函数的结构的密码。差分密码分析在许多方面与线性密码分析相似,主要区别在于差分密码分析包含了将两个输入的异或与其相对应的两个输出的异或相比较。