文档详情

《计算机信息安全》复习题及答案.doc

发布:2017-02-15约8.61千字共10页下载文档
文本预览下载声明
密码算法与C++实现课程考试题目 1、密码分析主要有哪些方式?各有何特点?(10分) 【答】密码分析(或称攻击)可分为下列四类: 1) 唯密文分析(攻击),密码分析者取得一个或多个用同一密钥加密的密文 2) 已知明文分析(攻击),除要破译的密文外,密码分析者还取得一些用同一密钥加密的明密文对 3) 选择明文分析(攻击),密码分析者可取得他所选择的任何明文所对应的密文(当然不包括他要恢复的明文),这些明密文对和要破译的密文是用同一密钥加密的 4) 选择密文分析(攻击),密码分析者可取得他所选择的任何密文所对应的明文(要破译的密文除外),这些密文和明文和要破译的密文是用同一解密密钥解密的,它主要应用于公钥密码体制。 2、试用形式化描述公钥密码体制。(10分) 【答】一个公钥密码体制是这样的一个5元组{P, C, K,E ,D },且满足如下的条件: 1.P是可能消息的集合; 2.C是可能的密文的集合; 3 K是一个可能密钥的有限集; 4. 任意k∈K,有一个加密算法 和相应的解密算法 ,使得 和 分别为加密解密函数,满足dk(ek(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)=10 n=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)=30 4、考虑一个常用质数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=4 k=(Ya)^Xb mod q= 51^12 mod 71=30 (3) 用户A和B协商采用素数q=71及其本原根a=7 用户A用私钥Xa=5,计算Ya=7^5 mod 71=51,并发送给用户B 用户B用私钥Xb=12,计算Yb=7^12 mod 71=4,并发送给用户A A计算k=(Yb)^Xa mod q= 4^5 mod 71=30 B计算k’=(Ya)^Xb mod q= 51^12 mod 71=30 K和k’即为秘密密钥 5、什么是单向函数?它在密码学中有什么意义?(10分) 【答】不严格地说,一个单向函数是一个函数 ,由x计算函数值y是容易的,但由y计算函数的逆 是困难的(在某种平均意义下),“容易”和“困难”的确切含意由计算复杂性理论定义。单向函数是现代密码学的一个基本工具,大部分安全的密码系统(包括协议)的构造依赖于“单向函数存在”这一假设,所以十分重要。 6、两种常用的数字签名标准是什么?对这两种签名的原理予以图示和解释,并说明其不同?(20分) 【答】两种常用的数字签名标准是秘密密钥(Secret Key)的数字签名和公开密钥(Public Key)的数字签名. (1)秘密密钥(Secret Key)的数字签名 秘密密钥的加密技术指发方和收方依靠事先约定的密钥对明文进行加密和解密的算法,它的加密密钥和解密密钥为同一密钥,只有发方和收方才知道这一密钥(如DES体制)。由于双方都知道同一密钥,无法杜绝否认和篡改报文的可能性,所以必须引入第三方加以控制。   秘密密钥的加密技术成功地实现了报文的数字签名,采用这种方法几乎使危害报文安全的可能性降为零。但这种数字签名技术也有其固有的弊端。在全部签名过程中,必须引入第三方中央权威,同时必须保证中央权威的安全性和可靠性,这就为中央权威的管理带来了很大的困难,这问题可以由下面的公开密钥的数字签名技术来解决。 (2)公开密钥(Public Key)的数字签名 由于秘密密钥的数字签名技术需要引入第三方机构,而人们又很难保证中央权威的安全性、可靠性,同时这种机制给网络管理工作带来很大困难,所以迫切需要一种只需收、发双方参与就可实现的数字签名技术,而公开密钥的加密体制
显示全部
相似文档