当前位置:文档之家› 计算机信息安全复习题与答案

计算机信息安全复习题与答案

密码算法与C++实现课程考试题目1、密码分析主要有哪些方式?各有何特点?(10分)【答】密码分析(或称攻击)可分为下列四类:唯密文分析(攻击),密码分析者取得一个或多个用同一密钥加密的密文2) 已知明文分析(攻击),除要破译的密文外,密码分析者还取得一些用同一密钥加密的明密文对3) 选择明文分析(攻击),密码分析者可取得他所选择的任何明文所对应的密文(当然不包括他要恢复的明文),这些明密文对和要破译的密文是用同一密钥加密的4) 选择密文分析(攻击),密码分析者可取得他所选择的任何密文所对应的明文(要破译的密文除外),这些密文和明文和要破译的密文是用同一解密密钥解密的,它主要应用于公钥密码体制。

2、试用形式化描述公钥密码体制。

(10分)【答】一个公钥密码体制是这样的一个5元组{P, C, K ,E ,D },且满足如下的条件:1.P 是可能消息的集合;2.C 是可能的密文的集合;K 是一个可能密钥的有限集;4.任意k ∈K,有一个加密算法 和相应的解密算法 ,使得 和分别为加密解密函数,满足d k (e k (x))=x, 这里 x ∈P ;5.对于所有的K ,在已知E 的情况下推出D 是计算上不可能的;3、已知RSA 密码体制的公开密钥为n=55,e=7,试加密明文消息m=10, 通过求解p ,q 和d 破译这种密码体制,设截获到密码文C=35,求出它对应的明码文。

(10分)【答】(1)根据加密公式代入:C=M^e(mod n)=10^7( mod 55)=10n=pq 由p 、q 分别为素数,n 为55可知,p =5,q =11,z=(p-1)(q-1)=40由ed= 1(mod z), 得7d =1mod 40,且d 与z 互质,得d =23(2)根据解密公式M =C^d(mod n)=35^23(mod 55)=304、考虑一个常用质数q=71,原根a=7的Diffie-Hellman 方案。

(20分)(1)如果用户A 的私钥为Xa=5,,则A 的公钥Ya 为多少?(5分)(2)如果用户B 的私钥为Xb=12,,则B 的公钥钥Yb 为多少?共享密钥K 为多少?(7分)(3)如果A 和B 想在不安全的信道上交换密钥,试对其交换步骤予以描述。

(8分)【答】(1)Ya=a^Xa mod q=7^5 mod 71=51(2)Yb= b^Xb mod q=7^12 mod 71=4k =(Ya )^Xb mod q= 51^12 mod 71=30(3)a)用户A 和B 协商采用素数q =71及其本原根a =7 b)用户A 用私钥Xa =5,计算Ya =7^5 mod 71=51,并发送给用户B c)用户B 用私钥Xb =12,计算Yb =7^12 mod 71=4,并发送给用户A d)A 计算k =(Yb )^Xa mod q= 4^5 mod 71=30 e)B 计算k ’=(Ya )^Xb mod q= 51^12 mod 71=30K 和k ’即为秘密密钥5、什么是单向函数?它在密码学中有什么意义?(10分)【答】不严格地说,一个单向函数是一个函数 ,由x 计算函数值y 是容易的,但由y 计算函数的逆 是困难的(在某种平均意义下),“容易”和“困难”的确切含意由计算复杂性理论定义。

单向函数是现代密码学的一个基本工具,大部分安全的密码系统(包括协议)的构造依赖于“单向函数存在”这一假设,所以十分重要。

6、两种常用的数字签名标准是什么?对这两种签名的原理予以图示和解释,并说明其不同?(20分) E e k ∈D d k ∈C P e k →:P C d k →:【答】两种常用的数字签名标准是秘密密钥(Secret Key )的数字签名和公开密钥(Public Key )的数字签名.(1)秘密密钥(Secret Key )的数字签名秘密密钥的加密技术指发方和收方依靠事先约定的密钥对明文进行加密和解密的算法,它的加密密钥和解密密钥为同一密钥,只有发方和收方才知道这一密钥(如DES 体制)。

由于双方都知道同一密钥,无法杜绝否认和篡改报文的可能性,所以必须引入第三方加以控制。

秘密密钥的加密技术成功地实现了报文的数字签名,采用这种方法几乎使危害报文安全的可能性降为零。

但这种数字签名技术也有其固有的弊端。

在全部签名过程中,必须引入第三方中央权威,同时必须保证中央权威的安全性和可靠性,这就为中央权威的管理带来了很大的困难,这问题可以由下面的公开密钥的数字签名技术来解决。

(2)公开密钥(Public Key )的数字签名由于秘密密钥的数字签名技术需要引入第三方机构,而人们又很难保证中央权威的安全性、可靠性,同时这种机制给网络管理工作带来很大困难,所以迫切需要一种只需收、发双方参与就可实现的数字签名技术,而公开密钥的加密体制很好地解决了这一难题。

这种数字签名方法必须同时使用收、发双方的解密密钥和公开密钥才能获得原文,也能够完成发方的身份认证和收方无法伪造报文的功能。

因为只有发方有其解密密钥,所以只要能用其公开密钥加以还原,发方就无法否认所发送的报文。

7、身份认证中证书的验证有哪三种方式,并对其功能和认证过程进行描述。

(20分)【答】(1)单向认证单向认证,只包含一条消息,可达到下列认证的功能:1. 由发送方送出的身份识别数据,可以确认发送方的身份。

2. 由发送方送出的身份识别数据,确实是要送给接收方的。

