999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

基于某測量船的隱蔽通信檢測算法設計與軟件開發

2018-02-26 21:33:42王婷馬繼先劉英杰
中國水運 2018年2期

王婷+馬繼先+劉英杰

摘要:進入二十一世紀以來,我國海上探測能力進一步增強,測量船與指揮部,以及測量船相互之間的信息交流,相互合作也日益頻繁,為了保證所傳輸的信息不被不法分子利用以及國外的間諜機構所探知,因此采取合適的隱寫術對信息進行加密顯得尤為重要。同時,在截獲了不法分子的情報之后進行解密以便采取相應的措施也是一項艱巨的任務。因此,本文采取了Bitfield消息中的隱蔽通信檢測算法設計與軟件開發技術對信息進行隱蔽以及檢測破譯。應用本文中提出的方法,可以很好地區分針對矩陣編碼的bitfield消息隱蔽通信中的正常數據和含密數據。

關鍵詞:測量船;隱蔽通信;檢測算法

中圖分類號:U665.2 文獻標識碼:A 文章編號:1006—7973(2018)2-0049-05

BitTorrent網絡是P2P網絡的典型代表,它運行的是BitTorrent協議。在中國,它的使用率相對較大。它在具有P2P網絡的本身特色的基礎上,還有著“連接越多,下載越快”的特點。BitTorrent網絡協議(簡稱BT協議)其實是一種發布文件的協議,它基于的是HTTP的協議。BT協議識別內容最關鍵的是依賴URL,另外,它還可以和Web進行無縫交接。Ben coding編碼,Torrent文件格式,節點和Tracker服務器的通信協議以及節點之間的通信協議都是BitTorrent協議的重要組成部分。在BitTorrent網絡中,發布和共享是文件共享最主要的兩個步驟。本文研究重點是針對節點間通信的數據消息——Bitfield消息的隱蔽通信算法及其檢測。通過與矩陣編碼技術融合可以提高針對于Bitfield信息的隱蔽通信算法的嵌入效率。矩陣編碼技術在F5密寫算法后開始嶄露頭角。在矩陣編碼技術的基礎上,通過修改1個單位的信息把更多的秘密文本存放進去。最少地更改原先的數據,降低修改數據對BitTorrent功能造成的影響,提升嵌入效率,從而提高了該方法的隱蔽性。

網絡隱寫作為一種隱蔽通信方式,利用合法的數據流作為載體在網絡中傳遞秘密文本。測量船通過利用網絡隱信道進行隱秘通信,安全地傳遞重要信息。但同時,網絡隱寫也會被不法組織和個人利用,以傳遞核心信息,威脅國家安全。因此,檢測網絡隱寫的存在,防止危害發生,是至關重要的環節。隱寫的檢測技術作為網絡安全保護方面內的核心技術,引發研究熱潮,而且目前為止已經取得了不少的研究成果。但是目前還沒有公開文獻給出其檢測方法。

1 Bencoding 編碼

Bencoding編碼在BT協議中使用率很高。在BitTorrent早先開發的時候將Bencoding定義為它的編解碼標準。因為BitTorrent客戶端的開發語言是Python語言,所以Python自帶的數據結構,列表和字典標準在Bencoding里全部包含。整數、字符串、列表以及字典都能夠進行Bencoding編碼,它們編碼之后轉化為字符串,這樣有利于在網絡上面傳送。

