2010/2011 学年 第二 学期 网络安全与加密技术(A卷) 课程考试试题
拟题学院(系) : 信息科学技术学院 刘国柱 拟题人: 吴鹏 适 用 专 业: 计算机10A、B班 校对人:
(答案写在答题纸上,写在试题纸上无效)
一、选择题(10分,每小题1分)
1、 密码学包括哪两个相互对立的分支?( )
A. 对称加密和非对称加密 B.密码编码学和密码分析学 C.序列密码和分组密码 D.DES和RSA 2、 加密技术不能提供以下哪种安全服务?( )
A. 鉴别 B.机密性 B. 完整性 C.可用性
3、 在密码学中,需要被变换的原消息称为什么?( )
A. 密文 B.算法 C. 密码 D.明文 4、在密码学中,对RSA的描述正确的是( )。
A.RSA是秘密密钥算法和对称密钥算法 B.RSA是非对称密钥算法和公钥算法 C.RSA是秘密密钥算法和非对称密钥算法 D.RSA是公钥算法和对称密钥算法 5、DES的密钥长度是多少bit?( )
A.64 B.56 C.512 D.8 6、RSA使用不方便的最大问题是?( )
A.产生密钥需要强大的计算能力 B.算法中需要大数 C.算法中需要素数 D.被攻击过很多次 7、ECB的含义是?( )
A.密文链接模式 B.密文反馈模式 C.输出反馈模式 D.电码本模式 8、SHA-1产生的散列值是多少位?( )
A.56 B.64 C.128 D.160 9、下列为非对称加密算法的例子为( )。
A.IDEA B.DES
C.3DES D.Elliptic Curve 10、通常使用下列哪种方法实现抗抵赖功能?( )
A.加密 B.时间戳
C.签名 D.数字指纹 二、(10分)设p和q是两个大于2的素数,并且n=pq。记φ(n)是比正整数n小,但与n互素的正整数的个数。再设e和d是两个正整数,分别满足gcd(e,φ(n))=1,ed≡1(modφ(n))。设函数E(m)和D(c)分别定义为E(m)=me(mod n)和D(c)=cd(mod n)。请问: (1)计算φ(n)的公式是什么?(3分)
(2)请证明对于任何正整数m,都成立恒等式D(E(m))=m(7分)
23
三、(10分)考虑在Z23上的一个椭圆曲线y=x+11x+18。请你(1)验证P=(6,1)和Q=(9,15)确实是该椭圆曲线上的两个点;(2)请计算出P+Q=?和2P=? 注意:对Zp上的椭圆曲线E上的两个点P=(x1,y1)和Q =(x2,y2)都∈E。若x1=x2且y1=-y2,
2
那么P+Q=O;否则P+Q=(x3,y3),这里的x3=λ-x1-x2,y3=λ(x1-x3)-y1
?y2?y1?x?x????21?3x1+a??2y1如果P?Q如果P=Q
对于所有的P∈E,定义P+O=O+P=P。 四、(10分)给定两个素数p和q,n=pq,请利用著名的RSA公钥算法说明签名和验证签名的过程,称为RSA数字签名算法。 五、(10分)请用公式表示出Diffie-Hellman密钥分配的过程,并要具体指明哪个变量需要保密,哪个变量需要公布。 六、(10分)画出DES算法中复杂函数F(Ri-1,ki)的运算原理图。
843527542
七、(10分)给定不可约多项式M(x)=x+x+x+x+1,两个多项式f(x)=x+x+1,(x)g=x+x+x+x+x请计算f(x)*g(x)mod(M(x))。 八、(10分)设明文为M=WEWILLMEETATMORNING,用映射关系j=i+k mod 26进行对明文加密(i代表每个明文字母,j代表每个密文字母),假设k=13,请给出对明文进行两次加密的结果,并说明第二次加密的结果和明文之间的关系。 九、(10分)求11的所有本原根。
208
十、(10分)用费玛和欧拉定理求6 mod 11。
2010/2011 学年 第二 学期 网络安全与加密技术(A卷)试题标准拟题学院(系): 信息科学技术学院 适用专业: 计算10A、B班 拟 题 人: 刘国柱 书写标准答案人: 刘国柱 (答案要注明各个要点的评分标准)
一、选择题(10分,每小题1分)
4、 B; 5、 D 6、 D 4、B 5、B 6、A 7、D 8、D 9、D 10、C 二、(10分)设p和q是两个大于2的素数,并且n=pq。记φ(m)是比正整数m小,但与m互素的正整数的个数。再设e和d是两个正整数,分别满足gcd(e,φ(n))=1,ed≡1(modφ(n))。设函数E(m)和D(c)分别定义为E(m)=me(mod n)和D(c)=cd(mod n)。请问: (1)计算φ(n)的公式是什么?(3分)
(2)请证明对于任何正整数m,都成立恒等式D(E(m))=m(7分) 答:(1)φ(n)=(p-1)(q-1)
(2)只需证明RSA的解密正确性就可以了。
φ(n)
当gcd(m,n)=1时,则由欧拉定理可知m ≡1(mod n)
当gcd(m,n)>1时,由于n=pq,故gcd(m,n)必含p,q之一,不妨设gcd(m,n)
φ(q)
=p,则m=cp(1≤c k(q-1) k(p-1)(q-1) k(p-1)φ(n) 因此,对于任何k,总有m≡1(mod q),m≡1≡1(mod q),即mk ≡1(mod q) φ(n) 满足mk =hq+1。 由假设m=cp。 φ(n)+1 φ(n)+1 故m=mk–hqcp= mk–hcn φ(n)+1 所以:m=mk (mod n) φ(n)+1 因此:对于n及任何的m(m φ(n)+1 所以:D(E(m))=D(c)≡cd=med=m l=m(mod n)。命题得证。 23 三、(10分)考虑在Z23上的一个椭圆曲线y=x+11x+18。请你(1)验证P=(6,1)和Q=(9,15)确实是该椭圆曲线上的两个点;(2)请计算出P+Q=?和2P=? 注意:如果学生在答题过程中有个别计算错误,那么扣分情况根据学生是否掌握了如下椭圆曲线的运算规则而做出。对Zp上的椭圆曲线E上的两个点P=(x1,y1)∈E。若x1=x2且y1=-y2, 2 那么P+Q=O;否则P+Q=(x3,y3),这里的x3=λ-x1-x2,y3=λ(x1-x3)-y1 ?y2?y1?x?x?21???2?3x1+a??2y1如果P?Q如果P=Q 对于所有的P∈E,定义P+O=O+P=P。 23 答:(1)直接验证P=(6,1)和Q=(9,15)满足方程式y=x+11x+18,因此,P和Q都是该椭圆曲线上的点。(共4分,验证每个点2分) (2)直接计算后得到P+Q=(17,9)和2P=(15,4)(共6分,每个验证得3分) 四、(10分)给定两个素数p和q,n=pq,请利用著名的RSA公钥算法说明签名和验证签名的过程,称为RSA数字签名算法。 答:RSA签名算法系统参数可以设定为n=pq,且p和q是两个大素数,得到欧拉函数φ(n),选定e,通过ed≡1(mod φ(n))确定e的逆元d,将n,d作为公钥;p,q,e作为私钥; 签名算法为Sig(x)=xe mod n; 签名验证算法为Ver(x,y)=TRUE等价于x≡yd(mod n)。 五、(10分)请用表示出Diffie-Hellman密钥分配的过程。 答:Diffie-Hellman密钥分配协议假定在两个用户A和用户B之间进行,协议步骤如下: 1) 公开一个素数p和一个本原根α 2) 用户A和用户B各选定自己的秘密值XA和XB XA 3) 计算A用户的公开值YA=α mod p XB 4) 计算B用户的公开值YB=α mod p 5) 则用户A和用户B可以计算出公共密钥: XAXBXB B用户从A用户取得公开值YA,则公开密钥为:KAB=α mod p=YAmod p XAXBXA A用户从B用户取得公开值YB,则公开密钥为:KAB=α mod p=YBmod p 六、(10分)画出F(Ri-1,ki)的函数原理图 (学生做题时,只要将上图左半部分中虚框中的原理图画出即可) 843527542 七、(10分)给定不可约多项式M(x)=x+x+x+x+1,两个多项式f(x)=x+x+1,(x)g=x+x+x+x+x请计算f(x)*g(x)mod(M(x))。 答:M(x)=100011011(二进制表示) f(x)=00100101 g(x)=10110110 根据运算规律x*g?x????b6b5b4b3b2b1b00b7?0 ?b6b5b4b3b2b1b00?00011011b7?1得到: x*g(x)= 01101100⊕00011011=01110111 2 X*g(x)=11101110 3 X*g(x)= 11011100⊕00011011=11000111 4 X*g(x)= 10001110⊕00011011=10010101 5 X*g(x)= 00101010⊕00011011=00110001 f(x)*g(x)mod(M(x))= 10110110⊕11101110⊕00110001=01101001 653 所以:f(x)*g(x)mod(M(x))=x+x+x+1 说明:如果直接用多项式的乘除法,也可以得分。八、(10分)设明文为M=WEWILLMEETATMORNING,用映射关系j=i+k mod 26进行对明文加密,假设k=13,请给出对明文进行两次加密的结果,并说明第二次加密的结果和明文之间的关系。 答:明文字母表和密文字目标之间的对应关系为: abcdefghijklmnopqrstuvwxyz nopqrstuvwxyzabcdefghijklm 所以第一次加密的密文为: JRJVYYZRRGNGZBEAVAT 第二次加密密文为: WEWILLMEETATMORNING 第二次加密所得密文与明文相同。 九、(10分)求11的所有本原根。 答:对于2 0 因为:2 mod 11=1 1 2 mod 11=2 2 2 mod 11=4 3 2 mod 11=8 4 2 mod 11=5 5 2 mod 11=10 6 2 mod 11=9 7 2 mod 11=7 8 2 mod 11=3 9 2 mod 11=6 10 2 mod 11=1 又因为2的序为10,所以2为mod(11)的本原根。 根据:当g为模p的本原根且a与p-1互素时,即gcd(a, p-1)=1, a 则g mod p亦必为模p之本原元素。 因为:3,7,9与p-1=11-1=10互素。 379 所以:2 mod 11=8, 2 mod 11=7,2 mod 11=6也是mod(11)的本原根。 即:11的本原根为:2,8,7,6。 208 十、(10分)用费玛和欧拉定理求6 mod 11。 答:根据费玛和欧拉定理得: 610 mod 11=1 所以:6200 mod11=1 即:6208 mod 11=68 mod 11=4