田茂毅,于 婷
(1. 西華大學(xué),四川 成都 610039;2. 電子科技大學(xué),四川 成都 610041)
互聯(lián)網(wǎng)的快速發(fā)展,導(dǎo)致人們對各種應(yīng)用服務(wù)軟件的依賴越來越嚴(yán)重,隨著多媒體技術(shù)的不斷更新,互聯(lián)網(wǎng)數(shù)據(jù)量非常龐大,為了更好地適應(yīng)大量數(shù)據(jù)信息,就要提升網(wǎng)絡(luò)傳輸速度。雖然這樣能夠帶來極大的便利,但同時也存在著巨大的隱患,因為在網(wǎng)絡(luò)數(shù)據(jù)進(jìn)行互相傳輸?shù)倪^程中,由于一些外界的干擾或者是不法分子的入侵,導(dǎo)致信息數(shù)據(jù)泄露、被竊取、傳播等,會造成企業(yè)、個人甚至是社會的嚴(yán)重?fù)p失,因此需要通過安全的技術(shù)手段,保護(hù)信息數(shù)據(jù)隱私安全。
針對網(wǎng)絡(luò)數(shù)據(jù)傳輸隱私風(fēng)險,相關(guān)學(xué)者提出了一些解決方法。文獻(xiàn)[1]分布式壓縮感知以及散裂的函數(shù)感知數(shù)據(jù)觀測隱私保護(hù)方法,同時兼顧可數(shù)據(jù)機(jī)密性以及完整性的保護(hù),可以極大程度上減低通信開銷,進(jìn)行實際應(yīng)用內(nèi),存在很強(qiáng)的擴(kuò)展性以及適應(yīng)性;文獻(xiàn)[2]提出基于Kautz圖分區(qū)巡邏的方法,通過分布式哈希表內(nèi)建立的樹形拓?fù)錁?gòu)造,把數(shù)據(jù)包傳輸至各個分區(qū)交叉點,最終利用路由到接收點投遞數(shù)據(jù),ZPA的方法提升網(wǎng)絡(luò)隱私的安全性以及魯棒性,結(jié)果證明,和傳統(tǒng)方法對比,ZPA能夠縮小延時52%,降低能耗大約93%,隱私保密效果良好。
上述方法雖然能夠很好保護(hù)網(wǎng)絡(luò)數(shù)據(jù),不過一旦數(shù)據(jù)量增大,那么數(shù)據(jù)隱私加密效果就會降低,因此本文提出基于RSA加密方法及Paillier的網(wǎng)絡(luò)數(shù)據(jù)傳輸隱私保護(hù)方法,達(dá)到更好的加密效果,且同時可以減少計算成本,保障用戶使用網(wǎng)絡(luò)傳輸時的安全,通過仿真證明,該方法的隱匿率比較小,安全系數(shù)較高,魯棒性良好。
網(wǎng)絡(luò)加密數(shù)據(jù)傳輸能夠分成:確認(rèn)數(shù)據(jù)包接收端、加密、數(shù)據(jù)傳輸、解密等流程,在網(wǎng)絡(luò)加密階段,經(jīng)過加密節(jié)點對應(yīng)緩存處理模塊內(nèi)的數(shù)據(jù)包,從而生成新的加密數(shù)據(jù)包,為其它節(jié)點提供服務(wù)。數(shù)據(jù)傳輸階段,節(jié)點本身確認(rèn)向著哪些鄰居的節(jié)點,發(fā)送所需求的數(shù)據(jù)包傳輸請求,或者是把新加密數(shù)據(jù)包傳輸至哪些鄰居節(jié)點,被選中節(jié)點要對接收數(shù)據(jù)包緩存且執(zhí)行解密操作。依據(jù)網(wǎng)絡(luò)數(shù)據(jù)加密的傳輸過程敘述,能夠獲得數(shù)據(jù)傳輸模型,流程如下[3]:
網(wǎng)絡(luò)數(shù)據(jù)傳輸過程內(nèi)的瓶頸,主要是因節(jié)點傳輸帶寬容量影響的,能夠利用丟包率L對該瓶頸影響數(shù)據(jù)傳輸進(jìn)行衡量,為了有效避免龐大數(shù)據(jù)包堵在同節(jié)點位置,造成擁擠影響其它節(jié)點輸出的寬帶,要設(shè)置網(wǎng)絡(luò)節(jié)點傳輸?shù)碾A段請求速率小于此節(jié)點傳輸?shù)膸捜萘?,具體公式為
(1)
式中:B代表網(wǎng)絡(luò)節(jié)點數(shù)據(jù)包的緩存長度,CR代表應(yīng)用數(shù)據(jù)傳輸節(jié)點的輸出帶寬容量,R代表網(wǎng)絡(luò)數(shù)據(jù)的傳輸速率,C代表節(jié)點輸入帶寬容量和數(shù)據(jù)傳輸碼率間比值,Q(τ,n)代表節(jié)點τ在第n個時間段請求數(shù)據(jù)包的傳輸個數(shù)[4]。
在網(wǎng)絡(luò)內(nèi)部的節(jié)點,接收到由傳輸原節(jié)點所傳輸?shù)臄?shù)據(jù)包后,緩存這些數(shù)據(jù)包,當(dāng)接收數(shù)據(jù)包的個數(shù)超出2個時,就能夠?qū)?shù)據(jù)實現(xiàn)加密操作,當(dāng)成剩余節(jié)點的服務(wù)。設(shè)置H(τ,n)代表第n個時間段節(jié)點τ緩存數(shù)據(jù)包個數(shù),那么H(τ,n)值應(yīng)該是第n個時間段之前接收到的數(shù)據(jù)包總個數(shù),具體公式為
(2)
式中:Q(r,n)代表節(jié)點r在第n個時間段請求數(shù)據(jù)包傳輸?shù)膫€數(shù),L代表節(jié)點的傳輸速率[5]。
在對節(jié)點數(shù)據(jù)包接收解密操作之前,數(shù)據(jù)必須是已經(jīng)收集齊的,如果接收的數(shù)據(jù)包并沒有收集齊,那么這組數(shù)據(jù)包就會被跳過,而已經(jīng)接收到的數(shù)據(jù)包會被丟棄,導(dǎo)致剩下的節(jié)點傳輸帶寬受到影響。能夠引入狀態(tài)標(biāo)記的函數(shù)J(n),進(jìn)行判斷到達(dá)第n個時間段的數(shù)據(jù)包是否收集齊全,f代表數(shù)據(jù)包收集齊全組別的個數(shù),具體公式為
(3)
(4)
網(wǎng)絡(luò)傳輸數(shù)據(jù)的解密階段是利用節(jié)點解密模塊所實現(xiàn)的。設(shè)置節(jié)點τ,在接收到某一組數(shù)據(jù)包以后,即能夠獲得數(shù)據(jù)矩陣Z以及系數(shù)的矩陣A,具體表達(dá)式為
Z=AX
(5)
其中
(6)
把式(5)兩邊乘上矩陣A逆矩陣,就能夠解密出起始節(jié)點所接收的網(wǎng)絡(luò)數(shù)據(jù)包,具體公式為
X=A-1Z
(7)
依據(jù)以上網(wǎng)絡(luò)數(shù)據(jù)的傳輸過程敘述,能夠獲得網(wǎng)絡(luò)數(shù)據(jù)包的傳輸過程模型,具體公式為
(8)
上述網(wǎng)絡(luò)傳輸模型有一個特點,即是在系統(tǒng)需要應(yīng)用此段數(shù)據(jù)的時間段,如果沒有收集齊全,那么會將已經(jīng)接收到的數(shù)據(jù)包丟棄,浪費該段數(shù)據(jù)包節(jié)點的傳輸帶寬。
RSA數(shù)據(jù)信息加密方式的公開密鑰密碼體制是一種通過不同加密密鑰以及解密密鑰所構(gòu)成的,利用已知的加密密鑰,能夠推導(dǎo)出解密的密鑰,是處于計算方面不可行的密碼體制,而在公開密鑰密碼體制內(nèi),加密的密鑰PK是公開的信息,解密的密鑰SK則需要進(jìn)行保密[7]。其中,加密算法與解密算法同樣是公開的,雖然解密的密鑰是利用公開密鑰所確定,不過卻不能依據(jù)加密密鑰對解密的密鑰進(jìn)行計算,正因為如此,RSA擁有一對RSA密鑰,其一為保密密鑰,由使用者個人進(jìn)行保存;另外一個為公開密鑰,能夠?qū)ν忾_放,甚至可以在網(wǎng)絡(luò)服務(wù)器內(nèi)完成注冊。為了提升保密的強(qiáng)度,密鑰最少是500位長,通常推薦使用1024位長的,保密的強(qiáng)度,是隨著密鑰的長度增長從而增長的,不過密鑰越長,說明解密所消耗的時間也就越長,這就導(dǎo)致了加密的計算量較大,為了減少計算量,在傳遞信息時,通常采用加密方法和公開的密鑰加密方式相結(jié)合,利用RSA密鑰加密對話以及信息摘要,在對方接收到信息之后,采用不同的密鑰進(jìn)行解密,且核對信息摘要,完成RSA數(shù)據(jù)信息加密。Paillier的數(shù)據(jù)信息加密方法,因其明文在指數(shù)位置上,擁有加法同態(tài)性質(zhì)以及混合乘法同態(tài)性質(zhì),能夠在恢復(fù)明文的同時進(jìn)行解密,以此來獲得隨機(jī)數(shù),它與RSA密碼體制相結(jié)合,既擁有概率加密的優(yōu)點,還具有加密性好、速率快等優(yōu)勢,可應(yīng)用于隱秘保護(hù)、多方安全計算、云服務(wù)以及密文數(shù)據(jù)庫等方面[8]。
輸入(n″,n″e′,n″d),其中n″e′>n″/2,輸出一個有效公鑰(e′,N),而相應(yīng)密匙即為(d′p″,d″p″,p″,q″),其中|N|=n″,|e′|=n″e′,并且|d′p″|=|d′q″|=n″d′,各個公鑰都需要一個準(zhǔn)確密匙密碼才能夠觀看隱私的信息,以此,盡可能保證隱私信息安全[9]。
如果RSA公鑰為(e′,N),則私鑰為(d′p″,d′p″,p″,q″),而網(wǎng)絡(luò)的明文數(shù)據(jù)為m′,密文的信息為c,對于網(wǎng)絡(luò)數(shù)據(jù)加密的過程即為c=m′e′(modN),解密的過程為m′=cd(modN),將明文m′完成拆分操作以后[10],通過加密能夠獲得表達(dá)式為
=(m′1·m′2)modN=E′(m′1·m′2)
(9)
≡gm′1+m′2(x″1x″2)NmodN2
≡E′(m′1+m′2)
(10)
通過式(9)以及式(10)能夠看出公鑰密碼體制所滿足乘法以及加法同態(tài)的特性。
具體公、私鑰的加減乘除操作相應(yīng)計算向量公式為
(E′(a1),E′(a2),…E′(an″))+,-,×,÷
(11)
式中:|-|代表加減乘除操作相應(yīng)計算向量表示的計算值,f+,-代表對數(shù)據(jù)加減混合計算,f×,÷代表對數(shù)據(jù)乘除混合計算,f′+,-代表對網(wǎng)絡(luò)數(shù)據(jù)密文計算,經(jīng)過計算多個密文的乘積能夠完成對明文的加法,具體加法的計算方式為
f′+(E′(m′1),E′(m′2))=E′(m′1)×E′(m′2)
=E′(m′1+m′2)
(12)
經(jīng)過計算多個密文的熵,能夠完成對于網(wǎng)絡(luò)數(shù)據(jù)明文減法,具體減法計算方式為
(13)
式中:RSA除法的運(yùn)算主要應(yīng)用于求逆乘,f′×,÷代表對于密文計算,完成網(wǎng)絡(luò)信息的明文乘或者除[11],即m′1>m′2。
RSA經(jīng)過計算多個密文乘積完成對于網(wǎng)絡(luò)信息的明文乘法計算,具體公式為
f′×(E′(m′2),E′(m′2))=E′(m′1)×E′(m′2)
=E′(m′1×m′2)
(14)
經(jīng)過計算多個密文熵,可以對網(wǎng)絡(luò)信息的明文除法計算,具體計算方式為
(15)
而Paillier除法計算,主要用于求逆乘,即為m′2|m′1。
在網(wǎng)絡(luò)加解密機(jī)接收到E′P-PK(|Z1|)以后,通過私鑰完成解密,利用加解密機(jī)能夠完成對于網(wǎng)絡(luò)數(shù)據(jù)傳輸信息加密,從而致使用戶隱私數(shù)據(jù)非常安全,可以更好實現(xiàn)對于數(shù)據(jù)傳輸?shù)碾[私保護(hù),具體計算向量公式為
|Z1|=DP-SK(E′P-SK(|Z1|))
(16)
式中:向量Z1的值是|Z1|。
仿真操作系統(tǒng)采用虛擬機(jī)下的Win-dows10系統(tǒng),開發(fā)語音所使用的是VisualC++6.0以及MATLAB8.5,數(shù)據(jù)采用BP公司的數(shù)據(jù)集,數(shù)據(jù)共包括200個用戶、80萬條數(shù)據(jù),將其放在5000個左右文件夾內(nèi),除去其中重復(fù)的數(shù)據(jù),把不同發(fā)件人當(dāng)成數(shù)據(jù)環(huán)境內(nèi)網(wǎng)絡(luò)節(jié)點,郵件往來作為節(jié)點間邊,和客戶間通信的次數(shù)將其作為權(quán)重,經(jīng)過統(tǒng)計,網(wǎng)絡(luò)內(nèi)一種有84000節(jié)點,340000多少條邊,而仿真從計算方法的執(zhí)行時間,對不同種類的攻擊類型和計算方法適應(yīng)效果等方面分析本文方法。
網(wǎng)絡(luò)節(jié)點數(shù)據(jù)傳輸?shù)沫h(huán)境下,對節(jié)點個數(shù)進(jìn)行更改時,3種更新(刪除節(jié)點、修改節(jié)點以及添加節(jié)點)執(zhí)行時間的差異對比方式。具體執(zhí)行算法時間,如圖1所示。
圖1 網(wǎng)絡(luò)節(jié)點的更改對于計算方法執(zhí)行時間影響
通過觀察圖1能夠看出,對網(wǎng)絡(luò)節(jié)點刪除時,所執(zhí)行的時間變化幅度最大,在網(wǎng)絡(luò)節(jié)點進(jìn)行添加時,所執(zhí)行的變行時間都隨著網(wǎng)絡(luò)節(jié)點更改個數(shù)增加從而增加。
網(wǎng)絡(luò)數(shù)據(jù)傳輸中的數(shù)據(jù)隱匿率就是隱匿網(wǎng)絡(luò)節(jié)點數(shù),節(jié)點邊數(shù)就是網(wǎng)絡(luò)內(nèi)總節(jié)點的數(shù)目與邊數(shù)的比。隱私的參數(shù)越大,那么網(wǎng)絡(luò)隱私數(shù)據(jù)隱匿率就越小,數(shù)據(jù)的泄露程度也就越小。
不同的攻擊方式,具體如圖2所示。
圖2 處于不同攻擊下對于網(wǎng)絡(luò)傳輸隱私的隱匿率影響
為了進(jìn)一步證明本文方法的網(wǎng)絡(luò)傳輸隱私保密效果,將本文方法與傳統(tǒng)方法(文獻(xiàn)[1]、[2])進(jìn)行對比,具體對比結(jié)果,如圖3所示。
圖3 不同計算方法的隱匿率迭代次數(shù)變化對比趨勢
通過觀察圖3能夠看出,在經(jīng)過多次迭代之后,文獻(xiàn)[1]、[2]的算法網(wǎng)絡(luò)數(shù)據(jù)傳輸隱匿率,是呈現(xiàn)幾何的倍數(shù)增長,經(jīng)過5次迭代之后,無法滿足網(wǎng)絡(luò)數(shù)據(jù)傳輸對于隱匿率的要求。不過本文方法對于網(wǎng)絡(luò)傳輸隱匿率有所上升,不過效果并不顯著,并且網(wǎng)絡(luò)數(shù)據(jù)的隱匿率,卻始終在要求的范圍中,以此說明本文方法在經(jīng)過多次迭代更新的情況下,對于網(wǎng)絡(luò)信息數(shù)據(jù)傳輸隱私保護(hù)效果強(qiáng),且適應(yīng)性良好,魯棒性較好。
本文提出的基于RSA及Paillier的網(wǎng)絡(luò)數(shù)據(jù)傳輸隱私保護(hù)方法,擁有較強(qiáng)的隱匿性,可以很好地保護(hù)網(wǎng)絡(luò)數(shù)據(jù)傳輸安全,魯棒性良好,不過由于互聯(lián)網(wǎng)的發(fā)展日新月異,數(shù)據(jù)信息的傳輸方式,也時刻在變化,會讓不法分子有機(jī)可乘,同時不法分子的入侵方式也越來越多,最終很有可能導(dǎo)致信息泄露,所以,未來本文進(jìn)一步加深研究數(shù)據(jù)傳輸?shù)谋C芊绞?,爭取可以?yīng)對更多不法分子的入侵,保證使用者的數(shù)據(jù)信息安全,提升網(wǎng)絡(luò)安全的環(huán)境。