11.武汉大学计算机学院信息安全专业2004级“密码学”课程考试题1)在公钥密码的密钥管理中,公开的加密钥Ke和保密的解密钥Kd的秘密性、真实性和完整性都需要确保吗?说明为什么?①公开的加密钥Ke:秘密性不需确保,真实性和完整性都需要确保。因为公钥是公开的,所以不需要保密。但是如果其被篡改或出现错误,则不能正确进行加密操作。如果其被坏人置换,则基于公钥的各种安全性将受到破坏,坏人将可冒充别人而获得非法利益。②保密的解密钥Kd:秘密性、真实性和完整性都需要确保。因为解密钥是保密的,如果其秘密性不能确保,则数据的秘密性和真实性将不能确保。如果其真实性和完整性受到破坏,则数据的秘密性和真实性将不能确保。2、对DES和AES进行比较,说明两者的特点和优缺点。DES:分组密码,Feist结构,明文密文64位,有效密钥56位。有弱密钥,有互补对称性。适合硬件实现,软件实现麻烦。安全。算法是对合的。AES:分组密码,SP结构,明文密文128位,密钥长度可变≥128位。无弱密钥,无互补对称性。适合软件和硬件实现。安全。算法不是对合的六、考虑RSA密码体制:(15分)1.取e=3有何优缺点?取d=3安全吗?为什么?②设n=35,已截获发给某用户的密文C=10,并查到该用户的公钥e=5,求出明文M。解答:①e=3的优点是计算快,因为其二进制表示中只有2个1,缺点是不安全。当M较小时,直接开立方可求出M。d=3不安全,经不起穷举攻击。②分解n=35=7×5,于是p=7,q=5。φ(n)=6×4=24。因为e=5,根据ed=1modφ(n),求出d=5根据M=Cdmodn,M=105mod35,求出M=5。八、在下述站点认证协议中函数f起什么作用?去掉f行不行?为什么?(15分)设A,B是两个站点,A是发方,B是收方。它们共享会话密钥Ks,f是公开的简单函数。A认证B是否是他的意定通信站点的协议如下:21.A产生一个随机数RN,并用Ks对其进行加密:C=E(RN,Ks),并发C给B。同时A对RN进行f变换,得到f(RN)。2.B收到C后,解密得到RN=D(C,Ks)。B也对RN进行f变换,得到f(RN),并将其加密成C’=E(f(RN),Ks),然后发C’给A。3.A对收到的C’解密得到f(RN),并将其与自己在第①步得到的f(RN)比较。若两者相等,则A认为B是自己的意定通信站点。否则A认为B不是自己的意定通信站点。解答:去掉f是不行的。如果去掉f,则在第②步的操作不需要密钥,于是坏人截获RN=D(C,Ks)后,发给A,A不能察觉C。于是C假冒成果。不去掉f时,在第②步的操作需要密钥,于是坏人没有密钥,不能冒充。3