本發明涉及一種交互方法,具體涉及一種輸電線路狀態在線監測系統中WSN節點安全交互方法。
背景技術:
無線傳感器網絡(Wireless Sensor Network,WSN)是將大量微型化的傳感器分布在需要監測的區域內,每個傳感器為一個節點,這些節點之間通過電磁波信號進行通信,組成一個多跳、自組織的網絡系統。無線傳感器網絡各個節點之間相互協作地感知網絡覆蓋區域內的被監測對象,采集和處理相關的數據并傳輸給觀測者。無線傳感器網絡具有規模大、自組織、多跳路由、動態性、資源受限、以數據為中心、應用相關等特點,目前已廣泛應用于軍事、環境監測、醫療、工業控制等領域。無線傳感器網絡的基本組成單元為節點,具體又可分類為源節點和匯聚節點。
源節點收集被監控對象的信息,并在網絡中傳播所采集的數據,將其發送至匯聚節點,它通常是離被監控對象最近的節點。源節點由數據采集模塊、數據處理模塊、數據傳輸模塊和電源模塊構成。數據采集模塊一般為各種類型的傳感器,用于采集不同物理形式的被監測信號,采集到的信息通過數據處理模塊的處理經數據傳輸模塊發送至匯聚節點處。
匯聚節點是無線傳感器網絡與外部網絡連接的網關,源節點采集的數據通過匯聚節點發送給觀測者,同時,觀測者也可以通過互聯網或其他通信手段將控制指令發送給匯聚節點,匯聚節點再將指令下達給源節點,以實現觀察者對無線傳感器網絡的控制。匯聚節點相比源節點而言,具有更強的計算能力和資源。
無線傳感器網絡在智能電網中的一個典型的應用就是輸電線路狀態在線監測。無線傳感器網絡可以用于監測輸電線路的運行狀況,如:覆冰、污穢、視屏圖像、溫度、傾斜、風偏、舞動等,同時也能夠對輸電線路故障定位和自動診斷提供技術支持。能夠實現輸電線路狀態可觀測、生產全過程可監控、風險可預警。在輸電線路在線監測系統中,無線傳感器網絡的 源節點負責采集與線路有關的各種數據,并將這些數據通過多跳網絡發送至匯聚節點。
無線傳感器網絡技術發展的主要受制點包含以下幾個處:(1)節點的能量有限;(2)節點的計算能力有限;(3)節點的存儲空間有限;(4)無線傳感器網絡的安全保障技術有限。其中安全問題在無線傳感器網絡的應用中已越發凸顯。在有線網絡中,信息通過介質實現點到點的傳輸,而在無線傳感器網絡中,信息通過電磁波信號以廣播的形式在空間中傳輸,具有開放性,任何在無線信號覆蓋范圍內的節點都可以接受到信號。節點可以竊取、修改或重發信息,影響整個無線傳感器網絡的安全性。為了確保網絡的安全型,必須采取相應的措施,常用的措施有:鑒權、加密和完整性保護。
鑒權是節點之間相互確認對方身份是否合法的過程。通常情況下兩個節點通過信息交換以證明對方的合法性。鑒權成功后的節點之間將建立起相互信任的關系,之后就可進行數據通信。
加密過程將傳輸的數據(明文)通過某種算法轉換為不可識別的形式(密文)。將密文還原成明文的過程叫做解密。加密系統的四個要素為:要加密的數據(明文)、加密后生成的數據(密文)、加密算法、密鑰。其中密鑰是與加密算法同時使用的某種長度的字符串或數字串,用于控制加密和解密的過程。加密后,密文在傳輸介質中傳輸,攻擊者可能截獲并竊聽密文,但由于攻擊者沒有密鑰,因此無法具體解析出密文中的數據信息。
數據的安全傳輸除了要防止攻擊者獲取數據信息,同時也要防止攻擊者篡改數據內容,因此需要對數據的完整性進行保護。通常采用哈希函數(又稱單向散列函數)來進行數據完整性認證。數據完整性認證根據明文產生固定長度的“消息摘要”,稱為消息認證碼(MAC)。相同的明文的MAC是相同的,不同的明文的MAC不同。因此可以通過比對MAC的方法來判斷一條信息在發送之后是否遭到了篡改。發送數據之前,發送方首先使用通信雙方協商好的哈希函數計算其摘要值。在雙方共享的會話密鑰作用下,由摘要值獲得消息驗證碼。之后,它和數據一起被發送。接收方收到報文后,首先利用會話密鑰還原摘要值,同時利用散列函數在本地計算所收到數據的摘要值,同時利用散列函數在本地計算所收到數據的摘要值,并將這兩個數據進行比對。若兩者相等,則可驗證獲得信息的真實性。
由于無線傳感器網絡自身的特點,若直接使用現有的安全方法,將會存在以下問題:
(1)現有的安全方法需要較大的計算量。無線傳感器網絡的節點所具有的資源和計算能力是有限的,不適合使用計算量大的安全方法;
(2)現有的安全方法需要節點之間進行頻繁的數據交互,從而會使節點產生過多的能耗并對網絡的通信造成負擔,影響網絡的性能。
由于這些制約,現有的安全方法并不適合無線傳感器網絡,無線傳感器網絡中節點間的鑒權、數據交換等問題尚未得到解決。
技術實現要素:
為了克服上述現有技術的不足,本發明提供一種輸電線路狀態在線監測系統中WSN節點安全交互方法,解決了無線傳感器網絡中節點之間鑒權以及數據安全傳輸的問題。
為了實現上述發明目的,本發明采取如下技術方案:
本發明提供一種輸電線路狀態在線監測系統中WSN節點安全交互方法,所述WSN為無線傳感器網絡,無線傳感器網絡中的節點包括節點源節點和匯聚節點;所述方法包括以下步驟:
步驟1:源節點與匯聚節點之間的密鑰生成、傳輸及更新;
步驟2:源節點和匯聚節點之間進行鑒權;
步驟3:源節點和匯聚節點之間進行數據傳輸。
所述步驟1具體包括以下步驟:
步驟1-1:通過設置無線傳感器網絡得到源節點的主密鑰,將源節點的主密鑰輸入到匯聚節點中;
步驟1-2:匯聚節點周期性地根據源節點輸入的主密鑰和隨機數R進行哈希運算,生成原始會話密鑰;
步驟1-3:匯聚節點在生成的原始會話密鑰后加上消息認證碼M1,并使用主密鑰對原始會話密鑰和消息認證碼M1進行加密,產生包括原始會話密鑰和消息認證碼M1的會話密鑰,隨后將產生的會話密鑰發送給與匯聚節點進行通信的源節點;
步驟1-4:源節點接收到會話密鑰之后,使用主密鑰對會話密鑰進行解密,生成并驗證原始會話密鑰的消息認證碼M1′,得到更新后的原始會話密鑰,并以更新后的原始會話密鑰代替源節點中已有的原始會話密鑰。
所述步驟2包括以下步驟:
步驟2-1:匯聚節點在隨機數R1加上消息認證碼M2,并使用主密鑰對隨機數R1和消息認證碼M2進行加密,將加密后的隨機數R1和消息認證碼M2發送給需要與匯聚節點進行通信的源節點,源節點對加密后的隨機數R1和消息認證碼M2進行解密,生成并驗證隨機數R1的消息認證碼M2′,得到匯聚節點的隨機數R1;
步驟2-2:源節點在隨機數R2后加上消息認證碼M3,并使用主密鑰對隨機數R2和消息認證碼M3進行加密,將加密后的隨機數R2和消息認證碼M3發送給匯聚節點,匯聚節點對加密后的隨機數R2和消息認證碼M3進行解密,生成并驗證隨機數R2的消息認證碼M3′,得到源節點的隨機數R2;
步驟2-3:匯聚節點在匯聚節點的身份標識碼HID后加上消息認證碼M4,并使用主密鑰對匯聚節點的身份標識碼HID和消息認證碼M4進行加密,將加密后的匯聚節點的身份標識碼HID和消息認證碼M4發送給需要與匯聚節點進行通信的源節點,源節點對加密后的匯聚節點的身份標識碼HID和消息認證碼M4進行解密,生成并驗證匯聚節點的身份標識碼HID的消息認證碼M4′,得到匯聚節點的身份標識碼HID;
步驟2-4:源節點在源節點身份標識碼YID后加上消息認證碼M5,并使用主密鑰對源節點身份標識碼YID和消息認證碼M5進行加密,將加密后的源節點身份標識碼YID和消息認證碼M5發送給匯聚節點,匯聚節點對加密后的源節點身份標識碼YID和消息認證碼M5進行解密,生成并驗證源節點身份標識碼YID的消息認證碼M5′,得到源節點身份標識碼YID;
步驟2-5:匯聚節點在參數CA后加上消息認證碼M6,并使用主密鑰對消息認證碼M6進行加密,將加密后消息認證碼M6發送給源節點,源節點對加密后的消息認證碼M6進行解密,得到消息認證碼M6,并將消息認證碼M6與源節點計算的參數CA的消息認證碼M6′,進行對比,若兩者相等,則鑒權通過,若不等,則鑒權失敗;
步驟2-6:源節點在參數CB后加上消息認證碼M7,并使用主密鑰對消息認證碼M7進行加密,將加密后消息認證碼M7發送給匯聚節點,匯聚節點對加密后消息認證碼M7進行解密,得到參數CB的消息認證碼M7,并將消息認證碼M7與匯聚節點計算的參數CB的消息認證碼M7′進行對比,若兩者相等,則鑒權通過,若不等,則鑒權失敗。
所述參數CA由匯聚節點和源節點預先共享的數據D1、匯聚節點的身份標識碼HID、源節點身份標識碼YID、隨機數R1、隨機數R2按順序組成;
所述參數CB由匯聚節點和源節點預先共享的數據D2、匯聚節點的身份標識碼HID、源節點身份標識碼YID、隨機數R1、隨機數R2按順序組成。
所述步驟3中,源節點和匯聚節點之間傳輸的數據為源節點監測到的輸電線路狀態信息;所述步驟3包括以下步驟:
步驟3-1:源節點獲得更新后的原始會話密鑰之后,向匯聚節點傳輸數據時,在數據之后加上消息認證碼M8,并通過更新后的原始會話密鑰對數據和消息認證碼M8進行加密,將加密后數據和消息認證碼M8發送給匯聚節點,匯聚節點對加密后數據和消息認證碼M8進行解密,生成并驗證數據的消息認證碼M8′,得到傳輸數據;
步驟3-2:匯聚節點在原始會話密鑰后加上消息認證碼M9,并通過原始會話密鑰對數據和消息認證碼M9進行加密,將加密后數據和消息認證碼M9發送給源節點,源節點對加密后數據和消息認證碼M9進行解密,生成并驗證數據的消息認證碼M9′,得到傳輸數據。
與最接近的現有技術相比,本發明提供的技術方案具有以下有益效果:
1)本發明所提出的輸電線路在線監測系統中無線傳感器網絡節點安全交互方法,設計了的密鑰的生成、傳輸及更新的過程,解決了無線傳感器網絡源節點與匯聚節點之間鑒權、數據安全傳輸和完整性認證的問題。
2)相比傳統的安全方法而言,降低了節點的計算量和通信開銷,十分適用于無線傳感器網絡,從多方面保護了無線傳感器網絡的安全性。
附圖說明
圖1是本發明實施例中基于無線傳感器網絡的輸電線路狀態在線監測系統示意圖;
圖2是本發明實施例中輸電線路狀態在線監測系統無線傳感器網絡分層拓撲圖;
圖3是本發明實施例中源節點與匯聚節點交互的流程圖;
圖4是本發明實施例中源節點與匯聚節點之間進行鑒權的流程圖。
具體實施方式
下面結合附圖對本發明作進一步詳細說明。
如圖1所示為本發明中基于無線傳感器網絡的輸電線路狀態在線監測系統的示意圖。高壓架空輸電線路易受到氣象環境(如大風、冰雪等)和人為因素影響而引起故障,導致輸電線路設備損毀,影響輸電線路的安全運行。利用物聯網技術中的無線傳感器網絡,可以提高對輸電線路運行狀態的感知能力,監測內容包括氣象、覆冰、微風震動、導線溫度與弧垂、風偏、桿塔傾斜等。無線傳感器網絡中包含各種類型的傳感器(源節點),用于采集輸電線路及桿塔的各種狀態信息。源節點在采集到信息后,在網絡中以多跳的形式傳輸到匯聚節點。匯聚節點具有較強的計算能力和資源,在整個網絡中充當網關的角色,將源節點發送過來的信息進行處理后,通過多種途徑傳輸給觀測者。
如圖2所示為本發明中輸電線路狀態在線監測系統無線傳感器網絡的一種拓撲形式,數量眾多的源節點被分為多簇,并選擇一個骨干源節點作為簇頭節點。簇頭節點負責與匯聚節點進行交互。本發明中的源節點指的就是各干源節點。
本發明提出的輸電線路狀態在線監測系統中無線傳感器網絡節點安全交互方法流程圖如圖3所示,具體步驟如下:
步驟1:源節點與匯聚節點之間的密鑰生成、傳輸及更新;
步驟2:源節點和匯聚節點之間進行鑒權;
步驟3:源節點和匯聚節點之間進行數據傳輸。
所述步驟1具體包括以下步驟:
步驟1-1:通過設置無線傳感器網絡得到源節點的主密鑰,將源節點的主密鑰輸入到匯聚節點中;
步驟1-2:匯聚節點周期性地根據源節點輸入的主密鑰和隨機數R進行哈希運算,生成原始會話密鑰;
步驟1-3:匯聚節點在生成的原始會話密鑰后加上消息認證碼M1,并使用主密鑰對原始會話密鑰和消息認證碼M1進行加密,產生包括原始會話密鑰和消息認證碼M1的會話密鑰,隨后將產生的會話密鑰發送給與匯聚節點進行通信的源節點;
步驟1-4:源節點接收到會話密鑰之后,使用主密鑰對會話密鑰進行解密,生成并驗證原始會話密鑰的消息認證碼M1′,得到更新后的原始會話密鑰,并以更新后的原始會話密鑰代 替源節點中已有的原始會話密鑰。
如圖4,所述步驟2包括以下步驟:
步驟2-1:匯聚節點在隨機數R1加上消息認證碼M2,并使用主密鑰對隨機數R1和消息認證碼M2進行加密,將加密后的隨機數R1和消息認證碼M2發送給需要與匯聚節點進行通信的源節點,源節點對加密后的隨機數R1和消息認證碼M2進行解密,生成并驗證隨機數R1的消息認證碼M2′,得到匯聚節點的隨機數R1;
步驟2-2:源節點在隨機數R2后加上消息認證碼M3,并使用主密鑰對隨機數R2和消息認證碼M3進行加密,將加密后的隨機數R2和消息認證碼M3發送給匯聚節點,匯聚節點對加密后的隨機數R2和消息認證碼M3進行解密,生成并驗證隨機數R2的消息認證碼M3′,得到源節點的隨機數R2;
步驟2-3:匯聚節點在匯聚節點的身份標識碼HID后加上消息認證碼M4,并使用主密鑰對匯聚節點的身份標識碼HID和消息認證碼M4進行加密,將加密后的匯聚節點的身份標識碼HID和消息認證碼M4發送給需要與匯聚節點進行通信的源節點,源節點對加密后的匯聚節點的身份標識碼HID和消息認證碼M4進行解密,生成并驗證匯聚節點的身份標識碼HID的消息認證碼M4′,得到匯聚節點的身份標識碼HID;
步驟2-4:源節點在源節點身份標識碼YID后加上消息認證碼M5,并使用主密鑰對源節點身份標識碼YID和消息認證碼M5進行加密,將加密后的源節點身份標識碼YID和消息認證碼M5發送給匯聚節點,匯聚節點對加密后的源節點身份標識碼YID和消息認證碼M5進行解密,生成并驗證源節點身份標識碼YID的消息認證碼M5′,得到源節點身份標識碼YID;
步驟2-5:匯聚節點在參數CA后加上消息認證碼M6,并使用主密鑰對消息認證碼M6進行加密,將加密后消息認證碼M6發送給源節點,源節點對加密后的消息認證碼M6進行解密,得到消息認證碼M6,并將消息認證碼M6與源節點計算的參數CA的消息認證碼M6′,進行對比,若兩者相等,則鑒權通過,若不等,則鑒權失敗;
步驟2-6:源節點在參數CB后加上消息認證碼M7,并使用主密鑰對消息認證碼M7進行加密,將加密后消息認證碼M7發送給匯聚節點,匯聚節點對加密后消息認證碼M7進行解密,得到參數CB的消息認證碼M7,并將消息認證碼M7與匯聚節點計算的參數CB的消息認證碼M7′進行對比,若兩者相等,則鑒權通過,若不等,則鑒權失敗。
所述參數CA由匯聚節點和源節點預先共享的數據D1、匯聚節點的身份標識碼HID、源節 點身份標識碼YID、隨機數R1、隨機數R2按順序組成;
所述參數CB由匯聚節點和源節點預先共享的數據D2、匯聚節點的身份標識碼HID、源節點身份標識碼YID、隨機數R1、隨機數R2按順序組成。
匯聚節點和源節點的鑒權是雙向的,任何一方的鑒權失敗都會造成整個鑒權過程的失敗,導致數據傳輸行為不能進行。相互鑒權成功的匯聚節點和源節點可以進行數據的傳輸。
匯聚節點具有較強的計算能力和資源,因此會話密鑰由匯聚節點生成。這樣在提高系統計算速度的情況下,還可以減少源節點的計算量和能耗,延長網絡的生命周期。會話密鑰在使用了一段時間后安全性能就會降低,需要對其進行更新,匯聚節點需要定期生產新的會話密鑰,并將其發送給源節點。
所述步驟3中,源節點和匯聚節點之間傳輸的數據為源節點監測到的輸電線路狀態信息;所述步驟3包括以下步驟:
步驟3-1:源節點獲得更新后的原始會話密鑰之后,向匯聚節點傳輸數據時,在數據之后加上消息認證碼M8,并通過更新后的原始會話密鑰對數據和消息認證碼M8進行加密,將加密后數據和消息認證碼M8發送給匯聚節點,匯聚節點對加密后數據和消息認證碼M8進行解密,生成并驗證數據的消息認證碼M8′,得到傳輸數據;
步驟3-2:匯聚節點在原始會話密鑰后加上消息認證碼M9,并通過原始會話密鑰對數據和消息認證碼M9進行加密,將加密后數據和消息認證碼M9發送給源節點,源節點對加密后數據和消息認證碼M9進行解密,生成并驗證數據的消息認證碼M9′,得到傳輸數據。
最后應當說明的是:以上實施例僅用以說明本發明的技術方案而非對其限制,所屬領域的普通技術人員參照上述實施例依然可以對本發明的具體實施方式進行修改或者等同替換,這些未脫離本發明精神和范圍的任何修改或者等同替換,均在申請待批的本發明的權利要求保護范圍之內。