魏志暉
摘要:該文首先介紹了某公司在無線局域網(wǎng)方面的要求,然后結(jié)合公司這種需求,我們把自創(chuàng)的安全性認(rèn)證機(jī)制服務(wù)器自動(dòng)更新用戶密碼的方案應(yīng)用到公司的無線局域網(wǎng)構(gòu)建之中,并取得良好效果。
關(guān)鍵詞:無線局域網(wǎng);安全;認(rèn)證機(jī)制
中圖分類號(hào):TP393.17文獻(xiàn)標(biāo)識(shí)碼:A文章編號(hào):1009-3044(2009)22-0000-00
1 項(xiàng)目概況
華南地區(qū)有一所服裝貿(mào)易公司根據(jù)貿(mào)易經(jīng)營(yíng)特點(diǎn),計(jì)劃建立無線局域網(wǎng)系統(tǒng)。在公司的內(nèi)部設(shè)置數(shù)據(jù)服務(wù)器。公司為每位員工配備手提電腦,公司統(tǒng)一分配加密函數(shù)f給每位員工,使員工可以通過手提電腦上網(wǎng)或者召開臨時(shí)會(huì)議,這樣就方便了大家隨時(shí)的上網(wǎng),加強(qiáng)了聯(lián)系。組織結(jié)構(gòu)包括了數(shù)個(gè)部門及其主管經(jīng)理,而公司的決策權(quán)只掌握在總經(jīng)理的手中。我們建立了統(tǒng)一的數(shù)據(jù)中心,各部門可以共享數(shù)據(jù)中心的數(shù)據(jù),然而銷售部門在外面工作時(shí),訪問數(shù)據(jù)中心,就必須有網(wǎng)絡(luò)連接到數(shù)據(jù)中心。所以,公司為了大家方便的工作,在內(nèi)部建立了無線網(wǎng)絡(luò)。
幾個(gè)業(yè)務(wù)需求:
1)公司銷售人員攜帶手提電腦與客戶洽談生意,及時(shí)地把銷售數(shù)據(jù)上傳到數(shù)據(jù)庫中供給部門和經(jīng)理查看。
2)每位上層管理人員利用手提電腦與屬下進(jìn)行業(yè)務(wù)數(shù)據(jù)分析。
3)總經(jīng)理無論何時(shí)何地都能打開自己的手提電腦,查看主要的銷售數(shù)據(jù)。
4)銷售人員與客戶談生意,必須在客戶面前登陸公司服務(wù)器下載相關(guān)的資料,而且不可能遮遮奄奄,顯得不大方,所以輸入的密碼可能會(huì)爆光。
5)公司不同級(jí)別的人員下載數(shù)據(jù)的權(quán)限也是不一樣的,當(dāng)管理人員利用手提電腦與屬下進(jìn)行業(yè)務(wù)數(shù)據(jù)分析,也有可能泄露個(gè)人的密碼。
6)總經(jīng)理在公眾場(chǎng)合上網(wǎng),密碼也可能被看到。
我們無線局域網(wǎng)的建立首要解決的問題就是密碼的問題,也就是說,在密碼暴露后,還能保證信息的安全。
2 無線局域網(wǎng)安全機(jī)制方案的選用和部分設(shè)計(jì)方案
本人負(fù)責(zé)公司無線局域網(wǎng)安全性認(rèn)證機(jī)制的設(shè)計(jì),我通過分析該系統(tǒng)的硬件特點(diǎn)和業(yè)務(wù)特點(diǎn)以及安全性的需求對(duì)安全性的認(rèn)證方案進(jìn)行選用。在選用的過程中,我主要考慮了以下的三種方案:
1)WEP安全性認(rèn)證。此認(rèn)證方法是傳統(tǒng)的認(rèn)證,它是采用靜態(tài)密鑰的,安全性比較薄弱。所以此認(rèn)證方案不考慮。
2)IEEE802.1x認(rèn)證。身份認(rèn)證過程采用了數(shù)字證書的認(rèn)證,而且是在客戶端和服務(wù)器端交互的認(rèn)證,安全性高。但是考慮到系統(tǒng)業(yè)務(wù)的特殊性,需要在密碼暴露的情況下,仍然能保證通信的安全性,IEEE802.1x無法滿足這些要求,所以也不適合。
3)服務(wù)器自動(dòng)更新用戶密碼。此方法是參考IEEE802.1x方法得出的,采用服務(wù)器自動(dòng)更新密鑰和變?cè)?然后返回給客戶端,讓客戶端也不斷的更新密鑰和變?cè)?。此方案采用的密鑰算法是Rijndael算法,可以保證有效的保證數(shù)據(jù)的安全性;所以在這個(gè)特殊的業(yè)務(wù)需求中,采用服務(wù)器自動(dòng)更新用戶密碼的方案是最適合不過的。
我設(shè)計(jì)的服務(wù)器自動(dòng)更新用戶密碼的方案主要具有以下的幾個(gè)特點(diǎn):
1)每登錄一次后,服務(wù)器會(huì)自動(dòng)更新登錄的密碼。這樣不斷動(dòng)態(tài)地更新客戶端的密碼可以有效地提高網(wǎng)絡(luò)安全,可以在密碼泄露后,盜用者也無法按照原來的密碼登錄。
2)能避免服務(wù)器發(fā)送的密碼或數(shù)據(jù)被剽竊。因?yàn)榧词贡唤厝∫仓皇亲冊(cè)猉,而沒有固定存在客戶端和服務(wù)器的加密f函數(shù),所以截取人無法得知f(X)。加密算法是Rijndael,密鑰長(zhǎng)度128/192/256,安全強(qiáng)度高。
3)通過不定時(shí)的有線更新密碼Nr表,具有更強(qiáng)保密性。客戶端必須不定時(shí)的有線更新Nr表,使得Rijndael算法具有變化的循環(huán)次數(shù),也就是得到更新的f,使保密性更高。
我的安全性認(rèn)證機(jī)制(服務(wù)器自動(dòng)更新用戶密碼)的想法是在802.1.x和EAP認(rèn)證無法解決特定問題的基礎(chǔ)上得出的,它也繼承了802.1.x和EAP認(rèn)證機(jī)制的優(yōu)點(diǎn)。服務(wù)器自動(dòng)更新用戶密碼的原理主要包括端口控制原理、通信認(rèn)證的流程和加密密鑰這幾個(gè)方面。
服務(wù)器自動(dòng)更新用戶密碼的原理是用戶申請(qǐng)加入AP的第一次獲得一個(gè)初始的密碼,當(dāng)用戶第一次登陸AP后,服務(wù)器將會(huì)返回下一次用戶需要輸入的密碼,用戶再下一次輸入的時(shí)候,只能用服務(wù)器返回的密碼,先前的密碼是已經(jīng)作廢的,按照這種過程一直循環(huán)下去。具體的操作流程如圖1所示:
1)用戶申請(qǐng)開通網(wǎng)絡(luò)獲得初始密碼(A1…An),輸入初始密碼在客戶端中加密后發(fā)送到服務(wù)器上去驗(yàn)證。
2)如果服務(wù)器驗(yàn)證通過,它將為用戶生成隨機(jī)變?cè)?X1…Xn)和新的密鑰f,通過f(X1…Xn)生成密碼,保存在服務(wù)器的數(shù)據(jù)庫中。否則,用戶無法上網(wǎng),退出服務(wù)。
3)服務(wù)器給客戶端返回生成的變?cè)?X1…Xn)和新的密鑰f。
4)客戶端通過新的密鑰加密變?cè)尚碌拿艽a保存在客戶端,用戶記住這個(gè)密碼,這個(gè)密碼也就是用戶下一次登陸的密碼。
5)下次登陸輸入新的密碼。
6)服務(wù)器驗(yàn)證新的密碼,如果客戶輸入的新密碼和服務(wù)器的數(shù)據(jù)庫中存有該用戶的密碼一致,那么用戶可以登錄到網(wǎng)絡(luò)。服務(wù)器端生成隨機(jī)數(shù)(Y1…Yn)和更新秘鑰為g。用g(Y1…Yn)生成新密碼保存在服務(wù)器數(shù)據(jù)庫。
7)服務(wù)器給客戶端返回新的密鑰和變?cè)?Y1…Yn)。然后循環(huán)4)到7)步的過程。
在服務(wù)器自動(dòng)更新客戶端密碼中,我們使用的加密算法是Rijndael算法。采用該算法可以不斷的更新服務(wù)器上和客戶端的密鑰。
Rijndael算法是比利時(shí)的Joan Daemen和Vincent Rijmen設(shè)計(jì)的分組算法,具有可變數(shù)據(jù)塊長(zhǎng)度和可變密鑰長(zhǎng)度的特點(diǎn)。數(shù)據(jù)塊長(zhǎng)度與密鑰長(zhǎng)度可分別為128,192或256bits。算法主要包括密鑰調(diào)度以及Nr(Nr由密鑰長(zhǎng)度與數(shù)據(jù)塊長(zhǎng)度決定)次循環(huán)運(yùn)算,密鑰調(diào)度從加密密鑰生成循環(huán)子密鑰,Nr次循環(huán)前Nr-1次均相同,最后一次循環(huán)稍有不同[1]。
主要表現(xiàn)在以下幾個(gè)方面:
1)安全性。Rijndael算法式一種基于有限域-有限環(huán)的算法,又同時(shí)保證了算法可逆。
2)執(zhí)行效率高。
3)算法適應(yīng)性好。
在本方案的設(shè)計(jì)里,考慮到企業(yè)的特點(diǎn)之外,還有考慮到數(shù)據(jù)被截取的可能性的存在,我對(duì)Rijndael算法在Nr上進(jìn)行了改進(jìn)。有必要使用Nr表進(jìn)行有線的更新,在服務(wù)器建立一個(gè)只能用有線連接的自動(dòng)更新Nr表的軟件。銷售人員、經(jīng)理等人必須在有限的次數(shù)或者是有限的時(shí)間內(nèi),回到公司服務(wù)器進(jìn)行有線連接更新Nr表。Nr循環(huán)次數(shù)從原先由Nb和Nk決定,可以建立為由登陸次數(shù)和Nb、Nk三種參數(shù)所構(gòu)成的表,如表1所示。由服務(wù)器客戶端都同時(shí)記錄登陸次數(shù),每次登陸之后都采用服務(wù)器客戶端約定好的f進(jìn)行更新。
通過對(duì)Rinjnael算法的修改,我們可以避免無線網(wǎng)絡(luò)認(rèn)證中,發(fā)送和返回相互兩個(gè)過程被空中截取的危險(xiǎn)。即使被盜取了,盜取者只是得到了變?cè)?X1…Xn)或者是一個(gè)舊的f(X1…Xn),而當(dāng)銷售人員之前一次登陸之后,服務(wù)器和銷售人員的電腦已經(jīng)開始修改成新的密鑰g,盜取者無法獲得服務(wù)器的數(shù)據(jù),隱蔽性提高了。而且隨著循環(huán)次數(shù)的變化,破解的復(fù)雜度會(huì)增加很多倍。
3 小結(jié)
無線局域網(wǎng)正在急速地發(fā)展,而無線局域網(wǎng)的安全性問題越來越受到大家的關(guān)注。如果誰能在安全性方面取得突破,那么將會(huì)占據(jù)無線網(wǎng)的市場(chǎng)。所以對(duì)無線網(wǎng)絡(luò)的安全方面的研究是值得我們?nèi)ヌ接懙?去突破創(chuàng)新的。
參考文獻(xiàn):
[1] J.Daemon,V.Rijmen.“ASE Proposal:Rijndael,”Internet Draft,1999.9.
[2] S.Fluhrer,I.Mantin,and A.Shamir,Weaknesses in the key schedule algorithm of RC4,in Proc.4th Annual Workshop on Selected Areas of Cryptography,2001.
[3] J.Daemon,V.Rijmen.“ASE Proposal:Rijndael,”Internet Draft,1999.9.