现代密码学期末考试题

萌到你眼炸
902次浏览
2020年08月03日 01:21
最佳经验
本文由作者推荐

别丢掉-大学生实习心得


班级:________学号:_______ 班内序号_____ 姓名:_________

--------------------------------装 ----------------------订 --------------------------------------- 线-------------------------------------------------
北京邮电大学2005——2006学年第二学期

《现代密码学》期末考试试题(A卷)






一、学生参加考试须带学生证或学 院证明,未带者不准进入考场。学生必须按照监考教师指定
座位就坐。
二、书本、参考资料、书包等与考试无关的东西一律放到考场指定位置。
三、学生不得另行携 带、使用稿纸,要遵守《北京邮电大学考场规则》,有考场违纪或作弊行为
者,按相应规定严肃处理。
四、学生必须将答题内容做在专用答题纸上,做在试卷、草稿纸上一律无效。

















考试时间








年 月 日








总分



考试课程
题号
满分
得分
阅卷
教师

试题一(10分):密码系统安全性的定义有几种?它们的含义是什么?
答:现有两种定义“ 安全性”的方法。一种是基于信息论的方法(经典方法)。另一种是基于计算复杂性理论的方法(现
代方 法)。


基于信息论的定义是用密文中是否蕴含明文的信息作为标准。不严格地说,若密 文中不含明文的任何信息,则认为该密
码体制是安全的,否则就认为是不安全的。
基于计算复 杂性理论的安全性定义则不考虑密文中是否蕴含明文的信息,而是考虑这些信息是否能有效地被提取出来。
换句话说,把搭线者提取明文信息的可能性改为搭线者提取明文信息的可行性,这种安全性称为有条件安全性, 即搭线者在
一定的计算资源条件下,他不能从密文恢复出明文。

试题二(10分): 假设Hill密码加密使用密钥
K


< br>118


,试对明文abcd加密。


37< br>

118

118

答:(a,b)=(0,1)加密后变为(0,1)

同理(c,d)=(2,3) 加密 后变为(2,3)


37


=(3,7)=(d,h );

37


=(31,37)=(5,11)=(F,L)。< br>
所以,明文(abcd)经过Hill密码加密后,变为密文(DHFL)。

试题三(10分):设有这样一个密码系统,它的明文空间
P

x,y
的概率分布为
p
P
(x)14,p
P
(y)34
;它
的密钥空间
K

a,b,c

的概率分布为
p
K
(a)12,p
K
(b)p
K
(c)1 4
;它的密文空间
C

1,2,3,4

,假定该密码系
统的加密函数为:
e
a
(x)1,e
a
(y)2;e< br>b
(x)2,e
b
(y)3;e
c
(x)3,e
c
(y)4
。请计算:
(1) 密文空间的概率分布;
(2) 明文关于密文的条件分布;
(3) 明文空间的熵。
答:(1)密文空间的概率分布为:18;716;14;316




(2)明文关于密文的条件分布
p(mc)
表如下:








11333
(3)明文空间的熵为:< br>H(P)log
2
log
2
2(log
2
3)0.81

44444
m
c

1
2
3
4
x
1
17
14
0
y
0
67
34
1

试题四(10分)设DES密码中 的初始密钥是K=(
b
0
,b
1
,,b
63
,) ,记DES加密算法中16轮加密过程中所使
用的子密钥分别为
K
1
,K2
,,K
16
。请你计算出第一个子密钥
K
1
的数学 表达式。
答:先对初始密钥K=(
b
0
,b
1
,,b< br>63
,)进行一个密钥置换PC-1(见下PC-1表1),将初始密钥的8个奇偶校验位剔除掉 ,而
留下真正的56比特初始密钥(
C
0
D
0
)。接着分别 对
C
0

D
0
进行左一位循环,得到
C
1

D
1
,连成56比特数据。再依密钥
置换PC-2(如下PC- 2表2)做重排,便可得到子密钥
K
1



表1:密钥置换PC-1 表2 密钥置换PC-2

