论文部分内容阅读
认证与密钥协商(AKA)协议在3G网络中用于实现用户与网络的双向认证,生成加密密钥和完整性密钥,从而实现安全通信。3GPP AKA协议使用序列号SQN保证消息的新鲜性以抵抗重放攻击;然而,序列号SQN的操作仍然存在一些待解决问题。本文以3GPP AKA协议中的序列号SQN为研究对象,对使用序列号SQN引发的安全问题进行了研究。主要研究内容包括:1.模拟了三种重放攻击的攻击场景。基于3GPP AKA协议流程,模拟了三种针对序列号SQN可能发起的攻击场景,这三种攻击被命名为“重放本次用户认证请求消息”攻击、“请求触发式重放过往认证消息”攻击和“主动重放过往认证消息”攻击;分析了3GPP AKA协议中使用序列号SQN抵抗这三种攻击的安全性能,归纳了抵抗攻击过程中认证三方及攻击者的代价;仿真分析表明:3GPP AKA协议使用序列号可以有效抵抗“重放本次用户认证请求消息”攻击和“请求触发式重放过往认证消息”攻击,但不能抵抗“主动重放过往认证请求消息”攻击。2.分析比较了AP-AKA、基于公钥密码学的AKA和S-AKA三种3GPP AKA改进协议抵抗重放攻击的性能。这三种协议使用一次性随机数或累加器代替序列号抵抗重放攻击,理论及仿真分析表明,S-AKA能够抵抗“重放本次用户认证请求消息”攻击和“请求触发式重放过往认证消息”攻击,但是不能抵抗“主动重放过往认证消息”攻击;AP-AKA和基于公钥密码学的AKA能够抵抗上述三种重放攻击,且AP-AKA抵抗攻击的性能最好;但在网络不存在攻击时,AP-AKA比3GPP AKA认证所需的存储空间及通信量代价高。3.提出了一种基于预警机制自适应选择AS-AKA协议。通过对攻击场景的分析,归纳了网络特征,提出了攻击预警机制;当预警机制检测到系统可能存在重放攻击时,服务网络将协议切换到AP-AKA协议;无攻击预警,则执行原协议。仿真结果表明,AS-AKA协议能够有效地抵抗三种重放攻击,与3GPP AKA和AP-AKA比较,AS-AKA协议实现了安全性能和代价成本之间的均衡。