張育梅
(長春工業大學人文信息學院,吉林 長春 130122)
大數據屬性加密數學建模是利用數學方法解決數據加密問題。在大數據屬性基礎上對數據加密是在數據外包環境下,管控訪問數據用戶的有效方法之一,但在計算過程中,無法實現多種加密方法并行應用。若對方法不斷更新,那么會影響整體算法的執行效率,增大時間開銷。為解決此問題,相關領域專家得到了一些較好的研究成果。
文獻[1]根據上述情況,在云計算數據外包環境情況下,提出一種對數據訪問擴展且從整體提高加密算法安全新性能的方法,針對多權限云中的大數據,結合改進屬性加密,提出靈活,安全的訪問控制模型;設計基于改進代理重加密的新型策略更新流程,制定高效的策略更新方案。但該方法存在大數據加密過程冗余數據較多問題。文獻[2]提出一種具有較短公鑰的云計算環境下多源信息資源全同態加密方法,添加一組同余數對感知資源同態加密,在加性融合后的密文數據中提取真實資源,其次采用中國剩余定理驗證資源完整性,最后將新安全參數融合于完整性驗證參數經線性轉換,減少公鑰元素數量,實現公鑰尺寸的改進。該方法仍然存在加密算法耗時較長問題。
針對以上傳統方法存在的問題,提出基于數據消冗技術的大數據屬性加密數學建模方法。在Bloom filter基礎上分析加密算法結構。利用Hamming距離通過Bloom filter計算大數據相似性。最后根據計算結果設計大數據橢圓加密算法。實驗結果表明,所提方法具有加密耗時短且檢測冗余數據效率高等優點。
在數據結構[5]Bloom filter的空間具有數據壓縮效率高等優點,該算法的特征值由Bloom filter數據結構表示組成,與傳統數據消冗算法相比,Bloom filter算法的查詢時間和空間效率都更具優勢更適于處理大數據。
一般情況下Bloom filter在原始狀態下可以將包含有m位的數據組合設置為0,并且在表達n個元素集合S={x1,x2,…,xn}時,在1,…,m取值范圍中將運用k個單獨的hash函數分別對集合中的每個數據元素進行映射處理。
假設該數據是一個shingle,那么Bloom filter的構建方法就可以根據下列幾點形成:
1)構建bf數據結構,其中該結構為m位并且所有數據的初始值都為0;
2)假設映射函數為兩個hash函數,其中有hash1和hash2函數;
3)利用2)中的兩個函數計算每個shingle中的摘要值,并在此基礎上設與bf相對應的比特位取值為1;
4)文件的特征值為輸出的bf。
根據上述研究分析,在計算大數據相似度的過程中本文利用Hamming距離[6]通過Bloom filte判定相似性,Hamming求解法主要是計算兩個二進制序列中相對應的不同個數,此外求解相似度的方法也包括了四種,分別為Cosine、Overlap、Dice以及Jaccard,其中計算方式如下所示

(1)

(2)

(3)

(4)

根據上述流程即可計算出兩個大數據之間的相似性。
數據消冗技術[3]也稱為數據壓縮技術,其中消冗技術的工作原理是對某一數據集中具有兩個或是多個重復的數據進行刪除處理,保證最后該數據集合中只有相同的一個數據保留,這樣被刪除的冗余數據就會用數據指針來代替。在這個過程中,數據集合中的數據塊[4]就會同時被多個數據文件共享,其中共享關系如圖1所示。

圖1 文件與數據塊之間的關系
根據圖1可知,在數據消冗儲存系統中,如果一個數據塊被損壞,那么就可能會導致多個文件同時不可用。
大數據屬性加密過程中,通過數據消冗技術可使數據存儲空間得到一定優化,所以在處理過程中將數據集中相同數據塊進行刪除處理,能減少數據加密工作量,提高數據加密效率。此外,刪除數據集合中冗余數據后,提升了數據壓縮效率,減少了傳輸數據的數量,這樣傳輸信道的帶寬也可以從根本上得到緩解。
在對數據進行縮減率判定時,主要采用冗余數據刪除前的字節數與經過處理的字節數之比來實現,根據此結果DER計算公式便有

(5)
式中Data Elimination Ratio(DER)表示可辨別編碼規則,Bytes為字節數量,Bytes out表示字節輸出,Bytes In表示字節輸入。在一般情況下,DER的取值可以根據兩個條件因素來確定,就是平均數據分塊的大小和劃分策略類型,在計算的過程中雖然上式數據縮減率已經考慮到了數據塊之間的數據重復部分,但卻沒有嚴謹考慮到原數據整體開銷問題。為了能夠更好的優化數據開銷問題,令數據縮減率的計算公式優化,設定DER

(6)
這樣根據上式計算結果即可得知原數據的開銷為f,其計算方式便如下所示

(7)
式中Metadata Size表示元數據大小,Average ChunkSize表示平均塊大小。
根據上述數據相似度計算結果,本文提出一種橢圓曲線加密算法(ECC)實現大數據的加密,該算法在加密過程中具有計算開銷小、加密安全性能高等優點,較為適用于計算能力、空間限制以及帶寬被限制的研究領域中。
該算法的加密原理安全性是構建在對曲線離散[7]對數(ECDLP)難度基礎上的,由于ECC算法在實際應用中可以運用相對較短的密鑰來獲取出相對應的加密安全性,可以從根本上減少整體計算過程中產生的部分開銷。
分組密碼工作模式的評價指標主要包括數據加密的安全性能、加密后運用性能以及計算過程中的特征點,其中具體表示:
安全性能:
1)在對數據加密過后,該數據集合可以抗攻擊的能力;
2)是否能夠驗證該數據集合的整體安全性;
3)加密數據輸出信息的統計特征是否具有隨機性;
加密后運用性能:該性能指標主要是指計算過程中的有效性、存儲空間的要求是否滿足以及數據預處理能力等;
執行特征:該特征主要是指可以提供的密碼服務等。
結合ECC加密算法和分組密碼[8]算法特點,提議出一種可以完全滿足大數據加密過程中對稱密碼算法和非對稱加密算法相結合的加密方案,其中ECC算法用來加密hash表中的內容,對稱加密算法則用于經過消冗數據處理后的數據,其中屬性加密數學模型如圖2所示。

