国产精品1024永久观看,大尺度欧美暖暖视频在线观看,亚洲宅男精品一区在线观看,欧美日韩一区二区三区视频,2021中文字幕在线观看

  • <option id="fbvk0"></option>
    1. <rt id="fbvk0"><tr id="fbvk0"></tr></rt>
      <center id="fbvk0"><optgroup id="fbvk0"></optgroup></center>
      <center id="fbvk0"></center>

      <li id="fbvk0"><abbr id="fbvk0"><dl id="fbvk0"></dl></abbr></li>

      一種基于平衡的梅肯哈希樹的動態(tài)云數(shù)據(jù)完整性驗證方法

      文檔序號:9376175閱讀:362來源:國知局
      一種基于平衡的梅肯哈希樹的動態(tài)云數(shù)據(jù)完整性驗證方法
      【技術(shù)領(lǐng)域】
      [0001] 本發(fā)明屬于云存儲技術(shù)領(lǐng)域,涉及一種動態(tài)數(shù)據(jù)和數(shù)據(jù)完整性驗證方法,具體涉 及一種基于平衡的梅肯哈希樹的動態(tài)云數(shù)據(jù)完整性驗證方法。
      【背景技術(shù)】
      [0002] 云服務(wù)器提供商(CSP)提供的儲存即服務(wù)是一種允許組織機構(gòu)將重要數(shù)據(jù)存在 遠程服務(wù)器上的服務(wù)。
      [0003] 得益于云計算,用戶可以將數(shù)據(jù)遠端存儲在云上,并且從一個可配置的共享計算 資源中享受優(yōu)質(zhì)服務(wù)和應用。但事實上,用戶確實失去了外包數(shù)據(jù)的實質(zhì)占有,這使得云計 算中數(shù)據(jù)完整性驗證成為挑戰(zhàn),尤其在用戶計算能力有限的環(huán)境下。因此,讓數(shù)據(jù)允許被公 開審計就顯得尤為重要。所以用戶可以讓第三方審計TPA去審核數(shù)據(jù)的完整性。TPA需滿 足以下兩個條件:
      [0004] (I)TPA可以在不訪問本地數(shù)據(jù)的前提下審計數(shù)據(jù)完整性,同時又不能給用戶造成 在線的壓力;
      [0005] (2) TPA不能給數(shù)據(jù)保密性帶來缺陷。
      [0006] 云計算被預測為未來IT企業(yè)的主架構(gòu)。它把數(shù)據(jù)和應用集中在大數(shù)據(jù)中心,即使 數(shù)據(jù)的管理者不能被完全信任,以至于產(chǎn)生了很多安全問題。因此引入第三方審計TPA代 替客戶端完成對存儲在云端的數(shù)據(jù)進行完整性驗證。第三方審計TPA的引入使得客戶端用 可接受的規(guī)模完成了數(shù)據(jù)完整性的驗證。由于云端的服務(wù)并沒有限制備份數(shù)據(jù),所以動態(tài) 數(shù)據(jù)的實現(xiàn)對實用性方面有極大促進。為了高效實現(xiàn)數(shù)據(jù)動態(tài),引入梅肯哈希樹(Merkle Hash Tree)對分塊進行完整性驗證。
      [0007] 考慮實際情況,用戶多數(shù)情況下會在文件尾追加信息。而已有的插入方法沒有考 慮到Merkle Hash Tree的平衡性,因此會造成樹型結(jié)構(gòu)退化成線性結(jié)構(gòu),降低動態(tài)修改的 時間效率。

      【發(fā)明內(nèi)容】

      [0008] 本發(fā)明基于【背景技術(shù)】的研究成果,并利用平衡二叉樹結(jié)構(gòu),實現(xiàn)了動態(tài)數(shù)據(jù)完整 性驗證。
      [0009] 本發(fā)明所采用的技術(shù)方案是:一種基于平衡的梅肯哈希樹的動態(tài)云數(shù)據(jù)完整性驗 證方法,其特征在于,包括以下步驟:
      [0010] 步驟1 :定義雙線性映射e:GXG = GT,其中G是一個Diffie-Hellman群,Gt是另 一個素階數(shù)乘法循環(huán)群,定義g是G的生成元;
      [0011] 步驟2:客戶端選取隨機值a -Zp,Zp為素數(shù),計算v - ga,并定義密鑰Sk= α, 公鑰pk = V ;
      [0012] 步驟3 :針對每一個文件,客戶端對文件F進行分塊F = (nv m2, . . .,nv mn),選取 u - G,對每一個分塊計算簽名(67, ;)· i/M y,然后客戶端基于梅肯哈希樹構(gòu)造 根節(jié)點R并計算R的簽名Sigsk(H(R)) - (H(R))α,其中葉子節(jié)點是文件分塊的哈希,然后 將F、{ σ J、SigskOl(R))發(fā)送給服務(wù)器;
      [0013] 步驟4 :當客戶端請求第三方審計TPA進行數(shù)據(jù)完整性驗證時,第三方審計TPA選 取隨機C個分塊(S1, S2. .. SJ,并對每個分塊選取隨機值Vl- Z ρ,之后第三方審計TPA向服 務(wù)器發(fā)出申請,并發(fā)送分塊隨機值的集合IvJ和C個分塊下標的集合{S};
      [0014] 步驟5 :服務(wù)器收到第三方審計TPA的申請之后,分別計算如下內(nèi)容:
      [0015]
      [0016] ·
      [0017] 然后將{ μ,O,H(HI1),{ σ J }和C個葉子節(jié)點到根節(jié)點路徑上的所有兄弟節(jié)點信 息發(fā)送給第三方審計TPA ;
      [0018] 步驟6 :第三方審計TPA依據(jù)收到信息重新構(gòu)造梅肯哈希樹根節(jié)點R,之后驗證:
      [0019] e (SigskH(R),g) = e (H(R),ga);
      [0020]
      [0021] 若發(fā)現(xiàn)上述兩個等式如果有任意一個不滿足,則返回false表明數(shù)據(jù)被篡改,否 則返回true表明驗證通過。
      [0022] 作為優(yōu)選,步驟3中所述的將文件F進行分塊F = (ηνην . . .,ηνπιη)后發(fā)送給服 務(wù)器后,對存儲在服務(wù)器中的文件某一個分塊進行修改、添加一個分塊或者刪除一個分塊, 需要更新服務(wù)器上的相應的簽名信息,對數(shù)據(jù)進行動態(tài)更新。
      [0023] 作為優(yōu)選,所述的對分塊進行修改,其具體實現(xiàn)過程是用戶選擇第k個分塊,將其 內(nèi)容由C修改為C*,則該分塊的哈希值由H(C)變?yōu)镠(O),然后更新梅肯哈希樹并生成新 的根節(jié)點,最后交給客戶端簽名后存儲。
      [0024] 作為優(yōu)選,所述的添加一個分塊,假設(shè)用戶要在第k分塊后插入一個分塊,假設(shè)第 k分塊對應的葉子節(jié)點為K,則分以下四種情況處理;
      [0025] 情況一 :LL型旋轉(zhuǎn);
      [0026] 若節(jié)點X的左兒子深度減去右兒子深度大于1時,即出現(xiàn)L型不平衡狀態(tài),X為不 平衡節(jié)點;再對于X的左兒子來說,若其左兒子深度大于右兒子深度,則為LL型不平衡狀 態(tài);
      [0027] 旋轉(zhuǎn)方式為:X的左兒子的父親改為X的父親,X變?yōu)閄的左兒子的右兒子,X左兒 子的右兒子變?yōu)閄的左兒子;
      [0028] 情況二:LR型旋轉(zhuǎn);
      [0029] 若對于X出現(xiàn)L型不平衡狀態(tài),但是對于X的左兒子,其右兒子的深度大于左兒 子,則出現(xiàn)LR型不平衡狀態(tài);
      [0030] 旋轉(zhuǎn)方式為:先經(jīng)過一次旋轉(zhuǎn)使之變?yōu)長L型不平衡,再利用LL型旋轉(zhuǎn)使之平衡;
      [0031] 情況三:RR型旋轉(zhuǎn);
      [0032] 若節(jié)點X的左兒子深度減去右兒子深度小于-1時,即出現(xiàn)R型不平衡狀態(tài),X為 不平衡節(jié)點;在對于X的右兒子來說,若其右兒子深度大于左兒子深度,則為RR型不平衡狀 態(tài);
      [0033] 旋轉(zhuǎn)方式為:X的右兒子的父親改為X的父親,X變?yōu)閄的右兒子的左兒子,X右兒 子的左兒子變?yōu)閄的右兒子;
      [0034] 情況四:RL型旋轉(zhuǎn);
      [0035] 若對于X出現(xiàn)R型不平衡狀態(tài),但是對于X的右兒子,其左兒子的深度大于右兒 子,則出現(xiàn)RL型不平衡狀態(tài);
      [0036] 旋轉(zhuǎn)方式為:先經(jīng)過一次旋轉(zhuǎn)使之變?yōu)镽R型不平衡,再利用RR型旋轉(zhuǎn)使之平衡;
      [0037] 以上四種旋轉(zhuǎn)方法均不會改變梅肯哈希樹的葉子節(jié)點順序。
      [0038] 作為優(yōu)選,所述的刪除一個分塊,其具體實現(xiàn)過程是用戶選擇第k個分塊,假設(shè)第 k個分塊對應的葉子節(jié)點為K,刪除K之后將K的父親節(jié)點用K的兄弟節(jié)點代替,繼而刪除 K的兄弟節(jié)點;完成刪除操作之后,會出現(xiàn)添加一個分塊操作中出現(xiàn)的不平衡現(xiàn)象,按照處 理添加一個分塊操作中出現(xiàn)的不平衡現(xiàn)象的方法處理此處的不平衡現(xiàn)象。
      [0039] 本發(fā)明的有益效果:通過對上傳的文件進行分塊,實現(xiàn)對文件的動態(tài)修改;通過 對每一個分塊文件進行簽名作為葉子結(jié)點建立梅肯哈希樹,實現(xiàn)對文件的動態(tài)審計;為了 提高動態(tài)審計的時間效率,引入平衡二叉樹的概念,通過部分結(jié)構(gòu)的旋轉(zhuǎn)避免梅肯哈希樹 的退化。
      【附圖說明】
      [0040] 圖1 :為本發(fā)明實施例的流程圖;
      [0041] 圖2 :為本發(fā)明實施例的在文件尾部反復追加分塊效果圖;
      [0042] 圖3 :為本發(fā)明實施例的添加一個分塊的LL型旋轉(zhuǎn)效果圖;
      [0043] 圖4 :為本發(fā)明實施例的添加一個分塊的LR型旋轉(zhuǎn)效果圖;
      [0044] 圖5 :為本發(fā)明實施例的添加一個分塊的RR型旋轉(zhuǎn)效果圖;
      [0045] 圖6 :為本發(fā)明實施例的添加一個分塊的RL型旋轉(zhuǎn)效果圖。 具體實施方案
      [0046] 為了便于本領(lǐng)域普通技術(shù)人員理解和實施本發(fā)明,下面結(jié)合附圖及實施例對本發(fā) 明作進一步的詳細描述,應當理解,此處所描述的實施示例僅用于說明和解釋本發(fā)明,并不 用于限定本發(fā)明。
      [0047] 請見圖1,本發(fā)明提供的一種基于平衡的梅肯哈希樹的動態(tài)云數(shù)據(jù)完整性驗證方 法,包括以下步驟:
      [0048] 步驟1 :定義雙線性映射e:GXG = GT,其中G是一個Diffie-Hellman群,Gt是另 一個素階數(shù)乘法循環(huán)群,定義g是G的生成元;
      [0049] 步驟2 :客戶端選取隨機值α - Zp,Zp為素數(shù),計算V - g a,并定義密鑰sk = α, 公鑰pk = V ;
      [0050] 步驟3 :針對每一個文件,客戶端對文件F進行分塊F = (nv m2, . . .,nv mn),選取 u -G,對每一個分塊計算簽名σ, ,.然后客戶端基于梅肯哈希樹構(gòu)造 根節(jié)點R并計算R的簽名sigsk(H(R)) - (H(R)) °,其中葉子節(jié)點是文件分塊的哈希,然后 將F、{ σ J、SigskOl(R))發(fā)送給服務(wù)器;
      [0051 ] 步驟4 :當客戶端請求第三方審計TPA進行數(shù)據(jù)完整性驗證時,第三方審計TPA選 取隨機C個分塊(S1, S2. .. SJ,并對每個分塊選取隨機值Vl- Z ρ,之后第三方審計TPA向服 務(wù)器發(fā)出申請,并發(fā)送分塊隨機值的集合IvJ和C個分塊下標的集合{S};在分塊損壞比例 為t的情況下,審計的正確率為l-(l-tr,當t = 1%時,當c = 459的情況下,其具有99% 的準確率。
      [0052] 步驟5 :服務(wù)器收到第三方審計TPA的申請之后,分別計算如下內(nèi)容:
      [0053]
      [0054] .
      [0055] 然后將{ μ,〇,H(Hi1),{ σ
      當前第1頁1 2 
      網(wǎng)友詢問留言 已有0條留言
      • 還沒有人留言評論。精彩留言會獲得點贊!
      1