專利名稱::一種傳感器網(wǎng)絡(luò)的密鑰預分配方法
技術(shù)領(lǐng)域:
:本發(fā)明涉及數(shù)字信息的傳輸領(lǐng)域,具體涉及保密或安全通信中的密鑰分配方法。
背景技術(shù):
:無線分布式傳感器網(wǎng)絡(luò)可用于測量周圍環(huán)境的一些物理數(shù)據(jù)(如熱、紅外線、聲納、雷達、地震波等),并且通過無線通信將測試結(jié)果發(fā)回測試臺站。每個傳感器具有測試并存儲信息、發(fā)送和接收無線信號的功能,但由于受到它所帶有的資源的限制,它的存儲和傳輸信息的功能都受到較大的限制。在使用傳感器網(wǎng)絡(luò)時,首先要將一定數(shù)量的傳感器隨機散布到測試現(xiàn)場,然后每個傳感器將發(fā)送信號與它無線通信可達到的范圍內(nèi)的其它傳感器建立聯(lián)絡(luò)。傳感器之間的位置分布在散布到測試現(xiàn)場之前是未知的,并且由于所處環(huán)境的影響,每個傳感器的位置可能會移動,某些傳感器也可能會被破壞,喪失功能。任意兩個傳感器之間要傳遞信息時,如果它們的距離在各自的發(fā)射半徑范圍內(nèi),它們就可以直接傳遞信息。否則,傳遞信息可以從發(fā)送傳感器出發(fā),通過在瞬時選定的一個傳感器鏈所形成的通道上接力傳遞,最后達到接收傳感器。傳感器之間所形成的通信通道也可能會不斷變化。由于受到傳感器能源、計算和存儲能力的限制,公鑰密碼體制不可能在這類網(wǎng)絡(luò)上采用,利用對稱密碼是一個可行方案。在傳感器被隨機散布到測試現(xiàn)場之前,在每個傳感器中預置一定數(shù)量的密鑰,將它們散布到測試現(xiàn)場之后,兩個相鄰傳感器(指它們處于無線信號發(fā)射半徑范圍內(nèi))如預置有相同的密鑰,就可以利用對稱密碼進行保密通信。在傳感器使用之前,向每個傳感器內(nèi)輸入精心挑選的一組密鑰,使得任意一對傳感器具有相同密鑰的概率越大越好,這個概率稱為安全連通概率。由于傳感器的存儲能力是受限制的,可以輸入的密鑰個數(shù)是有限制的。另外,當某個傳感器被破壞后(例如被敵方竊取),這個傳感器中存放的密鑰將在整個網(wǎng)絡(luò)上停止使用,這時網(wǎng)絡(luò)的安全連通概率受到一定程度的破壞,將安全連通概率被損壞的概率稱為損傷概率。顯然網(wǎng)絡(luò)的損傷概率越小越好,它反映了網(wǎng)絡(luò)的抗攻擊能力。以上兩個概率是評價一個密鑰預分配方案的兩個主要指標。同樣,保密通信也可以在一個傳感器鏈上進行,只要這個鏈上每一對相鄰傳感器都具有安全聯(lián)絡(luò)。己知的傳感器網(wǎng)絡(luò)上的密鑰預分配方案有兩類,一類是隨機方法,另一類是基于組合設(shè)計的方法。在后一類方案中,J丄ee禾卩D.Stinson在Deterministickeypredistributionschemesforsensornetworks(IEEEWCNC2005,NewOrleans)—文中提出利用下述TransversalDesign(TD)構(gòu)造傳感器網(wǎng)絡(luò)的密鑰預分配方案(以下簡稱TD方案)設(shè)/7為素數(shù),選取一個整數(shù)A使2SAS/7。記集合ZN^0,1,2,…,/rl}。定義點集M^(x,y)|0Sx<k,yeZN,對ZN中任意一對數(shù)(i,j),定義一個區(qū)組Kx,ix+jmodN)i02x《k_l}。該密鑰預分配方案最多可支持"2個傳感器,每個傳感器中需要存儲A個密鑰,但是當每個傳感器中存儲的密鑰較少時,整個網(wǎng)絡(luò)所支持的傳感器數(shù)量相對偏少,且隨網(wǎng)絡(luò)中傳感器數(shù)量的增加安全連通概率急劇下降。因此TD方案明顯存在下述不足1、得到理想的安全連通率時,對傳感器的存儲和計算能力要求較高;2、不便于根據(jù)實際需要不斷地增布傳感器,否則就不能保證安全通信;3、隨著網(wǎng)絡(luò)所支持的傳感器數(shù)量的增加,安全連通概率急劇下降,用于高密度、大范圍散布的傳感器網(wǎng)絡(luò),無法獲得較高的安全連通概率。本發(fā)明人于2001年在應用數(shù)學學報(v.24,pp71-77)上發(fā)表論文"一種基于有限域上有理正規(guī)曲線的密鑰預分配方案"。該方案的模型是由一個可信機構(gòu)和一個由若干用戶所組成的集合構(gòu)成。其中,所述的可信機構(gòu)給每個用戶產(chǎn)生一個秘密信息,并以秘密的方式分發(fā)給用戶,使得賦予特權(quán)子集中的用戶能夠計算出加密密鑰,從而可以得到加密信息,而對于沒有被授權(quán)的子集中的用戶,即使聯(lián)合起來也得不到加密密鑰的任何信息,因此該方法不適用于傳感器網(wǎng)絡(luò)的密鑰預分配。
發(fā)明內(nèi)容鑒于現(xiàn)有技術(shù)存在上述不足,本發(fā)明提供一種傳感器網(wǎng)絡(luò)的密鑰預分配方法,以解決既定的傳感器網(wǎng)絡(luò)中增布傳感器不能保證安全通信的技術(shù)問題。本發(fā)明所要解決上述問題的技術(shù)方案是-一種傳感器網(wǎng)絡(luò)的密鑰預分配方法,該方法包括下列步驟(1)根據(jù)散布在網(wǎng)絡(luò)中傳感器的個數(shù)N,求解不等式方程Q2(23-1)2JV得2值,選取0值中最小的素數(shù)《為設(shè)計參數(shù),其中所述不等式方程中的g為正整數(shù);(2)從對稱密碼的密鑰池中隨機取《2+《+1個密鑰作為所述網(wǎng)絡(luò)的子密鑰池;(3)對子密鑰池中的《2+《+1個密鑰冠以編號,該編號為l,2,3,……,《2+g+l;同時,(4)設(shè)子密鑰池中的每一個密鑰對應于射影空間中的一個點,記該點的坐標為(x,;;,2),當x,y和z按以下方法取值時,得到子密鑰池中的密鑰所對應的射影空間點的集合4.l)當;c取l時,y,z分別取0,1,2,,《-l,得到^個點(l,乂z);4,2)當x取O,少取1時,z分別取O,1,2,,g-l,得到《個點(0,U);4.3)當x和y取O,z取l時,得到一個點(0,0,1);(5)按下述步驟確定存入每一個傳感器中的密鑰5.1)將所得到的子密鑰池中的^+《+l個密鑰按以下方法選取《+l個密鑰為一個組:先隨機產(chǎn)生三階可逆矩陣7=<formula>formulaseeoriginaldocumentpage6</formula>,然后將r與步驟(4)所述集合的子集<formula>formulaseeoriginaldocumentpage6</formula>中的每一個點(x,少,z)相乘,即<formula>formulaseeoriginaldocumentpage6</formula>),得到《+l個點的坐標,再<formula>formulaseeoriginaldocumentpage6</formula>將這《+l個點的每一坐標值除以《后取余數(shù),取余數(shù)后若有不在步驟(4)所述的射影空間中的點,則將該點的每一個坐標分別除以該點第一個非零的坐標值,使該點在步驟(4)所述的射影空間點中,直至把所述的《+l個點都變換到步驟(4)所述的射影空間點中,其中所述的三階可逆矩陣7中的元素"1,02,^,61,62,63^1,。,£;3分別在0,1,2,3……《-l范圍內(nèi)隨機取值;5.2)執(zhí)行步驟5.l)N次,得到N組互不相同的點集,亦即所得到對應的N組密鑰;(6)將步驟5.2)得到的N組密鑰和步驟(3)中所冠相對應的編號分別存入N個傳感器中即完成密鑰的分配。上述步驟5.1)所述的將每一個坐標分別除以第一個非零的坐標值的方法具體是由以下步驟組成令g+l個點中不在步驟(4)所述的射影空間中點的坐標為^,v,vv),那么,a.如果w^0且"^1,則將該點的每一個坐標除以w;b.如果w-0,v^0且v^1,則將該點的每一個坐標除以v;c.如果w-0,v=0,w^0且m^1,則將該點的每一個坐標除以w。本發(fā)明所述的方法可用于無線傳感器網(wǎng)絡(luò)中的密鑰預分配,在所述網(wǎng)絡(luò)中的兩只傳感器交換彼此儲存的一組密鑰所對應的編號即可進行加密通信。本發(fā)明利用有限域上射影空間中的有理正規(guī)曲線構(gòu)造一類適合無線傳感器網(wǎng)絡(luò)中的密鑰預分配方案,即建立密鑰與射影空間中的點之間的一一對應關(guān)系,并根據(jù)有理正規(guī)曲線中的點來確定為每個傳感器存儲哪些密鑰,然后將所確定的及其相對應的編號分別存入一個傳感器中。如此構(gòu)建的分配方案,任兩個傳感器只要進行所述編號的交換即可進行加密通信,因此他人無法破解所截獲的兩傳感器之間的通信信息。由本發(fā)明上述方案可知,其中所述的參數(shù)《為不等式方程Q2(23-1)》7V解集中最小的素數(shù),因此依據(jù)參數(shù)g所確定的每個傳感器所存入的密鑰數(shù),實際支持傳感器數(shù)量遠大于設(shè)計計算值。由此顯見,采用本發(fā)明方法所設(shè)計的傳感器網(wǎng)絡(luò),當需要擴大散布范圍或提高分布密度時,即傳感器的數(shù)量滿足不了實際需要時,可根據(jù)需要隨時進行增布,且系統(tǒng)無需升級。本發(fā)明所述的方法,其中每個傳感器所存入的密鑰均不完全相同,因此可顯著提高安全的層級。此外,本發(fā)明與現(xiàn)有技術(shù)相比,不僅安全連通率高而且穩(wěn)定,不會因所支持的傳感器的數(shù)量多急劇下降,因此用于傳感器較多網(wǎng)絡(luò)優(yōu)勢特別明顯。具體實施例方式以下用一個具體的實施例對本發(fā)明進行進一步詳細描述,以便公眾更好地掌握本發(fā)明所述的方法,充分理解本發(fā)明方法所能達到的效果。本例中所述的傳感器網(wǎng)絡(luò)中共有iooo個傳感器,所使用的密鑰池為常用的對稱密碼的密鑰池,其密鑰分配方法如下所述。(1)根據(jù)網(wǎng)絡(luò)中傳感器的數(shù)量,令0為正整數(shù),列出不等式方程22(23-1)21000,解該方程得g的解集,選取其中的最小素數(shù)5為設(shè)計參數(shù)《。(2)從對稱密碼的密鑰池中隨機取《2+《+1=25+5+1=31個密鑰作為所述網(wǎng)絡(luò)的子密鑰池。(3)對子密鑰池中的31個密鑰冠以編號,該編號為l,2,3,……,31。(4)設(shè)子密鑰池中的每一個密鑰對應于射影空間中的一個點,記該點的坐標為(x,少,^,當x,少和z按以下方法取值時,得到子密鑰池中的密鑰所對應的射影空間點的集合4.1)當x取l時,乂z分別取0,1,2,,4,得到25個點為(1,0,0),(l,O,l),(1,0,2),(1,0,3),(1,0,4),(1,l,O),(1,1,1),(1,1,2),(1,1,3),(1,1,4),(1,2,0),(1,2,1),(1,2,2),(1,2,3),(1,2,4),(1,3,0),(1,3,1),(1,3,2),(1,3,3),(1,3,4),(1,4'0),(1,4,1),(1,4,2),(1,4,3),(1,4,4)};4.2)當jc取0,少取1時,z分別取O,1,2,……,5-1,得到5個點為(0,1,0),(0,l,l),(0,1,2),(0,1,3),(0,1,4);4.3)當;c和少取0,z取l時,得到一個點為(0,0,1);為了便于比對,假設(shè)所述子密鑰池的密鑰為《,《2,《3........尺31,那么將步驟(3)所冠的編號和步驟(4)所得到的對應的射影空間點的集合進行排列即可得到表l。表l<table>tableseeoriginaldocumentpage8</column></row><table>(5)按下述步驟確定存入每一個傳感器中的密鑰5.1)將所得到的子密鑰池中的31個密鑰中按以下方法選取6個密鑰為一個組;n3n先在元素小于等于4的條件下隨機產(chǎn)生三階可逆矩陣r-322242,由于本例中在步驟(4)所得到的集合的子集{(1,《,《2)|"=0,1,2,,《-1}11{(0,0,1)}中的點(x,》z)為以下六個點{(l,O,O),(1,1,1),(1,2,4),(1,3,4),(1,4,1),(O,O,l)},那么(x,少,z)xr得到六個點坐標分別為(1,0,0)(l,U)(1,2,4)131322、242131322242,13r322242=(1,3,1);=(6,9,5),將結(jié)果除以《=5取余數(shù)得(1,4,0);=(15,23,13),將結(jié)果除以《=5取余數(shù)得(0,3,3),再將每一個坐標除以3,得到(O,1,1);<formula>formulaseeoriginaldocumentpage9</formula>=(8,25,15),將結(jié)果除以g-5取余數(shù)得(3,0,0),再將每一個坐標除以<formula>formulaseeoriginaldocumentpage9</formula>=(15,15,11),將結(jié)果除以《=5取余數(shù)得(0,0,1)=(2,4,2),將每一個坐標除以2,得到(l,2,1)上述六個點均在步驟(4)所述的射影空間內(nèi),由表1可得這六個點,所對應的六個編號為U,3,7,18,23,27},所對應的六個密鑰為{KbK3,K7,Kl8,K23,K27}。5.2)對于網(wǎng)絡(luò)中的另一個傳感器,也在元素小于等于4的條件下隨機產(chǎn)生另一個三階,131)同樣按步驟5.1)所述的方法,將子集可逆矩陣r=<formula>formulaseeoriginaldocumentpage9</formula>{(l,a,a2)|a=0,l,2,...,《-l}U{(0,0,l)}中的點{(l,O,O),(l,l,l),(1,2,4),(1,3,4),(1,4,1),(0,0,1)}分另U乘T得到的六個點的坐標為((1,0,0),(1,0,1),(1,2,1),(1,2,3),(1,3,0),(1,3,3)},由表1可得這六個點所對應的六個編號為{7,8,18,20,22,25},所對應的六個密鑰為{K7,K8,Kl8,K2。,K22,K25}。如此重復執(zhí)行1000次,便得到IOOO組密鑰及其對應的編號。(6)得到的1000組密鑰及其相對應的編號分別存入1000個傳感器中,即完成密鑰的分配。以下結(jié)合上述實施例給出本發(fā)明所述方案安全連通概率和損傷概率的計算方法及結(jié)果,同時與
背景技術(shù):
中所述的TD方案進行比較計算。1、本發(fā)明所述方案安全連通概率和損傷概率的計算眾所周知,安全連通概率和損傷概率是傳感器網(wǎng)絡(luò)進行安全保密通信的兩個重要指標,本發(fā)明所述方案的安全連通概率的計算公式為下式I,損傷概率的公式為下式II—普《一+《—1加7=1〃9_j_13"8—13"7;U"6_35〃57"4丄43"313"2;3"I《+n《—1《—W_i《+¥《+i《9-f^I7--1《5+一II9將上述實施例中的《值5分別代入上式I和II,得安全連通概率;=0.767667,損傷概率/"http://=。125。2、系統(tǒng)支持的傳感器數(shù)量對安全連通概率和損傷概率影響據(jù)J.Lee禾口D.Stinson在Deterministickeypredistributionschemesforsensornetworks(IEEEWCNC2005,NewOrleans)—文中披露TD方案的安全連通概率和損傷概率分別為下式III和IV所示。<formula>formulaseeoriginaldocumentpage10</formula>III<formula>formulaseeoriginaldocumentpage10</formula>IV本發(fā)明的技術(shù)方案的理論依據(jù)是射影空間及有理正規(guī)曲線,所述傳感器網(wǎng)絡(luò)支持的傳感器數(shù)量為^(《3-1)。據(jù)此,為了計算和比較的方便,我們不妨假設(shè)參數(shù)《分別為5、7、11、13、17和29,那么采用本發(fā)明所述的方案的傳感器網(wǎng)絡(luò)可支持的傳感器的數(shù)量分別為3100、16758、160930、371124、1419568、20510308。根據(jù)上述傳感器的數(shù)量,相當?shù)腡D方案所能支持傳感器數(shù)量"2分別532=2809、1272=16129、4012=160801、6072=368449、11872=1408969和45232=20457529。根據(jù)上述公式I、II和III、IV可算采用本發(fā)明方案和TD方案的安全連通概率p和損傷概率fail,具體結(jié)果見下表2。表2<table>tableseeoriginaldocumentpage10</column></row><table>由表2可見,在二者所支持的傳感器數(shù)量相當?shù)那闆r下,每個傳感器中存入的密鑰的數(shù)量相等,TD方案的損傷概率顯得較低,但是安全連通概率明顯偏低,而且隨著網(wǎng)絡(luò)中傳感器數(shù)量的增加而急劇下降。相對于TD方案,本發(fā)明的安全連通概率則高出7倍以上,尤其是隨著網(wǎng)絡(luò)中傳感器數(shù)量的增加無明顯的下降,因此綜合考慮安全連通概率和損傷概率這兩個指標,本發(fā)明具有很明顯的優(yōu)勢,更適合于高密度、大范圍散布的傳感器之間的安全保密通信。3、增布傳感器的數(shù)量對安全連通概率和損傷概率影響上述1000個傳感器的網(wǎng)絡(luò),如果散布的密度或范圍不能滿足實際需要,可進行增布,最多可增布至3100只,而且用上述公式I和II進行校驗,其安全連通概率基本維持為0.7677,其損傷概率也基本維持為0.12500。但是采用TD方案同樣設(shè)計1000個傳感器的網(wǎng)絡(luò),就要選擇滿足方程w221000的最小素數(shù),可知"=37,由公式III和IV可計算連通概率和損傷概率分別為O.1579和0.0256。如果將傳感器增布至2809只,其安全連通概率則為0.1111,其損傷概率則為0.0181。由此可見,采用本發(fā)明方法設(shè)計的傳感器的網(wǎng)絡(luò),在容許的范圍內(nèi)增布傳感器仍然可保持原有的安全保密的層級,而采用TD方案,如果要在容許的范圍內(nèi)增布傳感器,其安全保密的層級就會明顯的下降。而且當需要增布傳感器時,本發(fā)明設(shè)計的傳感器網(wǎng)絡(luò),不需要重新設(shè)置系統(tǒng)參數(shù),而TD的方案則需要重新設(shè)置系統(tǒng)。權(quán)利要求1、一種傳感器網(wǎng)絡(luò)的密鑰預分配方法,該方法包括下列步驟(1)根據(jù)散布在網(wǎng)絡(luò)中傳感器的個數(shù)N,列出不等式方程Q2(Q3-1)≥N,求解得Q值,選取Q值中最小的素數(shù)q為設(shè)計參數(shù),其中所述不等式方程中的Q為正整數(shù);(2)從對稱密碼的密鑰池中隨機取q2+q+1個密鑰作為所述網(wǎng)絡(luò)的子密鑰池;(3)對子密鑰池中的q2+q+1個密鑰冠以編號,該編號為1,2,3,……,q2+q+1;同時,(4)設(shè)子密鑰池中的每一個密鑰對應于射影空間中的一個點,記該點的坐標為(x,y,z),當x,y和z按以下方法取值時,得到子密鑰池中的密鑰所對應的射影空間點的集合4.1)當x取1時,y,z分別取0,1,2,……,q-1,得到q2個點(1,y,z);4.2)當x取0,y取1時,z分別取0,1,2,……,q-1,得到q個點(0,1,z);4.3)當x和y取0,z取1時,得到一個點(0,0,1);(5)按下述步驟確定存入每一個傳感器中的密鑰5.1)將所得到的子密鑰池中的q2+q+1個密鑰按以下方法選取q+1個密鑰為一個組先隨機產(chǎn)生三階可逆矩陣然后將T與步驟(4)所述集合的子集{(1,α,α2)|α=0,1,2,…,q-1}U{(0,0,1)}中的每一個點(x,y,z)相乘,得到q+1個點的坐標,再將這q+1個點的每一坐標值除以q后取余數(shù),取余數(shù)后若有不在步驟(4)所述的射影空間中的點,則將該點的每一個坐標分別除以該點第一個非零的坐標值,使該點在步驟(4)所述的射影空間點中,直至把所述的q+1個點都變換到步驟(4)所述的射影空間點中,其中所述的三階可逆矩陣T中的元素分別在0,1,2,3……q-1范圍內(nèi)隨機取值;5.2)執(zhí)行步驟5.1)N次,得到N組互不相同的點集,亦即所得到對應的N組密鑰;(6)將步驟5.2)得到的N組密鑰和步驟(3)中所冠相對應的編號分別存入N個傳感器中即完成密鑰的分配。2、根據(jù)權(quán)利要求所述的一種傳感器網(wǎng)絡(luò)的密鑰預分配方法,其特征是步驟5.1)所述的將每一個坐標分別除以第一個非零的坐標值的方法由以下步驟組成令《+l個點中不在步驟(4)所述的射影空間中點的坐標為(w,v,w),那么,a.如果"^0且"-l,則將該點的每一個坐標除以w;b.如果"=0,v^0且v^1,則將該點的每一個坐標除以v;c.如果"=0,v=0,w-O且w-l,則將該點的每一個坐標除以w。全文摘要本發(fā)明公開一種傳感器網(wǎng)絡(luò)的密鑰預分配方法,該方法利用有限域上射影空間中的有理正規(guī)曲線構(gòu)造一類適合無線傳感器網(wǎng)絡(luò)中的密鑰預分配方案,即首先解不等式方程Q<sup>2</sup>(Q<sup>3</sup>-1)≥N,以其解集中最小素數(shù)q為參數(shù),確定所述網(wǎng)絡(luò)的子密鑰池中密鑰數(shù)為q<sup>2</sup>+q+1,再將子密鑰池中的每一個密鑰冠以編號,同時從子密鑰池中選取q+1個密鑰為一個組,共獲得N組密鑰及其對應的編號,最后將一組密鑰及其相對應的編號一同分配到一只傳感器中。如此構(gòu)建的分配方案,兩個傳感器之間只要進行所述編號的交換即可進行加密通信,因此他人無法破解所截獲的兩傳感器之間的通信信息。本發(fā)明方法不僅安全連通概率高,而且還便于根據(jù)實際需要來擴大傳感器的散布范圍和密度。文檔編號H04L9/08GK101383699SQ20081021853公開日2009年3月11日申請日期2008年10月22日優(yōu)先權(quán)日2008年10月22日發(fā)明者董軍武,裴定一申請人:廣州大學