新四季網

用於驗證遠程數據的完整性的協議的製作方法

2023-05-03 18:11:01

專利名稱:用於驗證遠程數據的完整性的協議的製作方法
用於驗證遠程數據的完整性的協議背景存在許多遠程地存儲數據的原因。例如,備份站點外數據的要求,使相同的數據可 由多個辦公司容易地訪問的要求等。另外,新興的所謂Web 2.0分布式應用程式中的某一 些需要用戶遠程地存儲數據。然而,在所有這些場景中,當一人想要檢查遠程存儲的數據的 完整性時引發了重大問題。傳統方法訪問遠程存儲位置,並且隨後請求數據傳輸。一旦遠 程存儲的數據被接收,用戶隨後將所接收的數據與已知完整性的數據(例如,原始數據或 原始數據的經驗證的副本)進行比較。在具有web接口和遠程數據存儲的分布式應用程式 的上下文中,該遠程數據存儲的帶寬可以是有限的。因此,當許多用戶想要檢查他們數據的 完整性時(例如,在某一「標準」、定期的基礎上),帶寬需求隨著大量數據被訪問和傳輸而 激增。儘管在Web 2.0的上下文中提出了各種問題,但在該上下文以及其他上下文中存在 其他問題。隨後的描述標識了附加問題,並且呈現了可允許對遠程存儲的數據的高效驗證 的示例性協議。概述一種用於驗證遠程存儲的數據的完整性的示例性方法,包括提供密鑰;提供指 紋,該指紋使用該密鑰以應用於已知完整性的數據的加密鑰的密碼散列函數來生成;將該 密鑰發送到存儲已知完整性的數據的副本的遠程存儲位置;從該遠程存儲位置接收指紋, 該指紋使用該密鑰以應用於該數據的遠程存儲的副本的加密鑰的密碼散列函數來生成;以 及至少部分地基於將所提供的指紋與所接收的指紋進行比較來驗證該數據的遠程存儲的 副本的完整性。還公開了其他示例性方法、系統等。


