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