江治國
(安徽國防科技職業(yè)學(xué)院,安徽 六安 237011)
智能家居控制系統(tǒng)是電子技術(shù)、通信技術(shù)和互聯(lián)網(wǎng)技術(shù)等交叉融合的綜合控制系統(tǒng),它利用各種先進的技術(shù)和設(shè)施對家居設(shè)備進行綜合管理和控制,同時實現(xiàn)家庭的安防監(jiān)控等功能.隨著人們生活水平的提高,智能家居技術(shù)將進一步被推廣和應(yīng)用.ZigBee無線通信技術(shù)具有易組網(wǎng)、可靠性高和傳輸快等特點[1],智能家居內(nèi)部網(wǎng)絡(luò)若采用ZigBee 進行組網(wǎng),則既能較大地降低成本,也便于管理與維護.將控制主機與控制器分開,并通過Wi-Fi網(wǎng)絡(luò)連接,可以實現(xiàn)一對多控制.移動終端可以通過互聯(lián)網(wǎng)實現(xiàn)對家居設(shè)備的遠程控制[2].在智能家居給人們生活帶來方便的同時,必須重視數(shù)據(jù)在傳輸過程中的安全問題.用戶信息在傳輸過程中容易被竊取和篡改,這給用戶帶來了極大的安全隱患.智能家居控制系統(tǒng)通過家庭網(wǎng)關(guān)將網(wǎng)絡(luò)分為外部網(wǎng)絡(luò)和家庭內(nèi)部局域網(wǎng).外部網(wǎng)絡(luò)主要實現(xiàn)用戶登錄信息的合法性驗證和登錄信息被竊取后的應(yīng)對策略[3].在家庭內(nèi)部局域網(wǎng)中,需要對傳輸?shù)臄?shù)據(jù)進行加密,以防止數(shù)據(jù)在傳輸過程中被竊取和篡改.筆者擬采用一次口令認證登錄系統(tǒng)來解決外部網(wǎng)絡(luò)的通信安全問題,采用基于AES-128加密算法[4]來解決家庭內(nèi)部局域網(wǎng)數(shù)據(jù)傳輸?shù)陌踩珕栴}.
智能家居控制系統(tǒng)一般包括核心控制器、ZigBee協(xié)調(diào)器、智能終端和控制對象等,主要實現(xiàn)對家用電器的遠程控制和家庭安防、溫濕度、瓦斯泄漏的監(jiān)測報警等功能.智能家居控制系統(tǒng)的總體設(shè)計方案如圖1所示.
圖1 智能家居控制系統(tǒng)總體設(shè)計方案Fig. 1 Smart Home Control System Overall Design Plan
智能家居控制系統(tǒng)網(wǎng)絡(luò)架構(gòu)如圖2所示,外部網(wǎng)絡(luò)和家庭內(nèi)部網(wǎng)絡(luò)通過嵌入式網(wǎng)關(guān)進行連接,家庭內(nèi)部網(wǎng)絡(luò)主要采用ZigBee無線傳感技術(shù)進行組網(wǎng),從而實現(xiàn)對智能終端設(shè)備的控制.用戶主要通過智能手機等設(shè)備借助Wi-Fi實現(xiàn)對家居設(shè)備的遠程控制,在整個過程中嵌入式網(wǎng)關(guān)發(fā)揮著承上啟下的作用,用戶借助遠程控制終端并通過Internet登錄訪問家庭嵌入式網(wǎng)關(guān),嵌入式網(wǎng)關(guān)與協(xié)調(diào)器之間通過無線連接.
圖2 智能家居控制系統(tǒng)網(wǎng)絡(luò)架構(gòu)Fig. 2 System Network Architecture Diagram
在數(shù)據(jù)傳輸過程中,當外部網(wǎng)絡(luò)和家庭內(nèi)部網(wǎng)絡(luò)進行數(shù)據(jù)交換時,智能家居控制系統(tǒng)存在安全隱患,因此必須選擇一種可靠的數(shù)據(jù)加密算法.筆者主要采用一次口令認證系統(tǒng)來確保外部網(wǎng)絡(luò)的通信安全,采用對稱加密算法和非對稱加密算法來確保家庭內(nèi)部網(wǎng)絡(luò)的通信安全.對稱加密算法具有算法開放、免授權(quán)和運算量小等特點[5-6],在加密和解密的過程中使用相同的密鑰,并且加密和解密速度比較快;非對稱加密算法在加密過程中采用公鑰,解密過程中采用私鑰,是一種雙密鑰加密技術(shù).相對于對稱加密技術(shù)而言,非對稱加密算法的安全性更高.本設(shè)計采用一種對稱加密算法即AES-128加密算法來實現(xiàn)家庭內(nèi)部網(wǎng)絡(luò)數(shù)據(jù)的加密.為保證其密鑰的唯一性,將用戶身份認證系統(tǒng)與數(shù)據(jù)加密系統(tǒng)進行融合.數(shù)據(jù)傳輸安全軟件架構(gòu)如圖3所示.身份認證服務(wù)器是身份認證的核心,是身份認證系統(tǒng)與數(shù)據(jù)加密系統(tǒng)連接的紐帶.用戶通過登錄實現(xiàn)的對家庭內(nèi)部網(wǎng)絡(luò)訪問的功能主要由用戶身份認證服務(wù)器控制,當它接收到客戶端的連接請求后,便完成與客戶端的交互驗證,同時產(chǎn)生動態(tài)密鑰.
圖3 數(shù)據(jù)傳輸安全軟件架構(gòu)Fig. 3 Data Transmission Security Software Architecture
一次口令身份認證系統(tǒng)主要包括客戶端認證、身份認證服務(wù)器以及動態(tài)密鑰生成3個模塊,其主要功能是實現(xiàn)客戶端和服務(wù)器的相互認證,只有當雙方都認為合法的情況下,系統(tǒng)才能完成整個用戶認證過程.認證過程中系統(tǒng)產(chǎn)生128位動態(tài)密鑰,進而產(chǎn)生后面加密系統(tǒng)中的種子密鑰.一次口令身份認證系統(tǒng)軟件架構(gòu)如圖4所示.用戶通過客戶端進行遠程登錄時輸入登錄口令,驗證服務(wù)器接收到用戶口令后,系統(tǒng)采用對應(yīng)的算法對認證值進行計算,并將計算的結(jié)果與用戶一次口令進行匹配,若匹配成功則判定登錄合法.一次口令認證技術(shù)采用雙運算因子,用用戶名作為身份識別碼,通過特定方式產(chǎn)生偽隨機數(shù),在執(zhí)行過程中將身份識別碼和偽隨機數(shù)作為算法的輸入,經(jīng)運算后得到動態(tài)的登錄口令.動態(tài)的登錄口令隨時間變化,只要2次使用相同的口令進行登錄,該登錄就被系統(tǒng)判定為登錄失敗.[7]
圖4 一次口令身份認證系統(tǒng)軟件架構(gòu)Fig. 4 One-Time Password Authentication System Software Architecture
AES是一種對稱加密算法,包含明文分組交換和非線性變換交換.AES加密和解密的算法流程如圖5所示.
圖5 AES加密和解密算法流程Fig. 5 AES Encryption and Decryption Algorithm Flow Chart
從圖5可以看出,AES加密和解密算法在執(zhí)行過程中,先對輸入數(shù)據(jù)進行分組,然后將分組數(shù)據(jù)經(jīng)多輪非線性變換后生成密文數(shù)據(jù)和解密數(shù)據(jù).每輪非線性變換主要包括S盒變換、行變換、列變換和拓展密鑰異或運算4種操作.其中S盒變換主要采用查表方式[8-9],使用S盒中的字節(jié)代替中間狀態(tài)矩陣.經(jīng)S盒變換后的矩陣第i位可由
圖6 S盒變換Fig.6 S-Box Transformation Diagram
行變換主要是對經(jīng)S盒變換后的矩陣除第1行之外其他行的不同字節(jié)偏移量進行循環(huán)移動,其移動過程為
其中:0 shift(1,4)=1,shift(2,4)=2,shift(3,4)=3. 通過移位操作后,字節(jié)由最低位被移動到了最高位.行變換如圖7所示. 圖7 行變換Fig. 7 Row Transformation Diagram AES-128加密算法的4×4狀態(tài)矩陣中的每一列都可以被看作一個多項式,列變換主要是進行列與列之間的運算,列變換后的列通過與多項式a(x)相乘后又得到任意列.a(x)的表達式為 a(x)={03}x3+{01}x2+{01}x+{02}. 列變換如圖8所示. 圖8 列變換Fig. 8 Column Transformation Diagram 本智能家居系統(tǒng)的嵌入式網(wǎng)關(guān)采用友善之臂S3C2440作為硬件平臺,采用Linux系統(tǒng)構(gòu)架,在身份認證系統(tǒng)與數(shù)據(jù)加密系統(tǒng)的設(shè)計過程中,首先啟動家庭網(wǎng)關(guān)并等待用戶登錄,通過驗證后,網(wǎng)關(guān)將對用戶發(fā)送的指令進行加密,從而完成相應(yīng)的控制.身份認證系統(tǒng)與數(shù)據(jù)加密系統(tǒng)的算法流程如圖9所示.在客戶端身份認證過程中,先提出認證請求,再驗證服務(wù)器合法性并為服務(wù)器認證請求提供應(yīng)答.客戶端發(fā)起認證請求后,需要等待服務(wù)器反饋的數(shù)據(jù)以便驗證服務(wù)器的合法性;完成了服務(wù)器的合法性驗證后,認證服務(wù)器通過計算驗證信息確定客戶端的合法性;驗證算法啟動后,在客戶端和安全網(wǎng)關(guān)有一個交互算法驗證的過程;當交互驗證通過后,網(wǎng)關(guān)開始利用AES-128算法對用戶傳送的指令進行加密,并將加密后的指令傳送至家庭局域網(wǎng),進而完成對家庭終端設(shè)備的控制. 圖9 身份認證系統(tǒng)與數(shù)據(jù)加密系統(tǒng)算法流程Fig. 9 Authentication System and Data Encryption System Algorithm Flowchart 一次口令身份認證系統(tǒng)具有多重認證機制,可以有效抵御重播攻擊,而且由于不保存共享密鑰,可以有效防止密鑰被盜,保證了外部網(wǎng)絡(luò)的安全.對于家庭內(nèi)部網(wǎng)絡(luò)的安全,先通過AES-128加密/解密算法,再經(jīng)密鑰拓展后進入循環(huán)體,最后經(jīng)11輪循環(huán)運算完成對數(shù)據(jù)的加密和解密工作.AES-128加密/解密算法的核心代碼為: AES_128(state key) {keyExpansion(key,expanded_key); AddRoundkey(state expanded_key); For(int i=0;i<10;i++) {round(state,&(expanded_key+10*i)) } FinaRound(state,expanded_key+40); 由于密鑰長度為128位,攻擊者要想破譯出密碼幾乎不太可能,因此AES-128加密/解密算法可以有效抵御強力攻擊、差分與線性密碼攻擊、滲透攻擊和擴展攻擊等多種密碼攻擊手段.采用一次口令身份認證系統(tǒng)和AES-128加密/解密算法相結(jié)合的手段,可以有效提高系統(tǒng)安全性. AES高級數(shù)據(jù)加密標準[10]也被稱為分組加密算法,是一種對稱密鑰分組迭代加密算法,其中每個密文數(shù)據(jù)塊會與后續(xù)明文融合[11-15].采用該算法作為智能家居系統(tǒng)的加密算法,可以解決傳統(tǒng)身份認證技術(shù)中存在的靜態(tài)密碼被盜、偽造服務(wù)器攻擊等問題,有效地解決整個智能家居系統(tǒng)的通信安全問題.但是隨著輸入數(shù)據(jù)字節(jié)數(shù)的增加,算法的運行時間和時鐘周期將不斷增加,極大地影響了系統(tǒng)運行的效率,這有待今后展開深入研究,進一步提高系統(tǒng)運行的穩(wěn)定性與有效性. 參考文獻: [1] 戴澤淼,王 勝,梁繼會.基于ZigBee嵌入式智能家居控制系統(tǒng)的設(shè)計與實現(xiàn)[J].吉林師范大學(xué)學(xué)報(自然科學(xué)版),2015,36(2):87-90. [2] 蔡正保.一種基于互聯(lián)網(wǎng)的遠程家居控制裝置的設(shè)計[J].齊齊哈爾大學(xué)學(xué)報(自然科學(xué)版),2016,32(2):53-55. [3] KOMNINOS N,PHILIPPOU E,PITSILLIDES A.Survey in Smart Grid and Smart Home Security:Issues,Challenges and Countermeasures[J].IEEE Communications Surveys & Tutorials,2014,16(4):1 933-1 950. [4] WU Yong,HU Defa.Encryption Model of Network Information Based on AES Algorithm with Dimension Reduction Chaos Optization[J].Metallurgical and Mining Industry,2015,7(4):12-18. [5] 冷 飛,徐進華,欒仕喜.RSA融合AES算法的網(wǎng)絡(luò)信息安全方法[J].華僑大學(xué)學(xué)報(自然科學(xué)版),2017,38(1):117-120. [6] 劉巧平,周 斌,王文濤.基于橢圓曲線的信息加密及網(wǎng)絡(luò)身份認真算法的研究[J].自動化與儀器儀表,2016(8):105-111. [7] 鄭海龍,劉建偉.一次口令認證機制的分析與研究[J].信息安全與通信保密,2008,11(31):64-66. [8] 趙 君.基于64位處理器的Android 平臺優(yōu)化AES加密算法[J].哈爾濱理工大學(xué)學(xué)報,2017,22(3):8-10. [9] 楊小東,王 毅.AES密鑰擴展新方法[J].微電子學(xué)與計算機,2012,29(1):102-104;108. [10] 曹曉麗,王愛強.AES算法研究[J].洛陽師范學(xué)院學(xué)報,2013,6(2):56-57. [11] 錢志鴻,王義君.物聯(lián)網(wǎng)技術(shù)與應(yīng)用研究[J].電子學(xué)報,2012,40(5):1 023-1 029. [12] 謝秀穎,王 敏.改進的AES算法在智慧住區(qū)門戶中的應(yīng)用與實現(xiàn)[J].計算機系統(tǒng)應(yīng)用,2017,26(10):290-295. [13] 段俊紅,韓煉冰.智能家居系統(tǒng)的信息安全保密研究[J].通信技術(shù),2016,49(10):1 398-1 400. [14] 曾繁婧,劉曉東.基于無線局域網(wǎng)的AES加密算法研究[J].電子設(shè)計過程,2017,25(5):119-122. [15] 朱新良.物聯(lián)網(wǎng)技術(shù)及安全問題[J].上海理工大學(xué)學(xué)報,2015,37(2):190-196.3 身份認證系統(tǒng)與數(shù)據(jù)加密系統(tǒng)軟件設(shè)計
4 身份認證系統(tǒng)與數(shù)據(jù)加密系統(tǒng)的安全性分析
5 結(jié)語