亚洲免费av电影一区二区三区,日韩爱爱视频,51精品视频一区二区三区,91视频爱爱,日韩欧美在线播放视频,中文字幕少妇AV,亚洲电影中文字幕,久久久久亚洲av成人网址,久久综合视频网站,国产在线不卡免费播放

        ?

        NDIS防火墻和流過濾技術(shù)在文件加密保護(hù)中的應(yīng)用

        2017-03-30 02:09:37林志盤
        科技與創(chuàng)新 2016年22期
        關(guān)鍵詞:網(wǎng)絡(luò)通訊防火墻

        林志盤

        摘 要:計(jì)算機(jī)信息技術(shù)在給人們生活帶來便利、提高信息利用率的同時(shí),網(wǎng)絡(luò)安全問題也日顯突出。要想解決網(wǎng)絡(luò)的安全問題,最首要的就是在網(wǎng)絡(luò)運(yùn)行中輔以相應(yīng)的加密技術(shù)。闡述了NDIS中間層網(wǎng)絡(luò)防火墻技術(shù),詳細(xì)分析了流過濾技術(shù)在文件加密保護(hù)中的應(yīng)用以及具體實(shí)現(xiàn)算法,并介紹了TCP封包的修改。

        關(guān)鍵詞:防火墻;TCP;網(wǎng)絡(luò)通訊;自動(dòng)加密系統(tǒng)

        中圖分類號(hào):TP393.08 文獻(xiàn)標(biāo)識(shí)碼:A DOI:10.15913/j.cnki.kjycx.2016.22.110

        隨著網(wǎng)絡(luò)應(yīng)用領(lǐng)域的不斷擴(kuò)展,人們對(duì)信息的保密性要求不斷提高,對(duì)網(wǎng)絡(luò)安全性能提出了新要求。作為網(wǎng)絡(luò)通訊安全的保障性技術(shù),加密技術(shù)在網(wǎng)絡(luò)通訊安全中起著至關(guān)重要的作用。加密技術(shù)作為常規(guī)的信息保密技術(shù),實(shí)際為在網(wǎng)絡(luò)通訊中運(yùn)用密鑰對(duì)文檔進(jìn)行加密傳送,而信息接收者再對(duì)信息進(jìn)行密鑰解碼讀取信息的技術(shù)。只有正確解密的文檔才能被正常瀏覽,因此,該技術(shù)能夠有效保證信息的安全?;诖?,本文開發(fā)了一套文件自動(dòng)加密系統(tǒng),其原理是利用Windows NDIS級(jí)別防火墻的原理對(duì)文件進(jìn)行保護(hù),采取明文存儲(chǔ)、密文分發(fā)的方式。

        1 NDIS中間層網(wǎng)絡(luò)防火墻技術(shù)

        NDIS是Network Driver Interface Specification的縮寫,意為“網(wǎng)絡(luò)驅(qū)動(dòng)接口規(guī)范”。NDIS橫跨了傳輸層、網(wǎng)絡(luò)層和數(shù)據(jù)鏈路層,其作用是屏蔽了底層物理硬件的區(qū)別。

        NDIS支持三種類型的驅(qū)動(dòng)程序,包括MinIPort驅(qū)動(dòng)程序、中間層驅(qū)動(dòng)程序、Protocol驅(qū)動(dòng)程序。本文采用中間層驅(qū)動(dòng)程序。

        1.1 NDIS的版本

        NDIS版本從支持的操作系統(tǒng)看可以分為NDIS5.x和NDIS6.x。NDIS6.x與NDIS5.x有很大的不同,最重要的是NET_BUFFER替代了NDIS_PACKET。鑒于本系統(tǒng)運(yùn)行的服務(wù)器是Win2008R2,因此,本文中提到的NDIS均指NDIS6.x。

        1.2 NDIS6.0的數(shù)據(jù)結(jié)構(gòu)

        NDIS6.0中很重要的兩個(gè)數(shù)據(jù)結(jié)構(gòu)是NET_BUFFER_LIST和NET_BUFFER。一個(gè)NET_BUFFER_LIST結(jié)構(gòu)指向的是一連串的NET_BUFFER,這些NET_BUFFER中保存的數(shù)據(jù)包內(nèi)容屬于同一個(gè)Stream。通過NET_BUFFER_NEXT_NB()可以獲取下一個(gè)NET_BUFFER。

        1.3 NDIS的相關(guān)函數(shù)

        在NDIS中,截獲下載數(shù)據(jù)包的關(guān)鍵函數(shù)是FilterSend NetBufferLists和FilterSendNetBufferListsComplete。在NDIS驅(qū)動(dòng)安裝成功之后,TCP報(bào)文就會(huì)在FilterSendNetBufferLists函數(shù)中以NBL的形式存在。對(duì)于NBL數(shù)據(jù)的處理,就位于這個(gè)函數(shù)中,而FilterSendNetBufferListsComplete的功能是將發(fā)送的結(jié)構(gòu)和數(shù)據(jù)返還給Filter Driver。

        2 流過濾技術(shù)以及具體實(shí)現(xiàn)算法

        2.1 流過濾技術(shù)和包過濾技術(shù)

        流過濾技術(shù)是在包過濾技術(shù)的基礎(chǔ)上提出的。流過濾處理的基本單元是數(shù)據(jù)包,但并不僅限于數(shù)據(jù)包;包過濾技術(shù)關(guān)注的重點(diǎn)是網(wǎng)絡(luò)層和傳輸層,根據(jù)這幾個(gè)層次在單個(gè)數(shù)據(jù)包中的信息進(jìn)行過濾,而流過濾注重的是應(yīng)用層。本文利用流過濾原理對(duì)數(shù)據(jù)包中的應(yīng)用層信息進(jìn)行加密處理。

        2.2 技術(shù)方案

        本文以HTTP傳輸為例講解流過濾技術(shù)在文件加密中的技術(shù)方案。HTTP走的協(xié)議為TCP報(bào)文,在流過濾方案中截獲的封包是TCP包。處理流程如下:對(duì)截獲的TCP報(bào)文進(jìn)行分類處理→對(duì)1中篩選后的報(bào)文進(jìn)行分析和再次篩選→對(duì)選中的報(bào)文記錄該報(bào)文的源、目的IP和端口→對(duì)此連接的TCP包進(jìn)行滯留,并接管此TCP連接→對(duì)滯留的數(shù)據(jù)包進(jìn)行重組和加密→將加密后的數(shù)據(jù)還原,繼續(xù)轉(zhuǎn)發(fā),并歸還此TCP連接。

        2.2.1 報(bào)文的分類

        由于我們的目的是對(duì)HTTP下載攜帶的文件內(nèi)容進(jìn)行加密處理,所以,我們關(guān)注的重點(diǎn)是帶有應(yīng)用層數(shù)據(jù)的TCP報(bào)文。TCP報(bào)文首先可以分為帶有應(yīng)用層數(shù)據(jù)的和不帶有應(yīng)用層數(shù)據(jù)的。應(yīng)用層無關(guān)報(bào)文主要是SYN、FIN、ACK等報(bào)文,用于TCP連接和可靠性傳輸。這類報(bào)文與我們的應(yīng)用無關(guān),直接轉(zhuǎn)發(fā)即可。

        2.2.2 報(bào)文的分析和篩選

        帶有應(yīng)用層數(shù)據(jù)的TCP報(bào)文,我們可以進(jìn)行定向的篩選,即以應(yīng)用層協(xié)議關(guān)鍵詞進(jìn)行篩選。比如對(duì)于HTTP協(xié)議,應(yīng)用層會(huì)有“HTTP”字樣的關(guān)鍵詞,并對(duì)HTTP分析。HTTP協(xié)議有POST、GET和應(yīng)答。傳輸文件的關(guān)鍵數(shù)據(jù)包一般在2 00O字節(jié)的應(yīng)答中,特征是transfe-Encoding的chunk類型(代表以chunk方式控制文件大?。┮约癴ilename中的擴(kuò)展文件名來確定是否是加密需要的報(bào)文。

        2.2.3 報(bào)文的滯留、重組和加密

        文件加密根據(jù)算法需要加密4 096字節(jié)的數(shù)據(jù),而TCP荷載數(shù)據(jù)的報(bào)文一般長度是1 514字節(jié),所以,需要合并幾個(gè)連續(xù)報(bào)文以得到4 096字節(jié)的內(nèi)容。

        由于采用網(wǎng)絡(luò)傳輸,TCP報(bào)文很有可能是亂序的,所以,需要根據(jù)TCP的序列號(hào)對(duì)TCP報(bào)文進(jìn)行重組。TCP包的下一序列號(hào)=序列號(hào)+數(shù)據(jù)長度。這里的數(shù)據(jù)長度是指?jìng)鬏數(shù)臄?shù)據(jù)大小,不包括ethernet、IP、TCP報(bào)頭的長度。

        為了重組報(bào)文,需要維護(hù)兩個(gè)隊(duì)列,即順序隊(duì)列和亂序隊(duì)列。

        2.2.3.1 順序隊(duì)列

        截獲一個(gè)新的報(bào)文后,判斷順序隊(duì)列是否為空。如果為空,則判斷報(bào)文的序列號(hào)是否等于startseq,是則插入順序隊(duì)列,否則按照升序插入到亂序隊(duì)列;如果順序隊(duì)列不為空,則判斷當(dāng)前序列號(hào)是否等于順序隊(duì)列結(jié)尾的序列號(hào)加上數(shù)據(jù)長度,是則插入順序隊(duì)列結(jié)尾,否則按照升序插入亂序隊(duì)列。

        2.2.3.2 亂序隊(duì)列

        首先判斷亂序隊(duì)列開始的TCP序列號(hào)與順序隊(duì)列結(jié)尾報(bào)文的下一序列號(hào)的大小關(guān)系。如果相同,則將亂序隊(duì)列的開始報(bào)文插入順序隊(duì)列的結(jié)尾;如果前者大于后者,則本輪處理結(jié)束;如果前者小于后者,則直接丟棄該報(bào)文。

        保活包括以下2方面的內(nèi)容:①發(fā)送端。對(duì)于TCP連接,系統(tǒng)將報(bào)文滯留,發(fā)送端得不到報(bào)的回應(yīng)勢(shì)必會(huì)影響連接。因此,我們需要偽裝成接收端向發(fā)送端發(fā)送ack回應(yīng)。Ack數(shù)據(jù)報(bào)文的序列號(hào)等于當(dāng)前TCP的確認(rèn)號(hào),確認(rèn)號(hào)在順序隊(duì)列中為空時(shí),等于startseq;否則,其等于順序隊(duì)列結(jié)尾報(bào)文的下一序列號(hào)。②接收端。從截獲第一個(gè)需要重組的報(bào)文起,需要每隔一段時(shí)間向接收端發(fā)送ack報(bào)文以保證連接。此報(bào)文的序列號(hào)等于startseq,確認(rèn)號(hào)與所有滯留重組的TCP報(bào)文確認(rèn)號(hào)相等。

        2.2.4 報(bào)文的加密

        根據(jù)SMS4加密算法的特性,加密的最小數(shù)據(jù)單位為16字節(jié),因此,結(jié)合實(shí)際應(yīng)用,本系統(tǒng)采用一次性截獲全部4 096字節(jié)的內(nèi)容,然后加密。

        在數(shù)據(jù)報(bào)文滯留排序好之后,定位數(shù)據(jù)位置。為了能夠恢復(fù)原有的數(shù)據(jù)包,需要用指針鏈表對(duì)數(shù)據(jù)位置進(jìn)行記錄,以便將加密后的內(nèi)容拷貝回去。

        指針鏈表元素的數(shù)據(jù)結(jié)構(gòu)主要記錄2點(diǎn),即指針和長度。對(duì)于每一個(gè)被放入順序隊(duì)列中的TCP包,均分配一個(gè)指針鏈表元素,記錄下數(shù)據(jù)所在的起始地址以及數(shù)據(jù)實(shí)際長度,并對(duì)數(shù)據(jù)長度進(jìn)行累加。當(dāng)順序表中的實(shí)際數(shù)據(jù)長度大于等于4 096字節(jié)時(shí),將數(shù)據(jù)拷貝出來,調(diào)用加密接口對(duì)4 096字節(jié)的內(nèi)容加密,然后根據(jù)指針鏈表中的元素將數(shù)據(jù)拷貝回去之后,對(duì)TCP數(shù)據(jù)包重新計(jì)算校驗(yàn)和,最終轉(zhuǎn)發(fā)。

        3 TCP封包的修改

        對(duì)于一個(gè)TCP報(bào)文而言,如果其所負(fù)載的數(shù)據(jù)被修改,就需要重新計(jì)算校驗(yàn)和,否則數(shù)據(jù)包不會(huì)被正常接收。TCP數(shù)據(jù)封包所涉及的校驗(yàn)和分為IP校驗(yàn)和TCP校驗(yàn)和。TCP校驗(yàn)和覆蓋了TCP首部和TCP數(shù)據(jù),而IP首部中的校驗(yàn)和只覆蓋IP的首部,不覆蓋IP數(shù)據(jù)報(bào)中的任何數(shù)據(jù)。

        TCP首部校驗(yàn)和計(jì)算包括3部分,即TCP首部+TCP數(shù)據(jù)+TCP偽首部。

        偽首部是為了增加TCP校驗(yàn)和的檢錯(cuò)能力,比如檢查TCP報(bào)文是否收錯(cuò)了(目的IP地址)、傳輸層協(xié)議是否選對(duì)了(傳輸層協(xié)議號(hào))等。偽首部來自IP首部。

        TCP校驗(yàn)和的大致方法如下:①把偽首部、TCP報(bào)頭、TCP數(shù)據(jù)分為16位的字,如果總長度為奇數(shù)個(gè)字節(jié),則在最后增添一個(gè)位都為0的字節(jié);②把TCP報(bào)頭中的校驗(yàn)和字段置為0;③用反碼相加法累加所有的16位字(進(jìn)位也要累加)。

        以上結(jié)果即作為TCP的校驗(yàn)和。如果TCP包長度改變,還要對(duì)IP報(bào)頭重新計(jì)算校驗(yàn)和。

        4 結(jié)束語

        綜上所述,加密技術(shù)是解決網(wǎng)絡(luò)安全問題的手段之一,在當(dāng)前的網(wǎng)絡(luò)運(yùn)行中應(yīng)用是十分普遍的。本文開發(fā)了一套文件自動(dòng)加密系統(tǒng),該系統(tǒng)根據(jù)防火墻和流過濾的原理,對(duì)從文件服務(wù)器下載的文件進(jìn)行加密保護(hù),主要用到的技術(shù)有NDIS驅(qū)動(dòng)級(jí)防火墻技術(shù)和SMS4加密算法技術(shù),可針對(duì)TCP/IP協(xié)議的特點(diǎn)對(duì)經(jīng)過NDIS驅(qū)動(dòng)的TCP報(bào)文進(jìn)行分類過濾,并根據(jù)HTTP協(xié)議的特點(diǎn)對(duì)文件進(jìn)行還原加密,以起到保護(hù)文件的作用。

        參考文獻(xiàn)

        [1]朱聞亞.數(shù)據(jù)加密技術(shù)在計(jì)算機(jī)網(wǎng)絡(luò)安全中的應(yīng)用價(jià)值研究[J].制造業(yè)自動(dòng)化,2012(04).

        [2]牛景銳.防火墻與加密技術(shù)在網(wǎng)絡(luò)安全中的應(yīng)用[J].硅谷,2013(11).

        [3]馬利,梁紅杰.計(jì)算機(jī)網(wǎng)絡(luò)安全中的防火墻技術(shù)應(yīng)用研究[J].電腦知識(shí)與技術(shù),2014(14).

        〔編輯:張思楠〕

        猜你喜歡
        網(wǎng)絡(luò)通訊防火墻
        無線傳感器網(wǎng)絡(luò)在環(huán)境監(jiān)測(cè)中的應(yīng)用
        全民總動(dòng)員,筑牢防火墻
        水上消防(2020年1期)2020-07-24 09:26:12
        構(gòu)建防控金融風(fēng)險(xiǎn)“防火墻”
        基于紅外控制的智能家居網(wǎng)絡(luò)系統(tǒng)
        關(guān)于網(wǎng)絡(luò)通訊中信息安全的保障研究
        別克君越高速網(wǎng)絡(luò)通訊異常
        基于現(xiàn)代網(wǎng)絡(luò)通訊工具的中醫(yī)診斷學(xué)教學(xué)實(shí)踐與探索
        下一代防火墻要做的十件事
        新漢 HENGETM工業(yè)防火墻
        計(jì)算機(jī)遠(yuǎn)程網(wǎng)絡(luò)通訊技術(shù)
        河南科技(2014年23期)2014-02-27 14:18:44
        欧美在线观看www| 国产乱xxⅹxx国语对白| 无码毛片aaa在线| 久久久精品2019免费观看| 精品一区二区三区a桃蜜| 欧美大胆性生话| 亚洲精品无码久久久久| 亚洲欧洲久久久精品| 手机免费在线观看日韩av| 日本无遮挡真人祼交视频| 国模欢欢炮交啪啪150| 国产精品亚洲A∨天堂不卡| 狼人综合干伊人网在线观看| 成年人观看视频在线播放| 天天鲁在视频在线观看| 亚洲无码一二专区| 91成人自拍视频网站| 久久午夜精品人妻一区二区三区| 女人被狂c躁到高潮视频| 真实国产乱视频国语| 国产精品av网站在线| 男人天堂网2017| 亚洲国产长腿丝袜av天堂| 一区二区久久不射av| 色男色女午夜福利影院| 无码a级毛片免费视频内谢| 97无码人妻福利免费公开在线视频| 精品一区二区三区在线观看l| 久久久人妻一区二区三区蜜桃d| 娜娜麻豆国产电影| 国内精品久久久影院| 中文字幕一区二区va| 国产成人91久久麻豆视频| 国产精品成人国产乱| 午夜福利视频男同女同| 日本一区二区三区高清视 | 精品老熟女一区二区三区在线| 中文字幕色av一区二区三区| 久久亚洲av永久无码精品| 在线视频一区二区三区中文字幕| 国产亚洲自拍日本亚洲|