PC-1
PC-2
57 49 41 33 25 17 9
14 17 11 24 1 5
1 58 50 42 34 26 18
3 28 15 6 21 10
10 2 59 51 43 35 27
23 19 12 4 26 8
19 11 3 60 52 44 36
16 7 27 20 13 2
63 55 47 39 31 23 15
41 52 31 37 47 55
7 62 54 46 38 30 22
30 40 51 45 33 48
14 6 61 53 45 37 29
44 49 39 56 34 53
21 13 5 28 20 12 4
46 42 50 36 29 32


试题五(10 分)设p和q是两个大于2的素数,并且n=pq。记

(m)
是比正整数m小,但与 m互素的正整
数个数。再设e和d是两个正整数,分别满足gcd(e,

(n)
)=1 ,ed

1(mod

(n)< br>)。设函数E(m)和D(c)分
别定义为E(m)

m
e
( mod n)和D(c)

c
d
(mod n)。请问(1)

(n)
等于多少? (2)请证明对于任何正整
数m,都成立恒等式D(E(m))=m。
答:(1)

(n)
=(p-1)(q-1)。
(2)其实 ,只需要证明RSA的解密正确性就行了。当(m,n)=1时,则由欧拉定理可知m

(n)
1(modn)

当(m,n)>1时,由于n=pq, 故(m,n)必含p, q之一。不妨设(m,n)=p,则m=cp,(1

c
(q)
1(modq)


因此,对于任何k,总有m
k(q1)
1(modq)
, m
k(p1)(q1)
(1)
k(p1)
1(modq)
,即m
k

(n)
1(modq)
。于是存在h(h是某个整数)
满足m
k

(n)
+hq=1。由假定m=cp。故m= m
k

(n)1
+hcpq= m
k

(n) 1
+hcn。这就证明了m=m
k

(n)1
(mod n)。
因此对于n及任何m(mk

(n)1
m(mo dn)
。所以,D(E(m))=D(c)

c
d
=m
e d
=m
l

(n)1
=m(mod n)。命题得证。


试题六(10分):(1)请利用著名的RSA公钥密码算法设计一个数字签名算法( 称为RSA签名算法)。
(2)由于RSA签名算法每次只能对一个固定长度(比如N比特)的消息进行 签名,为了对任意长度的消
息进行签名,有人建议了这样一种处理方法:首先将长消息切割成固定长度N 比特的数据块,然后用RSA
签名算法对每个数据块进行签名,最后将这些签名块拼接起来就得到了长消 息的签名。请问这种切割处理
方法所获得的签名算法安全吗?为什么?
答:(1)RSA签名算法的系统参数可设为n=pq,且p和q是两个大素数,则 M=A=Z
n
,定义К={(n,d,p,q,e)}这里e和d 满
足ed

1(modΦ(n))( Φ()是欧拉函数)。公开密钥 n,d;私有密钥 p,q,e; 签名算法为Sig
K
2
(x)=x
e
mod n;签名验证算法为
Ver(x,y)=TRUE
x

y
d
(modn). (x,y)

Z
n

Z
n
。更直观地说,用RSA解密算法作为签名,用RSA的加 密作为验证,于是,只
有合法用户自己才能签名,而任何人都可以验证签名的真实性。其实,基于任何一 个加、解密算法顺序可交换的密码算法都
可用于设计一个数字签名算法,只需要以解密做签名,以加密做 验证就行了。
(2)切割和拼接处理方法所获得的签名算法不安全。因为,假如m和n是两个N 比特的消息,那么,黑客可以通过已知
的m和n的签名S(m)S(n),至少获得另一个消息nm的合 法签名S(n)S(m)。


试题七(10分):(1)请详细叙述Diffie- Hellman密钥预分配协议;(2)如果去掉Diffie-Hellman密钥
预分配协议中的证 书(即不存在可信中心),请你给出一种有效的中间人攻击方法,即攻击者截获通信双方
通信的内容后可 分别冒充通信双方,以获得通信双方协商的密钥。

答:(1)为完整描述Diffie-Hellman密钥预分配协议,用ID(U)表示网络中用户U的某些识 别信息。每个用户U有一
个秘密指数
a
U
(0a
U
p 2)
和一个相应的公钥
b
U


a
U
mo dp

可信中心有一个签名方案,该签名方案的公开验证算法记为Ver
TA
,秘密签名算法记为Sig
TA
。当一个用户U入网时,可信
中心需给他颁发一个证 书:C(U)=(ID(U),b
U
,Sig
TA
(ID(U),b
U
))。可信中心对证书的签名允许网络中的任何人能验证它所包含的信
息。U和V计算共同的 密钥
k
U,V


a
U
a
V
mo dp
的协议,即,Diffie-Hellman密钥预分配协议如下:
*
1)公开 一个素数
p
和一个本原元

Z
P

2)V使用 他自己的秘密值
a
V
及从U的证书中获得的公开值
b
U
,计 算
a
V

