魏澤國,裴亞南
(河南科技大學,河南 洛陽 471000)
在科學以及互聯(lián)網技術的飛速發(fā)展的背景下,無線局域網憑借靈活性、高帶寬以及部署簡單等特點已經得到了各領域廣泛應用[1,2]。尤其是在免費AP的普及以及全新攻擊方法的不斷出現后,促使密鑰異地共享成為當前研究的熱點話題。基于此,國內相關專家已經得到了一些較為成熟的研究成果,例如宋云[3]根據局域測量,可以在不同通信者之間組建共享聯(lián)合密鑰,將用于竊聽檢測的粒子全部剔除,借助剩余的粒子完成信息傳輸,同時引入GHZ態(tài)即可進行秘密共享。高夢婕等人[4]通過對稱可搜索加密技術以及Shamir密鑰共享技術完成密鑰共享。但是,由于上述兩種方法未構建異地密鑰對協(xié)商機制,導致密鑰存在被破解風險。為解決該問題,
為解決該問題,提出新的無線局域網多安全域間的密鑰異地共享方法。經實驗測試證明,所提方法能夠有效減少能耗以及破解密鑰比例,得到更加理想的密鑰異地共享結果。
在異地密鑰對協(xié)商機制建立初始節(jié)點,需要在各個節(jié)點中載入對應的四元t度對稱多項式,如式(1)所示
(1)
式中,Fq代表無線局域網多安全域間的有限域;p(x,y,u,v)代表四元t度多項式;aijkl代表多項式的取值范圍;xjyjujvj代表不同類型的多項式。
當每個節(jié)點完成部署之后,首先需要得到自身的部署時間,即tu,同時將其代入到已有的標志IDu中,獲取以下形式的多項式Fu(x,y),如式(2)所示:
Fu(x,y)=P(tu,IDu,x,y)
(2)
節(jié)點u的鄰居收集到其它廣播之后,開始構建共享密鑰對,主要包含以下的操作步驟:
1)KERM數據包處理流程:
利用圖1給出KERM數據包處理的詳細操作流程[5,6]。
圖1 KERM數據包處理流程圖
設定節(jié)點u的鄰居節(jié)點w接收到數據包后,需要判斷節(jié)點已知的部署時間和當前時間兩者之間的差值是否小于Tmin;若節(jié)點已知的部署時間和當前時間兩者之間的差值大于等于Tmin,則說明兩個節(jié)點已經錯過構建密鑰對的最佳時間,系統(tǒng)會拒絕已經給出的密鑰對方案。若節(jié)點已知的部署時間和當前時間兩者之間的差值小于Tmin,則需要將節(jié)點w接收到的IDu和tu代入到對應的二元多項式中,經過計算獲取兩個節(jié)點的成對密鑰Kwu=Fw(IDu,tu)。通過對比bw和tu來判斷節(jié)點是否接收到對應的數據包。
2)KEREM數據包的處理流程
當節(jié)點u接收到節(jié)點w的KEREM后獲取Kwu=Fw(IDu,tu)。假設節(jié)點u為復制節(jié)點,為了有效避免系統(tǒng)對節(jié)點完成檢測,需要提前設定部署時間以及對應的ID,當Kwu≠Kuw,則說明節(jié)點u無法和其它節(jié)點組成密鑰對。假設節(jié)點u代表合法節(jié)點,則說明節(jié)點w的綜合性能優(yōu)于節(jié)點u部署,同時節(jié)點的合法性也無法得到確定,需要向鄰近的節(jié)點進行認證。
在正常無線局域網多安全域間中,不論復制節(jié)點出現在哪種數據包中,均說明無法采用欺騙或者選擇性轉發(fā)等手段獲取鄰近節(jié)點的信任,需要將其加入到對應的局域網絡中,使其在網絡中形成一個孤立的節(jié)點。
當使用鄰居節(jié)點建立密鑰時,需要第一時間將節(jié)點的部署時間以及相關的身份信息傳輸至對應的組內,同時計算區(qū)域內的成對密鑰。但是,節(jié)點復制過程中會存在以下幾種非法行為,分別為:
1)若對多項式求解不成功,則需要對節(jié)點的相關信息進行偽造,進而完成密鑰對的建立。
2)若對多項式求解成功,則需要設定具體節(jié)點的相關信息,進而組建對應的密鑰對。
針對不同類型的網絡攻擊而言,設定bij代表常量,aijkl代表求解的未知變量,同時已知節(jié)點的部署時間和ID對應,則能夠獲取以下形式的計算式
(3)
在上述分析的基礎上,在算法中引入四元對稱多項式,以此為依據建立對應的異地密鑰對協(xié)商機制。
基于異地密鑰對協(xié)商機制,為了有效降低存儲空間,G矩陣第i行第j列的產生可以通過式(4)表示
G[i,j]=(sj)i-1
(4)
式中,sj代表有限域內的隨機一個素數。其中,矩陣G為范德蒙行列式,所以矩陣加入任何λ+1列是線性無關的。為了有效降低存儲開銷,設定存儲矩陣G第k列的節(jié)點只能夠存儲sk,將sk設定為種子值,由此形成如式(5)所示的序列
(5)
在整個無線局域網多安全域間的密鑰異地共享過程中,在網絡中隨機一對節(jié)點均能夠構建共享密鑰[7,8],其中網絡連通率為1。
在共享方案制定過程中,當被捕獲節(jié)點數量超過λ,節(jié)點上矩陣A的行密鑰信息泄露,結果公開矩陣就能夠破解出私密矩陣f(x,y|k∈Gi,j)D的所有密鑰信息,促使網絡安全性下降。
基于部署信息的密鑰管理方法需要借助節(jié)點位置信息完成,主要采用不同的密鑰分配方案實現不同節(jié)點之間的通信[9,10]。在進行網絡部署前期,使用概率分布函數對節(jié)點近似位置進行估計。節(jié)點主要采用組的方式進行部署,由于部署后在相同組內的節(jié)點位置比較近,易形成鄰居節(jié)點。當加入部署信息之后,需要準確掌握節(jié)點的坐標位置,進而判定鄰居節(jié)點的坐標位置。
為了全面提升節(jié)點部署效率,節(jié)點主要采用普通組的形式進行部署,通常情況下一組節(jié)點在一個部署點采用傳統(tǒng)方式進行發(fā)射,則組內全部的節(jié)點的最終位置都服從節(jié)點部署位置[11,12]。
在上述分析的基礎上,可以構建不同方案的分組部署模型。將節(jié)點按組進行部署,同時將無線局域網多安全域間劃分為多個邏輯組。其中,分組部署模型的建立過程如下所示:
1)將無線局域網多安全域間劃分為r×c個區(qū)域,其中第i行第j列所在區(qū)域采用dom(i,j)表示,對應的中心位置為(xi,yj)。
2)無線局域網中共計包含N個節(jié)點,各個節(jié)點都具有唯一的標識IDk。將N個節(jié)點劃分為r×c個組,在距離中心位置比較近的區(qū)域進行節(jié)點部署。
3)在各個邏輯組設定一個部署位置[13,14],即中心位置。
4)當確定研究區(qū)域內已有的節(jié)點均滿足二維高斯分布需求后,計算對應的概率密度函數,如式(6)所示
(6)
式中,σ代表部署位置的中心區(qū)域。
當完成設定區(qū)域內節(jié)點的部署工作之后,需要對節(jié)點進行分配處理,同時還需要將全部的密鑰信息加載到節(jié)點的存儲空間中。由于無線局域網是靜態(tài)的,所以網絡在運行過程中,節(jié)點密鑰不會發(fā)生周期性地更新或者撤銷等相關操作。傳感器上節(jié)點對應的密鑰信息可以用來和鄰近節(jié)點組建通信。分析節(jié)點部署模型可知,不同節(jié)點之間的關系可以劃分為組內和組間兩種形式。針對不同的組,需要使用一個組內密鑰空間,不同組間節(jié)點之間通信需要借助密鑰信息完成。
由于密鑰異地共享方案存在閾值的問題,在考慮節(jié)點分組后,需要為每一個組構建對應的密鑰空間,同時加入對應的安全條件。在上述分析的基礎上,通過Blom方案中的密鑰矩陣為各個節(jié)點分配組內密鑰信息,促使組內的隨機兩個節(jié)點能夠構建共享密鑰。
分析節(jié)點部署信息[15],組內節(jié)點成為鄰居節(jié)點的概率比較大,所以需要優(yōu)先確保組內節(jié)點之間可以構建對應的共享密鑰,詳細的操作步驟如下所示:
1)在服務器部署區(qū)域內隨機設定一個規(guī)格為λ×n的矩陣G,同時設定相關的參數取值。
2)隨機形成一個對稱矩陣Dij,設定Dij是保密的。
3)針對組內的節(jié)點,隨機選取矩陣中的任意一行分配給k,同時將其設定為組內密鑰向量。由于每一個節(jié)點必須要選擇不同的行,所有需要將組內密鑰向量簇存入到k中。
當完成組內節(jié)點的密鑰預分配后,需要構建對應的通信組內密鑰空間。將全部組看成是一個整體,通過和組內節(jié)點進行密鑰預分配,形成一個組密鑰空間。詳細的操作步驟如下所示:
1)在無線局域網多安全域間中隨機形成一個矩陣,同時設定相關參數的取值。
2)在有限域內隨機形成一個對稱矩陣,同時對矩陣內全部參數進行初始化處理。
3)經過計算獲取各個節(jié)點組間的密鑰向量,同時將對應的向量標識存儲到系統(tǒng)的服務器中,構建矩陣對應的列。
當完成密鑰預分配處理后,分別在不同的節(jié)點下存儲密鑰信息。設定組內密鑰向量為(k1,k2,…,kλ),矩陣對應的種子值為seed,隨機兩個節(jié)點之間進行密鑰異地共享的詳細操作步驟如下所示:
1)分別在不同節(jié)點廣播自己的標識以及對應的種子值。
2)當鄰居節(jié)點接收到以上信息后,需要進一步判斷節(jié)點標識是否在組內標識中。
3)假設在相同組中,根據接收到的種子值重新形成矩陣對應的列,同時和組內的密鑰向量進行矩陣乘法計算,最終獲取共享密鑰。
4)如果節(jié)點沒有在同一個組內,則將接收到的種子值組建成新的矩陣對應列,最終經過計算實現密鑰異地共享。
為驗證所提無線局域網多安全域間的密鑰異地共享方法的有效性,在如圖2所示的場景中進行實驗測試
圖2 場景布置示意圖
為更好完成實驗,需要對無線局域網進行如下假設:
1)優(yōu)先在無線局域網多安全域間內進行節(jié)點部署,同時在不同節(jié)點之間構建加密通信鏈路。
2)由于受到實驗環(huán)境以及節(jié)點數量等多方面因素的限制,在設定條件下,需要將無線局部網中的靜態(tài)節(jié)點進行轉換,同時設定探測半徑為3cm。
在進行實驗測試過程中,設定被俘獲節(jié)點為5號,則對應的節(jié)點鄰居列表如圖3所示。
圖3 節(jié)點鄰居列表示意圖
分析圖3(a)可知,當復制兩個節(jié)點后,節(jié)點A的鄰居節(jié)點分別為9號節(jié)點、11號節(jié)點以及4號節(jié)點;圖3(b)顯示,雖然節(jié)點A被放置在初始位置,但是節(jié)點離開時間大于節(jié)點刪除時間;圖3(c)顯示,節(jié)點B無法加入到無線局域網絡中。圖3(d)顯示,當有全新的節(jié)點部署在A附近時,無法進行真實性檢驗,所以也無法和新節(jié)點進行密鑰異地共享。
利用表1給出破解密鑰比例和被捕獲節(jié)點之間的關系變化情況:
表1 不同方法在設定時間下破解密鑰和被捕獲節(jié)點數量之間的關系分析結果
根據表1得到的數據可分析出不同方法的破解密鑰比例值會受到捕獲節(jié)點的數量以及時間影響。和另外兩種方法相比,所提方法的破解密鑰比例明顯更低一些。
在圖2設定的場景下,分析密鑰更新和驅逐節(jié)點過程中形成的能耗,詳細的實驗對比結果如圖4所示。
圖4 不同方法的能耗測試結果對比
分析圖4中的實驗數據可知,所提方法在密鑰更新以及節(jié)點驅逐過程中產生的能耗明顯低于另外兩種方法。這主要是因為所提方法構建了異地密鑰對協(xié)商機制,這樣可以更好完成密鑰異地共享,同時有效降低能耗。
針對傳統(tǒng)方法存在的問題,提出一種無線局域網多安全域間的密鑰異地共享方法。實驗結果表明,所提方法能夠有效降低節(jié)點能耗以及破解密鑰比例,更好實現密鑰異地共享。
由于受到時間以及環(huán)境等多方面因素的限制,所提方法仍然存在一定的不足,后續(xù)將重點針對以下幾方面的內容進行研究:
1)擴大研究范圍,進一步提升密鑰異地共享性能。
2)加快密鑰異地共享速度,使其能夠以最短的時間完成共享。