当前位置:文档之家› 密码学试卷

密码学试卷

武汉大学计算机学院信息安全专业2004级“密码学”课程考试题(卷面八题,共100分,在总成绩中占70分)一、单表代替密码(10分)①使加法密码算法称为对合运算的密钥k称为对合密钥,以英文为例求出其对合密钥,并以明文M=WEWILLMEETATMORNING 为例进行加解密,说明其对合性。

②一般而言,对于加法密码,设明文字母表和密文字母表含有n个字母,n为≥1的正整数,求出其对合密钥k。

二、回答问题(10分)①在公钥密码的密钥管理中,公开的加密钥Ke和保密的解密钥Kd的秘密性、真实性和完整性都需要确保吗?说明为什么?②简述公钥证书的作用?三、密码比较,说明两者的特点和优缺点。

(10分)对DES和AES进行比较,说明两者的特点和优缺点。

四、设A=[01,02,03,04]T,B=[b0,b1,b2,b3]T,利用反对数表查表计算AES中的列混淆,求出B。

(10分)五、设g(x)=x4+x2+1,g(x)为GF(2)上的多项式,以其为连接多项式组成线性移位寄存器。

画出逻辑框图。

设法遍历其所有状态,并写出其状态变迁及相应的输出序列。

(15分)六、考虑RSA密码体制:(15分)1.取e=3有何优缺点?取d=3安全吗?为什么?2.设n=35,已截获发给某用户的密文C=10,并查到该用户的公钥e=5,求出明文M。

七、令素数p=29,椭圆曲线为y2=x3+4x+20 mod 29,求出其所有解点,并构成解点群,其解点群是循环群吗?为什么?。

(15分)八、在下述站点认证协议中函数f起什么作用?去掉f行不行?为什么?(15分)设A,B是两个站点,A是发方,B是收方。

它们共享会话密钥Ks ,f是公开的简单函数。

A认证B是否是他的意定通信站点的协议如下:1.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不是自己的意定通信站点。

参考答案(卷面八题,共100分,在总成绩中占70分)一、单表代替密码(10分)①使加法密码算法称为对合运算的密钥k称为对合密钥,以英文为例求出其对合密钥,并以明文M=WEWILLMEETATMORNING 为例进行加解密,说明其对合性。

②一般而言,对于加法密码,设明文字母表和密文字母表含有n个字母,n为≥1的正整数,求出其对合密钥k。

解答:1.加法密码的明密文字母表的映射公式:A为明文字母表,即英文字母表,B为密文字母表,其映射关系为:j=i+k mod 26显然当k=13时,j=i+13 mod 26,于是有i = j+13 mod 26。

此时加法密码是对合的。

称此密钥k=13为对合密钥。

举例:因为k=13,所以明文字母表A和密文字母表B为a b c d e f g h i j k l m n o p q r s t u v w x y zn o p q r s t u v w x y z a b c d e f g h i j k l m第一次加密:M=W E W I L L M E E T A T M O R N I N GC=J R J V Y Y Z R R G O G Z B E A V A T第二次加密:C=W E W I L L M E E T A T M O R N I N G?? 还原出明文,这说明当k=13时,加法密码是对合的。

称此密钥为对合密钥。

②设n为模,若n为偶数,则k=n/2为对合密钥。

若n为奇数,n/2不是整数,故不存在对合密钥。

二、回答问题(10分)1)在公钥密码的密钥管理中,公开的加密钥Ke和保密的解密钥Kd的秘密性、真实性和完整性都需要确保吗?说明为什么?解答:①公开的加密钥Ke:秘密性不需确保,真实性和完整性都需要确保。

因为公钥是公开的,所以不需要保密。

但是如果其被篡改或出现错误,则不能正确进行加密操作。

如果其被坏人置换,则基于公钥的各种安全性将受到破坏,坏人将可冒充别人而获得非法利益。

②保密的解密钥Kd:秘密性、真实性和完整性都需要确保。

因为解密钥是保密的,如果其秘密性不能确保,则数据的秘密性和真实性将不能确保。

如果其真实性和完整性受到破坏,则数据的秘密性和真实性将不能确保。

③举例(A)攻击者C用自己的公钥置换PKDB中A的公钥:(B)设B要向A发送保密数据,则要用A的公钥加密,但此时已被换为C的公钥,因此实际上是用C的公钥加密。

(C)C截获密文,用自己的解密钥解密获得数据。

2) 简述公钥证书的作用?公钥证书是一种包含持证主体标识,持证主体公钥等信息,并由可信任的签证机构(CA)签名的信息集合。

公钥证书主要用于确保公钥及其与用户绑定关系的安全。

公钥证书的持证主体可以是人、设备、组织机构或其它主体。

公钥证书能以明文的形式进行存储和分配。

任何一个用户只要知道签证机构(CA)的公钥,就能检查对证书的签名的合法性。

如果检查正确,那么用户就可以相信那个证书所携带的公钥是真实的,而且这个公钥就是证书所标识的那个主体的合法的公钥。

从而确保用户公钥的完整性。

三、密码比较,说明两者的特点和优缺点。

(10分)对DES和AES进行比较,说明两者的特点和优缺点。

解答:DES:分组密码,Feist结构,明文密文64位,有效密钥56位。

有弱密钥,有互补对称性。

适合硬件实现,软件实现麻烦。

安全。

算法是对合的。

AES:分组密码,SP结构,明文密文128位,密钥长度可变≥128位。

无弱密钥,无互补对称性。

适合软件和硬件实现。

安全。

算法不是对合的。

四、设A=[01,02,03,04]T,B=[b0,b1,b2,b3]T,利用反对数表查表计算AES中的列混淆,求出B。

(10分)解答:根据A,写出A(x)=04x3+03x2+02x+01,于是B(x)=A(x)C(x) mod x4+1,其中C(x)=03x3+01x2+01x+02。

根据式(3-45),写成矩阵形式:于是逐一查表计算可得。

五、设g(x)=x4+x2+1,g(x)为GF(2)上的多项式,以其为连接多项式组成线性移位寄存器。

画出逻辑框图。

设法遍历其所有状态,并写出其状态变迁及相应的输出序列。

(15分)解答:1) 逻辑框图六、考虑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=1 modφ(n),求出d=5。

根据M=Cd mod n,M=105 mod 35,求出M=5。

七、令素数p=29,椭圆曲线为y2=x3+4x+20 mod 29,求出其所有解点,并构成解点群,其解点群是循环群吗?为什么?。

(15分)解答:1.穷举:(∞,∞),(2,6),(4,19),(8,10),(13,23),(16,2),(19,16),(27,2)1.7),(2,23),(5,7),(8,19),(14,6),(16,27),(20,3),(27,27)2.22),(3,1),(5,22),(10,4),(14,23),(17,10),(20,26)3.5),(3,28),(6,12),(10,25),(15,2),(17,19),(24,7)(1,24),(4,10),(6,17),(13,6),(15,27),(19,13),(24,22)1.解点群有37个元素,37是素数,故解点群是循环群。

八、在下述站点认证协议中函数f起什么作用?去掉f行不行?为什么?(15分)设A,B是两个站点,A是发方,B是收方。

它们共享会话密钥Ks ,f是公开的简单函数。

A认证B是否是他的意定通信站点的协议如下:1.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时,在第②步的操作需要密钥,于是坏人没有密钥,不能冒充。

相关主题