阅读下列说明,回答问题1和问题2,将解答写在答题纸的对应栏内。?【说明】在公钥体制中,每一用户 U 都有自己的公开密钥 PKu 和私钥 SKu 。如果任意两个用户 A 和 B 按以下方式通信:A 发给 B 消息 [EpKB (m),A] 。其中 Ek(m)代表用密钥 K 对消息 m 进行加密。B收到以后,自动向A返回消息【EPkA(m),B】,以使A 知道B确实收到消息m。【问题 1】 (4分)用户 C 怎样通过攻击手段获取用户 A 发送给用户 B 的消息 m。【问题 2】 (6 分)
若通信格式变为:
A 给 B 发消息:EPKB(ESKA(m),m ,A)B 给 A 发消息: EpKA(EsKN (m),m,B)
这时的安全性如何?请分析 A,B 此时是如何相互认证并传递消息的。阅读下列说明,回答问题 1 至问题 4 ,将解答写在答题纸的对 应栏内。

2023-09-01



参考答案:

攻击用户 C 可以通过以下手段获取报文 m:
1. 用户C截获消息: (EPKB(m), A)2. 用户C篡改消息: (EPKB(m), C)3. 用户B返回消息: (EPKC(m), B)4. 用户C成功解密,最后得到明文m。
答案:1. 用户C首先截获消息: (EPKB(m), A) 2. 然后将用户标识信息改为C自己的标识信息,让用户B以为这条消息就是C发过来的。即: C(“B” ) >B: (EPKB(m), C) 3. 用户B将自己的身份标识及用C的公钥加密的信息一起发送给用户C。即:B>C: (EPKC(m), B) 4. 用户C用私钥成功解密,最后得到明文m。

答案:安全性提高了,能实现加密和认证的双重任务。 第一步,A 发给B消息是A首先用自己的秘密钥SKA对消息m加密,用于提供数字签名,再用接收方的公开钥PKB第2次加密,密文中包括明文的信息和A的身份信息。 第二步,接收方B收到密文,用自己的私钥先解密,再用对方的公钥验证发送方的身份是A,实现了B对A 的认证,并获取了明文。 第三步,B 发给A消息是B首先用自己的私钥SKB对消息m加密并签名, 再用A 的公开钥PKA第2次加密, 密文中包括明文的信息和A 的身份信息, 还有B对接收的m的签名密文。 第四步,只有A才能用自己的私钥打开B送过来的密文,并且验证是B的签名, 实现了A对B的认证,当A看见原样返回的m,就知道B收到了A发送的明文m了。

相关推荐