名与消息摘要相结合进行认证,此时数字签名可以提供不可抵赖的安全功能[4]。
2 移动通信系统中的认证机制
在设计移动通信系统的认证协议时,针对无线网络的特点,主要考虑三个因素[5]:移动设备运算能力的局限性;空中接口带宽的受限性;用户身份和位置信息的保密性。实际上,这些要求也就是3GPP和3GPP2等国际组织制定相关安全标准的重要依据,目前的认证算法均采用速度较快的对称算法,在空中接口传输的认证参数长度都较小,采用TMSI提供用户身份的保密性。下面介绍几种实用的移动通信系统所采用的认证机制。
2.1 GSM和UMTS采用的认证机制
2.1.1 GSM的认证机制
GSM系统的身份认证思路是:网络侧验证用户是否与AUC(认证中心)持有相同的认证密钥Ki。其身份认证过程[6]如图4所示。
认证技术及其在移动通信系统中的应用
显而易见,GSM系统的身份认证是不完整的,它只支持网络对用户的认证,不支持用户对网络的认证。正如文献[7]所指出的,单向认证容易受到伪装基站及中间人攻击。此外,GSM系统没有提供消息认证的功能。
2.1.2 UMTS的认证机制
针对GSM系统认证机制存在的问题,UMTS系统采用了新的认证机制,该机制是对GSM系统的认证机制的继承和增强。其增强措施[8]包括:增加了用户对网络的认证,从而实现了双向认证;增加了用于信息认证的算法和密钥IK;认证向量增加为五元组;认证参数AUTH中引入了序列号SQN,保证了认证参数的新鲜度,可以有效防止重放攻击;增加了匿名密钥AK,用来隐藏序列号SQN,进而提供身份和位置的保密性;提供了安全性更高的认证算法。UMTS的认证过程[9]如图5所示。2.2 CDMA2000采用的认证机制
CDMA2000系统支持的认证机制有两套,一套是基于IS-95的第二代认证机制;另一套是采用3GPP的AKA协议的第三代认证机制。
认证技术及其在移动通信系统中的应用
2.2.1 基于IS-95的认证机制
基于IS-95的认证机制的基本思路是:验证移动终端与访问网络之间是否拥有相同的密钥A-key。该机制包括普通-查询响应、独特-查询响应、SSD更新、参数更新等过程。其认证算法采用标准化的CAVE算法。详细过程请参见3GPP2空中接口规范C.S0005。表1给出了认证过程所涉及的主要参数。
认证技术及其在移动通信系统中的应用
与GSM系统类似,基于IS-95的认证机制中也只有网络对用户的认证,并且同样不支持信息认证。
2.2.2 3G系统的认证机制
为了提高认证的安全性和系统的互操作性,3GPP2决定在第三代CDMA2000系统中采用3GPP的AKA机制。该机制的内容与2.1.2小节UMTS的认证机制相同。
身份认证与信息认证的主要区别在于:信息认证对时效性没有要求,而身份认证遵守相关协议,有时间要求;另外,信息认证中的消息本身具有意义,而身份认证中的消息通常不具有特定的含义。虽然与广泛应用的Schnorr、Kerberos等认证协议相比,限于终端的计算能力和空中接口的带宽,移动通信系统中的认证协议还略显简单,但对于空中接口而言这些机制有效地保证了空中链路的安全性。随着移动通信网络与现有因特网的逐步融合,身份认证的重点将由空中接口链路的安全性转移到访问基于移动IP的因特网资源和服务的安全性。另外,移动通信系统与Wi-Fi、WLAN等无线系统之间互联时的认证机制也是今后研究的热点。