WLAN標(biāo)準(zhǔn)GB15629.11安全機(jī)制—WAPI協(xié)議解析
摘 要:我國(guó)在2003年5月份提出了無(wú)線局域網(wǎng)國(guó)家標(biāo)準(zhǔn)GB15629.11,其中最引人注目的就是由寬帶無(wú)線IP標(biāo)準(zhǔn)工作組制定的新的安全機(jī)制WAPI。本文主要就WAPI安全機(jī)制進(jìn)行了簡(jiǎn)要介紹,并重點(diǎn)描述了WAI鑒別基礎(chǔ)結(jié)構(gòu)。
關(guān)鍵詞:802.11(WLAN);GB15629.11;WAPI
引言
安全問(wèn)題一直是困擾在WLAN靈活便捷的優(yōu)勢(shì)之上的陰影,已成為阻礙WLAN進(jìn)入信息化應(yīng)用領(lǐng)域的最大障礙。國(guó)際標(biāo)準(zhǔn)為此采用了WEP、WPA、802.1x、802.11i、VPN等方式來(lái)保證WLAN的安全,但都沒(méi)有從根本上解決WLAN的安全問(wèn)題。我國(guó)在2003年5月份提出了無(wú)線局域網(wǎng)國(guó)家標(biāo)準(zhǔn)GB15629.11,引入一種全新的安全機(jī)制—WAPI,使WLAN的安全問(wèn)題再次成為人們關(guān)注的焦點(diǎn)。WAPI機(jī)制已由ISO/IEC授權(quán)的IEEE Registration Authority審查獲得認(rèn)可,并分配了用于該機(jī)制的以太類型號(hào)(IEEE EtherType Field)0x88b4,這是我國(guó)在這一領(lǐng)域向ISO/IEC提出并獲得批準(zhǔn)的唯一的以太類型號(hào)。
WAPI安全機(jī)制
無(wú)線局域網(wǎng)鑒別與保密基礎(chǔ)結(jié)構(gòu)WAPI(WLAN Authentication and Privacy Infrastructure)由無(wú)線局域網(wǎng)鑒別基礎(chǔ)結(jié)構(gòu)WAI(WLAN Authentication Infrastructure)和無(wú)線局域網(wǎng)保密基礎(chǔ)結(jié)構(gòu)WPI(WLAN Privacy Infrastructure)組成。其中,WAI采用基于橢圓曲線的公鑰證書體制,無(wú)線客戶端STA和接入點(diǎn)AP通過(guò)鑒別服務(wù)器AS進(jìn)行雙向身份鑒別。而在對(duì)傳輸數(shù)據(jù)的保密方面,WPI采用了國(guó)家商用密碼管理委員會(huì)辦公室提供的對(duì)稱密碼算法進(jìn)行加密和解密,充分保障了數(shù)據(jù)傳輸?shù)陌踩?br/>WAPI充分考慮了市場(chǎng)應(yīng)用,根據(jù)無(wú)線局域網(wǎng)應(yīng)用的不同情況,可以以單點(diǎn)式、集中式等不同的模式工作,同時(shí)也可以和現(xiàn)有的運(yùn)營(yíng)商系統(tǒng)結(jié)合起來(lái),支持大規(guī)模的運(yùn)營(yíng)級(jí)服務(wù)。此外,用戶的使用場(chǎng)景不同,WAPI的實(shí)現(xiàn)和工作方式也略有詫異。WAPI的用戶使用場(chǎng)景主要有以下幾種:
1. 企業(yè)級(jí)用戶應(yīng)用場(chǎng)景:有AP和獨(dú)立的AS(鑒別服務(wù)器),內(nèi)部駐留ASU(鑒別服務(wù)單元),實(shí)現(xiàn)多個(gè)AP和STA證書的管理和用戶身份的鑒別;
2. 小公司和家庭用戶應(yīng)用場(chǎng)景:有AP,ASU可駐留在AP中;
3. 公共熱點(diǎn)用戶應(yīng)用場(chǎng)景:有AP,ASU駐留在接入控制服務(wù)器中;
4. 自組網(wǎng)用戶應(yīng)用場(chǎng)景:無(wú)AP,各STA在應(yīng)用上是對(duì)等的,采用共享密鑰來(lái)實(shí)現(xiàn)鑒別和保密。
圖1 狀態(tài)轉(zhuǎn)換圖
WAI
與WAI相關(guān)的STA的狀態(tài)轉(zhuǎn)換圖
圖1給出了與WAI相關(guān)的STA的狀態(tài)轉(zhuǎn)換圖,與ISO/IEC 8802.11-1999的5.5相比,該狀態(tài)圖將原有的“鑒別”改為了“鏈路驗(yàn)證”,此外新增了專用于處理WAI過(guò)程的“鑒別狀態(tài)”。這樣,STA總共需要維護(hù)三個(gè)狀態(tài)變量:鏈路驗(yàn)證狀態(tài),關(guān)聯(lián)狀態(tài)和鑒別狀態(tài),由此決定了STA將會(huì)有四種本地狀態(tài),如圖狀態(tài)1~4所示。其中STA和AP之間的WAI鑒別過(guò)程處于狀態(tài)3。
鑒別系統(tǒng)結(jié)構(gòu)
圖2描述了鑒別請(qǐng)求者、鑒別器和鑒別服務(wù)實(shí)體之間的關(guān)系及信息交換過(guò)程。這里首先介紹幾個(gè)重要概念,有助于對(duì)鑒別系統(tǒng)結(jié)構(gòu)的理解。
鑒別器實(shí)體AE:駐留在AP中,在接入服務(wù)前,提供鑒別操作。
鑒別請(qǐng)求者實(shí)體ASUE:駐留在STA中,需通過(guò)鑒別服務(wù)單元ASU進(jìn)行鑒別。
鑒別服務(wù)實(shí)體ASE:駐留在ASU中,為鑒別器和鑒別請(qǐng)求者提供相互鑒別。
在圖2中,鑒別器的受控端口處于未鑒別狀態(tài),鑒別器系統(tǒng)拒絕提供服務(wù),鑒別器實(shí)體利用非受控端口和鑒別請(qǐng)求者通信。
受控與非受控端口可以是連接到同一物理端口的兩個(gè)邏輯端口,所有通過(guò)物理端口的數(shù)據(jù)都可以到達(dá)受控端口和非受控端口,并根據(jù)鑒別狀態(tài)決定數(shù)據(jù)的實(shí)際流向。
受控端口:只有當(dāng)該端口的鑒別狀態(tài)為已鑒別時(shí),才允許協(xié)議數(shù)據(jù)通過(guò)。只有通過(guò)鑒別的STA才能使用的AP提供的數(shù)據(jù)端口為受控端口。
非受控端口:協(xié)議數(shù)據(jù)的傳送不受當(dāng)前鑒別狀態(tài)的限制。AP提供STA連接到鑒別服務(wù)單元ASU的端口即為非受控端口。
需要說(shuō)明的是,除鑒別數(shù)據(jù)外,系統(tǒng)中AP與STA之間的網(wǎng)絡(luò)協(xié)議數(shù)據(jù)的交換都是通過(guò)一個(gè)或多個(gè)受控端口來(lái)實(shí)現(xiàn)的。受控端口狀態(tài)由系統(tǒng)鑒別控制參數(shù)確定。
另一個(gè)重要概念是鑒別服務(wù)單元ASU,前面已經(jīng)提到,在整個(gè)WAI鑒別過(guò)程中,ASU作為第三方起著提供鑒別服務(wù)的作用。此外,ASU還擔(dān)當(dāng)著為STA和AP提供證書的頒發(fā)、認(rèn)證、吊銷等功能。一個(gè)ASU可以管理一個(gè)或多個(gè)BSS,在同一個(gè)ASU的管理范圍內(nèi),STA與AP之間需通過(guò)ASU實(shí)現(xiàn)證書的雙向認(rèn)證。
圖2 鑒別系統(tǒng)結(jié)構(gòu)
WAI鑒別基礎(chǔ)結(jié)構(gòu)
在BSS中,當(dāng)STA關(guān)聯(lián)或重新關(guān)聯(lián)至AP時(shí),必須進(jìn)行相互身份鑒別。若鑒別成功,則AP允許STA接入,否則解除其鏈路驗(yàn)證。整個(gè)鑒別過(guò)程包括證書鑒別、單播密鑰協(xié)商與組播密鑰通告。
STA與AP之間的鑒別數(shù)據(jù)分組利用以太類型字段為0x88B4的WAPI協(xié)議傳送,AP與ASU之間的鑒別數(shù)據(jù)報(bào)文通過(guò)端口號(hào)為3810的UDP套接口傳輸。
在WAI的整個(gè)過(guò)程中,涉及到數(shù)種加/解密和消息摘要等算法,可歸納如表1所示。
基于WAI的安全接入控制分類
根據(jù)WLAN的不同類型,可將基于WAI的安全接入控制作以下分類。
BSS(有AP)
WAI典型范例,采用公鑰密碼技術(shù)實(shí)現(xiàn)STA與AP之間的相互身份鑒別,證書鑒別成功后分單播密鑰協(xié)商和組播密鑰通告。
IBSS(Ad Hoc,無(wú)AP)
WAI采用共享密鑰完成STA之間的相互身份鑒別。網(wǎng)絡(luò)中各個(gè)STA約定一個(gè)共享密鑰,用戶通過(guò)設(shè)置(輸入)共享密鑰接入網(wǎng)絡(luò),和其他用戶交換信息。用戶輸入的為共享主密鑰。
WDS模式
WAI采用共享密鑰完成STA之間的相互身份鑒別。網(wǎng)絡(luò)中各個(gè)STA約定一個(gè)共享密鑰,用戶通過(guò)設(shè)置(輸入)共享密鑰接入網(wǎng)絡(luò),和其他用戶交換信息。用戶輸入的為共享主密鑰。
WPI
WPI采用國(guó)家密碼管理委員會(huì)辦公室批準(zhǔn)的用于WLAN的SSF43對(duì)稱分組加密算法對(duì)MAC子層的MSDU進(jìn)行加/解密處理,有兩種工作模式:用于數(shù)據(jù)保密的OFB模式和用于完整性校驗(yàn)的CBC-MAC模式。
WPI封裝過(guò)程
數(shù)據(jù)發(fā)送時(shí),WPI的封裝過(guò)程為:
1.利用加密密鑰和數(shù)據(jù)分組序號(hào)PN,通過(guò)工作在OFB模式的加密算法對(duì)MSDU(包括SNAP)數(shù)據(jù)進(jìn)行加密,得到MSDU密文;
2.利用完整性校驗(yàn)密鑰與數(shù)據(jù)分組序號(hào)PN,通過(guò)工作在CBC-MAC模式的校驗(yàn)算法對(duì)完整性校驗(yàn)數(shù)據(jù)進(jìn)行計(jì)算,得到完整性校驗(yàn)碼MIC;
3.封裝后再組幀發(fā)送。
WPI解封裝過(guò)程
數(shù)據(jù)接收時(shí),WPI的解封裝過(guò)程為:
1.判斷數(shù)據(jù)分組序號(hào)PN是否有效,若無(wú)效,則丟棄該數(shù)據(jù);
2.利用完整性校驗(yàn)密鑰與數(shù)據(jù)分組序號(hào)PN,通過(guò)工作在CBC-MAC模式的校驗(yàn)算法對(duì)完整性校驗(yàn)數(shù)據(jù)進(jìn)行本地計(jì)算,若計(jì)算得到的值與分組中的完整性校驗(yàn)碼MIC不同,則丟棄該數(shù)據(jù);
3.利用解密密鑰與數(shù)據(jù)分組序號(hào)PN,通過(guò)工作在OFB模式的解密算法對(duì)分組中的MSDU密文進(jìn)行解密,恢復(fù)出MSDU明文;
4.去封裝后將MSDU明文遞交至上層處理。
結(jié)語(yǔ)
目前,我們已用軟件實(shí)現(xiàn)了STA的WAPI機(jī)制,運(yùn)行結(jié)果完全能夠滿足GB15629.11標(biāo)準(zhǔn)的要求。此外,我們還使用硬件描述語(yǔ)言Verilog HDL對(duì)WPI的封裝和解封裝過(guò)程進(jìn)行了RTL描述,并從數(shù)字電路設(shè)計(jì)的角度對(duì)其進(jìn)行了優(yōu)化??傮w而言,WPI硬件仿真結(jié)果較WPI軟件運(yùn)行在時(shí)間上體現(xiàn)了強(qiáng)大的優(yōu)勢(shì),這對(duì)于保證無(wú)線局域網(wǎng)數(shù)據(jù)通信的高速性無(wú)疑是很重要的一點(diǎn)。當(dāng)然,WPI軟件可以與驅(qū)動(dòng)程序相結(jié)合,體現(xiàn)低成本和易維護(hù)的特點(diǎn)。對(duì)于WAI,整個(gè)過(guò)程處在AP和STA之間網(wǎng)絡(luò)協(xié)議數(shù)據(jù)通信之前,因此對(duì)時(shí)間的要求要略遜一些,而過(guò)程相對(duì)繁雜,筆者認(rèn)為更宜用軟件實(shí)現(xiàn)?!?/p>
評(píng)論