网络与信息安全第二次作业
- 1、下载文档前请自行甄别文档内容的完整性,平台不提供额外的编辑、内容补充、找答案等附加服务。
- 2、"仅部分预览"的文档,不可在线预览部分如存在完整性等问题,可反馈申请退款(可完整预览的文档不适用该条件!)。
- 3、如文档侵犯您的权益,请联系客服反馈,我们会尽快为您处理(人工客服工作时间:9:00-18:30)。
Assign 2 - InetSec Crypto
Secret and Public Key Cryptography
密钥和公钥的密码技术
1.How many DES keys, on the average, encrypt a particular plaintext block to a particular cipher-text block? [Kaufman §3.3] (10 points)
一般来说,把一段详细的评述文字加密成一段加密文字,需要多少位DES 密码?
答:DSE一般采用56位长度的Key,所以总共有256种可能,这个数字大约是7.2X1016。
2.Suppose the DES mangler function mapped every 32-bit value to zero, regardless of the value of its input. What function would DES then compute? [Kaufman §
3.5] (10 points)
假设这种DES切割函数就是不管输入什么值每32位的值都映射成0,那么DES是什么函数又是怎么计算的呢?
答:答:置换函数Li=Ki-1;Ri=Li+1*F(Ri-1,Ki)
3.It is said that the initial and final permutations of all 64 bits in DES operation do not enhance the cryptographic strength of the encryption algorithm. Could you provide an explanation without using sophisticated mathematics? (10 points)
据说,64位前后交换位置这种DES方法不能提高加密算法的密码强度。不使用复杂的数学理论你能提供一个解释来说明吗?
答:因为输出排列= ( 输入排列) -1,每一个排列都是一个有次序的Bryant-Tree 排列,所以并没有安全上的改善。
pute the number of 64-bit encryption operations performed for an n bit plaintext using CBC, k-bit OFB and k-bit CFB. Count all encryption operations, not just operations performed on the plaintext itself. Take as an example, n = 1024 and k = 32.
(10 points)
计算64位的数字加密操作通过使用CBC,k位OFB和k位CFB把它变成一个n位的评述文字。计算所有的加密操作,这些操作不仅仅运行在这个评述文字本身。举个例子n=1024和k =32。
答:密文区段串接(Cipher BlockChaining, CBC) 模式k-位元密文反馈(k-bits Cipher Feedback, CFB) 模式加密运算程序:SR1 = IV C1 = Fj (EK(SR1)) ⊕P1 SRm = Sj (SRm-1) || Cm-1 ;m = 2, 3, 4, …, N Cm = Fj (EK(SRm)) ⊕Pm ;m = 2, 3, 4, …, N C = C1 || C2 || C3, …, CN 解密運算程序:SR1 = IV P1 = Fj (DK(SR1)) ⊕C1 SRm = Sj (SRm-1) || Cm-1 ;m = 2, 3, 4, …, N Pm = Fj (DK(SRm)) ⊕Cm ;m = 2, 3, 4, …, N P = P1 || P2 || P3, …, PN k-位元输出反馈(k-bits Output Feedback, OFB) 模式加密运算乘程序:SR1 = IV O1 = Fj (EK(SR1)) C1 = P1 ⊕O1 SRm = Sj (SRm-1) || Om-1 ;m = 2, 3,
4, …, N Om = Fj (EK(SRm)) ;m = 2, 3, 4, …, N Cm = Om ⊕Pm ;m = 2, 3, 4, …, N C = C1 || C2 || C3, …, CN 解密运算程序:SR1 = IV O1 = Fj (DK(SR1)) P1 = O1 ⊕C1 SRm = Sj (SRm-1) || Om-1 ;m = 2, 3, 4, …, N Om = Fj (DK(SRm)) ;m = 2, 3, 4, …, N Pm = Om ⊕Cm ;m = 2, 3, 4, …, N P = P1 || P2 || P3, …, PN
5.Consider the following method of encrypting a message using CBC mode. To encrypt a message, one uses the algorithm for doing a CBC decryption. To decrypt a message, one uses the algorithm for doing a CBC encryption. Would this work? How secure is this alternative method in comparison with the normal CBC mode? (10 points)
考虑以下这种方法,通过CBC模式加密一个消息。为了加密一个消息,可以使用一个CBC 解码算法。为了解密一个消息,可以使用一个CBC加密算法。这是怎么实现的呢?这种转换方法与一般的CBC模式比起来有多安全呢?
答:这种方式是可以的。这种方式不如通常的CBC模式安全,因为解密算法是,每个密文组分别解密,再与上一个块密文亦或就可以恢复明文。解密算法的输入是明文,这样的安全性就非常低。
6.What pseudo-random bit stream is generated by 64-bit OFB with a weak DES key? (10 points)
Note: please refer to Kaufman §3.3.6 for the definition of weak key.
通过使用一个弱的DES密码加密而成的64位OFB,将产生什么伪随机的比特流呢?
注:请参考Kaufman §3.3.6相关章节弱密码的定义
答:OFB是用虚拟随机数产生器加上IV 与密钥,产生“一次性冗字填充”片段,即Ex(IV), Ex(Ex (IV)), Ex(Ex(Ex (IV))), ...。一个弱DES Key是自己本身的反转,对于任何一个块来说b: Ex(b) = Dx(b). So Ex(Ex(b)) = b. 应此OFB的填充序列是Ex(IV), IV, Ex(IV), IV,…..。这样的规律导致不安全性。
7.In RSA algorithm, is it possible for more than one d to work with a given e, p, and q? [Kaufman §6.3] (10 points)
在RSA算法中,当我们知道e,p,g,是否可能得到超过一个d?
答:不能得到,要得到d必须知道p q n e。
8.In RSA algorithm, what is the probability that something to be encrypted will not be in Z*n? [Kaufman §7.11] (10 points)
在RSA算法中,被加密的一些不属于Z*n, ,什么情况下是可能发生的?
9.In the description of possible defense against Man-in-the-Middle Attack [Kaufman §6.4.2, 3], it stated that encrypting the Diffie-Hellman value with the other sides’s public key shall prevent the attack. Why is this case assumption that an attacker can encrypt whatever it wants with the other sides’ public key? [Kaufman §6.2] (10 poi nts)
在描述defense against Man-in-the-Middle Attack这种可能性时,它说用另外种方面的普通密码加密这个Diffie-Hellman值可以预防这方面的攻击。为什么一个攻击可以用另一方面的普