專利名稱:用于無線局域網(wǎng)的密鑰同步機(jī)制的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及無線網(wǎng)絡(luò)。更具體地,本發(fā)明涉及一種用于無線局域網(wǎng)(LAN)的同步機(jī)制。
背景技術(shù):
用于成功部署無線LAN(WLAN)的密鑰詢問正用于保護(hù)無線鏈接。由于其無線特性,所以盜用或獲取訪問以及窺探無線網(wǎng)絡(luò)上任一其它計(jì)算機(jī)中所包含的數(shù)據(jù)在WLAN中是相當(dāng)普遍的。因此,必須加密數(shù)據(jù)以防止那些未授權(quán)的查看。可以在應(yīng)用層也可以在鏈路層級(jí)進(jìn)行該加密。鏈路級(jí)加密更加有用,因?yàn)槠洳恍枰獙?duì)現(xiàn)有應(yīng)用程序進(jìn)行任何修改。有以下幾種可用于在鏈路層保護(hù)WLAN的機(jī)制有線等價(jià)私密性(WEP)盡管到目前為止WEP是最為廣泛使用的方法,但是已經(jīng)證明其具有幾個(gè)缺點(diǎn)。一個(gè)主要的缺點(diǎn)就是無法進(jìn)行加密密鑰的自動(dòng)的周期更新。因此,如果某人捕獲了足夠的WEP加密分組,就會(huì)相對(duì)容易地推測(cè)出加密密鑰。WiFi保護(hù)的存取(WPA)WPA是一種克服了WEP的部分缺點(diǎn)的較新的標(biāo)準(zhǔn)。其提供了一種用于密鑰循環(huán)的機(jī)制,因此更加安全。
由于WEP是最為廣泛使用的機(jī)制,所以已經(jīng)提出了允許WEP中的密鑰循環(huán)的方案。但是,這導(dǎo)致了加密密鑰同步的問題。WLAN接入點(diǎn)(AP)和無線站(STA)必須共享相同的WEP加密密鑰。在初始加密密鑰設(shè)定并且密鑰循環(huán)期間,AP和STA可能不再同步,即,AP和STA在稍微不同的時(shí)間更新它們的加密密鑰,從而具有了不同的加密密鑰。在非同步期間,AP和STA將不能彼此通信。更糟糕的是,由于AP和STA不再同步,在它們之間用于加密密鑰設(shè)定的信號(hào)協(xié)議交換會(huì)無法完成,從而引起死鎖。
這個(gè)問題不僅會(huì)出現(xiàn)在WEP方案中提出的密鑰循環(huán)中,也會(huì)出現(xiàn)在對(duì)用于密鑰設(shè)定的信號(hào)協(xié)議中使用的數(shù)據(jù)分組(幀)進(jìn)行加密的任一種機(jī)制中。本發(fā)明提出了一種解決加密密鑰同步問題的機(jī)制。WPA沒有遇到與WEP密鑰加密相同的問題是因?yàn)樾盘?hào)協(xié)議數(shù)據(jù)未被加密。但是,已經(jīng)提高了對(duì)于那些正被黑客探究的未加密信號(hào)數(shù)據(jù)的關(guān)注。可以通過加密的信號(hào)數(shù)據(jù)幀在WPA框架內(nèi)使用本發(fā)明提出的加密密鑰同步機(jī)制。
發(fā)明內(nèi)容
根據(jù)本發(fā)明的一方面,用于無線局域網(wǎng)(WLAN)的加密密鑰同步方法包括以下步驟在WLAN的接入點(diǎn)設(shè)定當(dāng)前加密密鑰和原始加密密鑰,并且使用第一加密密鑰將加密的數(shù)據(jù)幀從WLAN中的站發(fā)送到接入點(diǎn)。最初將原始加密密鑰設(shè)定為空值(零)。使用當(dāng)前密鑰(即,在AP的當(dāng)前密鑰與在STA的第一密鑰相等)通過接入點(diǎn)執(zhí)行所接收的數(shù)據(jù)幀的解密。
當(dāng)密鑰刷新間隔期滿時(shí),在接入點(diǎn)生成新的加密密鑰,并使用第一密鑰以加密形式將其發(fā)送給站。接入點(diǎn)重新設(shè)定原始密鑰與第一密鑰相等,并且重新設(shè)定當(dāng)前密鑰與新生成的密鑰相等。
接入點(diǎn)接收數(shù)據(jù)幀,并且確定發(fā)送數(shù)據(jù)幀的站正在使用的加密密鑰是當(dāng)前密鑰還是原始密鑰。這是由接入點(diǎn)通過首先嘗試用當(dāng)前密鑰來解密數(shù)據(jù)而確定的。如果失敗了,接入點(diǎn)使用原始密鑰來解密該數(shù)據(jù)。如果站使用的密鑰是原始密鑰而非當(dāng)前密鑰,接入點(diǎn)遞增非同步計(jì)數(shù)器,以表示由于站還未開始使用新生成的密鑰(即,當(dāng)前密鑰)而導(dǎo)致的解密失敗。
當(dāng)接入點(diǎn)確定從站接收的數(shù)據(jù)幀正在使用新的密鑰,接入點(diǎn)開始使用新的密鑰,并且使用該密鑰解密數(shù)據(jù)幀。然后,接入點(diǎn)重新設(shè)定原始密鑰與當(dāng)前密鑰相等,并且將非同步計(jì)數(shù)器重新設(shè)定為零以表示已經(jīng)使用新的密鑰實(shí)現(xiàn)了接入點(diǎn)與站之間的同步。
根據(jù)以下結(jié)合附圖的詳細(xì)描述,本發(fā)明其他目的和特征將會(huì)變得更加明白。但是,需要理解的是設(shè)計(jì)的附圖僅用于說明而并非用于限定本發(fā)明,本發(fā)明的限定可以參考所附權(quán)利要求書。還需要進(jìn)一步理解的是沒有必要按比例來繪制附圖,并且除非另外標(biāo)明,附圖只是用于在概念上說明這里所描述的結(jié)構(gòu)和程序。
在所有附圖中,相同的附圖標(biāo)記表示相同的部件圖1是根據(jù)本發(fā)明的一方面的WLAN的方框圖;和圖2是根據(jù)本發(fā)明的一方面的密鑰同步機(jī)制的處理圖。
具體實(shí)施例方式
本發(fā)明涉及一種用于無線LAN的加密密鑰同步的系統(tǒng)/機(jī)制和方法。有利的是,本發(fā)明考慮了在WLAN數(shù)據(jù)加密中使用的密鑰循環(huán)中的更安全的加密密鑰同步。在鏈路層級(jí)執(zhí)行密鑰同步。因此,本發(fā)明有利地提供了一種能夠在WEP、WPA或用于保護(hù)WLAN的其它類型的鏈路層機(jī)制中的鏈路層使用的更可靠的加密密鑰同步機(jī)制。
根據(jù)本發(fā)明的一方面,接入點(diǎn)(AP)為每個(gè)站(STA)保存兩個(gè)加密密鑰。在為AP與STA之間的通信對(duì)話設(shè)定了新的密鑰之后,AP直到從STA接收到通過這個(gè)新的密鑰正確加密了的第一數(shù)據(jù)幀時(shí)才開始使用新的密鑰。將從那一刻開始使用新的密鑰以進(jìn)行AP與STA之間的對(duì)話。AP還維護(hù)非同步計(jì)數(shù)器,用于跟蹤由于失配的加密密鑰而不能被解密的分組的數(shù)目。
需要理解的是可以以硬件、軟件、固件、專用處理器、或其組合等各種形式來實(shí)施本發(fā)明。最好是將本發(fā)明實(shí)施成硬件與軟件的結(jié)合。此外,最好將軟件實(shí)施為確實(shí)包含在程序存儲(chǔ)設(shè)備上的應(yīng)用程序??梢詫⒃搼?yīng)用程序上載到包括任何適當(dāng)結(jié)構(gòu)的機(jī)器上,并通過該機(jī)器來執(zhí)行。最好在計(jì)算機(jī)平臺(tái)上運(yùn)行該機(jī)器,其中該計(jì)算機(jī)平臺(tái)具有諸如一個(gè)或多個(gè)中央處理器(CPU)、隨機(jī)存取存儲(chǔ)器(RAM)、和輸入/輸出(I/O)接口等的硬件。計(jì)算機(jī)平臺(tái)還包括操作系統(tǒng)和微指令代碼。在此所描述的各種處理和功能可以是通過操作系統(tǒng)執(zhí)行的微指令代碼的一部分,或是應(yīng)用程序的一部分(或者兩者的結(jié)合)。此外,可以將各種其他的外部設(shè)備連接到計(jì)算機(jī)平臺(tái),諸如附加數(shù)據(jù)存儲(chǔ)設(shè)備和打印設(shè)備。
需要進(jìn)一步理解的是由于最好以軟件執(zhí)行一些附圖中所示的系統(tǒng)組成部件和方法步驟,所以系統(tǒng)組件(或處理步驟)之間的實(shí)際連接會(huì)因編程本發(fā)明的方式而不同。根據(jù)在此已經(jīng)給出的上述示教,本領(lǐng)域的普通技術(shù)人員應(yīng)該能夠想到本發(fā)明的這些以及相似的實(shí)施方法或構(gòu)造。
參見圖1,示出了具有多個(gè)站STA1、STA2、STAN(分別標(biāo)為120、122......124)和至少一個(gè)接入點(diǎn)(AP)110的WLAN 100。在其他構(gòu)想的系統(tǒng)中,可能會(huì)有附加接入點(diǎn)AP 112。
圖2示出了根據(jù)本發(fā)明的一方面的接入點(diǎn)110與站120之間的密鑰同步處理200。以舉例的方式,示出了兩個(gè)加密和解密處理206和216。為了便于說明,術(shù)語“站密鑰”表示站正在使用的加密密鑰。如圖2的例子中所示,站密鑰最初為K1(204),而當(dāng)密鑰刷新間隔期滿時(shí),站密鑰將變?yōu)镵2。此外,術(shù)語“加密密鑰”和“密鑰”在所有描述中可以互換。
在密鑰循環(huán)時(shí),AP 110保存上一次使用的密鑰Kold和新的密鑰Kcurrent(202)。為了舉例,假設(shè)AP和STA最初是同步的。換而言之,它們共享相同的加密密鑰,并且能夠安全地彼此通信。如圖所示,在STA設(shè)定K1(204),在AP設(shè)定Kcurrent=K1(202)。AP最初也將Kold設(shè)定為空值,因?yàn)閱?dòng)之后直到第一密鑰刷新時(shí)間間隔期滿才生成新的密鑰。STA使用密鑰K1發(fā)送加密分組(208),而AP使用Kcurrent=K1密鑰成功地解密該分組(210)。
在步驟S212,或密鑰刷新間隔(密鑰循環(huán)間隔)期滿時(shí),AP生成新的密鑰K2,并且設(shè)定Kold=K1而Kcurrent=K2。在生成密鑰K2之后,AP將密鑰K2發(fā)送(214)給STA,但是使用密鑰K1的先前鏈路仍然在應(yīng)答(tact)。因此,將密鑰K2以加密狀態(tài)發(fā)送給STA120。
當(dāng)AP已經(jīng)開始使用密鑰K2而STA仍然在使用密鑰K1時(shí)會(huì)出現(xiàn)非同步的情況。換而言之,通過站密鑰K1來加密所有從STA發(fā)送(218)到AP的分組。AP想要通過Kcurrent(即,K2)解密分組并因此而失敗(220)。AP可以通過在每幀的末端檢查CRC檢驗(yàn)和來進(jìn)行確定。每當(dāng)AP不能解密分組時(shí),則將非同步計(jì)數(shù)器增加1(222)。非同步計(jì)數(shù)器Csync用于跟蹤由于失配加密密鑰而不能被解密的分組的數(shù)目。由于AP不能用Kcurrent解密分組,所以AP試著用Kold來解密該分組(224)。由于將Kold設(shè)定為K1,所以解密就成功了。因此,當(dāng)AP110已經(jīng)接收并解密使用新的密鑰成功加密的第一分組時(shí),則確定向AP110發(fā)送STA 120正在使用新的密鑰的第一指示。
STA也立刻更新其密鑰,并且開始使用K2(226)作為它的站密鑰。然后,STA將使用密鑰K2發(fā)送(228)加密分組?,F(xiàn)在,AP能夠使用Kcurrent解密分組了(230)。一旦AP接收到第一正確加密的分組,AP就重新設(shè)定Csync=0,并且設(shè)定Kold=Kcurrent(230)。該處理保證了能夠推導(dǎo)出密鑰K1的惡意用戶在密鑰更新周期期滿時(shí)不能訪問AP。
維護(hù)非同步計(jì)數(shù)器Csync確保STA不要長(zhǎng)時(shí)間保持非同步的狀態(tài)。一旦Csync超過預(yù)定閾值時(shí),則STA為非驗(yàn)證的(de-authenticated)。該操作將阻擋可能已經(jīng)能推導(dǎo)出密鑰K1的惡意用戶。
本領(lǐng)域的技術(shù)人員將認(rèn)識(shí)到,在以上描述中,任一密鑰都可以為空值,其對(duì)應(yīng)于未加密。例如,在初始密鑰設(shè)定時(shí)(202),可能不存在任何加密,所以Kold為空值。以上機(jī)制以相同的方式運(yùn)行。這是因?yàn)锳P不僅能表明是否用特定密鑰正確加密了幀,其也可以表明是否加密了幀。
盡管已經(jīng)在此示出、描述和指明了如應(yīng)用到本發(fā)明的優(yōu)選實(shí)施例的本發(fā)明的基本新穎特征,但是需要理解的是在不背離本發(fā)明的精神的情況下,本領(lǐng)域的技術(shù)人員可以對(duì)所描述的方法和所說明的設(shè)備的形式和細(xì)節(jié)及它們的操作進(jìn)行各種刪節(jié)、替換和改變。例如,明確地表示所有那些實(shí)質(zhì)上以相同的方式執(zhí)行了相同功能以實(shí)現(xiàn)相同結(jié)果的元件和/或方法步驟的結(jié)合都在本發(fā)明的范圍之內(nèi)。此外,還需要意識(shí)到關(guān)于本發(fā)明的任何公開形式或?qū)嵤├境龊?或描述的結(jié)構(gòu)和/或元件和/或方法步驟會(huì)作為設(shè)計(jì)選擇的一般內(nèi)容并入任何其他公開、描述或提出的形式或?qū)嵤├?。因此,其試圖僅如所附權(quán)利要求書的范圍所示來限定本發(fā)明。
權(quán)利要求
1.一種用于無線網(wǎng)絡(luò)的密鑰同步方法,包括以下步驟在無線網(wǎng)絡(luò)中的接入點(diǎn)設(shè)定當(dāng)前加密密鑰和原始加密密鑰;使用站加密密鑰將加密的數(shù)據(jù)幀從無線網(wǎng)絡(luò)中的站發(fā)送到接入點(diǎn);和當(dāng)接入點(diǎn)確定當(dāng)前密鑰等于站密鑰時(shí),解密所接收的數(shù)據(jù)幀。
2.如權(quán)利要求1所述的方法,進(jìn)一步包括以下步驟當(dāng)密鑰刷新間隔期滿時(shí),在接入點(diǎn)生成新的加密密鑰;重新設(shè)定原始密鑰等于站加密密鑰;重新設(shè)定當(dāng)前密鑰等于新生成的加密密鑰;和使用站加密密鑰將新密鑰以加密的形式發(fā)送給站。
3.如權(quán)利要求1所述的方法,進(jìn)一步包括以下步驟當(dāng)由于站加密密鑰與當(dāng)前密鑰不匹配而導(dǎo)致所述解密失敗時(shí),在接入點(diǎn)遞增非同步計(jì)數(shù)器;和在接入點(diǎn)使用原始加密密鑰解密接收的數(shù)據(jù)幀。
4.如權(quán)利要求2所述的方法,進(jìn)一步包括以下步驟當(dāng)接入點(diǎn)確定發(fā)送所接收的分組的站正在使用新的密鑰時(shí),解密從所述站接收的據(jù)幀,其中當(dāng)從所述站接收到用新的密鑰正確加密的第一數(shù)據(jù)幀時(shí),所述接入點(diǎn)開始使用新的密鑰;當(dāng)解密成功時(shí),重新設(shè)定原始密鑰等于當(dāng)前密鑰;和當(dāng)解密成功時(shí),將非同步計(jì)數(shù)器重新設(shè)定為零。
5.如權(quán)利要求1所述的方法,進(jìn)一步包括以下步驟將原始密鑰設(shè)定為等于空值,所述空值表示無加密模式。
6.如權(quán)利要求1所述的方法,進(jìn)一步包括以下步驟將當(dāng)前密鑰和第一密鑰設(shè)定為空值,所述空值表示無加密模式。
7.如權(quán)利要求1所述的方法,其中通過用于無線網(wǎng)絡(luò)中的每個(gè)站的接入點(diǎn)來執(zhí)行所述設(shè)定步驟。
8.一種用于無線網(wǎng)絡(luò)的密鑰同步機(jī)制,包括無線網(wǎng)絡(luò)中的至少一個(gè)站;和無線網(wǎng)絡(luò)中的至少一個(gè)接入點(diǎn),其對(duì)于所述至少一個(gè)站中的每一個(gè),在密鑰循環(huán)間隔期間保存原始加密密鑰和新的加密密鑰,當(dāng)從所述至少一個(gè)站接收到用所述新的密鑰正確加密的第一數(shù)據(jù)幀時(shí),所述接入點(diǎn)使用所述新的加密密鑰。
9.如權(quán)利要求8所述的密鑰同步機(jī)制,其中所述至少一個(gè)接入點(diǎn)還維護(hù)非同步計(jì)數(shù)器以跟蹤由于失配的密鑰而導(dǎo)致解密失敗的分組的數(shù)目。
10.如權(quán)利要求8所述的密鑰同步機(jī)制,其中所述至少一個(gè)接入點(diǎn)能夠?qū)⒃技用苊荑€設(shè)定為空值,所述空值表示無加密模式。
11.如權(quán)利要求8所述的密鑰同步機(jī)制,其中所述至少一個(gè)接入點(diǎn)能夠?qū)⑿碌募用苊荑€設(shè)定為空值,所述空值表示無加密模式。
12.如權(quán)利要求8所述的密鑰同步機(jī)制,其中所述至少一個(gè)接入點(diǎn)最初將原始加密密鑰設(shè)定為空值。
全文摘要
提供一種用于無線LAN的密鑰同步機(jī)制,其中接入點(diǎn)(AP)直到從站(STA)接收到通過新的密鑰正確加密的第一數(shù)據(jù)幀時(shí)才開始使用新的加密密鑰。從這一刻開始使用新的密鑰,直到密鑰刷新間隔期滿為止。
文檔編號(hào)H04L12/28GK1826754SQ200480020974
公開日2006年8月30日 申請(qǐng)日期2004年7月27日 優(yōu)先權(quán)日2003年7月29日
發(fā)明者張俊彪, 塞拉布·馬瑟 申請(qǐng)人:湯姆森特許公司