第四章 公钥密码 —— 现代密码学(杨波)复习题
第四章 公钥密码
一、填空
1. RSA密码算法的安全性是基于______________困难性构建的
2. A给B发送消息时用公钥加密算法进行加密,则加密时使用的密钥是公开钥还是秘密钥?____________该密钥由谁产生?___________________
3. A的密钥对为PKA,SKA, B的密钥对为PKB,SKB,公钥密码算法记为f( ),若A给B发送一个既加密又认证的消息m,则密文C可表示为________________________________________
4. 蒙哥马利模乘是为了避免求模运算中的_____________运算而提出的
5. RSA中最耗时运算是__________
6. 在RSA算法中为保证算法的安全性,对两个大素数p,q有什么要求___________________和_______________________________________________
7. 已知一超递增背包向量A=(1, 3, 5, 11, 21, 44, 87, 175, 349, 701),现在背包容积为s=452,试求该背包的解_________________________
8. ECC算法的安全性是基于___________________________困难问题构建的。
9. 椭圆曲线y2=x3+x-2 mod 5的判别式是_______________?
10. 160比特的ECC的安全性相当于_____比特 RSA算法的安全性;211比特相当于_____比特 RSA算法的安全性
二、选择
1. 用户A向B传输消息m,采用公钥密码来实现m的保密性和认证性,则下列正确的是_________
A 先用A的私钥签名,再用B的公钥加密 B 先用B的公钥签名,再用A的私钥加密
C. 先用A的私钥签名,再用A的公钥加密 D 先用A的私钥加密,再用B的公钥签名
2. A给B发送消息,并对消息进行认证,记A的密钥对为(PKA, SKA),B的密钥对为(PKB, SKB),则A用密钥______________对消息加密,B用密钥__________对消息解密,即可完成。
A. PKB, SKB B. PKA, SKA C. SKB, PKB D. SKA, PKA
3. 对公钥密码的可能字攻击属于____________
A 惟密文攻击 B 已知明文攻击 C 选择明文攻击 D 选择密文攻击
4. 基于有限域上离散对数困难性问题构建的体制有___________________________
A. RSA B. Rabin C. ECC D. NTRU E. 背包 F. ElGamal体制
5. 椭圆曲线群E3(1, 2)上有多少个元素________ A. 1个 B. 2个 C. 3个 D. 4个
6. 下列算法中可实现抗抵赖功能的是______
AES B. MD5 C. ElGamal签名 D. DH密钥交换协议
7. 用数字签名算法对所要传送的消息进行签名,并连同消息一起传送给接收方,这种做法可实现____
A. 对消息来源的认证 B.消息完整性认证 C. 发方身份认证 D. 消息的保密性
8. 公钥密码算法的安全性最强的是下面哪一个
A. 适应性选择密文攻击下不可区分安全(IND-CCA2)
B. 非适应性选择密文攻击下不可区分安全(IND-CCA2)
C. 语义安全的
D. 单向性
三、判断
1. Millar-Rabin素性检验算法是一种确定性检验算法 ( )
2. 公钥密码算法也是一种分组加密算法 ( )
3. 对于一个安全的公钥密码算法而言,已知公钥密码算法和加密密钥,求解密密钥在计算上是不可行的 ( )
4. 现有的典型公钥密码算法都是计算上安全的 ( )
5. 可以证明Rabin密码体制的安全性与大数分解困难问题等价 ( )
6. 椭圆曲线上的无穷远点为O=(0,0)。 ( )
四、简答与计算
1. 试用扩展欧几里德算法求解38 mod 103的逆元
2. 利用蒙哥马利算法求509 mod 101
3. 已知RSA的公钥为n=23*29,设加密指数e=13,试用扩展欧几里德算法求解私钥d,并分别完成对消息456和1000的RSA加解密运算过程。
4. 试描述背包密码体制的密钥产生、加密和解密算法
5. 什么是陷门单向函数?
6. 试给出公钥加密体制同时提供加密和认证的过程。
7. 试述公钥密码的可能字攻击及对抗方法
8. 试描述RSA算法的密钥产生、加密、解密过程
9. 为了提高RSA算法解密速度,假设用户知道n=pq的分解,则如何用中国剩余定理进行RSA解密,试给出其过程。
10. 试给出a19 mod n的快速指数算法的运算表达式
11.已知一系统采用公共模进行公钥加密,攻击者截获了两个密文c1和c2,公私钥对分别是(e1,d1)和(e2,d2)现在攻击者可以判断对应的明文相同,试问如何恢复明文m
12. RSA容易受到低指数攻击,试描述该类攻击。
13. 试述针对RSA的重复加密攻击。
14. 试述Rabin密码体制的密钥产生,加密,解密的过程;如何解决其解密不唯一的问题?
15. 已知一椭圆曲线E7(1,1),则单位元是什么,该曲线上P=(x,y)的逆元是什么,设该曲线上的两个点P=(2,2),Q=(0,6),试计算3P,P+Q
16. 试给出椭圆曲线群E5(1,1)上的所有点。
17. 如何将明文m转化为椭圆曲线上的一个点,如何再从该点中正确提取出m?
18. 试述基于有限域GF(p)上离散对数困难问题的DH密钥交换算法和ElGaml加密算法。
19. 试述基于椭圆曲线Ep(a,b)的DH密钥交换算法和ElGaml加密算法。
20. 试给出19P mod p的快速倍点运算表达式,其中P是某椭圆曲线群Ep(a,b)上的一个生成元。
21. 什么是基于身份的密码算法,用户的私钥由谁产生,有什么优点?
22. 试述双线性映射和BDH假设
五、证明题
1. 证明:|p-q|的差值充分小时,n能够被快速分解
2. 试证:RSA中的解密算法能够正确恢复明文.
3. 对于RSA算法中两个大素数p,q,试分析如果2p与3q的差值很小,也能被快速分解。
4. 试证:椭圆曲线群上的DDH问题是容易的
六、综合题
采用KEM+DEM的混合机制对消息m进行加密和认证,假设公钥密码算法是RSA算法,数字签名算法也采用RSA算法,H( )为hash函数,AES为对称加密算法。请给出加密过程。
答案
四、简答与计算
4. 16. 试给出椭圆曲线群E5(1,1)上的所有点。
解,分别以x=0,1,2,3,4带入到椭圆曲线y2=x3+x+1 mod 5 求解y得到如下点:
(0, ±1) , (2, ±1), (3, ±1), (4, ±2),
所以E5(1,1)={(0,1), (0,4), (2,1), (2,4), (3,1), (3,4), (4,1), (4,4),O }
五、证明题
5.3. 对于RSA算法中两个大素数p,q,试分析如果2p与3q的差值很小,也能被快速分解
证明: 由于(2p+3q)2=4x2x3n+(2p-3q)2=24n+(2p-3q)2,对24n+x2从x=1开始搜索满足y2=24n+x2的x取值,如果找到则可通过计算gcd(24n, x+y)和gcd(24n, x-y)来分解n,当2p与3q的差值很小时,上述搜索将很快发现满足条件的x,
所以2p与3q的差值很小时也能被快速分解