• 
    

    
    

      99热精品在线国产_美女午夜性视频免费_国产精品国产高清国产av_av欧美777_自拍偷自拍亚洲精品老妇_亚洲熟女精品中文字幕_www日本黄色视频网_国产精品野战在线观看

      ?

      基于安全性驗證的云數(shù)據(jù)存儲與訪問算法

      2023-10-10 08:16:34程順達(dá)
      關(guān)鍵詞:加密算法密文分塊

      程順達(dá)

      (1. 河北大學(xué) 網(wǎng)絡(luò)空間安全與計算機(jī)學(xué)院, 河北 保定 071000; 2. 河北省中醫(yī)院 信息中心, 石家莊 050011)

      在互聯(lián)網(wǎng)與信息技術(shù)快速發(fā)展的背景下,每時每刻都會產(chǎn)生并存儲大量數(shù)據(jù),但傳統(tǒng)的數(shù)據(jù)存儲方法已難以滿足海量數(shù)據(jù)的需求[1].為了解決存儲需求問題,云計算技術(shù)被提出[2-4].

      傳統(tǒng)的云存儲為了保障用戶數(shù)據(jù)的機(jī)密性,主要采用云端加密的方法[5-6].該方法將用戶數(shù)據(jù)存儲在客戶端[7],并由云服務(wù)器生成與管理用戶的秘鑰,再在云端對數(shù)據(jù)進(jìn)行加密,且將加密后的數(shù)據(jù)存儲在云端[8-10].該方法雖實現(xiàn)了用戶數(shù)據(jù)的云端加密及解密,但當(dāng)云存儲服務(wù)商出現(xiàn)不誠信行為時,會導(dǎo)致用戶信息的泄露.同時,該加密方式的算法固定且安全性較低,一旦算法被破解,將給用戶的隱私帶來較大的安全隱患[11].為解決上述問題,本文提出了一種基于數(shù)據(jù)分塊重組的云數(shù)據(jù)存儲與加密方法,該方法通過加大傳統(tǒng)數(shù)據(jù)分塊重組中子文件所包含有效信息的獲取難度來提高用戶數(shù)據(jù)的安全性.

      此外,為了安全、有效地讀取到用戶數(shù)據(jù),本文提出了基于角色的訪問控制模型與基于屬性的訪問控制方法[12-13].其中,基于角色的訪問控制模型主要應(yīng)用于大型辦公系統(tǒng)中,其將用戶角色與所能訪問的資源進(jìn)行綁定,并對不同的用戶賦予不同的訪問權(quán)限[14-15];而基于屬性的訪問控制方法則將屬性集合與訪問結(jié)構(gòu)進(jìn)行匹配,即通過判斷用戶的屬性集合是否滿足訪問結(jié)構(gòu)來判斷用戶的訪問權(quán)限.根據(jù)用戶屬性加密方式的不同,基于屬性的訪問控制方法又可分為基于秘鑰策略與基于密文策略的屬性加密方法:前者將用戶的屬性集合包含在密文數(shù)據(jù)中,且將訪問結(jié)構(gòu)包含在用戶私鑰中;后者則恰好相反,其將數(shù)據(jù)的訪問結(jié)構(gòu)與密文一起存儲,而將用戶的屬性集合與用戶的私鑰一起存儲.基于屬性的訪問控制方法所采用的數(shù)據(jù)訪問結(jié)構(gòu)均由用戶確定,但實際上數(shù)據(jù)的發(fā)送者僅能決定密文的屬性集合,而難以匹配實際應(yīng)用場景,故無法達(dá)到理想的訪問控制效果.為了應(yīng)對海量數(shù)據(jù)的存儲需求,實現(xiàn)細(xì)粒度數(shù)據(jù)訪問控制方式,本文結(jié)合基于數(shù)據(jù)分塊重組的云數(shù)據(jù)存儲與加密方法及基于屬性的云數(shù)據(jù)訪問方法,提出了一種新的基于安全性驗證的數(shù)據(jù)存儲與訪問方法.

      1 基于數(shù)據(jù)分塊重組的云數(shù)據(jù)存儲

      當(dāng)用戶將數(shù)據(jù)傳輸至云存儲服務(wù)器時,為了達(dá)到保護(hù)數(shù)據(jù)隱私的目的,需對數(shù)據(jù)進(jìn)行預(yù)處理和加密.為解決傳統(tǒng)云存儲加密方法存在的問題,本文基于數(shù)據(jù)分塊重組技術(shù)提出了一種新的云數(shù)據(jù)存儲與加密方法.

      傳統(tǒng)的數(shù)據(jù)分塊重組方法是將數(shù)據(jù)進(jìn)行簡單的線性分割,并按照大小將數(shù)據(jù)保存為若干個子文件,而分割后的數(shù)據(jù)按照順序進(jìn)行讀取即可得到源文件.該種線性分割方法簡單易行,能在一定程度上增加用戶數(shù)據(jù)的保密效果,但其生成的子文件通常包含豐富的信息且重組難度較低,竊密者可輕易地根據(jù)子文件內(nèi)的信息與順序來獲取原文件的信息.因此,傳統(tǒng)的線性分割方法并不適用于云數(shù)據(jù)的存儲.為解決該問題,本文通過提升用戶獲取子文件中有效信息的難度來提高用戶數(shù)據(jù)的保密性.通過使用傳統(tǒng)的數(shù)據(jù)分塊重組方法將原文件分塊處理,并未將這些文件作為最終的子文件加以重組,而是對子文件進(jìn)行二次分塊后再按照一定的規(guī)律實現(xiàn)重組,具體步驟如下:

      1) 假設(shè)用戶上傳的數(shù)據(jù)文件為F,該文件的大小為S;

      2) 根據(jù)文件的特點與用戶的需求,本文分別設(shè)置兩次操作時子文件的分塊粒度為m和n;

      3) 判斷S是否為分塊粒度乘積m×n的整數(shù)倍,若不是,則在原文件F后面補(bǔ)0得到文件F′,且F′的大小S′為m×n的整數(shù)倍;

      4) 令k=S′/mn,且記n個輸出流對象為{output0,output1,…,outputn-1};

      5) 從文件F′的起始位置開始,以數(shù)據(jù)大小k為單位讀取用戶數(shù)據(jù),共得到m×n個數(shù)據(jù)塊,記為{f1,f2,…,fm×n},本文將第i個數(shù)據(jù)塊追加至第x個輸出流outputx;

      6) 重復(fù)步驟5)的操作,得到輸出流{output0,output1,…,outputn-1},并將這n個輸出流保存至云端作為n個子文件.

      使用上述步驟進(jìn)行文件分塊能夠得到一系列不連續(xù)且混亂的子文件,這一操作可顯著降低每個子文件所包含的有效信息.同時,由于子文件的順序及數(shù)量與兩次分塊的粒度m和n有關(guān),因而當(dāng)竊密者不了解詳細(xì)的數(shù)據(jù)分塊方法時,難以通過對數(shù)據(jù)進(jìn)行重組得到原文件.

      2 基于交叉加密的云數(shù)據(jù)保護(hù)

      為了保障云存儲數(shù)據(jù)的安全性,本文結(jié)合對稱加密算法與非對稱加密算法的優(yōu)點,提出了一種交叉加密算法來對分塊后的數(shù)據(jù)文件進(jìn)行加密.該算法綜合考慮加密數(shù)據(jù)的安全性及加密速度,對大數(shù)據(jù)塊和小數(shù)據(jù)塊采用不同的加密方法,在兼顧處理速度的同時,也提升了數(shù)據(jù)的安全性.基于交叉加密的云數(shù)據(jù)加密流程為:

      1) 設(shè)置加密單元的大小為L,加密數(shù)據(jù)比為K;

      2) 對待加密文件F進(jìn)行分塊處理得到F={F1,F2…,Fn},且每個子文件塊的大小為L;

      3) 按照加密數(shù)據(jù)比K將每個子文件塊分為兩部分,且兩部分比值為K;

      4) 使用步驟3)對n個數(shù)據(jù)塊進(jìn)行劃分,得到fi1和fi2,分別使用對稱加密算法與非對稱加密算法對兩文件進(jìn)行加密處理,得到2n個加密文件;

      5) 合并步驟4)得到的2n個文件,并獲取最終的密文文件CF.

      對加密后的文件進(jìn)行解密的流程為:

      1) 根據(jù)用戶請求讀取待解密的密文文件CF;

      2) 獲取密文加密參數(shù),即加密單元的大小L及加密數(shù)據(jù)比K;

      3) 根據(jù)L和K對CF進(jìn)行劃分,得到CF={C11,C12,C21,C22,…,Cn1,Cn2};

      4) 使用對稱加密算法對Ci1進(jìn)行解密,使用非對稱加密算法對Ci2進(jìn)行解密,得到2n個明文數(shù)據(jù);

      5) 合并步驟4)得到的2n個明文數(shù)據(jù),并獲取最終的數(shù)據(jù)文件F.

      3 基于密文策略的云數(shù)據(jù)訪問

      本文基于密文策略的云數(shù)據(jù)訪問方法共包括以下4個階段:

      1) 初始化.使用文獻(xiàn)[9]所述的方法生成公鑰PK和主秘鑰MK.

      2) 數(shù)據(jù)加密.該過程主要目的是使用公鑰PK和主秘鑰MK對數(shù)據(jù)文件進(jìn)行加密,包括構(gòu)造訪問結(jié)果樹的多項式與密文計算兩個步驟.訪問結(jié)構(gòu)樹,即表現(xiàn)用戶訪問權(quán)限需求的數(shù)據(jù)結(jié)構(gòu).本文假設(shè)該樹結(jié)構(gòu)的根節(jié)點為g,并隨機(jī)生成一個最高階數(shù)為d=g-1、常數(shù)項為s的多項式,然后使用該多項式的生成方式定義其他節(jié)點的多項式.當(dāng)構(gòu)造完成訪問樹后,生成待加密數(shù)據(jù)的密文CT.

      3) 秘鑰生成.該過程主要生成數(shù)據(jù)訪問者的私鑰,且在該過程中會對隱式編碼用戶的屬性集合進(jìn)行處理.即使用用戶的屬性集合與主秘鑰MK來生成包含用戶屬性的特定用戶私鑰.

      4) 數(shù)據(jù)解密.使用特定用戶的私鑰SK對密文數(shù)據(jù)CT進(jìn)行解密,得到用戶需訪問的原始數(shù)據(jù).隨后本文使用文獻(xiàn)[9]提出的遞歸算法來判斷屬性集合在私鑰中的編碼是否滿足其對應(yīng)的密文訪問結(jié)構(gòu).當(dāng)解密成功后,將向用戶發(fā)送解密得到的明文數(shù)據(jù);否則,返回解密失敗的信息.

      4 性能分析

      結(jié)合上文介紹的基于數(shù)據(jù)分塊重組的云數(shù)據(jù)存儲、基于交叉加密的云數(shù)據(jù)保護(hù)與基于屬性的云數(shù)據(jù)訪問方法,本文提出了基于安全性驗證的數(shù)據(jù)存儲與訪問機(jī)制.具體地,當(dāng)用戶上傳數(shù)據(jù)至云數(shù)據(jù)平臺后,首先對數(shù)據(jù)進(jìn)行分塊重組和加密,實現(xiàn)數(shù)據(jù)的安全保護(hù);然后將處理后的數(shù)據(jù)保存到云數(shù)據(jù)服務(wù)端,并將重組和加密階段產(chǎn)生的參數(shù)數(shù)據(jù)作為元數(shù)據(jù)進(jìn)行保存;當(dāng)用戶申請訪問數(shù)據(jù)時,通過訪問判斷和解密,返回用戶請求的數(shù)據(jù).這一操作過程不僅能保障數(shù)據(jù)的安全,還可實現(xiàn)對云端數(shù)據(jù)的訪問控制.

      用戶請求云服務(wù)器存儲的數(shù)據(jù)時,應(yīng)先對用戶的簽名進(jìn)行安全性驗證.假設(shè)用戶的簽名為σ,私鑰為b,公鑰為PK,用戶對數(shù)據(jù)塊ek的簽名為b-1ek,則對用戶進(jìn)行安全性驗證表達(dá)式為

      G(σ,PK+h)=G(b-1ek,PK+h)

      式中:h為哈希編碼數(shù)據(jù);G為仿射變換函數(shù).基于該安全性驗證方法,本文對500條用戶請求進(jìn)行安全性驗證,其中包括250條正確請求和250條錯誤請求,結(jié)果表明所提出的方法能夠有效保證用戶訪問的安全性.

      同時,本文分析了所提方法的加密效率及對公鑰替換攻擊和惡意KGC攻擊的抵抗能力,并將本文方法與文獻(xiàn)[13]、[15]所提方法進(jìn)行比較,結(jié)果如表1所示,其中B表示雙線性運算的時間復(fù)雜度,E表示指數(shù)運算的時間復(fù)雜度,M表示乘法運算的時間復(fù)雜度,H表示哈希運算的時間復(fù)雜度.從表1中可以看出,本文方法具有更少的計算量.同時,公鑰替換攻擊和惡意KGC攻擊實驗使用隨機(jī)選擇的500個不同數(shù)據(jù)塊進(jìn)行仿真實驗.其中,本文方法根據(jù)公鑰間的關(guān)聯(lián)關(guān)系對公鑰進(jìn)行驗證,從而判定用戶公鑰的真假.本文使用隨機(jī)生成的10組公鑰進(jìn)行仿真實驗,結(jié)果表明所提方法具有抵抗公鑰替換的能力.同時,本文也使用隨機(jī)選擇的500個不同數(shù)據(jù)塊分析各方法對惡意KGC攻擊的抵抗能力,結(jié)果表明所提方法具有抵抗惡意KGC攻擊的能力.

      表1 算法效率及攻擊抵抗能力分析Tab.1 Algorithm efficiency and attack resistance analysis

      5 實驗與分析

      為驗證所提出的數(shù)據(jù)存儲與加密方法的有效性,本文進(jìn)行了實驗測試及分析.測試系統(tǒng)使用Windows 10操作系統(tǒng),處理器為Intel CoreTMi7-10510U,主頻為2.3 GHz,32 GB內(nèi)存.

      首先驗證所提出的數(shù)據(jù)分塊重組方法的有效性,分別取大小為10、20、40、80和160 MB的數(shù)據(jù)進(jìn)行測試,并取10次測試結(jié)果的平均值作為最終實驗結(jié)果.圖1是m為5,n分別為5、10、20及40時數(shù)據(jù)分塊與合成所需時間的變化情況.圖2則是n為10,m為5、10、20和40時數(shù)據(jù)分塊與合成所需時間的變化情況.從圖1~2可以看出,隨著文件大小的增加,數(shù)據(jù)分塊與合成所需的時間也在逐漸增加;分塊的粒度越大,所需的時間也越長.

      圖1 m=5時數(shù)據(jù)分塊和合成所需的時間Fig.1 Time required for data block and synthesis with m=5

      圖2 n=10時數(shù)據(jù)分塊和合成所需的時間Fig.2 Time required for data block and synthesis with n=10

      本文提出的交叉加密算法采用對稱加密方法對大數(shù)據(jù)塊進(jìn)行加密,以提升其加密速度;而對小數(shù)據(jù)塊則使用非對稱加密算法進(jìn)行加密,并提升數(shù)據(jù)的安全性.本部分從安全性與加密速度兩方面來驗證該方法的有效性.通過驗證明文及秘鑰的敏感性來驗證該加密算法的安全性,其中,敏感性是指當(dāng)明文數(shù)據(jù)中某些字節(jié)的數(shù)據(jù)發(fā)生變化時,密文數(shù)據(jù)的變化程度.表2為秘鑰固定時,對不同明文數(shù)據(jù)進(jìn)行加密得到的密文數(shù)據(jù).從表2中可以看出,使用本文算法得到的加密明文存在較大的變動,因此若試圖通過分析密文數(shù)據(jù)來得到明文數(shù)據(jù)將異常困難.表3給出了使用不同的秘鑰對相同的明文數(shù)據(jù)進(jìn)行加密時得到的加密密文.根據(jù)表3結(jié)果可知,當(dāng)秘鑰出現(xiàn)變化時,加密后的數(shù)據(jù)產(chǎn)生更大的變化,這一現(xiàn)象表明所提出的方法具有較好的秘鑰敏感性.

      表2 密文敏感性測試結(jié)果Tab.2 Ciphertext sensitivity test results

      表3 秘鑰敏感性測試結(jié)果Tab.3 Key sensitivity test results

      此外,本文也將不同加密算法對不同大小數(shù)據(jù)文件進(jìn)行加密與解密所需的時間進(jìn)行比較,結(jié)果如圖3所示.從圖3結(jié)果可以看出,所提算法相對于非對稱加密算法的速度顯著提升,而相對于對稱加密算法,加密及解密速度較慢.

      圖3 加解密速度對比Fig.3 Comparison of encryption and decryption speed

      本文還比較了所提方法與文獻(xiàn)[13]、[15]方法的計算開銷.圖4為訪問不同大小的數(shù)據(jù)塊時,各種方法所需的計算開銷結(jié)果.由圖4可知,對于不同大小的數(shù)據(jù)塊,本方法所需的計算開銷較小,更為有效.

      圖4 不同方法計算開銷對比Fig.4 Comparison of computational cost for different methods

      本文利用云數(shù)據(jù)訪問方法對元數(shù)據(jù)進(jìn)行屬性加密,并將所提方法與文獻(xiàn)[13]、[15]方法進(jìn)行比較,結(jié)果如圖5所示.根據(jù)圖5可以看出,3種方法的計算開銷隨著訪問結(jié)構(gòu)中屬性數(shù)量的增加持續(xù)提高,但本方法在加密和解密過程的計算開銷均較小.

      圖5 不同方法計算開銷與屬性數(shù)量的關(guān)系Fig.5 Relationship between computational cost and attribute number of different methods

      6 結(jié) 論

      本文提出了一種新的基于密文策略的數(shù)據(jù)訪問方法,以實現(xiàn)細(xì)粒度數(shù)據(jù)訪問控制來應(yīng)對云數(shù)據(jù)的訪問存儲需求.提出的基于安全性驗證的數(shù)據(jù)存儲與訪問方法能有效對云數(shù)據(jù)進(jìn)行存儲和加密.當(dāng)用戶上傳數(shù)據(jù)至云數(shù)據(jù)平臺后,本文方法首先對數(shù)據(jù)進(jìn)行分塊重組和加密來保護(hù)數(shù)據(jù);然后將處理后的數(shù)據(jù)保存至云數(shù)據(jù)服務(wù)端,并將重組即加密階段產(chǎn)生的參數(shù)數(shù)據(jù)作為元數(shù)據(jù)進(jìn)行保存;當(dāng)用戶申請訪問數(shù)據(jù)時,通過訪問判斷與解密返回用戶請求的數(shù)據(jù).實驗與分析對比結(jié)果表明,所提方法能顯著提升云數(shù)據(jù)存儲的安全性,并減少數(shù)據(jù)加密、解密過程所需要的計算開銷.

      猜你喜歡
      加密算法密文分塊
      一種針對格基后量子密碼的能量側(cè)信道分析框架
      一種支持動態(tài)更新的可排名密文搜索方案
      基于模糊數(shù)學(xué)的通信網(wǎng)絡(luò)密文信息差錯恢復(fù)
      分塊矩陣在線性代數(shù)中的應(yīng)用
      反三角分塊矩陣Drazin逆新的表示
      基于小波變換和混沌映射的圖像加密算法
      基于自適應(yīng)中值濾波的分塊壓縮感知人臉識別
      基于多分辨率半邊的分塊LOD模型無縫表達(dá)
      云存儲中支持詞頻和用戶喜好的密文模糊檢索
      Hill加密算法的改進(jìn)
      瓦房店市| 吉首市| 奈曼旗| 土默特右旗| 兴业县| 新巴尔虎右旗| 太湖县| 松滋市| 湖南省| 田阳县| 嵩明县| 林芝县| 黑山县| 搜索| 内黄县| 宣武区| 布尔津县| 龙门县| 连云港市| 寿阳县| 平乡县| 富平县| 中方县| 富蕴县| 河池市| 怀集县| 长葛市| 沈阳市| 天镇县| 阆中市| 南陵县| 根河市| 阿巴嘎旗| 贞丰县| 正镶白旗| 东山县| 吉木乃县| 锡林郭勒盟| 滨海县| 中西区| 杨浦区|