k
U,V


aU
a
V
modpb
U
modp

3)U使用 他自己的秘密值
a
U
及从V的证书中获得的公开值
b
V
,计 算
a
U

k
U,V


a
U
a
V
modpb
V
modp

(2)如果在上述Diffie-Hellman密钥预分配协议中去掉了可信中心和证书,那么,黑客可以按如 下步骤分别与U和V约
定合法的密钥,从而,窃听U和V的全部通信过程:黑客以V的身份,与U完成预 分配协议,获得一个与U共享的密钥A;
同时,黑客以U的身份,与V完成预分配协议,获得一个与V 共享的密钥B。当U想将消息M加密发送给V时,U用A做
密钥,由于,黑客知道密钥A,所以,黑客能 够解密获得消息M。然后,黑客再用B做密钥对消息M加密,并将此密文发给
用户V,用户V用B解密获 得M。在该中间人过程中,黑客既能够窃听U与V通信的全部过程,而且,用户U与V无法感

觉到中间人的存在。


班级:________学号:_______ 班内序号_____ 姓名:_________

--------------------------------装 ----------------------订 --------------------------------------- 线-------------------------------------------------
北京邮电大学2005——2006学年第二学期

《现代密码学》期末考试试题(A卷)






一、学生参加考试须带学生证或学 院证明,未带者不准进入考场。学生必须按照监考教师指定
座位就坐。
二、书本、参考资料、书包等与考试无关的东西一律放到考场指定位置。
三、学生不得另行携 带、使用稿纸,要遵守《北京邮电大学考场规则》,有考场违纪或作弊行为
者,按相应规定严肃处理。
四、学生必须将答题内容做在专用答题纸上,做在试卷、草稿纸上一律无效。

















考试时间








年 月 日








总分



考试课程
题号
满分
得分
阅卷
教师

试题一(10分):密码系统安全性的定义有几种?它们的含义是什么?
答:现有两种定义“ 安全性”的方法。一种是基于信息论的方法(经典方法)。另一种是基于计算复杂性理论的方法(现
代方 法)。


基于信息论的定义是用密文中是否蕴含明文的信息作为标准。不严格地说,若密 文中不含明文的任何信息,则认为该密
码体制是安全的,否则就认为是不安全的。
基于计算复 杂性理论的安全性定义则不考虑密文中是否蕴含明文的信息,而是考虑这些信息是否能有效地被提取出来。
换句话说,把搭线者提取明文信息的可能性改为搭线者提取明文信息的可行性,这种安全性称为有条件安全性, 即搭线者在
一定的计算资源条件下,他不能从密文恢复出明文。

试题二(10分): 假设Hill密码加密使用密钥
K


< br>118


,试对明文abcd加密。


37< br>

118

118

答:(a,b)=(0,1)加密后变为(0,1)

同理(c,d)=(2,3) 加密 后变为(2,3)


37


=(3,7)=(d,h );

37


=(31,37)=(5,11)=(F,L)。< br>
所以,明文(abcd)经过Hill密码加密后,变为密文(DHFL)。

试题三(10分):设有这样一个密码系统,它的明文空间
P