在Bencoding內整數可以通過ie表示,i和e都是字符,num可以通過10進制的字符串來表示。例如70的Bencoding可以表示成i70e,而-2的Bencoding可以寫成i-2e。Bencoding中字符串可以按照l的格式來表示,l代表了字符串的長度,str 表示字符串內容。例如qwer的 Bencoding可以表示為 4:qwer,而BitTorrent的Bencoding可以用10:BitTorrent來表示。Python語言中的一種數據結構類型就是列表,列表與數組類似,可以寫成[1,“hi”,3,“wert”,28,-3,“look”]。無論是數字、字符串,還是字典、甚至其他列表都可以作為列表中的內容,換言之,列表內的內容可以是任何類型。列表在 Bencoding中通過le來表示,其中contents是經過Bencoding內列表的內容,按照次序排列。而Python語言中的第二種種復合數據結構是字典,字典包含主鍵,而主鍵分別對應著一些內容,可以寫成{“zxv”,“ou7”,“ertd”,“apple”},在Bencoding內所有字典的主鍵都是字符串,無論是整數、字符串還是列表甚至是字典都可以作為它相對應的內容,換言之,任意類型都可以是主鍵對應的內容。字典可以通過de來表示,其中key是某一主鍵通過Bencoding編碼后得到的字符串,而item是主鍵的對應內容在Bencoding中轉換而成的字符串,key和item按順序排列,并且字典內的所有項目都一定要按照這個次序來排列。例如上面的字典經過Bencoding編碼可以表示成d3:zxv3:ou74:ertd4:apple。而比如字典{“wert”:[“r”,“u”]}經過Bencoding編碼可表示為d4:wertl1:r1:uee,值得注意的是,最后的兩個e,分別代表列表結束符和字典結束符。

2 矩陣編碼技術概述

從F5密寫計技術,矩陣編碼技術逐漸進入大眾視野。在F4密寫的基礎上增添矩陣編碼技術和混洗技術就形成了F5密寫技術,它很大程度上提升了信息隱藏技術的可靠性,融入矩陣編碼的首要目的是存放更多的秘密文本。將一個單位秘密文本嵌入到載體信息中會有百分之五十的可能更改初始數據,也有百分之五十的可能不更改初始數據。換言之,每更改一次數據都可以存放兩個單位的秘密文本。與矩陣編碼技術融合必然可以把更多的秘密文本存放進去,也就是說,最理想的情況下,可以達到只更改一個單位初始文本而存放k單位隱秘文本的效果。

當k>2時,把k個單位秘密文本存放到2k-1個初始數據負載中,這是矩陣編碼的通用形式,此時的載體數據使用情況如下

嵌入前,倘若上面的式子全部滿足,那么就不用改動。倘若存在等式不滿足,就需要找到對應于上式的初始數據,并改動它們,使三個式子全部成立。倘若式(2.11)和式(2.13)不成立,找出它對應的原始數據a5(表2-1中a5下面的例子里有叉的位置對應于x1和x3),所以只需要改動a5。由于a5在式(2.11)與式(2.13)中出現,所以改動a5可以使它們從不成立變為成立;但是在式(2.12)沒有a5中,因此改動a5并不足以更改式(2.12)的情況。因此當k=3時,矩陣編碼的載體使用情況如下

3 基于Bitfield的信息隱藏算法

利用BitTorrent網絡內節點之間通信的Bitfield消息來進行的信息隱藏就是基于Bitfield的信息隱藏算法,這個算法隱蔽性良好,且容易被發現。本節將系統地介紹基于Bitfield的信息隱藏算法的隱藏原理,隱藏算法和提取算法。

3.1隱藏算法

規則1嵌入秘密文本時,與矩陣編碼融合,首先利用式(2.7)將原始數據的序號按二進制編碼,得到bi,j,其中bi,j的取值設置成0或1。第二步,利用式(2.8)計算cj,其中式2.8)中ai為等候存放文本的Bitfield消息負載的第i位,x1,x2…xk是欲嵌入的秘密文本。最后,利用式(2.9)計算C的值,倘若C=0,則不作任何改動;否則改動ac。

為簡便起見,在隱藏算法中,令Encrypt()表示預處理加密秘密文本M為S的函數(S=x1,x2…xk),Embed()是按照規則1將S嵌入載體的隱藏函數。

下面給出隱藏算法的主要步驟:

輸入:信息載體Bitfield消息B,待隱藏的秘密文本M,密鑰k。

