一種電力載波通信系統的製作方法
2024-01-24 08:49:15 3

本發明涉及一種電力載波通信系統。
背景技術:
智能電網是使用健全的雙路通信、高級的傳感器和分布式計算的電力傳輸與分配網絡,其目的是改善電力傳送和使用的效率,提高電網的可靠性和安全性。建立高速、雙向、實時、集成的通信系統是實現智能電網的基礎。目前,配電通信網的主要傳輸手段有:光纖、公共無線網絡、自建專用無線網絡、電力線載波通信、電力線工頻通信等方式。
電力線工頻通信通過在電壓、電流上疊加微小的畸變信號實現數據傳輸,由於低頻工頻畸變信號可穿越變壓器,電力線工頻通信技術具有能夠跨越配電變壓器遠距離通信的獨特優勢,如果通過相關技術手段提升通信速率,該技術能夠在智能配電網建設中發揮重要作用。
電力線通信技術可直接利用現有的電力線進行數據傳輸,無須重新布網,成本低廉,信息傳輸安全有充分的保障。近年來,寬帶電力線載波通信(BPLC:Broadband Power Line Carrier)技術得到了廣泛應用,尤其大量應用於智能電網抄表系統、能源網際網路、智能家居和工業數據採集等場景。
在利用電力線進行數據傳輸時,同樣面臨數據安全的問題。在電力載波通信中引入數據加密機制,具有重大意義。數據加密又稱密碼學,指通過加密算法和加密密鑰將明文轉換成密文,而解密則是反向的通過解密算法和解密密鑰將密文還原成原文。數據加密利用密碼技術對信息進行加密,實現信息隱蔽,保護信息安全。
隨著加密算法的演進,分組加密算法對數據進行分組加密,增加了數據解密難度,然而,採取固定的加密算法和密鑰進行加密,在確定加密算法和密鑰後,明文和密碼形成對應關係,可以採用窮舉法等暴力方式破解,安全度有待提高。
技術實現要素:
本發明提供一種電力載波通信系統,該系統可以利用電力線,實現高安全性和高可靠性的數據傳輸。
為了實現上述目的,本發明提供一種電力載波通信系統,該系統包括載波通信數據發送端、載波通信傳輸裝置和載波通信數據接收端;
其中,載波通信數據發送端包括:
數據分組單元,將待加密數位訊號進行分段,產生分段數位訊號;
密鑰生成單元,用於生成用戶密鑰;
存儲存儲單元,用於存儲用戶密鑰;
數據加密單元,利用加密算法和所述用戶密鑰對所述分段數位訊號進行加密,得到加密後的分段數位訊號;
分段數位訊號打包單元,將所述加密後的分段數位訊號進行打包,得到加密後的IP數據包;
載波通信傳輸裝置包括:
初始化模塊,用於接收上述IP數據包,並初始化發送幀長,採用默認值或先驗值作為初始發送幀長L;
發送模塊,用於以幀長L發送IP數據包,當發送成功時則以相同的發送幀長再次發送,當發送失敗時則以相同的發送幀長重新發送;
幀長變更模塊,用於當連續兩次發送成功時,則將發送幀長L加倍並執行發送模塊的操作,當連續兩次發送失敗時,則將發送幀長L減半並執行發送模塊的操作;
範圍確定模塊,用於當經過i次幀長加倍或減半後,以Li作為幀長連續兩次發送成功且以2Li作為幀長連續兩次發送失敗時,則將幀長L的取值範圍確定為[Li,2Li];
所述載波通信數據接收端包括:
數據接收單元,用於接收所述加密後的IP數據包;
用戶密鑰獲取單元,用於獲取所述用戶密鑰;
解密單元,根據所述解密密鑰和與所述解密加密算法對應的解密算法對所述加密後的IP數據包進行解密,得到原分段數位訊號;
組合單元,用於組合所述分段數位訊號,得到原數位訊號。
優選的,載波通信數據發送端發送IP數據包之前採用默認值或先驗值的方法,來確認初始發送幀的長度,默認值為微協議數據單元MPDU的最小幀長單位,而採用先驗值的方法通過偵聽當前信道中其他節點發送成功的幀長度或本節點最近一次發送成功的幀長度,來確定初始幀長度。
優選的,所述密鑰生成單元包括第一獲取子單元,用於獲取用戶的生物特徵數據;
第一生成子單元,用於根據所述生物特徵數據,生成特徵向量;
第二生成子單元,用於根據預定算法對所述特徵向量進行處理,生成與所述用戶對應的用戶密鑰。
優選的,所述數據加密單元,根據所述用戶密鑰和加密算法對所述分段數位訊號進行加密,得到加密後的分段數位訊號。
優選的,其中,所述第二生成子單元包括:
獲取子模塊,用於根據所述預定算法對所述特徵向量進行序列化處理,得到序列化後的特徵向量;
提取子模塊,用於根據所述預定算法從所述序列化後的特徵向量中,提取出符合均勻分布的序列數據作為與所述用戶對應的用戶密鑰。
優選的,所述數據加密單元包括:
第一運算子單元,用於根據分段數位訊號信號、所述用戶密鑰和第一隨機數位訊號進行位運算,得到第一密文數位訊號;
第二運算子單元,用於根據所述用戶密鑰和第一隨機數位訊號進行位運算,得到第二隨機數位訊號;
插入子單元,用於將第二隨機數位訊號插入到第一密文數位訊號中,得到第二密文數位訊號;
第一操作子單元,用於對第二密文數位訊號進行反轉比特位操作,得到最終加密後的分段數位訊號。
優選的,所述解密單元包括:
第二操作子單元,用於對最終加密後的分段數位訊號進行比特位反轉操作,得到第四密文數位訊號;
提取子單元,用於從第四密文數位訊號中提取出第二隨機數位訊號,得到第五密文數位訊號;
第三運算子單元,用於根據第二隨機數位訊號與用戶密鑰進行位運算,得到第一隨機數位訊號;
第四運算子單元,用於根據第五密文數位訊號、第一隨機數位訊號和用戶密鑰進行位運算,得到原分段數位訊號。
優選的,所述解密單元還可包括解密判斷子單元,每次解密後對得到數據幀頭、幀尾部分進行檢測,若符合分段數位訊號密文的幀頭、幀尾的格式,則再次進行解密。
優選的,所述用戶密鑰獲取單元,可以通過單獨的物理存儲介質讀取用戶密鑰。
本發明具有以下優點和有益效果:該系統可以自適應地有限次逼近IPv6包分片的最佳幀長,複雜度較低,並能夠快速收斂獲最佳幀長,高效地支持IPv6;該系統可以根據用戶的個人信息生成密鑰,使得密鑰具有唯一性和複雜性;在數位訊號加密解密過程中,通過明文數位訊號與用戶密鑰和第一隨機數位訊號進行位運算,得到第一密文數位訊號,同時將用戶密鑰與第一隨機數位訊號進行位運算,得到第二隨機數位訊號,並將得到的第二隨機數位訊號與第一密文數位訊號進行位運算,得到第二密文數位訊號,最後再對第二密文數位訊號進行反轉比特位操作,得到原明文數位訊號,解決了數位訊號的保密性和安全性差的問題,大幅增加破解難度。
附圖說明
圖1示出了本發明的一種電力載波通信系統的框圖。
圖2示出了本發明的一種利用電力線進行通信的方法的流程圖。
具體實施方式
圖1是示出了本發明的一種電力載波通信系統,該系統包括載波通信數據發送端1、載波通信傳輸裝置3和載波通信數據接收端2;
其中,載波通信數據發送端1包括:
數據分組單元11,將待加密數位訊號進行分段,產生分段數位訊號;
密鑰生成單元12,用於生成用戶密鑰;
存儲存儲單元13,用於存儲用戶密鑰;
數據加密單元14,利用加密算法和所述用戶密鑰對所述分段數位訊號進行加密,得到加密後的分段數位訊號;
分段數位訊號打包單元15,將所述加密後的分段數位訊號進行打包,得到加密後的IP數據包;
載波通信傳輸裝置3包括:
初始化模塊31,用於接收上述IP數據包,並初始化發送幀長,採用默認值或先驗值作為初始發送幀長L;
發送模塊32,用於以幀長L發送IP數據包,當發送成功時則以相同的發送幀長再次發送,當發送失敗時則以相同的發送幀長重新發送;
幀長變更模塊33,用於當連續兩次發送成功時,則將發送幀長L加倍並執行發送模塊的操作,當連續兩次發送失敗時,則將發送幀長L減半並執行發送模塊的操作;
範圍確定模塊34,用於當經過i次幀長加倍或減半後,以Li作為幀長連續兩次發送成功且以2Li作為幀長連續兩次發送失敗時,則將幀長L的取值範圍確定為[Li,2Li];
所述載波通信數據接收端2包括:
數據接收單元31,用於接收所述加密後的IP數據包;
用戶密鑰獲取單元22,用於獲取所述用戶密鑰;
解密單元23,根據所述解密密鑰和與所述解密加密算法對應的解密算法對所述加密後的IP數據包進行解密,得到原分段數位訊號;
組合單元24,用於組合所述分段數位訊號,得到原數位訊號。
優選的,載波通信數據發送端1發送IP數據包之前採用默認值或先驗值的方法,來確認初始發送幀的長度,默認值為微協議數據單元MPDU的最小幀長單位,而採用先驗值的方法通過偵聽當前信道中其他節點發送成功的幀長度或本節點最近一次發送成功的幀長度,來確定初始幀長度。
優選的,所述密鑰生成單元12包括第一獲取子單元,用於獲取用戶的生物特徵數據;
第一生成子單元,用於根據所述生物特徵數據,生成特徵向量;
第二生成子單元,用於根據預定算法對所述特徵向量進行處理,生成與所述用戶對應的用戶密鑰。
優選的,所述數據加密單元14,根據所述用戶密鑰和加密算法對所述分段數位訊號進行加密,得到加密後的分段數位訊號。
優選的,其中,所述第二生成子單元包括:
獲取子模塊,用於根據所述預定算法對所述特徵向量進行序列化處理,得到序列化後的特徵向量;
提取子模塊,用於根據所述預定算法從所述序列化後的特徵向量中,提取出符合均勻分布的序列數據作為與所述用戶對應的用戶密鑰。
優選的,所述數據加密單元包括:
第一運算子單元,用於根據分段數位訊號信號、所述用戶密鑰和第一隨機數位訊號進行位運算,得到第一密文數位訊號;
第二運算子單元,用於根據所述用戶密鑰和第一隨機數位訊號進行位運算,得到第二隨機數位訊號;
插入子單元,用於將第二隨機數位訊號插入到第一密文數位訊號中,得到第二密文數位訊號;
第一操作子單元,用於對第二密文數位訊號進行反轉比特位操作,得到最終加密後的分段數位訊號。
優選的,所述解密單元包括:
第二操作子單元,用於對最終加密後的分段數位訊號進行比特位反轉操作,得到第四密文數位訊號;
提取子單元,用於從第四密文數位訊號中提取出第二隨機數位訊號,得到第五密文數位訊號;
第三運算子單元,用於根據第二隨機數位訊號與用戶密鑰進行位運算,得到第一隨機數位訊號;
第四運算子單元,用於根據第五密文數位訊號、第一隨機數位訊號和用戶密鑰進行位運算,得到原分段數位訊號。
優選的,所述解密單元還可包括解密判斷子單元,每次解密後對得到數據幀頭、幀尾部分進行檢測,若符合分段數位訊號密文的幀頭、幀尾的格式,則再次進行解密。
優選的,所述用戶密鑰獲取單元,可以通過單獨的物理存儲介質讀取用戶密鑰。
圖2示出了本發明的一種利用電力線進行通信的方法的流程圖。該方法具體包括如下步驟:
S1.生成用戶密鑰;
S2.將數位訊號分段,並利用用戶密鑰和加密算法對分段數位訊號進行加密;
S3.將分段數位訊號打包後,由載波通信傳輸裝置發送給載波通信數據接收端;
S4.由載波通信數據接收端進行解密,得到原分段數位訊號,將原分段數位訊號組合後,得到原數位訊號。
優選的,所述步驟S3包括如下子步驟:
步驟S31:初始化發送幀長,採用默認值或先驗值作為初始發送幀長L;
步驟S32:以幀長L發送IP數據包,當發送成功時則以相同的發送幀長再次發送,當發送失敗時則以相同的發送幀長重新發送;
步驟S33:當連續兩次發送成功時,則將發送幀長L加倍並執行步驟S32;當連續兩次發送失敗時,則將發送幀長L減半並執行步驟S32;
步驟S34:當經過i次幀長加倍或減半後,以Li作為幀長連續兩次發送成功且以2Li作為幀長連續兩次發送失敗時,則將幀長L的取值範圍確定為[Li,2Li]。
優選的,在步驟S31中,載波通信數據發送端發送IP數據包之前採用默認值或先驗值的方法,來確認初始發送幀的長度,默認值為微協議數據單元MPDU的最小幀長單位,而採用先驗值的方法通過偵聽當前信道中其他節點發送成功的幀長度或本節點最近一次發送成功的幀長度,來確定初始幀長度。
優選的,在步驟S32中,如果發送成功,則以相同幀長L繼續發送,源節點記錄每次發送成功的幀長度,如果發送失敗,則將該幀進行第一次重傳,並繼續以相同的發送幀長進行發送。
優選的,在步驟S33中,如果連續兩次以相同的幀長L發送成功,則以2L作為幀長繼續發送後續的數據。如果第二次重傳失敗,此時也即連續兩次重傳失敗,則將幀長L減半進行調整作為新的幀長度,並繼續發送數據包,以此遞減,直到使用幀長為默認值(即最短幀長)。
優選的,在步驟S34中,幀長是以二進位指數形式進行改變的,無論初始幀長的值怎麼設定,經過i次幀長加倍,信道最佳幀長可能會處於當前幀長Li與2Li之間,預先設置的結束條件為:以Li作為幀長連續兩次發送成功且以2Li作為幀長連續兩次發送失敗,此時就能快速得到最佳幀長的取值範圍,即[Li,2Li],以便於進一步進行精確調整幀長。
優選的,在步驟S1中,其具體包括如下子步驟包括:
S11:獲取用戶的生物特徵數據。
這裡,可具體通過各種類型的生物特徵傳感設備採集用戶的生物特徵數據,其中,生物特徵可具體為指紋、虹膜、聲音、人臉、掌紋、靜脈等。
S12:根據所述生物特徵數據,生成特徵向量。
S13:根據所述預定算法對所述特徵向量進行序列化處理,得到序列化後的特徵向量。
在本發明的具體實施例中,根據預定算法的需求,將不同長度的特徵值向量(或不同格式的待保護信息和數據)轉化為指定長度的序列。
S14:根據所述預定算法從所述序列化後的特徵向量中,提取出符合均勻分布的序列數據作為與所述用戶對應的用戶密鑰。
優選的,上述判斷所述隨機序列是否符合均勻分布可具體包括:
在所述隨機序列中提取多個隨機均勻分布子序列;
判斷多個所述隨機均勻分布子序列之間的距離值是否處於預設範圍內;
若多個所述隨機子序列之間的距離值處於所述預設範圍內,則判斷出所述隨機序列符合均勻分布,否則,不符合均勻分布。
優選的,在所述S2中,具體包括如下子步驟:
S21:根據分段數位訊號、用戶密鑰和第一隨機數位訊號進行位運算,得到第一密文數位訊號。
在具體實施中,可以將待加密數位訊號分為多段,也可以將待加密數位訊號作為一段。
分段數位訊號可以先跟第一隨機數位訊號進行位運算(例如異或運算)得到第三密文,然後再讓第三密文與用戶密鑰進行位運算(例如異或運算)得到第一密文數位訊號。當然分段數位訊號也可以先跟用戶密鑰進行位運算(例如異或運算)得到第三密文,然後再讓第三密文與第一隨機數位訊號進行位運算(例如異或運算)得到第一密文數位訊號。其中具體得到第一密文數位訊號可以通過如下C語言實現,c[i]=p[i]^r[(i+a)%rl]^k[(i+b)%kl],其中c表示第一密文數位訊號,i表示字節序數,p表示分段數位訊號,r表示第一隨機數位訊號,rl表示第一隨機數位訊號長度,k表示用戶密鑰,kl表示用戶密鑰長度,a是小於第一隨機信號長度的正整數,b小於用戶密鑰長度的正整數。
S22:根據用戶密鑰和第一隨機數位訊號進行位運算,得到第二隨機數位訊號;
可以將用戶密鑰與第一隨機數位訊號進行位運算(例如異或運算),得到第二隨機數位訊號,且該第二隨機數位訊號的長度與第一隨機數位訊號的長度一樣。但是為了保證數據膨脹不是很嚴重,這個長度值不宜過大。
還可以通過將第一隨機數位訊號的每個字節(除了最後一個字節)分別與後面的一個字節進行按位異或運算得到第二隨機數位訊號。
S23:將第二隨機數位訊號插入到第一密文數位訊號中,得到第二密文數位訊號。
S24:對第二密文數位訊號進行反轉比特位操作,得到最終加密後的分段數位訊號。
優選的,在S3中,可以通過在加密後的分段數位訊號前添加幀頭、所述分段數位訊號的長度和所述加密的分段數字的長度,在所述加密的分段數位訊號後添加幀尾的方式進行打包,得到加密後的IP數據包。
優選的,在步驟S4的解密過程中,具體包括如下子步驟:
S41:載波通信數據接收端接收最終加密後的分段數位訊號,並獲取用戶密鑰;
S42:對最終加密後的分段數位訊號進行比特位反轉操作,得到第四密文數位訊號;
S43:從第四密文數位訊號中提取出第二隨機數位訊號,得到第五密文數位訊號;
S44:根據第二隨機數位訊號與密鑰進行位運算,得到第一隨機數位訊號;
S45:根據第五密文數位訊號、第一隨機數位訊號和用戶密鑰進行位運算,得到原分段數位訊號。
優選的,在S41中,載波通信數據接收端通過單獨的物理存儲介質獲得用戶密鑰。
優選的,在執行步驟S41之前,還包括如下步驟:根據最終加密後的分段數位訊號的第二長度值、用戶密鑰的校驗和以及用戶密鑰的第四長度值,確定出第二隨機數位訊號在第四密文數位訊號中的插入位置。
可通過公式pos_1=((cl+crc)×kl)%cl,計算出插入位置,其中pos_1表示插入位置,cl表示最終加密後的分段數位訊號的第二長度值,crc表示密鑰的校驗和,kl表示密鑰的第四長度值。
優選的,在S42中,具體包括:首先根據插入位置與第四長度值,確定出在最終密文數位訊號中進行比特位反轉操作的開始位置;然後再反轉最終密文數位訊號中位於開始位置後的每個字節中的一個比特位,得到第四密文數位訊號,其中每個字節需要反轉的比特序號由該字節前面的字節組成的比特流中的至少三個比特位決定。
優選的,在S43中,根據插入位置和至少一個比特位,從第四密文數位訊號中提取出第二隨機數位訊號,得到第五密文數位訊號。
如上所述,雖然根據實施例所限定的實施例和附圖進行了說明,但對本技術領域具有一般知識的技術人員來說能從上述的記載中進行各種修改和變形。例如,根據與說明的技術中所說明的方法相不同的順序來進行,和/或根據與說明的系統、結構、裝置、電路等構成要素所說明的方法相不同的形態進行結合或組合,或根據其他構成要素或均等物進行替換或置換也可達成適當的效果。對於本發明所屬技術領域的普通技術人員來說,在不脫離本發明構思的前提下,做出若干等同替代或明顯變型,而且性能或用途相同,都應當視為屬於本發明的保護範圍。