米 捷,張凌超,高彥偉,張 昕,閻永華,李政偉
(1.河南工程學院 計算機學院,河南 鄭州 451191;2.機械工業(yè)第六設計研究院有限公司,河南 鄭州 450007;3.鄭州市中原區(qū)教育局,河南 鄭州 450000)
網(wǎng)絡密文數(shù)據(jù)是指網(wǎng)絡中敏感的、隱私的明文數(shù)據(jù)按照一定加密算法變換成的難以識別的數(shù)據(jù)。隨著計算機技術(shù)的快速發(fā)展,即使網(wǎng)絡中的數(shù)據(jù)均采用加密方式實施保護,但是由于網(wǎng)絡的形成是依據(jù)各節(jié)點和鏈路完成的[1],在該過程中,節(jié)點和鏈路之間安全水平存在差異,難以完全避免網(wǎng)絡密文數(shù)據(jù)泄露[2]。密文數(shù)據(jù)的泄露會造成用戶信息的大量泄露,對個人和單位都會造成極大影響。因此,如何避免網(wǎng)絡中的密文數(shù)據(jù)發(fā)生泄露,成為網(wǎng)絡安全防護的重要問題。
針對網(wǎng)絡密文數(shù)據(jù)泄露問題,相關(guān)學者設計了一系列防泄露方法。包空軍等[1]提出了一種基于同態(tài)加密算法的數(shù)據(jù)防泄露方法,根據(jù)混沌序列軌跡點,將明文數(shù)據(jù)序列與密鑰序列視作數(shù)據(jù)流的字節(jié),通過設定數(shù)值使序列符合白噪聲規(guī)律,從而使密文數(shù)據(jù)能夠均勻分布,完成對數(shù)據(jù)的防泄露處理。李西明等[3]提出了一種基于生成對抗網(wǎng)絡的抗泄露加密方法,該方法在16位密鑰對稱加密方案的支持下,通過修改激活函數(shù)建立了比特密鑰泄露環(huán)境下的加密算法模型,然后添加解密方和敵手模型,再通過規(guī)格化處理提升抗泄露加密通信能力。上述方法在進行防泄露處理過程中,均以數(shù)據(jù)庫加密方式完成密文數(shù)據(jù)的保護,但是針對攻擊者對數(shù)據(jù)實行惡意攻擊導致數(shù)據(jù)泄露的處理,依然存在一定不足。
私有云是一種單獨構(gòu)建的平臺[4],該平臺僅為構(gòu)建企業(yè)提供相應的云計算服務,企業(yè)可在構(gòu)建的私有云平臺上部署所需的服務應用,同時具備對該平臺中資源、數(shù)據(jù)等實行控制的能力,故可在極大程度上保證數(shù)據(jù)安全[5],并提高服務質(zhì)量?;诖?,本研究基于私有云安全防護設計了一種新的網(wǎng)絡密文數(shù)據(jù)防泄露方法。
首先,本研究利用私有云的優(yōu)勢,以網(wǎng)絡密文數(shù)據(jù)的安全防護為目標,結(jié)合網(wǎng)絡對于安全等級的需求和私有云平臺的實際業(yè)務情況,采用互補的安全防護理念,設計了私有云安全防護的整體框架(圖1)。
圖1 私有云安全防護框架Fig.1 Private cloud safety protection of the ciphertext data leakage protection framework
圖1中的框架共包含4個部分,分別為網(wǎng)絡安全設計、虛擬機安全設計、網(wǎng)絡業(yè)務訪問安全設計及私有云管理中心。這4個部分的結(jié)合實現(xiàn)了對網(wǎng)絡內(nèi)外的安全防護。
網(wǎng)絡安全設計:該設計主要針對網(wǎng)絡內(nèi)部安全進行控制,包含兩個方面,分別是節(jié)點和鏈路的安全防護。在設計過程中,對經(jīng)由鏈路的數(shù)據(jù)進行分析,確定該數(shù)據(jù)主要有兩種,即私有云平臺流入和流出的數(shù)據(jù),以及平臺內(nèi)各虛擬服務節(jié)點之間的數(shù)據(jù)。為實現(xiàn)網(wǎng)絡密文數(shù)據(jù)的安全防泄露,部署了核心安全網(wǎng)關(guān)和虛擬防火墻,前者部署在核心交換機內(nèi),后者部署在鏈路虛擬安全資源池中,實現(xiàn)了平臺和平臺內(nèi)虛擬服務節(jié)點之間網(wǎng)絡密文數(shù)據(jù)的安全控制[6]。
虛擬機安全設計:該設計的主要目的是實現(xiàn)對虛擬服務器內(nèi)存的監(jiān)控,主要是對物理和虛擬服務節(jié)點進行安全防護病毒虛擬機和代理插件的部署,前者實現(xiàn)密文數(shù)據(jù)的殺毒處理[7],后者則利用分散加載方式,實現(xiàn)密文數(shù)據(jù)的資源靈活調(diào)配,提升CPU的運行效率。
網(wǎng)絡業(yè)務訪問安全設計:該設計是框架中最核心的部分,主要目的是對向私有云發(fā)起訪問請求的外網(wǎng)絡中全部用戶的訪問和服務進行控制,其部署網(wǎng)絡密文數(shù)據(jù)可追溯防泄露安全訪問控制方案[8],實現(xiàn)服務端和用戶端的安全防護。
私有云管理中心:該部分的主要作用是對整個私有云的部署進行管理,依據(jù)實際情況對相應服務和功能進行調(diào)整,同時對加入私有云平臺的物理和虛擬兩種節(jié)點進行授權(quán)和權(quán)限設定及控制。
該框架可分析私有云平臺流入和流出的數(shù)據(jù),以及平臺內(nèi)各個虛擬服務節(jié)點之間的數(shù)據(jù),從而控制網(wǎng)絡內(nèi)部密文數(shù)據(jù)安全傳輸,利用虛擬機對密文數(shù)據(jù)進行殺毒處理,并靈活調(diào)配密文數(shù)據(jù)。
基于上述安全防護框架,采用差分隱私保護和防泄露追蹤防護兩種方法,保護網(wǎng)絡密文數(shù)據(jù)的隱私性、用戶權(quán)限認證匹配的正確性及攻擊源的追蹤和標記。
差分隱私保護方法主要采用轉(zhuǎn)換的方式對數(shù)據(jù)進行處理,并在輸出的密文數(shù)據(jù)中添加噪聲,以此來保證即使數(shù)據(jù)泄露,密文數(shù)據(jù)集中的單個記錄被篡改,也無法完全識別數(shù)據(jù)中的全部信息[9-10]。其詳細步驟如下:
設A表示隨機算法,且A∶D→R,D和D′為相鄰密文數(shù)據(jù)集;O∈R表示任意輸出結(jié)果,位于D和D′上且對應A,輸出結(jié)果O如果滿足公式(1),此時差分隱私(ε,δ)的實現(xiàn)則用A表示。公式為
Pr[A(D)=O]≤eε×Pr[A(D′)=O]+δ,
(1)
式中:ε表示隱私預算,隱私保護程度隨著該值的增加而降低;δ表示概率,用于描述差分隱私的不合格程度。
f表示任意函數(shù),且f∶D→Rd,其敏感度計算公式為
(2)
式中:‖·‖p表示Lp的范數(shù)。可通過Δf的計算結(jié)果衡量單條數(shù)據(jù)記錄對于輸出的影響程度,決定隱私保護時噪聲的添加量。
如果A的輸出結(jié)果為數(shù)值,其敏感度采用L2描述,那么將高斯噪聲添加至f中,以此可完成網(wǎng)絡密文數(shù)據(jù)的差分隱私,其公式為
A(D)=f(D)+N(0,(Δfσ)2I),
(3)
(4)
如果A符合公式(4),斷定其滿足ε-差分隱私。
通過上述步驟,即可完成網(wǎng)絡密文數(shù)據(jù)的隱私保護,將保護后的網(wǎng)絡密文數(shù)據(jù)存儲至私有云虛擬數(shù)據(jù)庫中。
2.2 網(wǎng)絡密文數(shù)據(jù)防泄露追蹤防護
完成網(wǎng)絡密文數(shù)據(jù)的隱私加密保護及存儲后,用戶在對網(wǎng)絡密文數(shù)據(jù)進行訪問時,私有云安全防護方法的網(wǎng)絡業(yè)務訪問安全設計部分對該訪問進行授權(quán)[11],依據(jù)用戶的匹配結(jié)果,開放其對應的訪問權(quán)限。
用戶的屬性授權(quán)用L′表示,其中間參數(shù)用DKu表示,用戶將兩種參數(shù)發(fā)送給私有云,私有云對其授權(quán)屬性進行判斷,如果其授權(quán)屬性滿足私有云定義的策略P,則此時私有云將中間解密參數(shù)Fu、ψ*回傳給用戶,詳情如下:
用戶在對云端網(wǎng)絡密文數(shù)據(jù)進行訪問時,需要向私有云管理中心發(fā)送自身的屬性集合L′和中間參數(shù)DKu,私有云管理中心則將兩者與P對比,判斷用戶是否具有訪問權(quán)限[12],同時計算中間參數(shù)DL′:
(5)
式中:Ai表示數(shù)據(jù)屬性;g表示生成元;Ti表示訪問結(jié)構(gòu);ti表示Ai中的隨機參數(shù)。
(6)
式中:ξx表示x的秘密值;y表示隨機參數(shù);qx(0)表示多項式,對應x;ω表示關(guān)聯(lián)元。
如果x不是訪問樹的葉節(jié)點,z表示x的全部子節(jié)點,采用DepNode(Hp,D,x)算法對z實施運算后得出fx;Sx表示子節(jié)點集合,其值用kx表示,繼續(xù)運算DepNode(Hp,D,x)算法;反之,fz=⊥。
(7)
通過上述步驟得出,用戶屬性集關(guān)聯(lián)的私鑰在滿足訪問樹的前提下,Tx(r)=1,此時,
Fu=DepNode(Hp,D,r)=e(g,ω)εy。
(8)
如果用戶屬性集合滿足訪問權(quán)限,私有云管理中心則依據(jù)用戶屬性計算得出用戶ID所對應的參數(shù)
(9)
完成公式(8)、(9)的計算后,私有云管理中心將計算得出的ψ*和Fu回傳至用戶。用戶則依據(jù)回傳的參數(shù)完成網(wǎng)絡密文數(shù)據(jù)解密,實現(xiàn)訪問。
如果用戶屬性集合不滿足訪問權(quán)限,表示該用戶為非法用戶,私有云在對網(wǎng)絡密文數(shù)據(jù)進行防泄露安全防護時,會對每個訪問用戶回傳相應參數(shù),且均會記錄用戶的ID及ID對應的參數(shù),并將結(jié)果存儲在W列表中[13]。用戶在進行密文數(shù)據(jù)訪問時,私有云管理中心進行策略匹配的同時也將用戶的信息發(fā)送給密文數(shù)據(jù)的授權(quán)或者管理者,對用戶進行二次權(quán)限認證[14]。如果無法通過認證,則表示該用戶為非法用戶,不對其開放權(quán)限,并對其進行追蹤,確定其攻擊源并將其標記為禁止訪問用戶,以此避免網(wǎng)絡密文數(shù)據(jù)發(fā)生泄露。因此,該過程可分為兩部分,一是用戶身份核查,二是對非法用戶追蹤和記錄。
用戶身份核查時依據(jù)用戶的屬性集合L、DKu和公鑰PK對DKu實行核查,判斷其是否為有效數(shù)據(jù),計算公式為
(10)
(11)
完成用戶身份核查后,采用攻擊源追蹤方法確定非法用戶的攻擊源,其中攻擊源信息的獲取可依據(jù)解方程的方式完成。由于非法用戶在對網(wǎng)絡密文數(shù)據(jù)進行惡意攻擊時存在增量式特點,故在對其進行追蹤時,先解碼其部分攻擊源,將解碼得出的攻擊源信息與部分PK信息結(jié)合,即可獲取新的攻擊源空間信息,用ψ(V)={X(v1),X(v2),…,X(vμ(s))}表示,以此完成攻擊源追蹤,并將其空間域設置為禁止訪問區(qū)域。
將本方法用于某社交網(wǎng)絡進行相關(guān)測試,統(tǒng)計相關(guān)測試結(jié)果。隨機選取該社交網(wǎng)絡中的200個社交賬戶為200個不同的節(jié)點,將其中10個節(jié)點定義為攻擊節(jié)點,獲取每個節(jié)點的100條數(shù)據(jù)(共2 000條數(shù)據(jù))作為測試的網(wǎng)絡密文數(shù)據(jù)集合。測試使用的服務器操作系統(tǒng)為Linux Ubuntu,四核3.4 GHz處理器,內(nèi)存為8 GB。
為測試本方法的差分隱私加密效果,在網(wǎng)絡密文數(shù)據(jù)不同屬性數(shù)量下,隨機抽取10個節(jié)點的數(shù)據(jù),不包含攻擊節(jié)點,采用本方法對其進行差分隱私保護,結(jié)果如圖2所示。
依據(jù)圖2可知:在不同的屬性數(shù)量下,10個數(shù)據(jù)節(jié)點的差分隱私保護結(jié)果均在1.0以下,該值較小。因此,認為本方法具有較好的差分隱私保護效果,能實現(xiàn)網(wǎng)絡密文數(shù)據(jù)的保護。
本方法在對網(wǎng)絡密文數(shù)據(jù)進行保護的過程中需要對數(shù)據(jù)實行轉(zhuǎn)換。因此,為進一步衡量本方法的保護效果,采用轉(zhuǎn)換后的數(shù)據(jù)分布程度s和離散度c作為評價標準,判斷轉(zhuǎn)換后的數(shù)據(jù)質(zhì)量:
s(G)=exp(Ex-G(x))KL[Pr(y|x)‖Pr(y)],
(12)
(13)
式中:G表示生成器,其樣本為x;Pr(y|x)表示樣本x歸屬樣本y的條件概率類別;Pr(y)表示所有樣本的邊緣分布,如果轉(zhuǎn)換后的數(shù)據(jù)具備良好的多樣性,則會呈現(xiàn)均勻分布,故s(G)的值越大,表示轉(zhuǎn)換后的數(shù)據(jù)質(zhì)量越佳;Bp表示伯努利分布。數(shù)據(jù)分布程度和離散度兩個指標的取值均為[0,100]。
依據(jù)公式(12)、(13),隨機抽取12個節(jié)點的網(wǎng)絡密文數(shù)據(jù),不包含攻擊節(jié)點,采用本方法在不同數(shù)據(jù)轉(zhuǎn)換數(shù)量下獲取兩個指標的值(圖3)。
依據(jù)圖3可知:雖然數(shù)據(jù)轉(zhuǎn)換數(shù)量在逐漸增加,但離散度和數(shù)據(jù)分布程度兩個指標均在95.5%以上,即使數(shù)據(jù)轉(zhuǎn)換數(shù)量達到1 200萬個,兩個指標依然在96%左右。因此,本方法能夠在保證數(shù)據(jù)質(zhì)量的前提下,完成數(shù)據(jù)的轉(zhuǎn)換加密。
圖2 差分隱私保護結(jié)果Fig.2 Differential privacy protection results
圖3 數(shù)據(jù)轉(zhuǎn)換效果測試結(jié)果Fig.3 Data transformation effect test results
本方法在對用戶訪問進行控制和匹配的過程中,需要確定公鑰的最佳長度,以保證最佳的用戶權(quán)限認證效果。因此,測試本方法在不同公鑰長度下滿足私有云定義的策略匹配程度,以衡量本方法的訪問控制效果,結(jié)果如圖4所示。由圖4可知:隨著公鑰長度的逐漸增加,本方法在不同的節(jié)點數(shù)量下,策略匹配度發(fā)生明顯的差異性變化,且波動較大。當公鑰長度為40字節(jié)時,策略匹配程度最低,在92%以下;當公鑰長度超過40字節(jié)時,策略匹配程度發(fā)生波動性上升,其中當公鑰長度為80字節(jié)時,策略匹配程度最佳,達到99%左右。因此,確定公鑰的最佳長度為80字節(jié),且可用于后續(xù)實驗。
確定公鑰最佳長度后,為進一步測試本方法的權(quán)限匹配控制效果,在授權(quán)了不同數(shù)量屬性時,采用本方法對所有節(jié)點的訪問控制進行權(quán)限認證匹配,獲取其匹配結(jié)果(圖5)。由圖5可知:在不同的節(jié)點數(shù)下,隨著授權(quán)屬性數(shù)量的逐漸增加,未通過權(quán)限匹配的節(jié)點數(shù)均為10。這表示在2 000個節(jié)點中存在10個權(quán)限外的節(jié)點,即攻擊節(jié)點,該結(jié)果與實際的攻擊節(jié)點數(shù)一致。因此,采用本方法能夠精準完成節(jié)點權(quán)限安全匹配,能夠保證網(wǎng)絡密文數(shù)據(jù)的安全,避免發(fā)生攻擊泄露。
圖4 用戶權(quán)限認證效果測試結(jié)果Fig.4 User privileges authentication effect test results
圖5 權(quán)限控制匹配結(jié)果Fig.5 Access control matching results
3.2 對比與分析
為更直觀地突出本方法的應用效果,將文獻[3]和文獻[4]的方法與本方法進行對比檢驗。獲取3種方法在不同的攻擊路徑跳點數(shù)(攻擊節(jié)點與目標節(jié)點之間的網(wǎng)絡節(jié)點間隔)下,對攻擊源的追蹤和空間域的標記結(jié)果(表1)。由于篇幅有限,僅隨機呈現(xiàn)了3個節(jié)點的追蹤結(jié)果。
表1 攻擊源追蹤標記結(jié)果Tab.1 Attacks on the source tags
由表1可知:在不同的攻擊節(jié)點下,隨著攻擊源攻擊路徑跳點數(shù)的逐漸增加,本方法能夠完成攻擊源的全部追蹤,并且能夠獲取所有攻擊源的全部空間域ID結(jié)果,但兩種傳統(tǒng)方法均出現(xiàn)了未能追蹤攻擊源的情況。因此,本方法能夠更佳地保證網(wǎng)絡密文數(shù)據(jù)的安全,進一步提升了網(wǎng)絡密文的防泄露效果。
本研究提出了基于私有云安全防護的網(wǎng)絡密文數(shù)據(jù)防泄露方法,并對該方法的實際應用效果進行了測試。結(jié)果顯示:該方法能夠完成網(wǎng)絡密文數(shù)據(jù)的差分隱私保護,并且不會影響網(wǎng)絡密文數(shù)據(jù)的原始質(zhì)量,同時能夠可靠地對訪問用戶的權(quán)限進行安全匹配和認證,能夠精準判斷節(jié)點中的攻擊節(jié)點并完成該節(jié)點ID的標記,最大限度地避免了網(wǎng)絡密文數(shù)據(jù)發(fā)生泄露。