邵俊嘉,江 潤(rùn),唐惠虹
(甘肅省蘭州市榆中縣西北民族大學(xué)榆中校區(qū),蘭州 730100)
為了更好地研究智能家居無線數(shù)據(jù)安全傳輸,ZigBee無線傳感技術(shù)得到一定程度的發(fā)展,在實(shí)現(xiàn)智能家居的同時(shí),也給人們生活帶來極大的便利。但是因?yàn)闊o線網(wǎng)絡(luò)本身的開放性,導(dǎo)致智能家居在進(jìn)行無線傳輸?shù)臅r(shí)候回面臨不安全性。所以,分析其安全性擁有重要的應(yīng)用價(jià)值與實(shí)踐意義。
ZigBee技術(shù)主要包含了設(shè)備朝著主協(xié)調(diào)器發(fā)送數(shù)據(jù)、主協(xié)調(diào)器發(fā)送數(shù)據(jù),然后從設(shè)備接受數(shù)據(jù)以及兩個(gè)從設(shè)備之間數(shù)據(jù)傳輸三種類型。但是因?yàn)檠芯恐羞x取的智能家居網(wǎng)絡(luò)是星型網(wǎng)絡(luò)拓?fù)浣Y(jié)構(gòu),其允許主協(xié)調(diào)器與設(shè)備之間的數(shù)據(jù)交換,所以,只會(huì)考慮前面兩個(gè)方面。
在智能家居中,通過協(xié)調(diào)器建立網(wǎng)絡(luò)之后,還需要通過相應(yīng)的設(shè)置,才可以完成ZigBee網(wǎng)絡(luò)的建設(shè)。協(xié)調(diào)器配置安全級(jí)別可以通過NIB屬性nwk Security Level來實(shí)現(xiàn),并利用通過AIB屬性aps Trust Center Address就可以完成對(duì)信任中心地址的設(shè)置。這里選擇的協(xié)調(diào)器屬于信任中心,所以,協(xié)調(diào)器地址就是信任中心的地址。選擇住宅模式之后,需要將原本的NIB屬性nwk All Fresh設(shè)置為FALSE。如此,在完成網(wǎng)絡(luò)建設(shè)之后,就可以讓新的設(shè)備直接加入到網(wǎng)絡(luò)之中,首先將NLME-NETWORK-DISCOVERY.request原語發(fā)送出去,然后在進(jìn)行主動(dòng)或者是被動(dòng)的掃描。在掃描過程中,新連接設(shè)備在接受到協(xié)調(diào)器發(fā)送的信標(biāo)之后,就可以直接獲取網(wǎng)絡(luò)信息,新設(shè)備會(huì)再一次發(fā)送原語,這樣就可以實(shí)現(xiàn)與網(wǎng)絡(luò)的連接[1]。如果已經(jīng)知道網(wǎng)絡(luò)密鑰,新加入的設(shè)備就可以將命令幀加密之后再發(fā)送出去。協(xié)調(diào)器在接受之后,MAC層會(huì)直接將NLME-ASSOCIATE.indication原語直接發(fā)送到NWK層,然后再講連接的請(qǐng)求發(fā)送至ZDO。另外,協(xié)調(diào)器也可以直接給新連接設(shè)備發(fā)送連接響應(yīng)的命令,在接受到命令之后,就會(huì)朝著上一層發(fā)送確認(rèn)原語。當(dāng)新連接的設(shè)備加入安全網(wǎng)絡(luò)之后,就可以進(jìn)行人證。在安全網(wǎng)絡(luò)之中,如果新連接的設(shè)備達(dá)到預(yù)先規(guī)定的時(shí)間依舊沒有通過認(rèn)證就會(huì)直接被移除。在通過之后,就會(huì)發(fā)送到網(wǎng)絡(luò)層幀來進(jìn)行安全處理,除非所通信的對(duì)象是接入,但是沒有通過認(rèn)證的設(shè)備。
為了研究數(shù)據(jù)安全的傳輸實(shí)現(xiàn),本次選擇CC2430無線收發(fā)芯片。CC2430數(shù)據(jù)加密/解密主要是支持高級(jí)加密標(biāo)準(zhǔn)AES協(xié)處理器完成的。在擁有其加密/解密操作之后,就會(huì)減少CC2430內(nèi)置CPU帶來的負(fù)擔(dān),這樣也可以輕松的實(shí)現(xiàn)安全方案[2]。AES協(xié)處理器與CPU之間可以利用加密控制與狀態(tài)寄存器(ENCCS)、加密輸入寄存器(ENCDI)以及加密輸出寄存器(ENCDO)來實(shí)現(xiàn)其彼此的通信,其中,狀態(tài)寄存器可以利用CPU直接實(shí)現(xiàn)讀寫,但是輸入/輸出寄存器則需要使用存儲(chǔ)器來直接存取。AES協(xié)處理器主要是各個(gè)層次共享的通用院,但是每一次操作只可以進(jìn)行一個(gè)實(shí)例的處理,所以需要通過設(shè)置軟件中某一部分標(biāo)簽來滿足通用源的安排。其AES協(xié)處理器加解密操作流程見圖1所示。DMA通道之中一個(gè)用于數(shù)據(jù)的輸入,另外一個(gè)用于數(shù)據(jù)的傳輸。在寫入寄存器ENCCS之前,開始命令中的DMA通道需要初始化。寄存器ENCCS[1:0]輸出的代碼不同,所執(zhí)行的命令也會(huì)不同,設(shè)置寄存器ENCCS的CMD[1:0]為10,通過DMA操作,就可以在AES協(xié)處理器之中裝入Key。通過設(shè)置CMD[1:0]為11,利用DMA操作,就可以在AES協(xié)處理器之中裝入IV/Nonce。使用DMA方式來傳輸數(shù)據(jù),就可以直接從DMA通道傳輸?shù)絽f(xié)處理器之中,并且還需要設(shè)置好機(jī)遇ENCDI的寄存器。如果需要從AES協(xié)處理器之中接受到數(shù)據(jù),那么需要將ENCDO作為源寄存器。將不同的代碼輸入寄存器ENCCS的MODE[2:0],采取不同的加密模式進(jìn)行操作。這里的AES協(xié)處理器的加密與認(rèn)證選擇的是CCM模式,CCM是CBC-MAC和CTR的結(jié)合。一般來說,通過CBC-MAC,就可以滿足內(nèi)容與報(bào)文頭部的保護(hù)要求,之后再通過AES-CTR模式,就可以完成對(duì)數(shù)據(jù)以及MAC的加密處理[3]。
圖1 加解密操作流程
總而言之,在智能家居系統(tǒng)之中使用加密技術(shù),不但可以確保數(shù)據(jù)本身的安全性,同時(shí)也可以防范外來設(shè)備造成的干擾,這樣就可以保護(hù)智能家居信息網(wǎng)絡(luò)通信。
[1] 白雪敏,王彩霞,孫風(fēng)雷,王雪,劉沖.雙程傳控智能家居控制系統(tǒng)[J].長(zhǎng)春理工大學(xué)學(xué)報(bào)(自然科學(xué)版),2014(01):124-128.
[2] 劉聞,袁夢(mèng)鑫.基于無線傳輸技術(shù)的智能家居系統(tǒng)的設(shè)計(jì)研究[J].數(shù)字化用戶,2013(05):5.
[3] 王保衛(wèi).無線傳感器網(wǎng)絡(luò)隱私數(shù)據(jù)安全研究[D].湖南大學(xué),2011.