本發(fā)明涉及無線傳感網(wǎng)絡(luò)的安全通信領(lǐng)域,特別是一種輕量級異構(gòu)射頻參數(shù)跳變的無線傳感網(wǎng)安全通信方法。
背景技術(shù):
隨著無線通信技術(shù)和電子器件技術(shù)的快速發(fā)展,低成本、低功耗、多功能的無線傳感器的開發(fā)和廣泛應(yīng)用成為可能。然而由于傳感器節(jié)點資源空間和功耗的限制,無線傳感網(wǎng)在多跳自組織情況下,面臨著諸多的安全威脅,無線傳感網(wǎng)絡(luò)除了要考慮在有線網(wǎng)絡(luò)中已經(jīng)存在的安全問題以外,還有許多新的安全問題,以無線傳感網(wǎng)中的常見攻擊為例。主要存在以下兩種攻擊:
1)惡意干擾攻擊
惡意節(jié)點在信道中廣播數(shù)據(jù)包,造成網(wǎng)絡(luò)擁塞,正常節(jié)點無法路由選路,從而節(jié)點之間無法進(jìn)行正常的通信。
2)中間人攻擊
在無線通信中,節(jié)點與節(jié)點通信采用共享的無線信道,惡意節(jié)點可以監(jiān)聽和篡改通信內(nèi)容。
研究表明上述攻擊存在的根本原因:傳感器網(wǎng)絡(luò)自身多跳通信方式的特點使得無線傳感網(wǎng)絡(luò)易受信號干擾和入侵等攻擊。攻擊者利用共享的無線信道,可以在無線網(wǎng)絡(luò)中監(jiān)聽信道,向信道發(fā)射比特流,重放以前監(jiān)聽到的數(shù)據(jù)包等攻擊手段。
現(xiàn)有研究針對入侵和干擾采用變速跳頻通信、身份認(rèn)證及一些上層的防御措施等來防御入侵和干擾,本發(fā)明對此進(jìn)行了改進(jìn),聯(lián)合了信道頻率、比特速率和調(diào)制方式多種射頻參數(shù)來抵御入侵和干擾,增加了信號波形之間的非相關(guān)性,同時通過偽隨機序列隨機化,使得信道頻率、比特速率和調(diào)制方式組成的三維跳變圖案更加復(fù)雜、多樣和隨機,極大地提高了無線傳感網(wǎng)絡(luò)的防入侵、抗干擾能力。
在實際的無線通信中,要入侵無線傳感器網(wǎng)絡(luò),首先需要捕捉無線信號,再分析無線通信中采用的各種協(xié)議,還原通信內(nèi)容,從而找出漏洞,實施入侵。而采用聯(lián)合信道頻率、比特速率、調(diào)制方式的射頻多參數(shù)跳變通信相較于傳統(tǒng)的無線通信方法,可以加大捕捉和還原信號的難度。由于通信過程中信道頻率、比特速率和調(diào)制方式都發(fā)生了跳變,入侵者需要在多個信道頻點,采用不同的比特速率和調(diào)制方式去嗅探無線信號,才能捕捉到信號。同時入侵者要分析整個網(wǎng)絡(luò)的通信協(xié)議,還需要大量的采樣,以分析出通信過程中跳變的規(guī)律,才能跟蹤到通信信號。
技術(shù)實現(xiàn)要素:
本發(fā)明所要解決的技術(shù)問題是,針對現(xiàn)有技術(shù)不足,提供一種輕量級異構(gòu)射頻參數(shù)跳變的無線傳感網(wǎng)安全通信方法。
為解決上述技術(shù)問題,本發(fā)明所采用的技術(shù)方案是:一種輕量級異構(gòu)射頻參數(shù)跳變的無線傳感網(wǎng)安全通信方法,包括以下步驟:
1)生成跳變序列對應(yīng)的信道頻率集合F={fi|i=1,2,…X},fi為信道頻率集合中第i
個信道頻率;生成跳變序列對應(yīng)的比特速率集合R={rj|j=1,2,...Y},rj為比特速
率集合中第j個比特速率;生成跳變序列對應(yīng)的調(diào)制方式集合M={mk|k=1,2,…Z},mk為調(diào)制方式集合中第k個調(diào)制方式;
2)將信道頻率、比特速率以及調(diào)制方式進(jìn)行隨機組合,共有C種不同的射頻參數(shù)配置,得到異構(gòu)射頻三元參數(shù)序列集合,簡記為G{fi,rj,mk},C的計算公式為:C=CF×CR×CM,其中為信道頻率選擇的可能數(shù)量;為駐留時間長短相關(guān)的比特速率選擇的可能數(shù)量;為調(diào)制方式選擇的可能數(shù)量;結(jié)合偽隨機序列對所得到三元參數(shù)序列集合G{fi,rj,mk}里的參數(shù)點進(jìn)行選擇控制,從而生成隨機的異構(gòu)射頻參數(shù)跳變圖案序列,簡記為G′{fi,rj,mk};
3)將已生成的異構(gòu)射頻參數(shù)跳變圖案序列G′{fi,rj,mk}提供于收發(fā)雙方,并通過同步方法,使收發(fā)通信兩端跳變起始時間同步;
4)收發(fā)雙方按照異構(gòu)射頻參數(shù)跳變圖案序列G′{fi,rj,mk}的順序進(jìn)行參數(shù)切換,設(shè)置計數(shù)器n初值為1,設(shè)序列G′{fi,rj,mk}初始配置射頻參數(shù)為g1,表示為跳變圖案序列G′{fi,rj,mk}中第一個實例,g2表示為跳變圖案序列G′{fi,rj,mk}中第二個實例,gn表示為跳變圖案序列G′{fi,rj,mk}中第n個實例,依此類推;其中1≤n≤c;收發(fā)雙方設(shè)置下一跳變切換時間定時器;
5)當(dāng)跳變切換時間定時器觸發(fā)時,計數(shù)器n加1,配置射頻參數(shù)gn,如果n≤C,啟動下一跳變切換時間定時器,轉(zhuǎn)步驟5);若n>C,則整個跳變圖案全部遍歷完畢,轉(zhuǎn)步驟4),收發(fā)雙方重新從異構(gòu)射頻參數(shù)g1開始。
收發(fā)雙方設(shè)置下一跳變切換時間定時器的過程為:如果在連續(xù)數(shù)據(jù)傳輸模式下,每進(jìn)行一次參數(shù)切換后,依據(jù)當(dāng)前三元參數(shù)序列集合中的參數(shù)比特速率r,傳輸數(shù)據(jù)分組最大長度lmax,計算當(dāng)前駐留時間t=lmax/r,設(shè)置下一跳變切換時間定時器值為t+Δt,Δt為切換保護(hù)時間;如果在周期數(shù)據(jù)傳輸模式下,收發(fā)雙方同時根據(jù)采樣周期T觸發(fā)設(shè)置下一跳變切換時間定時器,下一跳變切換時間定時器間隔時間為T;T>>lmax/rmin,rmin為最小比特速率。
現(xiàn)有的跳頻通信技術(shù)中射頻信號一般采用單一的傳輸速率及調(diào)制方式,因此,每比特射頻信號空中駐留時間相同,信號波形相關(guān)度高,使得信號被截獲后易于識別、破譯。
通過改變通信頻率實現(xiàn)改變信道的功能,增加跟蹤式干擾對信號捕捉的難度。所謂改變信道,即傳統(tǒng)的跳頻通信使用的方法。
通過改變比特速率實時的改變駐留時間,從而使得能量發(fā)生變化,適用于數(shù)據(jù)分組的傳輸。所謂的變速率是指能夠按照某種算法偽隨機改變無線通信的射頻傳輸比特速率,即每比特射頻信號空中駐留時間不再是固定不變的,而是在很多種比特速率上偽隨機的進(jìn)行變化。
通過改變調(diào)制方式,降低傳輸信號波形之間的相關(guān)性,增加跟蹤式干擾對目標(biāo)信號的識別難度。改變調(diào)制方式,即在物理意義上改變了傳輸信號的幅度、頻率和相位。其實質(zhì)在于改變了信號波形的參數(shù),增加了信號被識別截獲的難度。
所以在傳統(tǒng)的跳頻通信方法上增加調(diào)制方式以及傳輸比特速率的改變,利用三維異構(gòu)跳變參數(shù)生成的跳變圖案,其復(fù)雜度和跳變圖案空間數(shù)量有明顯的增加,進(jìn)而增加了嗅探方對跳變圖案破譯的難度,從而實現(xiàn)安全通信的方法。
與現(xiàn)有技術(shù)相比,本發(fā)明所具有的有益效果為:本發(fā)明在信道跳頻的同時改變射頻參數(shù)比特速率及調(diào)制方式,形成以比特速率、信道頻率及調(diào)制方式同時變化的跳變圖案,在時域上,改變了波形的駐留時間、比特周期及波幅等信號特征,增加了信號的不確定性,降低被跟蹤的可能性;在頻域上,改變了調(diào)制信號的頻譜,增強了信號頻率頻譜的非相關(guān)性,使得嗅探者難以跟蹤分析信號特征。
綜上,本發(fā)明所采用的方法,具有如下優(yōu)點:(1)通過信道頻率的跳變,可防御單一信道的惡意干擾攻擊;(2)在信道頻率跳變同時,通過引入比特速率及調(diào)制方式的跳變,改變了信號的駐留時間和時序波形形態(tài),極大地提高了信號波形、頻譜之間的非相關(guān)性,增加了跟蹤干擾和入侵無線網(wǎng)絡(luò)的代價,可有效防御中間人攻擊;(3)輕量級,可分布式地運行在無線傳感網(wǎng)中的每一個節(jié)點上。
附圖說明
圖1為本發(fā)明從頻域上通過頻譜分析儀得到的實際效果示意圖;
圖2為本發(fā)明從時域上通過示波器得到的實際效果示意圖。
具體實施方式
本發(fā)明采用CC1101或CC2500射頻芯片和ATmega128微處理器構(gòu)成無線傳感器節(jié)點,運行嵌入式無線傳感網(wǎng)TinyOS操作系統(tǒng),設(shè)計異構(gòu)射頻參數(shù)跳變切換的接口和組件,通過射頻芯片的可編程寄存器,控制設(shè)置信道頻率、調(diào)制方式、比特速率,實現(xiàn)收發(fā)雙方異構(gòu)射頻參數(shù)切換。
CC1101頻率范圍:CC1101可以工作在300-348MHz、387-463MHz和779-928MHz頻段;支持多種調(diào)制模式(OOK、ASK、GFSK、2-FSK、4-FSK和MSK),可設(shè)置1.2kbps至500kbps之間的比特速率。
CC2500頻率范圍:2400.0MHz~2483.5MHz工作頻段;支持多種調(diào)制模式(OOK、GFSK、2-FSK和MSK)),可設(shè)置1.2kbps至500kbps之間的比特速率。
射頻芯片的信道頻率有CHANNR寄存器配置,它是一個八位的寄存器,其主要用于選擇某一基頻下的通信信道。MDMCFG1調(diào)制解調(diào)寄存器的低兩位決定了CHANSPC_E的值,MDMCFG0調(diào)制解調(diào)寄存器(8位)決定了CHANSPC_M的值。于是,上述寄存器的值可由以下公式計算:
其中,公式(1)為基頻計算公式,公式(2)位信道間隔帶寬計算公式,公式(3)為公式(1)與公式(2)之和,表示為信道載波頻率。
射頻芯片的調(diào)制方式由MDMCFG2寄存器進(jìn)行配置,當(dāng)使用2-FSK/GFSK調(diào)制時,DEVIATN寄存器規(guī)定了RX模式中輸入信號的預(yù)計頻率偏差。利用DEVIATN寄存器中的DEVIATION_M和DEVIATION_E值對頻率偏差進(jìn)行編程。該值為指數(shù)/尾數(shù)形式,最終的偏差可由式4得出
射頻芯片的比特速率由MDMCFG3和MDMCFG4寄存器進(jìn)行配置,計算方法如式(5)所示,其中,R_M表示寄存器MDMCFG3全8位二進(jìn)制的值,R_E代表寄存器MDMCFG4低4位二進(jìn)制的值,fxosc表示處理器的晶振頻率。
以CC1101射頻芯片為例,選定跳頻信道f1=315MHz,f2=433MHz,f3=915Mhz;將f1、f2、f3分別代入式3,計算得到三組MDMCFG1調(diào)制解調(diào)寄存器的低兩位的CHANSPC_E的值,及MDMCFG0調(diào)制解調(diào)寄存器(8位)的CHANSPC_M的值。
同理選定比特速率r1=9.6kbps,r2=19.2kbps,r3=38.4kbps;以及選定調(diào)制方式m1=ASK,m2=FSK,m3=MSK;并對應(yīng)計算MDMCFG2、MDMCFG3和MDMCFG4寄存器里的值。由以上參數(shù),可組成對應(yīng)寄存器值的三元參數(shù)數(shù)組G{f1,r1,m1;f1,r1,m2;......;f3,r3,m3}共C=CF×CM×CR=27組不同組合的三元參數(shù)數(shù)組。
對三元參數(shù)數(shù)組G進(jìn)行M序列化后,得到一個偽隨機的三維跳變序列G′{fi,rj,mk}。然后將通信配置以及生成的偽隨機三維跳變圖案下載配置到收發(fā)雙方,并進(jìn)行初始化。通過無線傳感網(wǎng)中的時間同步協(xié)議TPSN進(jìn)行收發(fā)雙方時間同步。
一、在連續(xù)數(shù)據(jù)傳輸模式下,同步完成后,將M序列化后跳變圖案序列中第一組三元組參數(shù)傳送至跳變切換組件模塊,調(diào)用跳變切換組件模塊進(jìn)行射頻參數(shù)切換。收發(fā)雙方同時觸發(fā)選取當(dāng)前三元組,依據(jù)當(dāng)前三元組中的參數(shù)比特速率r、傳輸數(shù)據(jù)分組最大長度lmax,計算當(dāng)前駐留時間t=lmax/r,得到下一跳變切換時間t+Δt,設(shè)置下一跳變切換時間定時器(其中Δt為切換保護(hù)時間),發(fā)送接收數(shù)據(jù)。
收發(fā)雙方觸發(fā)下一跳變切換時間定時器時,轉(zhuǎn)回跳變圖案序列G′{fi,rj,mk},選取下一組三元組參數(shù),傳送至跳變切換組件模塊,調(diào)用跳變切換組件進(jìn)行射頻參數(shù)切換,并按當(dāng)前射頻參數(shù)重新計算設(shè)置下一跳變切換時間定時器,發(fā)送接收數(shù)據(jù)。
二、在周期數(shù)據(jù)傳輸模式下,同步完成后,調(diào)用跳變切換組件模塊進(jìn)行射頻參數(shù)切換。收發(fā)雙方同時根據(jù)采樣周期T觸發(fā)設(shè)置下一跳變切換時間定時器,定時器間隔時間為T。
發(fā)送方檢查當(dāng)前發(fā)送隊列:若隊列不為空,則發(fā)送數(shù)據(jù)分組。當(dāng)跳變切換時間定時器觸發(fā)后,轉(zhuǎn)回跳變圖案序列,選取下一組三元組參數(shù),傳送至跳變切換組件模塊,調(diào)用跳變切換組件模塊進(jìn)行射頻參數(shù)切換,并重新啟動下一跳變切換時間定時器計時,發(fā)送下一個數(shù)據(jù)分組直至隊列為空;若發(fā)送隊列為空,等待跳變切換時間定時器觸發(fā)后,轉(zhuǎn)回跳變圖案序列,選取下一組三元組參數(shù),傳送至跳變切換組件模塊,調(diào)用跳變切換組件模塊進(jìn)行射頻參數(shù)切換,并重新啟動下一跳變切換時間定時器計時。
接收方下一跳變切換時間定時器觸發(fā)時,轉(zhuǎn)回跳變圖案序列G′{fi,rj,mk},選取下一組三元組參數(shù),傳送至跳變切換組件模塊,調(diào)用跳變切換組件進(jìn)行射頻參數(shù)切換,并重新啟動下一跳變切換時間定時器計時,等待接收數(shù)據(jù)。
圖1為本發(fā)明從頻域上通過頻譜分析儀的最大保留模式測試到的實際效果示意圖,頻譜儀參數(shù):中心頻率為2.403GHz,掃寬4.401MHz,掃描時間10ms。從圖中可以看出有8個跳變的信道頻率,同時在第一個頻點信號采用的是ASK的調(diào)制方式,第二個頻點信號采用的是2-FSK的調(diào)制方式,由此表明異構(gòu)射頻多參數(shù)跳變中頻率和調(diào)制方式發(fā)生了變化。
圖2為本發(fā)明從時域上通過示波器測試到的實際效果示意圖,示波器參數(shù):橫軸間隔100ms,縱軸間隔10mV。通過發(fā)送一個固定長度數(shù)據(jù)包,對比發(fā)包時間來說明發(fā)包比特速率的改變。從圖中可以看出相同長度的數(shù)據(jù)包其對應(yīng)的發(fā)包時間分別為100ms和140ms,由此表明異構(gòu)多參數(shù)跳變中比特速率變化引起信號駐留時間發(fā)生改變。
本發(fā)明測試所用的無線傳感網(wǎng)絡(luò)節(jié)點射頻通信模塊分別為CC1101和CC2500,MCU采用的都是ATmega128處理器。