輸出:隱藏信息后的Bitfield消息B*。

步驟:Step1:S=Encrypt(M,k),并計算|S|;

Step2:計算Bitfield消息負載的長度L;

Step3:If L<2|S|-1

Step4:輸出“嵌入失敗(信息過長)”

Else

Step5:Embed(S);

Step6:輸出B*

隱秘文本M在節點獲取了節點分布信息的基礎上,經過握手來存放文本的。文本在傳送出去之前一直存放在Bitfield文本里面。在這個算法里面,工作的全部節點都不是空白的,它們都含有一些內容。同樣的,要獲取隱秘文本也必須在握手以后才能后進行。

3.2提取算法

規則2:根據矩陣編碼規則,提取秘密文本時按式(2.10)計算xj(1≤j≤k),得到隱秘文本為x1x2…xk。在提取算法中,用Extract()表示按照規則2將S從Bitfield中提取的提取函數,Decrypt()是將經加密的秘密文本S轉換為明文形式的秘密文本M。

下面給出提取算法的主要步驟:

輸入:待獲取Bitfield消息B*,密鑰k。

輸出:隱藏的秘密文本M。

步驟:Step 1:按照規則2從B*中提取S,S= Extract(B*);

Step 2:以明文的形式將S轉換為秘密文本M,M=Decrypt(S,k);

Step3:輸出M。

4 針對矩陣編碼的Bitfield消息隱蔽通信檢測方法

4.1檢測算法

基于矩陣編碼的隱蔽通信方式,我們在編寫檢測方法時,只要通過檢測一定窗口內三個狀態(-1,0,1)的轉移矩陣,再對這個轉移矩陣進行處理得到K-L散度,即可判斷該窗口是否含有隱蔽通信。下圖4-1是矩陣編碼的原理示例圖。

4.2建立模型庫

一種針對矩陣編碼的隱蔽通信檢測方法,包括建立模型庫和利用模型庫進行檢測,所述建立模型庫具體包括如下步驟:

步驟一:設置數據捕獲器

用Bit comet進行文件下載,然后通過wireshark捕獲數據包,并在捕獲的數據包中篩選出Bitfield消息。

步驟二:設置數據處理器

設置數據處理器,通過篩選將1192位Bitfield消息數據篩選得到負載數據為814位,然后利用Matlab對捕獲的數據進行處理,將原來的十六進制數據轉化為二進制數據,并合并成一個一維數組,再對前后捕獲到的兩組數組求差。

步驟三:設置窗口分割器

設置窗口分割器:窗口分割器將處理后的一維數組分為大小為w的窗口,共可分為 個窗口;每個窗口分成大小為L的小區間,一個窗口可分為 個小區間,若Bitfield消息中存在N條流, 為一個小區間內通過某條流的數據包的個數,統計每個小區間中每條流的占比,i=1、2、3…, ;本實施例中在原數據后面補6個0,以w=466的窗口大小,將其分為7個檢測窗口。

步驟四:設置K-L散度求取器

計算前后兩組數據的差值中所含的獨立狀態數個數,從小到大排列為一維矩陣E,先找出第i個狀態的位置,然后通過判斷下一個位置的狀態來得到一個占位矩陣T,如果第i個狀態的下一個位置的狀態為E(j),則占位矩陣中對應的位置加一(即T(i,j)= T(I ,j)+1),不同則不做改變,并求得這個占位矩陣對于每一行的和的轉移矩陣Q;最后利用K-L散度求取器根據公式(2.4)計算出各窗口數據的K-L散度D。本實施例中將-1,0,1看作三個獨立狀態,求出7個窗口的K-L散度。

步驟五:訓練不同時間間隔的正常Bitfield消息數據模型,并設定檢測閾值:在不同時間間隔的情況下,重復步驟(1)——(4),得到不同時間間隔的正常數據模型,對各模型進行分析,求不同時間間隔所含數據的均值M+、方差V+和檢測閾值Th+=M++aV+,并使用自定義常量a來調整檢測閾值。本實施例中經過步驟四得到7個窗口的K-L散度后,在不同時間間隔下建立正常通信的數據模型,并對每個模型進行分析。

