王學周
(萊蕪職業技術學院信息工程系,山東 濟南271100)
隨著互聯網技術的發展,越來越多的用戶應用互聯網,用戶在互聯網中傳輸各種信息.由于網絡中數據越來越多,通常以明文形式保存在數據庫中,同時多跳網絡中敏感數據較多,數據的安全性越來越受到重視.若敏感數據遭到外泄,會產生麻煩,并且利益受損.敏感數據加密是一種保護數據安全的重要形式,即使盜取了數據,但是沒有密碼,也解不開數據,無法獲取敏感數據的詳細信息,因此對敏感數據進行加密,保護數據信息的完整性[1].
全同態加密方法是一類具有代數同態屬性的加密方法,允許密文與密文之間進行任意計算,其計算結果與明文對應的加密結果相同.這種加密方法在數據的安全計算、云計算等領域得到了廣泛的應用.文獻[2]提出多跳多策略屬性基全同態加密方案,提出了一個基于誤差學習(LWE)問題的高效的多跳多策略屬性基全同態加密方案,首先對單策略屬性基全同態加密方案適當變形,其次將方案對應到多用戶場景,最后,利用多跳多密鑰全同態轉化機制來實現新的參與方密文加入后的同態運算.但是該方法對多通道敏感數據進行加密后,數據泄露量仍然較多,導致加密效果差.文獻[3]提出
面向云計算的同態加密改進方法,該方案借鑒了ElGamal 算法和RSA 算法,利用中國剩余定理實現,通過實驗測試,驗證了該方案的正確性和同態性.但是該方法在多通道敏感數據加密上的計算量高、密鑰尺寸大,導致加密時間長.
針對上述方法存在的問題,提出多跳網絡中多通道敏感數據全同態加密方法.多跳網絡為一個可以不斷擴展的網絡架構,能夠實現無線設備之間的傳輸,其核心是能夠讓網絡中的每個節點都接收與發送網絡信號.最后,為了保證所設計方法的有效性,進行仿真實驗,結果表明,此次設計的多跳網絡中多通道敏感數據全同態加密方法的加密數據泄露量比傳統方法的泄漏量少,加密效果好,加密時間短,較傳統方法更具優勢.
在建立多通道敏感數據全同態加密機制之前,初始化多通道敏感數據,生成密鑰函數,多通道敏感數據采集模型如圖1所示.

圖1 多通道敏感數據采集模型Fig. 1 Multi channel sensitive data acquisition model
隨機抽取多通道中的敏感數據h→μ,輸出如下形式的密鑰:

根據密鑰生成公鑰函數,如下:

其中,a與b分別代表隨機生成的加密元素.
將加密的明文數據看做明文多項式,將選取的元素構成矩陣,輸出的密文如下述公式:

為進一步加強多通道敏感數據全同態加密效果,為密鑰賦予攻擊方案,目的是避免外界對敏感數據的攻擊[4].在密鑰攻擊中,將解密預言機所查詢的矩陣列為一個單位向量,因此將隨機的加密值添加到密文中,在這一過程中,保證修改后的密文矩陣與其他密文矩陣一樣,以區分解密條件.因此,在上述矩陣中添加一行密文信息,得到如下矩陣:

為了擴展上述攻擊形式,利用上述矩陣進行重復攻擊,以得到多通道敏感數據中一個解密密鑰的某個比特值[5].
對生成的密文向量截取后,密文與密鑰的內積具有一定的改變,存在一定的變量,為了提高解密準確性,定義一個算法,在密文向量中的每個元素截取n個比特位,截取后的向量為:

公式(5)中,c代表截取比特位的向量,代表解密密文的內積參數,wn為解密參數是否正確的判斷因子[6].
根據上述密鑰生成過程,僅僅用向量積會導致維數膨脹,若兩個密文相乘,其中一個密鑰會轉換到公鑰中[7].轉換后會生成較多的向量,這些向量是隨機存在的,將這些向量隨機方法矩陣行上,則滿足:

公式(6)中,Wg代表敏感數據的維向量,lq代表取整誤差,n代表密鑰轉換過程中產生的隨機整數[8].
經過上述轉換,打包敏感數據加密密文,將加密密文放入到維數中,輸入隨機誤差向量,輸出相應的密文:

公式(7)中,a、y分別代表隨機誤差向量,Δs代表q的密文,m為密鑰矩陣行對應的比特向量[9].
上述完成多通道敏感數據全同態加密機制的建立,為多跳網絡中多通道敏感數據全同態加密提供基礎依據[10].
在上述多通道敏感數據全同態加密機制建立完成的基礎上,對多通道敏感數據全同態加密,整個加密框架結構如圖2所示.
在上述加密解密的過程中,會逐漸增加計算噪音,當噪音超過計算范圍時,則會導致全同態加密后的數據與實際運算的結果不同[11].為避免因為噪聲較長,導致結果計算不準確現象的發生,對多跳網絡中的解密電路壓縮,以減少密文噪音[12].在公鑰中添加私鑰信息,在對多通道敏感數據加密時使用這部分私鑰信息對密文預處理,在解密后,直接運算解密結果,表達式為:

