列表

详情


试题五(共 10 分)
    阅读下列说明,回答问题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(EsKB (m),m,B)
这时的安全性如何?请分析 A,B 此时是如何相互认证并传递消息的。

参考答案:

【问题1】
攻击用户C可以通过以下手段获取报文 m:
1. 用户C截获消息:(EPKB(m), A)
2. 用户C篡改消息:(EPKB(m), C)
3. 用户B返回消息:(EPKC(m), B)
4. 用户C成功解密,最后得到明文m。
【问题2】
安全性提高了,能实现加密和认证的双重任务。但会存在重放攻击。
第一步,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 了。

详细解析:

【问题 1】:
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。
【问题 2】:
安全性提高了,利用公钥的数字签名机制能实现加密和认证的双重任务。但会存在重放攻击。
第一步,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了。

上一题