步驟六:建立模型庫:將步驟五中求得的不同時間間隔的正常Bitfield消息的檢測閾值放入模型庫中。

正常通信模型訓練流程如下圖4.2所示:

4.3利用模型庫進行檢測

(1)判斷待測數據的時間間隔:根據時間間隔從模型庫中調出相應的模型以及檢測閾值Th+;endprint

(2)處理待測數據并計算K-L散度:利用數據處理器將捕獲到的前后兩組數據求差并轉化為一個一維數組;利用窗口分割器將數組分割成大小均為ω的窗口;把0,1,-1看做三種狀態,先找出0的位置,然后通過判斷下一位的狀態來得到一個占位矩陣,并求得這個占位矩陣對于每一行的和的轉移矩陣Q;最后利用K-L散度求取器計算出各窗口數據的K-L散度D。

(3)判斷待檢測數據屬性:將D與模型庫中相應的檢測閾值Th+作比較,小于Th+則待檢測數據為含密數據,否則為正常數據。

步驟一中所述的數據捕獲器即wireshark,所述過濾器為wireshark內置的過濾器。

步驟四中所述的K-L散度求取方法即相對熵,是相對于真實通信的轉移矩陣而言的K-L散度。

其中(i,j)為真實通信的轉移矩陣的第i行第j列;Q(i,j)為待測數據的轉移矩陣的第i行第j列。

利用模型庫進行檢測的具體步驟如下圖4-3所示:

4.4檢測步驟

針對矩陣編碼的Bitfield消息隱蔽通信檢測方法的具體步驟如下。先把待測數據和正常數據轉化為一維數組,并對前后兩組一維數組求差,得到三種狀態:0,1,-1,找出每個狀態的位置,通過判斷下一個位置的狀態得到占位矩陣,再求得該矩陣K-L散度的差異,判斷待檢測數據流是否為含密數據流。并且在求出數據轉移矩陣的基礎上,與K-L散度的計算相結合,從而提高了檢測效果,可以得到可靠的檢測結果。

5 實驗成果

圖5-2為實驗效果圖,實線為正常數據,虛線為含密數據,由圖可見,應用本文中提出的方法,可以很好的區分針對矩陣編碼的bitfield消息隱蔽通信中的正常數據和含密數據。

6 結論

節點之間的連接,交互信息是十分關鍵的。它們可以用于完成文件共享。而文件資源共享更是BT網絡中的核心之一。在這個過程中,節點首先利用自身的特點與其他部件相互連通。連通后將Bitfield消息傳送出去。消息中涵蓋了周邊節點的分布圖。這個圖主要是為BitTorrent的文件服務。在這個文件中,片段摘選的規則就是由這個圖來提供的。本文基于Bitfield消息,設計實現一種針對Bitfield的信息隱藏算法以及一種針對矩陣編碼的Bitfield消息隱蔽通信檢測方法。這種檢測算法首先通過對比待檢測數據和正常數據找出每個狀態的位置,獲得占位矩陣和轉移矩陣。利用求得的K-L散度來判斷是否為含密數據流,這種檢測算法的效率更高結果更為可靠。

參考文獻:

[1] 王育民. 信息隱藏: 理論與技術[N]. 第1版. 北京:清華大學出版社, 2006, (3): 115-123

[2] Y. Chawathe, S. Ratnasamy, L. Breslau, et al. Making Gnutella-like P2P Systems Scalable[J]. In: Proceeding of ACM SIGCOMM. New York: ACM, 2003, (5): 407-418

[3] D. Wallach. A Survey of Peer-to-Peer Security Issues[J]. In: International Symposium on Software Security. Berlin: Springer-Verlag,2003, 253-258