得到上述結果后,還需要重加密處理,得到全同態加密方案,具體步驟如下:
step1:初始化,確定自己的進程標識符,讀取密鑰的同時加載全同態加密算法;
將多項式組進行分解,表達式為:

公式(9)中,g為數據加密過程中的加密函數,skˉ代表加密的密鑰個數,為密文的復雜度.
采用上述方法反復更新密文,然后進行下一次同態運算[14].
step2:多通道敏感數據分發,獲取多調網絡中敏感數據,將這些數據的節點信息散發到各個節點中;
step3:計算多通道敏感數據,收集解密后數據;
step4:對重加密過程優化,將公鑰線性化提升為二次方形式,壓縮多通道敏感數據公鑰的壓縮尺寸[15].減少密鑰尺寸能夠擴大相應的明文域,在這一過程中不用獲取多通道敏感數據的敏感信息,可以直接對密文直接計算.向密鑰控制中心生成請求,密鑰控制中心收到請求后根據敏感數據的安全參數生成私鑰與安全控制參數.
step5:完成多通道敏感數據全同態加密,釋放資源,以此完成多跳網絡中多通道敏感數據全同態加密.
上述分析從理論上驗證了此次設計的多跳網絡中多通道敏感數據全同態加密方法的有效性,為保證其具有實際應用意義,進行實驗.并為了使實驗結果更具說明性,將此次設計的方法與基于誤差學習問題的高效的多跳多策略屬性基全同態加密方法和面向云計算的同態加密改進方法對比,對比三種方法的加密效果和加密時間.

圖2 全同態加密框架結構圖Fig. 2 Structure diagram of fully homomorphic encryption framework

圖3 MapReduce集群網絡的拓撲結構Fig. 3 Topology of MapReduce cluster network
其中,各個主機節點的硬件與軟件配置如表1所示.

表1 虛擬主節點配置參數Tab. 1 Configuration parameters of virtual master node
其中5個從節點的配置如表2所示.

表2 虛擬從節點配置參數Tab. 2 Configuration parameters of virtual slave node
數據庫表如圖4所示,分析圖4可知,上述數據庫還沒有被加密,分別使用基于誤差學習問題的高效的多跳多策略屬性基全同態加密方法、面向云計算的同態加密改進方法和本文方法對其加密,加密數據共包含200條,其中100條使用此次設計的方法進行加密,另外100條采用傳統加密方法加密.
為了提高實驗結果的說明性,在實驗過程中,添加攻擊條件,每間隔2 min對于數據進行一次攻擊,共進行10次攻擊,每次攻擊10條信息,對比10次攻擊下,數據的泄露情況.為了保證實驗的嚴謹性,每次對數據的攻擊都保證相同的攻擊方式.

表3 加密數據泄露量對比Tab. 3 Comparison of encrypted data leakage volume
分析表3可知,基于誤差學習問題的高效的多跳多策略屬性基全同態加密方法和面向云計算的同態加密改進方法加密后的數據泄露量較多,每組實驗中都存在數據泄露現象.這是因為傳統方法是先將相關密文信息返回,然后解密之后再進行計算,這種計算耗時較長,所以為數據攻擊帶來了條件,導致數據泄露情況多.而此次設計的方法數據泄露量較少,僅有第四組實驗和第八組實驗中,發生數據泄露情況,但是僅有一條數據發生泄露.因此,通過上述實驗能夠證明,此次設計的多跳網絡中多通道敏感數據全同態加密方法較基于誤差學習問題的高效的多跳多策略屬性基全同態加密方法、面向云計算的同態加密改進方法泄露數量少,加密效果好,為數據安全起到了一定的保障作用.
為了進一步驗證本文方法的有效性,對基于誤差學習問題的高效的多跳多策略屬性基全同態加密方法、面向云計算的同態加密改進方法和本文方法的加密時間進行對比,對比結果如圖5所示.
分析圖5可知,隨著數據長度的增長,三種方法的加密時間也在逐漸上升,而本文方法的加密時間上升幅度較小,且比基于誤差學習問題的高效的多跳多策略屬性基全同態加密方法和面向云計算的同態加密改進方法的加密時間短.

圖4 實驗測試的明文數據庫表結構Fig. 4 Table structure of plaintext database for experimental test

圖5 加密耗時對比結果Fig. 5 Encryption time comparison results
安全、高效的數據加密方法能夠改變網絡上的數據處理、傳輸和存儲方式,由于傳統的加密方法加密效果差,加密時間長,為此設計了一種多跳網絡中多通道敏感數據全同態加密方法.并通過實驗驗證了此次設計的多跳網絡中多通道敏感數據全同態加密方法的有效性,符合全同態加密技術的研究趨勢,實際應用意義強.雖然此次設計的方法取得了一定的成果,但是仍然存在一定的不足.主要的不足是密鑰尺寸還是相對較大,在下一步的研究中,在本文設計的基礎上,再次減少密鑰尺寸,從而保證多敏感數據的安全性.