圖2 基于數據消冗技術的大數據加密算法模型
采用冗余數據檢測方法,針對需要加密的數據檢測其冗余數據,然后根據檢測結果刪除數據中的重復數據。將數據的大小描述為OFDi,其中0≤i≤n,n為總文件的數量,具有執行步驟如下所示:
1)對hash函數表中內容進行初始化處理,并且在此基礎上運用數據文件完全檢測算法,在檢測計算過程中本文將以單獨需要加密的數據文件為粒度,針對該數據文件中的重復數據進行初步檢測,然后根據檢測結果獲取出hash函數取值;
2)根據上述步驟的取值結果,將其與已經存放在hash函數表中的取值結果進行比較,如果這兩個取值都一樣或是之間的誤差在合理可以接受范圍內,那么就用指針來代替其中某一文件,如果匹配取值不同或誤差過大,那么就是兩個完全不相同的數據文件,則需要將兩個數據文件分別存儲;
3)對完整文件檢測方法中,并不相互重復的數據文件進行重新歸檔處理,其過程中本文將運用CDC數據塊[9]計算方法,從文件源頭開始對其進行一一歸檔處理。
4)將歸檔分區后的數據文件再次輸入到不同區域的數據傳輸流中,并利用Bloom filter數據結構來對數據進行檢測。
在對一個不含重復數據文件進行加密過程中,本文將采用ECC加密算法針對數據預處理階段存儲的敏感數據信息進行加密處理[10],并獲取出加密后的數據文件C(S1),再根據加密后的結果,將網絡中傳輸與接收數據的兩方設置為Alice與Bob,其中傳輸與接收具體過程如下所示:
1)訪問數據密鑰構成過程:當接收方在對加密后的數據文件進行解密過程中,首先需要通過計算構成解密的私鑰d以及公鑰Q,那么假設將E描述為有限區域中Fq上的橢圓曲線,并且已經選好了參數a,b以及p的取值,這樣即可進一步確定橢圓曲線E(Fq)[11-12],在此基礎上選擇E(Fq)和點N來作為基本點,讓N的周期為T[1,n-1]。
2)ECC加密過程:當傳輸方獲取到接收方的解密公鑰之后,然后把hash表的內容看作為有限區域E(Fq)上的一點,選擇T[1,n-1],計算k∈T[1,n-1],C1=kN,C2=M+kQ即可得到對應的密文。
在實際計算過程中,以密鑰長度128,192,256比特,分組長度128比特的情況進行估測,其中計算過程如下:
1)數值初始化
此處128比特的消息分組被分成16個字節,將其標記為
Inputblock=m0,m1,…m15
(8)
根據上式計算結果,密鑰分組式表示
InputKey=m0,m1,…m15
(9)
式中Inputblock表示輸入模塊,InputKey表示輸入密匙,m表示輸入字節,內部數據結構為

(10)

(11)
2)內部函數(State)求解
在一般情況下,將內部函數描述為State中任何一個字節,通常x給出一個非線性替換字節,其中隨機非0字節x∈F28可能被y替換,其中為:
y=Ax-1+b
(12)
為進一步驗證所提方法的實際有效性,設計一次仿真。文獻方法[1]方法、文獻方法[2]方法為本次實驗的對照組,對比不同方法的實驗結果。對比指標為冗余數據檢測率與加密耗時。對比結果如圖3和圖4所示。
根據圖3所示,傳統方法的冗余數據出現概率較高,在整個實驗過程中,大概的波動范圍為0.08%~0.14%,不僅數值偏高,且波動幅度也較大。相比之下,所提方法在不同冗余數據字節率條件下,冗余數據出現概率均在0.05%以下,遠遠低于兩種傳統方法,說明所提方法應用性能較好。
在對數據屬性加密的過程中,實際仿真環境使用CPU為AMD Athlon(tm)IIX3,3.10GHz,2GB存儲空間的PC機,其中編程語言為C++,在此基礎上采用三種方法分別針對文件大小為1G、5G、10G、30G、50G的文件對比加密耗時,加密過程耗時越短,說明該方法效率越高。其實驗對比結果如圖4。

圖4 不同方法加密耗時對比
根據圖4可看出,與兩種傳統文獻方法在數據加密耗時方面對比,本文算法在不同大小的數據加密耗時均少于傳統方法,沒有因加密數據量過大導致加密時間增加,而文獻方法隨著加密數據增大,會增加加密數據時間,綜上所述本文算法更具有適用性。
現階段傳統的大數據屬性加密方法無法滿足于該領域的基本需求。基于此本文在數據消冗技術基礎上提出一種新的大數據屬性加密數學建模方法。基于Bloom filter設計大數據消冗算法,根據數據消冗結果提出橢圓加密算法,構建滿足大數據對稱密碼算法和非對稱加密算法的方案,構建大數據屬性加密數學模型。仿真結果表明,本文方法具有計算加密耗時少,且檢測冗余數據效率高。實驗結果表明,所提方法具有較好的應用價值,為該領域的深入研究提供可靠依據。