參考以下附圖描述非限制性和非窮盡的示例圖1是用於驗證遠程存儲的數據的完整性的傳統系統的圖示;圖2是用於驗證遠程存儲的數據的完整性的示例性系統的圖示;圖3是用於驗證遠程存儲的數據的完整性的示例性方法的框圖;圖4是與參與系統以便對數據進行遠程存儲和對這些數據進行驗證的各方相關 聯的各種組件的框圖;圖5是用於數據的遠程存儲和這些數據的驗證的示例性系統,任選地是對等系統 的圖示;以及圖6是示例性計算設備的框圖。詳細描述此處所描述的各種示例性方法、設備和系統涉及驗證遠程存儲的數據的完整性。 一種示例性協議提供了高效的完整性檢驗,並且允許諸如對等系統等高效系統的形成,其 中對等體可備份彼此的數據,並且驗證備份數據的完整性,而無需傳輸該備份數據。如下所 解釋的,參考附圖,一示例性協議包括密鑰的傳輸以及指紋的接收,其中該指紋至少部分地 基於該密鑰並且至少部分地基於正經歷完整性檢驗的遠程存儲的數據來生成。此協議可用
4任何各種方式和系統來實現。為了更好地理解傳統系統面臨的問題,描述了典型的傳統系 統,之後是使用這一示例性基於密鑰/指紋的協議的示例性系統。圖1示出了用於驗證遠程數據的完整性的傳統系統100以及相關聯的時間線102。 系統100包括具有相關聯的計算機100和用於存儲數據的數據存儲112的「本地」方X。系 統100還包括具有相關聯的計算機120和用於存儲數據的數據存儲122的「遠程」方Y。網 絡105允許在X方的計算機100與Y方的計算機120之間發生通信。時間線102示出了通常發生在用於驗證遠程數據的完整性的傳統方法中的各步 驟。在步驟A,X方從數據114生成副本115,並且將該副本115發送到Y方。在步驟B,Y 方接收經由網絡105所傳輸的該副本115。在執行步驟A和B時,數據114的完整性可能受 損。例如,副本115可能缺少完整性,和/或經由網絡105的傳輸可能破壞副本115。儘管 可能發生後一種類型的破壞,但在圖1的示例中,為簡明起見,數據115被表示為被發送和 接收而沒有破壞。在Y方接收數據115之後,在步驟C,數據115被存儲在數據存儲122處作為數據 116。數據116表示最初具有完整性或例如因寫錯誤或其他錯誤而不具有完整性的數據。或 者,隨著時間的推移,會發生影響數據116的完整性的某種過程,使得它不再表示數據114 的準確的副本。根據步驟D,X方想要驗證發送到Y方的數據的完整性。此查詢可以用各種方式中 的任一種來發生。例如,X方可呼叫Y方、發電子郵件給Y方、或採取提示Y方響應該查詢 的某種其他動作。在步驟E,Y方通過同意發送其存儲的數據116的副本來響應X方。在該示例中,在製作所存儲的數據116的副本時可能發生一個或多個錯誤。此外, 分別在其中Y方發送其所存儲的數據116的副本到X方的步驟F和其中X方接收並存儲所 存儲的數據116的副本的步驟G,可能發生破壞所存儲的數據116的副本的其他錯誤。例 如,「錯誤」中的某一些可以是由Y方所引起的對數據的惡意破壞。在步驟H,X方執行比較來將從Y方所接收的數據116與其數據114作比較。儘管 該比較旨在驗證遠程存儲的數據的完整性,但如所解釋的,該比較可充滿可使驗證挫敗的 問題。在要驗證的數據例如是大文件時,這些問題可能被混合(例如,較多的讀/寫錯誤、 傳輸錯誤等的機會)。在圖1的示例中,X方可被認為是數據「所有者」。儘管此示例示出了 X方執行遠 程數據的驗證,但在一替換方案中,X方可以將此責任或任務委託給第三方。然而,這一委 託將不解決可能發生的問題的本質或數量。實際上,這一委託將使驗證甚至更易於發生錯誤。作為另一替換方案,X方可以是數據114的所有者,但將該數據存儲在第三方存儲 提供者處。無論配置如何,在需要數據傳輸來執行出於驗證該數據的完整性的目的的比較 時存在問題。在許多對等環境中存在另一場景。例如,在對等環境中,用戶機器(對等體)可存 儲「屬於」一個或多個其他用戶(即,由其擁有)的數據。在這一示例中,出於驗證遠程數 據的完整性的目的的遠程數據副本的傳送可能是麻煩且昂貴的,並且對於對等網絡的性能 和用戶體驗是有害的。存在又一場景,其中一個人將大量數據存儲在諸如Amazon S3服務等遠程存儲提供者上。在這一場景中,數據傳送可能是昂貴的。因此,出於驗證遠程數據的完整性的目的 來傳輸遠程數據副本是不合需要的。如此處所描述的,一示例性協議克服了與圖1的系統100和/或一個或多個上述 場景相關聯的各種問題。具體地,一示例性協議允許數據所有者驗證這些遠程存儲的數據 的完整性。此外,數據所有者可將完整性檢驗能力委託給第三方。這一示例性協議可由多 個對等應用程式來使用。圖2示出了包括三方的示例性系統200以便沿時間線202示出示例性協議的操 作。如圖2所示,系統200包括作為X方且具有相關聯的計算機210和用於存儲數據的數 據存儲212的數據所有者、作為Y方且具有相關聯的計算機220和用於存儲數據的數據存 儲222的存儲提供者、以及作為Z方且具有相關聯的計算機230和用於存儲用於驗證數據 的信息的數據存儲232的確認者。網絡205允許在X方的計算機210、Y方的計算機220和 Z方的計算機230之間發生通信。在圖2的場景中,認為存儲提供者Y安全地存儲從數據所有者X所獲得的數據,並 且確認者Z需要能夠高效地驗證存儲提供者Y具有從數據所有者X所獲得的數據的準確的 (例如,確切的)副本,而不需要傳送該數據的任何重要的部分。數據所有者X和確認者Z 可以是相同的用戶或是不同的用戶。例如,在圖1的傳統系統100中,X方被描述為是數據 所有者和確認者(即,最終驗證數據的完整性的一方)。時間線202示出了通常在用於依賴示例性協議來驗證遠程數據的完整性的示例 性方法中發生的各種步驟。在步驟Α,X方從數據214生成副本215,並且將該副本215發 送到Y方。在步驟B,Y方接收經由網絡205所傳輸的該副本215。在執行步驟A和B時, 數據214的完整性可能受損。例如,副本215可能缺少完整性,和/或經由網絡205的傳輸 可能破壞副本215。儘管可能發生後一種類型的破壞,但在圖2的示例中,為簡明起見,數據 215被表示為被發送和接收而沒有破壞。在Y方接收數據215之後,在步驟C,數據215被存儲在數據存儲222處作為數據 216。數據216表示最初具有完整性或例如因寫錯誤或其他錯誤而不具有完整性的數據。 或者,隨著時間的推移,可能發生影響數據216的完整性的某種過程,使得它不再表示數據 214的準確的副本。在各種場景中,數據可能被Y方或惡意攻擊Y方的其他人故意地破壞。在可能缺 少損害數據所有者的嚴重意圖的場景中,Y方可僅期望更多的存儲器(例如,硬碟驅動器空 間)來存儲它自己的數據。如所解釋的,示例性方案需要Y方有具備完整性的數據的副本。 這阻止Y方例如用隨機字節進行響應來模仿所存儲的數據的完整性或存在性。在圖2中,步驟A、B和C本質上與在圖1的傳統時間線102中發生的那些步驟相 同。然而,之後的步驟由於它們依賴於可消除圖1的系統100中存在的各種問題的示例性 協議而不同。根據時間線202,在步驟D,該步驟D可在將數據215從X方發送到Y方之前發生, X方將信息242、244發送到Z方,即確認者,用於確認或驗證在X方(即,計算機210和數 據存儲21 的遠程所存儲的數據的完整性。根據示例性協議,信息242是一個或多個位串 (例如,1,2,…,k,其中k>0),並且信息244是至少部分從該位串中的一個所生成的指 紋;注意到在某些情況下,指紋可從一個以上位串中生成。位串可例如使用隨機數生成器來
6生成,或使用主密鑰來偽隨機地生成。在圖2的示例中,k個位串其中k>0)的每一 個被用作加密鑰的密碼散列函數的密鑰,其中該散列函數隨後被應用於數據來生成對應的 指紋,並且總共有k個指紋M4。在步驟E,該步驟E發生在步驟C之後的某一時間(或某些時間),Z方通過向Y 方發送一個或多個位串242來向Y方發出質詢。這一通信可經由網絡205或通過其他手 段(例如,安全線,專用線,等)來發生。在步驟F,Y方通過基於一個或多個所接收的位串
例如,使用加密鑰的密碼散列函數和計算機220)及其所存儲的數據(例如,遠程方擁 有的所存儲的數據)來生成一個或多個指紋M5,並且隨後將該一個或多個指紋245發送到 Z方來響應該質詢。在步驟G,Z方例如通過將從Y方所接收的一個或多個指紋245與從X方所接收的 適當的一個或多個指紋244作比較來驗證這些指紋。因此,在系統200中,示例性協議不需要遠程存儲的數據的傳輸來驗證該數據的 完整性。相反,需要計算步驟來基於質詢(例如,位串,即用於加密鑰的密碼散列函數的密 鑰)生成至少一個指紋。由於單個位串和指紋相比於要驗證的數據的大小可能相當小,因此通信可高效地 發生而開銷極小。此外,這一通信可在諸如專用電話線等其中帶寬有限的各種通信路徑上 發生。圖3示出了用於驗證遠程存儲的數據的完整性的示例性方法300。在提供框304 中,提供了密鑰。在另一提供框308中,提供了指紋,其中該指紋使用該密鑰以應用於已知 完整性的數據的加密鑰的密碼散列函數來生成。儘管框304和308被示為單獨的框,但這 些動作可在提供一個或多個密鑰/指紋對的單個提供框中發生。在發送框312中,該密鑰 被發送到存儲已知完整性的數據的副本的遠程存儲位置。接收框316從遠程存儲位置接收 指紋,其中該指紋使用該密鑰以應用於該數據的遠程存儲的副本的加密鑰的密碼散列函數 來生成。驗證框320至少部分地基於將所提供的指紋與所接收的指紋進行比較來驗證該數 據的遠程存儲的副本的完整性。以這一方式,遠程存儲的數據的完整性可被驗證,而無需從 遠程存儲位置傳輸數據。圖4示出了所有者410、存儲者420和確認者430的各種組件(例如,諸如圖2的 系統200中所示的那些)。各組件任選地(且通常)是用於在所有者側機器、存儲者側機 器、確認者側機器等上執行的軟體組件。如已經提到的,所有者還可作為其自己的確認者來 操作以便確認所有者自己的遠程數據。在這一場景中,單個機器(例如,計算設備)可包括 所有者組件以及確認者組件的各種模塊。此外,所有者可作為一個或多個其他所有者的存 儲者來操作。在這一場景中,單個機器可包括所有者組件以及存儲者組件的各種模塊。所有者410包括所有者側組件412,它包括串生成器模塊413和指紋生成器模塊 414。這些模塊的對應功能的示例已經在上文中參考圖2的系統200來呈現。存儲者420包括存儲者側組件422,它包括用於將所有者與所存儲的數據相關聯 的所有者/存儲者表模塊423、以及用於響應於質詢來生成指紋的指紋生成器模塊414,如 已經描述的。確認者430包括確認者側組件432,它包括用於將所有者與所存儲的數據相關聯 的所有者/存儲者表模塊433,用於調度質詢或位串和/或指紋的更新的調度器模塊434,用於管理用於來發出質詢的串和用於驗證質詢的指紋的串/指紋管理模塊435,用於驗證 響應於質詢所接收的指紋的驗證模塊436,以及在與確認相關聯的各種任務中的任一個中 使用的一組應用程式編程接口(API)437。例如,所有者可經由API調用來訪問確認者以便 通知該所有者關於是否成功完成了質詢,該API調用指定文件、存儲位置(例如,存儲者)、 一系列位串以及對應的指紋、用於向存儲者的發出質詢的時間表以及聯繫信息(例如,電 子郵件地址等)。確認者可包括存儲者響應質詢所使用的API。例如,在接收到質詢之後, 存儲者可做出API調用,該API調用包括一個或多個指紋,且任選地連同與所存儲的正被驗 證的數據相關的一條或多條其他信息(例如,在最近三周中被訪問兩次的數據、由於缺少 訪問而被壓縮的數據、被X方訪問的數據、等等)。以這一方式,存儲者可向確認者返回可幫 助數據所有者管理數據或對於該數據進行動作的信息。 圖5示出了示例性系統500,其中經由網絡505通信的兩方510、520協同操作來存 儲其數據中的至少某一些(例如,作為備份)。510方和520方中的每一方都使用計算設備 來操作,該計算設備包括所有者側組件512、存儲者側組件522以及確認者側組件532,諸如 參考圖4所描述的那些組件。510方具有相關聯的數據存儲512,並且520方具有相關聯的 數據存儲522。在圖5的示例中,510方製作其數據515的副本516,並且將該副本516發送到520 方以供存儲。類似地,520方製作其數據525的副本526,並且將該副本5 發送到510方 以供存儲。如已經解釋的,510和520方可使用示例性協議來確認他們遠程存儲的數據,該 示例性協議依賴發出質詢、以及至少部分基於該質詢和至少部分基於所存儲的要驗證的數 據來返回指紋。可複製圖5的示例性系統500用於對等系統中的存儲交換。存儲交換允許一個人 以提供他的盤空間的某一部分用於其他人的備份數據為代價來在其他用戶的機器上備份 他們的數據。例如,在用戶「共享」 1. 5GB她的硬碟驅動器空間的之後,該用戶被允許在其他 對等體上備份IGB她的個人文件。存儲交換可使用示例性位串/指紋協議來確保對等體不 刪除或修改其他對等體的數據。在另一場景中,用戶可能希望在諸如Amazon S3等其中通信可能是昂貴的遠程存 儲服務上存儲數據。示例性位串/指紋協議的使用可幫助確保(a)存儲提供者仍存儲數據 以及(b)存儲提供者沒有修改數據。由於協議可以用最少通信來實現,因此這些保證可用 非常小的通信成本來實現。如此處所描述的,示例性協議可用於驗證存儲在遠程機器上的數據的完整性。這 一協議提供了向另一方(例如,確認者)委託驗證權利的能力。在各種示例中,協議使用通 過將密碼散列函數應用於所存儲的數據所生成的指紋來驗證該數據的完整性。儘管各種示 例旨在用於驗證遠程數據,但所有者可能希望通過使用高完整性存儲者作為完整性度量來 驗證其自己(例如,本地)所存儲的數據的完整性。如此處所描述的,示例性確認者方法可產生質詢並且驗證該質詢。作為協議,包 括質詢和響應的交互序列克服了與通過發送數據的副本的驗證相關聯的許多問題(見,例 如,圖1的傳統系統100)。如此處所描述的,示例性確認者可被編程為執行周期性的更新。此外,確認者可基 於關於存儲者的歷史信息來調度查詢。例如,如果已知存儲者缺少完整性,則確認者可發出更頻繁的質詢。相反,對於具有所展示的完整性的存儲者,質詢的頻率可以相當小。一般而 言,示例性確認者可取決於環境以增大或減小的時間間隔發出周期性的質詢。如此處所描述的,一示例性方法可包括調度質詢的發出來檢驗一方或多方所存儲 的數據的完整性,其中所發出的質詢要求被質詢的一方(例如,行動來遠程地存儲數據所 有者的數據的存儲者)應用加密鑰的密碼散列函數;以及至少部分地基於一方滿足一個或 多個所發出的質詢(例如,成功的質詢或不成功的質詢)的能力來調整對該方的發出頻率。 例如,在一方無法滿足一個或多個所發出的質詢時可增加頻率。或者,在一方滿足一個或多 個所發出的質詢時減少頻率。這一方法可包括從所存儲的數據的一個或多個所有者獲得質 詢信息,例如,其中該獲得周期性地發生並且允許數據所有者提供新的質詢信息。如此處所描述的,示例性對等系統包括一個或多個計算設備,該一個或多個計算 設備被配置成本地存儲數據,其中本地存儲的數據包括本地所有者所擁有的數據以及遠 程所有者所擁有的數據副本;接收與遠程所有者所擁有的數據副本相關聯的密鑰;使用該 密鑰以應用於遠程所有者所擁有的數據副本的加密鑰的密碼散列函數來生成指紋;以及將 該指紋發送到對等系統中的另一計算設備用於驗證遠程所有者所擁有的數據副本的完整 性。在這一系統中,其他計算設備可被配置成接收指紋,並且將該指紋與使用該密鑰以應用 於遠程所有者所擁有的已知完整性的數據的加密鑰的密碼散列函數所生成的指紋作比較。在示例性對等體統中,一個或多個計算設備可被配置成生成密鑰,以及使用該密 鑰以應用於已知完整性的數據的加密鑰的密碼散列函數來生成指紋。這一計算系統可進一 步被配置成將密鑰和指紋發送到對等系統中的一個或多個計算設備。此外,對等系統可包 括用於對發送密鑰到對等系統中的一個或多個計算設備進行調度的一個或多個時間表。示例性計算設備圖6示出了可用於實現各示例性組件並形成示例性系統的示例性計算設備600。 例如,圖2的系統的計算設備可以包括設備600的各種特徵。在非常基本的配置中,計算設備600通常包括至少一個處理單元602和系統存儲 器604。取決於計算設備的確切配置和類型,系統存儲器604可以是易失性的(諸如RAM)、 非易失性的(諸如ROM、快閃記憶體等等)或兩種類型的某種組合。系統存儲器604通常包括操 作系統605、一個或多個程序模塊606,且可以包括程序數據607。作業系統605包括基於 組件的框架620,其支持組件(包括屬性和事件)、對象、繼承、多態性、反射,並且提供面 向對象的基於組件的應用程式編程接口(API),諸如由華盛頓州雷蒙德市的微軟公司製造 的.NET 框架的API。計算設備600具有由虛線608劃分的非常基本的配置。同樣,一終 端可具有更少的組件,但將與可具有這一基本配置的計算設備交互。計算設備600可具有附加特徵或功能。例如,計算設備600還可包括附加數據存 儲設備(可移動和/或不可移動),諸如例如磁碟、光碟或磁帶。這樣的附加存儲在圖6中 由可移動存儲609和不可移動存儲610例示。計算機存儲介質可包括以用於存儲諸如計算 機可讀指令、數據結構、程序模塊或其他數據等信息的任何方法或技術實現的易失性和非 易失性、可移動和不可移動介質。系統存儲器604、可移動存儲609和不可移動存儲610都 是計算機存儲介質的示例。計算機存儲介質包括,但不限於,RAM、R0M、EEPR0M、快閃記憶體或其他 存儲器技術、CD-ROM、數字多功能盤(DVD)或其他光碟存儲、磁帶盒、磁帶、磁碟存儲或其他 磁性存儲設備、或能用於存儲所需信息且可以由計算設備600訪問的任何其他介質。任何這樣的計算機存儲介質都可以是設備600的一部分。計算設備600也可具有諸如鍵盤、鼠 標、筆、語音輸入設備、觸摸輸入設備等的輸入設備612。也可包括輸出設備614,如顯示器、 揚聲器、印表機等等。這些設備在本領域中是已知的,這裡就不再對它們進行詳細討論。計算設備600還可包含允許該設備諸如通過網絡(例如考慮上述圖2的網絡205) 來與其他計算設備618進行通信的通信連接616。通信連接616是通信介質的一個示例。 通信介質通常可以具體化為計算機可讀指令、數據結構、程序模塊等。儘管用結構特徵和/或方法動作專用的語言描述了本主題,但可以理解,所附權 利要求書中定義的主題不必限於上述具體特徵或動作。相反,上文所描述的具體特徵和動 作是作為實現權利要求的示例形式來公開的。
權利要求
1.一種用於驗證遠程存儲的數據的完整性的方法,所述方法包括 提供密鑰;提供指紋,所述指紋使用所述密鑰以應用於已知完整性的數據的加密鑰的密碼散列函 數來生成;將所述密鑰發送到存儲所述已知完整性的數據的副本的遠程存儲位置; 從所述遠程存儲位置接收指紋,所述指紋使用所述密鑰以應用於所述數據的遠程存儲 的副本的加密鑰的密碼散列函數來生成;以及至少部分地基於將所提供的指紋與所接收的指紋進行比較來驗證所述數據的遠程存 儲的副本的完整性。
2.如權利要求1所述的方法,其特徵在於,所述密鑰任選地包括位串,任選地包括隨機 生成的密鑰,任選地包括對應於所述已知完整性的數據的一個或一系列密鑰,或任選地包 括通過將偽隨機數生成器應用於主密鑰來生成的一系列密鑰中的一個密鑰。
3.如權利要求1所述的方法,其特徵在於,所提供的指紋包括對應於所述已知完整性 的數據的一系列指紋中的一個指紋。
4.如權利要求1所述的方法,其特徵在於,所提供的密鑰和所提供的指紋任選地作為 一對來提供,並且所述已知完整性的數據的所有者任選地提供所述密鑰和所述指紋。
5.如權利要求1所述的方法,其特徵在於,所述發送根據時間表來發生。
6.如權利要求1所述的方法,其特徵在於,進一步包括提供一個以上的密鑰,並且提供 一個以上的指紋,其中每一所提供的指紋對應於所提供的密鑰中的一個。
7.如權利要求1所述的方法,其特徵在於,所述驗證發生在計算設備處,所述計算設備 提供所述密鑰,提供所述指紋,將所述密鑰發送到所述遠程存儲位置,並且從所述遠程存儲 位置接收所述指紋。
8.一種計算設備,包括 一個或多個處理器;用於存儲密鑰和指紋的存儲器,所述指紋使用所述密鑰以應用於已知完整性的數據的 加密鑰的密碼散列函數來生成;包括指令的組件,所述指令用於將所述密鑰發送到存儲所述已知完整性的數據的副本 的遠程存儲位置;從所述遠程存儲位置接收指紋,所述指紋使用所述密鑰以應用於所述數 據的遠程存儲的副本的加密鑰的密碼散列函數來生成;以及至少部分地基於將所提供的指 紋與所接收的指紋進行比較來驗證所述數據的遠程存儲的副本的完整性;任選地包括存儲,所述存儲用於存儲所述已知完整性的數據,並且使用所述密鑰以應 用於所述已知完整性的數據的加密鑰的密碼散列函數來生成所述指紋;以及 任選地包括用於遠程存儲另一者所擁有的數據的存儲。
9.一種對等系統,包括計算設備,所述計算設備被配置成本地存儲數據,其中所述本地存儲的數據包括本地所有者所擁有的數據以及遠程所有 者所擁有的數據副本;接收與所述遠程所有者所擁有的數據副本相關聯的密鑰;使用所述密鑰以應用於所述遠程所有者所擁有的數據副本的加密鑰的密碼散列函數來生成指紋;以及將所述指紋發送到所述對等網絡中的另一計算設備用於驗證所述遠程所有者所擁有 的數據副本的完整性。
10. 一種至少部分地由計算設備實現的方法,包括調度質詢的發出來檢驗一方或多方所存儲的數據的完整性,其中所發出的質詢要求被 質詢方應用加密鑰的密碼散列函數,並且所述被質詢方行動來遠程地存儲數據所有者的所 述數據;至少部分地基於一方滿足一個或多個所發出的質詢的能力來調整對該方的發出頻率;以及任選地從所存儲的數據的一個或多個所有者獲得質詢信息,其中所述獲得任選地周期 性地發生。
全文摘要
一種用於驗證遠程存儲的數據的完整性的方法,包括提供密鑰;提供指紋,該指紋使用該密鑰以應用於已知完整性的數據的加密鑰的密碼散列函數來生成;將該密鑰發送到存儲已知完整性的數據的副本的遠程存儲位置;從該遠程存儲位置接收指紋,該指紋使用該密鑰以應用於該數據的遠程存儲的副本的加密鑰的密碼散列函數來生成;以及至少部分地基於將所提供的指紋與所接收的指紋進行比較來驗證該數據的遠程存儲的副本的完整性。還公開了其他示例性方法、系統等。
文檔編號H04L9/30GK102099812SQ200980128925
公開日2011年6月15日 申請日期2009年4月7日 優先權日2008年5月20日
發明者A·米佳金, D·X·查爾斯, K·E·勞特 申請人:微軟公司

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