3. 可以确保发送方送出的身份识别数据的完整性,且可确认数据是发送方所发送的。

其认证过程如图1所示,详细工作方式如下:① 发送方A 先产生一不重复的数字Ra 用以抵御重放攻击、防止伪造。

② 发送方A 将下列信息送至接收方B : A{ Ta, Ra, B}X(I)表示X(在此为A)对数据I(此即为Ta ,Ra ,B)的签名。

Ta 可以包含一个或两个时间,一为识别数据产生的时间,另一为该识别数据逾期的时间。

若要以此签名证明某数据(sgnData)的来源,则应表示 A(Ta,Ra ,B ,sgnData) 若要传送数据(EncData)给收方B ,例如认证程序之后的通信用的秘密密钥,则可将数据加入签名中,信息变成:A(Ta ,RA ,B ,sgnData ,BP[encData])XP[I]表示用X(在此为B)的公开密钥加密数据I.① 图1 ③③ 收方B 收到后,执行下列动作:a)B以事先定义的方法,即前面所述的方法从认证中心取得证书,获得发送方A的公钥,并检查A的证书是否逾期或被注销。

b)验证签名,以确定数据的完整性。

c)检查此文件的识别数据,B是否是此文件的收方。

d)检查时间戳Ta是否在有效期限之。

e)检查Ra是否重复出现过。

(在x.509中建议数字Ra可以包含两部分;一部分是顺序累加的部分,另一部分是真正随机选取的部分。

可以检查顺序累加的部分足否重复出现过。

)Ra在Ta有效期限之是有效的。

也就是说,对Ra顺序累加的部分,在Ta有效期限之A不会再使用。

(2)双向认证“双向认证”包含有两道信息,除了前述“单向认证”的发送方送出的信息之外,收方还需产生一道回复信息给发方。

而其在安全上达到的功能,除了前面所介绍的“单向认证”所能达到的三项认证功能外,还可达到下列认证功能:1)由收方送回给发方的身份识别数据,且可确认数据是收方所产生的,信息的接收端确实是发方。

2)可以保证由收方送回给发方的身份识别数据的完整性。

3)双方可以共享身份识别数据中的秘密部分。

(可选)其认证程序如图2所描述,详细工作方式的前三步与“单向认证”相同,自第④步执行方式如下:④收方B产生一不重复的数字Rb,用以抵御重放攻击,⑥收方B将下列信息送至发方A: B(Tb,Rb.A,Ra)Tb可以包含一或两个时间,一为识别数据产生时间,另一为该识别数据逾期时间。

若要以此签名证明其数据(sgnData)的来源,可将数据加入签名中,信息变成:B(Tb,Rb, A,Ra.sgnData)若要顺便传送数据encData给收方B,如认证程序之后的通信用的秘密密钥,则可将数据加入签名中,信息变成:B{Tb,Rb,,A,Ra.sgnData,AP[encData]}①图2 ③⑥⑥发方A收到后,执行下列动作:a)以 B的公钥验证签名,以确定数据的完整性。

b)检查此文件的识别数据,A是否此文件的收方。

c)检查时间戳Tb是否在有效期限之。

d)检查Rb是否重复出现过(与单向认证一样,此项根据需要选择是否检查)。

(3)三向认证“三向认证”除了前述的“双向认证”的信息之外,发方还需要再发送一道应答信息给收方。

其功能可达到前面双向识别的功能,但是不需要检查时间戳,只需检查不重复随机数是否正确即可。

其认证过程如图3所描述,详细工作方式如下:前六个步骤与“双向认证”类似,但步骤②与步骤⑤所送出的时间戳Tb以及Ta可以为0,步骤③与步骤⑥不用检查时间戳,自第⑦步骤执行如下:⑦送方A检查收到的不重复数字Ra与步骤①所产生的不重复数字是否相同。

⑧送方A将识别数据A{Rb,B}回传给B.⑨收方B收到后,执行动作:a)以A的公钥验证签名,以确定数据的完整性。

b)收方B检查收到不重复数字Rb与步骤⑤所产生的不重复数字是否相同。

①图3 ③⑥⑦⑨8、概述MD4和MD5算法各自的优缺点?(10分)【答】1) MD4MD4(RFC 1320)是 MIT 的 Ronald L. Rivest 在 1990 年设计的,MD 是 Message Digest 的缩写。

它适用在32位字长的处理器上用高速软件实现--它是基于 32 位操作数的位操作来实现的。

2) MD5MD5(RFC 1321)是 Rivest 于1991年对MD4的改进版本。

它对输入仍以512位分组,其输出是4个32位字的级联,与 MD4 相同。

MD5比MD4来得复杂,并且速度较之要慢一点,但更安全,在抗分析和抗差分方面表现更好9、消息鉴别码(MAC)的原理、构成是什么?(10分)【答】消息鉴别码(MAC)是以一个报文的公共函数和用于产生一个定长值的密钥作为鉴别符原理:消息鉴别码是带有秘密密钥的单向散列函数,散列值是预映射的值和密钥的函数。

构成:MAC由预映射和鉴别密钥构成。

10、在RSA公开密钥密码体制中:(20分)(1) 如果p=7,q=11,列出可选的d值;(6分)(2) 如果p=13,q=31,d=7,求e;(6分)(3) 已知p=5,q=11,d=27,求e并加密“abcdefghij”;(8分)【答】(1) z=(p-1)*(q-1)=60,且d与z互质,则d可以是7,11,13,17,19,23,29,31,37,41,43,47,53,59。

(2)z=(p-1)*(q-1)=360,且e*d=1(mod z),即 e*7=1(mod 360),则e=103。

相关主题