韩芳 王学春
黄河科技学院信息工程学院 河南 450063
无线网络无处不在,已成为现代通信的重要组成部分,它能够为便携式通信设备之间提供更快速的、高品质的信息交流,无线技术逐渐主宰整个通信行业。随着无线网络的普及性应用,与之相关的诸多安全问题已经引起了人们的极大关注。
量子密码学基于量子力学理论,海森堡测不准原理指出量子态的测量必将引起原来量子态的扰动,对一个量子系统的任何测量都不能获取测量前该量子系统的全部信息。量子密码可以通过量子通道来传送密钥。当窃听者攻击量子通道就会被检测到,从而提醒合法用户窃听者的存在。
在无线网络中无线局域网主要用于办公室和校园环境。这种环境有利于量子仪器和高密度部署的量子密钥分配网络,且局域网内移动用户的流动速度相对比较慢。因此,分析并利用量子技术在 802.11i无线网络中分配量子密钥,让量子密码学和 802.11i安全机制相结合,将会对数据安全提供巨大的优势。
第一个量子密钥分配方案(BB84协议)是在 1984年由Bennett与Brassard提出的,该协议基于量子不可克隆原理,利用两组正交的量子基进行密钥的分配。在此协议中,发送方Alice和接收方Bob之间通信由两个阶段完成,第一个阶段是在量子信道进行密钥通信;第二个阶段是在经典信道进行密钥的协商,通过探测监听者Eve是否存在来确定最终的密钥。在BB84协议中,使用两种不同的正交基。我们可以使用不同的极化光子的量子态表示:
水平垂直线偏振:|00>=> 0,|900>=>1
斜对角线偏振:|450>=>1,|1350>=> 0
BB84协议的工作原理如下:
第一个阶段:量子传输。Alice随机产生一串二进制位作为初始密钥,并发送给Bob。
第二个阶段:Alice和Bob密钥协商,随机取出初始密钥的若干位进行比较,得到一个错误的估计值,把取出的若干位从初始密钥中去除。如果这个错误的估计值超出了一定的上限,则双方不能得到共同的密钥,否则进入密钥的再协商阶段。
第三阶段:由于噪声和Eve的作用,会使光子的极化态发生变化,那些在传送中没有收到或测量失误的比特,在Alice和Bob通过公开信道相互测量后从剩余的初始密钥中除去,得到一个无错误的公共密钥。
第四阶段:Alice和 Bob取得共同的秘密密钥通过执行“秘密放大”技术,从一部分保留的密钥中产生完全保留的密钥。
BB84协议理论上是绝对安全的,严格的安全性证明最早由D.Mayers于1996年给出。Mayers的证明极其复杂,Shor与Preskill在1999年给出了大为简化的证明。
802.11 安全的定义是基于有线等效保密(WEP)的。不过WEP是一种由密码专家鉴定为有严重的安全弱点,鉴于这一结果,该修正案 IEEE 802.11标准在 2004年被改为 IEEE 802.11i标准,IEEE 802.11i的目的是增强802.11网络MAC层的安全性。IEEE 802.11i标准中规定使用802.1x认证和密钥管理机制,在接入点与工作站之间进行动态协商认证和动态密钥协商。在数据加密方面,定义了TKIP CCMP和WRAP 3种加密机制。
IEEE 802.11i建议的认证方案基于 802.1x和扩展认证协议(EAP)。802.1x是一种基于端口的认证协议,包括 3个实体:请求者,认证者和认证服务器。如图1所示。
图1 802.1认证协议
请求者指接入无线网络的移动终端(STA)。认证者指通过802.lX访问控制的无线接入点(AP),并且只接收得到认证服务器身份验证的请求者的数据。EAP是一种灵活的协议,允许移动终端和认证服务器之间运行不同的身份认证方法。如图1,EAP信息可以被不同的协议所携带,它们能够在移动终端和接入点之间是由802.lX EAPOL协议来传输。在接入点和认证服务器之间,它们可以进行的EAP以上的RADIUS(远程认证拨号用户服务)协议,认证者和认证服务器之间的底层通信协议使用RADIUS协议通信。通常情况下,RADIUS运行在TCP/IP之上。
802.11 i在不同的层使用多种密钥,构建了一个密钥体系。在本文中,仅给出与单播流量加密相关的成对密钥体系。其中包括:代表正确的访问策略的主密钥,代表授权访问802.11的成对主密钥PMK和临时会话密钥PTK。在PTK中又包括KCK、KEK、TK,KCK用于绑定PTK到AP、STA中,同时用于验证PMK的拥有者;KEK用于分发组瞬时密钥GTK;TK用来保护数据通信。
802.11 i 的密钥管理中最主要的步骤是 4次握手协议和组密钥更新协议。四次握手协议用于协商单播密钥,主要目的是确定STA 和 AP 得到的 PMK(主密钥)是相同的,并且是最新的,以保证可以获得最新的临时会话密钥PTK,通过4次握手的结果通知 STA 是否可以加载加密/整体性校验机制。具体的4次握手协议如图2所示。
图2 四次握手
首先,认证者通过发送 Anonce给请求者。请求者收到Anonce,建立密钥体系。不过,这个密钥体系直到认证者身份得到验证并且准备使用这些密钥的时候才用。
其次,请求者发送给认证者Snonce和MIC,其中MIC是消息完整性校验码,由ANonce和 SNonce使用伪随机函数PRF产生的并通过PTK计算的。在收到此消息,认证者建立相同的密钥体系,然后校验MIC。如果 MIC正确,那意味着请求者拥有PMK,因而得到身份验证。
然后,认证者完成密钥体系的建立并告知请求者,与此同时发送一个MIC和KCK。请求者收到消息后,请求者用KCK校验MIC,并核实认证者是否拥有PMK。密钥体系则用于接入点接入,同时也可以用来分发GTK到移动终端。
最后,请求者返回握手成功的消息和MIC。
4次握手之后,临时密钥TK用来保证用户数据的保密性。
把BB84协议应用于802.11i无线网络,需修改IEEE802. 11i的4次握手协议,如图3所示,修改后的协议称之为量子握手。本文中不再关注认证方面,具体推导和 KCK的使用保持不变,BB84协议将被用于建立KEK和TK。量子握手的密钥推导如图4所示。
BB84协议在4次握手的第二次握手后进行,具体过程如下:
第一阶段,认证者随机产生一串光子系列发送给请求者。
第二阶段,请求者对接收到的每一个光子随机选择测量基,并对接收光子进行测量,按照光子的偏振态与二进制比特的对应规则,得到一组二进制比特序列,通过经典信道请求者向认证者发送所选用的测量基和 MIC(MIC用于认证者验证信息的完整性)。
第三阶段,通过经典信道,认证者告知请求者哪些测量基是正确的,并把对应的二进制比特序列保留下来。认证者拥有一个MIC和KCK,MIC用于请求者验证认证者,并核实信息的完整性。此时,认证者和请求者获得相同测量基对应的一组二进制比特序列。
第四阶段,请求者抽取一定数量的比特序列(低于比特序列总数的三分之一)测试是否存在窃听,并把此序列和 MIC一起发送给认证者。
第五阶段,认证者比对所有测试的比特序列,若序列相同则将剩余的比特(未被公开的比特)用于形成Q-PTK。
如果一切顺利,请求者和认证者彼此能够认证并商定秘密密钥Q-PTK。Q-PTK用于推导KEK和TK。请求者和认证者之间已经建立了密钥体系准备进行数据加密。
BB84协议执行完毕后,继续执行4次握手协议的后两次握手,以完成量子握手。
图3 量子握手
图4 量子握手密钥推导
本文中利用量子密码“无条件安全”的优势与IEEE802.11i无线网络相结合,为无线网络中数据加密提供了更好的服务,保障了数据的通信安全,量子握手是量子密码在无线网络中应用的第一步,但量子密码术在无线网络的应用技术还很不成熟,并存在一些问题还需要继续研究,通过本文的研究希望有助于这一研究领域的发展。
[1] 赵生妹,郑宝玉.量子信息处理技术[M].北京邮电大学出版社.2010.
[2] 陈鑫.基于BB84协议的量子密码通信的研究与实现[D].陕西:西安电子科技大学.2009.
[3] IEEE Std 802.1x IEEE Standards for Local and Metropolitan Area Network: Port Based Network Access Control[S].2001.
[4] Blunk L,Vollbrecht J.PPP Extensible Authentication Protocol(EAP)[S].RFC2284.1998.
[5] B. Aboba,L.Blunk,1.Vollbrecht,1.Carlson,and H.Levkowetz.Extensible Authentication Protocol (EAP).RFC 3748.June 2004.
[6] Edney, and W.A.Arbaugh,Real 802.11 Security-Wi-Fi Protected Access and 802.11i. Addison-Wesley.2004.
[7] 王小军,陆建德.基于802.11i四次握手协议的攻击分析与改进[J].计算机工程.2007.