[4] T. W. Ngan, D. Wallach, P. Druschel. Enforcing Fair Sharing of Peer-to-Peer Resources[J]. In: Proceeding of the Second International Workshop on Peer-to-Peer Systems. Berkeley: Springer-Verlag, 2003, 110-115

[5] 陳亮, 龔儉, 大規模網絡中BitTorrent流行為分析[N], 東南大學學報(自然科學版), vol. 38,no. 3, pp. 390-395, 2008.

[6] 徐釩文, 基于P2P的隱蔽匿名通信系統研究[D], 北京郵電大學碩士學位論文, 2013.

[7]BitTorrent. http://www.bittorrent.com/[Z], 2009-2-12

[8]Gnutella. http://www.gnutellaforums.com/[Z], 2009-2-12

[9] 楊榆, 鈕心忻, 楊義先等. 網絡協議信息隱藏技術綜述[N]. In: Proceedings of CIHW2006. 哈爾濱: 哈爾濱工業大學學報, 2006, 38(7): 820-824, 856

[10] 張聯峰, 劉乃按, 錢秀檳等. 綜述: 對等網(P2P)技術[R]. 計算機工程與應用,2003, 39(12): 142-145endprint

主站蜘蛛池模板: 欧美日韩在线观看一区二区三区| 老司国产精品视频| 午夜福利在线观看成人| 看国产毛片| 伊人久久婷婷| 国产精品第一区在线观看| 激情乱人伦| 日韩成人在线网站| 国产亚洲欧美在线人成aaaa| 亚洲国产日韩视频观看| 在线va视频| 亚洲一区精品视频在线| 国产一级在线观看www色| 日本色综合网| 中文国产成人久久精品小说| 国产成人欧美| 全部无卡免费的毛片在线看| 天天色综合4| 91成人在线观看视频| 国产成人精品一区二区| 国产精品短篇二区| 3344在线观看无码| 日韩福利在线观看| 97se亚洲综合不卡| 天天躁夜夜躁狠狠躁图片| 亚洲精品不卡午夜精品| 国产精品区网红主播在线观看| 99热这里只有免费国产精品| 中文字幕亚洲综久久2021| 99热国产这里只有精品9九| 国产精品亚洲综合久久小说| 国产成人h在线观看网站站| 欧美啪啪精品| 尤物国产在线| 国产亚洲男人的天堂在线观看| 五月天婷婷网亚洲综合在线| 日韩av资源在线| 午夜视频在线观看区二区| 国产日本欧美亚洲精品视| 欧美日韩在线亚洲国产人| 日韩欧美高清视频| 国产成人无码久久久久毛片| 欧美特级AAAAAA视频免费观看| 97综合久久| 国产亚洲精品精品精品| 2020国产精品视频| jizz国产在线| 狠狠ⅴ日韩v欧美v天堂| 91无码网站| 91青草视频| 一本一道波多野结衣av黑人在线| 亚洲最猛黑人xxxx黑人猛交| 成年A级毛片| 亚洲欧美精品一中文字幕| 欧美www在线观看| 亚洲色中色| 在线色综合| 国产午夜一级毛片| 思思99热精品在线| 很黄的网站在线观看| 欧美在线中文字幕| 国产色图在线观看| 久久久久久高潮白浆| 亚洲成人www| 国产黑人在线| 日本一区高清| 欧美一级黄片一区2区| 国产亚洲美日韩AV中文字幕无码成人 | 人妻一区二区三区无码精品一区| 欧美爱爱网| 亚洲第一色视频| 91在线播放免费不卡无毒| 亚洲综合一区国产精品| 国产欧美日韩在线一区| 99视频国产精品| 欧美一区中文字幕| 手机精品福利在线观看| 久久频这里精品99香蕉久网址| 亚洲一区二区三区中文字幕5566| 丁香六月激情婷婷| 91精品免费高清在线| 丁香婷婷在线视频|