x,y
的概率分布为
p
P
(x)14,p
P
(y)34
;它
的密钥空间
K

a,b,c

的概率分布为
p
K
(a)12,p
K
(b)p
K
(c)1 4
;它的密文空间
C

1,2,3,4

,假定该密码系
统的加密函数为:
e
a
(x)1,e
a
(y)2;e< br>b
(x)2,e
b
(y)3;e
c
(x)3,e
c
(y)4
。请计算:
(1) 密文空间的概率分布;
(2) 明文关于密文的条件分布;
(3) 明文空间的熵。
答:(1)密文空间的概率分布为:18;716;14;316




(2)明文关于密文的条件分布
p(mc)
表如下:








11333
(3)明文空间的熵为:< br>H(P)log
2
log
2
2(log
2
3)0.81

44444
m
c

1
2
3
4
x
1
17
14
0
y
0
67
34
1

试题四(10分)设DES密码中 的初始密钥是K=(
b
0
,b
1
,,b
63
,) ,记DES加密算法中16轮加密过程中所使
用的子密钥分别为
K
1
,K2
,,K
16
。请你计算出第一个子密钥
K
1
的数学 表达式。
答:先对初始密钥K=(
b
0
,b
1
,,b< br>63
,)进行一个密钥置换PC-1(见下PC-1表1),将初始密钥的8个奇偶校验位剔除掉 ,而
留下真正的56比特初始密钥(
C
0
D
0
)。接着分别 对
C
0

D
0
进行左一位循环,得到
C
1

D
1
,连成56比特数据。再依密钥
置换PC-2(如下PC- 2表2)做重排,便可得到子密钥
K
1



表1:密钥置换PC-1 表2 密钥置换PC-2

PC-1
PC-2
57 49 41 33 25 17 9
14 17 11 24 1 5
1 58 50 42 34 26 18
3 28 15 6 21 10
10 2 59 51 43 35 27
23 19 12 4 26 8
19 11 3 60 52 44 36
16 7 27 20 13 2
63 55 47 39 31 23 15
41 52 31 37 47 55
7 62 54 46 38 30 22
30 40 51 45 33 48
14 6 61 53 45 37 29
44 49 39 56 34 53
21 13 5 28 20 12 4
46 42 50 36 29 32


试题五(10 分)设p和q是两个大于2的素数,并且n=pq。记

(m)
是比正整数m小,但与 m互素的正整
数个数。再设e和d是两个正整数,分别满足gcd(e,

(n)
)=1 ,ed

1(mod

(n)< br>)。设函数E(m)和D(c)分
别定义为E(m)

m
e
( mod n)和D(c)

c
d
(mod n)。请问(1)

(n)
等于多少? (2)请证明对于任何正整
数m,都成立恒等式D(E(m))=m。
答:(1)

(n)
=(p-1)(q-1)。
(2)其实 ,只需要证明RSA的解密正确性就行了。当(m,n)=1时,则由欧拉定理可知m

(n)
1(modn)

