用户的身份认证是许多应用系统的第一道防线,身份识别对确保系统和数据的安全保密极及

资格题库2022-08-02  42

问题 用户的身份认证是许多应用系统的第一道防线,身份识别对确保系统和数据的安全保密极及其重要。以下过程给出了实现用户B对用户A身份的认证过程。1.A->B:A2.B->A:{B,Nb}pk(A)3.A->B:h(Nb)此处A和B是认证的实体,Nb是一个随机值,pk(A)表示实体A的公钥,{B,Nb}pk(A)表示用A的公钥对消息B娜进行加密处理,h(Nb)表示用哈希算法h对Nb计算哈希值。【问题1】(5分)认证与加密有哪些区别?【问题2】(6分)(1)包含在消息2中的“Nb”起什么作用?(2)“Nb“的选择应满足什么条件?【问题3】(3分) 为什么消息3中的Nb要计算哈希值?【问题4】(4分) 上述协议存在什么安全缺陷?请给出相应的的解决思路。

选项

答案

解析 【问题一】
认证和加密的区别在于:加密用以确保数据的保密性,阻止对手的被动攻击,如截取,窃听等;而认证用以确保报文发送者和接收者的真实性以及报文的完整性,阻止对手的主动攻击,如冒充、篡改、重播等。

【问题二】
(1)   Nb是一个随机值,只有发送方B和A知道,起到抗重放攻击作用。
(2)   应具备随机性,不易被猜测。

【问题三】
哈希算法具有单向性,经过哈希值运算之后的随机数,即使被攻击者截获也无法对该随机数进行还原,获取该随机数Nb的产生信息。

【问题四】
存在重放攻击和中间人攻击的安全缺陷;针对重放攻击的解决思路是加入时间戳、验证码等信息;针对中间人攻击的解决思路是加入身份的双向验证。
转载请注明原文地址:https://tihaiku.com/congyezige/2414733.html

最新回复(0)