当(m,n)>1时,由于n=pq, 故(m,n)必含p, q之一。不妨设(m,n)=p,则m=cp,(1

c
(q)
1(modq)


因此,对于任何k,总有m
k(q1)
1(modq)
, m
k(p1)(q1)
(1)
k(p1)
1(modq)
,即m
k

(n)
1(modq)
。于是存在h(h是某个整数)
满足m
k

(n)
+hq=1。由假定m=cp。故m= m
k

(n)1
+hcpq= m
k

(n) 1
+hcn。这就证明了m=m
k

(n)1
(mod n)。
因此对于n及任何m(mk

(n)1
m(mo dn)
。所以,D(E(m))=D(c)

c
d
=m
e d
=m
l

(n)1
=m(mod n)。命题得证。


试题六(10分):(1)请利用著名的RSA公钥密码算法设计一个数字签名算法( 称为RSA签名算法)。
(2)由于RSA签名算法每次只能对一个固定长度(比如N比特)的消息进行 签名,为了对任意长度的消
息进行签名,有人建议了这样一种处理方法:首先将长消息切割成固定长度N 比特的数据块,然后用RSA
签名算法对每个数据块进行签名,最后将这些签名块拼接起来就得到了长消 息的签名。请问这种切割处理
方法所获得的签名算法安全吗?为什么?
答:(1)RSA签名算法的系统参数可设为n=pq,且p和q是两个大素数,则 M=A=Z
n
,定义К={(n,d,p,q,e)}这里e和d 满
足ed

1(modΦ(n))( Φ()是欧拉函数)。公开密钥 n,d;私有密钥 p,q,e; 签名算法为Sig
K
2
(x)=x
e
mod n;签名验证算法为
Ver(x,y)=TRUE
x

y
d
(modn). (x,y)

Z
n

Z
n
。更直观地说,用RSA解密算法作为签名,用RSA的加 密作为验证,于是,只
有合法用户自己才能签名,而任何人都可以验证签名的真实性。其实,基于任何一 个加、解密算法顺序可交换的密码算法都
可用于设计一个数字签名算法,只需要以解密做签名,以加密做 验证就行了。
(2)切割和拼接处理方法所获得的签名算法不安全。因为,假如m和n是两个N 比特的消息,那么,黑客可以通过已知
的m和n的签名S(m)S(n),至少获得另一个消息nm的合 法签名S(n)S(m)。


试题七(10分):(1)请详细叙述Diffie- Hellman密钥预分配协议;(2)如果去掉Diffie-Hellman密钥
预分配协议中的证 书(即不存在可信中心),请你给出一种有效的中间人攻击方法,即攻击者截获通信双方
通信的内容后可 分别冒充通信双方,以获得通信双方协商的密钥。

答:(1)为完整描述Diffie-Hellman密钥预分配协议,用ID(U)表示网络中用户U的某些识 别信息。每个用户U有一
个秘密指数
a
U
(0a
U
p 2)
和一个相应的公钥
b
U


a
U
mo dp

可信中心有一个签名方案,该签名方案的公开验证算法记为Ver
TA
,秘密签名算法记为Sig
TA
。当一个用户U入网时,可信
中心需给他颁发一个证 书:C(U)=(ID(U),b
U
,Sig
TA
(ID(U),b
U
))。可信中心对证书的签名允许网络中的任何人能验证它所包含的信
息。U和V计算共同的 密钥
k
U,V


a
U
a
V
mo dp
的协议,即,Diffie-Hellman密钥预分配协议如下:
*
1)公开 一个素数
p
和一个本原元

Z
P

2)V使用 他自己的秘密值
a
V
及从U的证书中获得的公开值
b
U
,计 算
a
V

k
U,V


aU
a
V
modpb
U
modp

3)U使用 他自己的秘密值
a
U
及从V的证书中获得的公开值
b
V
,计 算
a
U

k
U,V


a
U
a
V
modpb
V
modp

(2)如果在上述Diffie-Hellman密钥预分配协议中去掉了可信中心和证书,那么,黑客可以按如 下步骤分别与U和V约
定合法的密钥,从而,窃听U和V的全部通信过程:黑客以V的身份,与U完成预 分配协议,获得一个与U共享的密钥A;
同时,黑客以U的身份,与V完成预分配协议,获得一个与V 共享的密钥B。当U想将消息M加密发送给V时,U用A做
密钥,由于,黑客知道密钥A,所以,黑客能 够解密获得消息M。然后,黑客再用B做密钥对消息M加密,并将此密文发给
用户V,用户V用B解密获 得M。在该中间人过程中,黑客既能够窃听U与V通信的全部过程,而且,用户U与V无法感

觉到中间人的存在。

致200米运动员-国庆安排


语文阅读答题技巧-2012年6月四级考试


海南省委组织部-湖南财专


北京邮电大学招生-反腐倡廉自查报告


云南的特产-杜晓婷


关于感恩老师的句子-雷锋歌曲


记一件有意义的事-闽南歌谣


麦琪的礼物-皇帝的新衣读后感