淺析基于可驗(yàn)證計(jì)算的可信云計(jì)算優(yōu)秀論文
1 引 言
云計(jì)算作為一種新興的網(wǎng)絡(luò)計(jì)算商業(yè)服務(wù)模式,使得用戶可以隨時(shí)在遠(yuǎn)端的云服務(wù)器存儲(chǔ)數(shù)據(jù)和運(yùn)行程序.但這種新興的計(jì)算模式在給用戶帶來諸多便利性的同時(shí),也帶來了一些新的安全挑戰(zhàn).用戶可能擔(dān)心云計(jì)算平臺(tái)本身的安全性,比如云平臺(tái)漏洞和錯(cuò)誤配置、管理員的惡意行為等等,而這都可能直接導(dǎo)致用戶數(shù)據(jù)的完整性和隱私性受到危害,導(dǎo)致用戶應(yīng)用程序無法正確執(zhí)行.這就產(chǎn)生了一個(gè)問題:用戶如何相信云提供商執(zhí)行的程序結(jié)果是正確的?如何確保存儲(chǔ)在遠(yuǎn)端的數(shù)據(jù)的完整性和私密性?檢測(cè)遠(yuǎn)程服務(wù)器返回的結(jié)果是否正確的傳統(tǒng)解決方案有以下幾種:
(1)采用審計(jì)的方法,即隨機(jī)選取服務(wù)器執(zhí)行的一小部分程序進(jìn)行驗(yàn)證,這就可能發(fā)生錯(cuò)誤執(zhí)行的程序沒有被服務(wù)器驗(yàn)證的情況,所以說這種方法必須假設(shè)錯(cuò)誤執(zhí)行的程序的發(fā)生頻率是很小的;
(2)利用可信硬件和遠(yuǎn)程證明來保證遠(yuǎn)程服務(wù)器運(yùn)行的程序是正確的,但是這種方法必須假設(shè)云提供商是完全可信的,由于硬件基礎(chǔ)設(shè)施是在云提供商的控制之下,如果云提供商內(nèi)部人員惡意控制了可信硬件(如CPU、TPM),就無法保障云提供商運(yùn)行的程序的機(jī)密性和可驗(yàn)證性.而且還需要假設(shè)存在一個(gè)可信鏈,而運(yùn)行時(shí)可信鏈的建立在可信計(jì)算領(lǐng)域依然是一個(gè)難題.事實(shí)上,在實(shí)際的云計(jì)算應(yīng)用場(chǎng)景中這兩個(gè)假設(shè)通常是無法滿足的.在云計(jì)算場(chǎng)景中,用戶無法完全相信云提供商,即使用戶出于聲譽(yù)的考慮相信云提供商本身,也無法相信其內(nèi)部管理人員;
(3)采用冗余計(jì)算的方法,用戶可以讓多個(gè)遠(yuǎn)程服務(wù)器把相同的程序執(zhí)行多次,然后檢測(cè)他們返回的結(jié)果是否一致.但這在云計(jì)算中也是行不通的,云計(jì)算中的軟硬件平臺(tái)配置通常是相同的,而這違背了冗余計(jì)算中錯(cuò)誤必須是不相關(guān)的假設(shè),且遠(yuǎn)程服務(wù)器很容易竄通,合謀返回一個(gè)錯(cuò)誤的程序執(zhí)行結(jié)果.
而可證明數(shù)據(jù)持有(Provable Data Possession,PDP)方法和可恢復(fù)證明(Proof of Retrievability,POR)方法可以用來確保存儲(chǔ)在遠(yuǎn)端的數(shù)據(jù)的完整性,避免云提供商刪除和篡改數(shù)據(jù).相比PDP方法,POR除了能確保數(shù)據(jù)的完整性之外,還能確保數(shù)據(jù)的可恢復(fù)性,但是PDP和POR無法確保在云提供商端執(zhí)行的程序的正確性.另一方面,基于復(fù)雜性理論的交互式證明系統(tǒng)(Interactive Proof system,IPs)和概率可驗(yàn)證證明系統(tǒng)(Probabilistically Checkable Proof system,PCPs)以及密碼學(xué)理論構(gòu)造的可驗(yàn)證計(jì)算協(xié)議能以很高的正確率檢測(cè)出遠(yuǎn)程服務(wù)器返回的程序執(zhí)行結(jié)果是否正確并且不需要對(duì)遠(yuǎn)程服務(wù)器(云提供商)做任何假設(shè).可驗(yàn)證計(jì)算協(xié)議致力于設(shè)計(jì)驗(yàn)證者與證明者之間的協(xié)議,協(xié)議允許在計(jì)算能力上相對(duì)較弱的驗(yàn)證者(如云計(jì)算中的用戶)將其程序發(fā)送到一個(gè)計(jì)算能力強(qiáng)大的,但不可信的證明者(例如云提供商),并要求證明者執(zhí)行其發(fā)送的程序.所設(shè)計(jì)的協(xié)議應(yīng)確保證明者不但返回程序的執(zhí)行結(jié)果給驗(yàn)證者,并且使得驗(yàn)證者相信這個(gè)程序執(zhí)行結(jié)果是正確的.其主要目標(biāo)是使得服務(wù)器在發(fā)送程序執(zhí)行結(jié)果的同時(shí)提供程序正確執(zhí)行的證據(jù),而用戶驗(yàn)證證據(jù)的過程必須要比用戶自己執(zhí)行程序的開銷小(當(dāng)然有時(shí)由于資源比如存儲(chǔ)的限制,用戶根本無法自己執(zhí)行程序,在這種情況下是指和假設(shè)用戶有足夠的資源執(zhí)行程序時(shí)的開銷相比要小)。
2 問題描述和協(xié)議設(shè)計(jì)原則問題描述:
驗(yàn)證者V把程序f和輸入變量x發(fā)送給證明者P,P計(jì)算f(x),并把f(x)賦值給變量y,返回y給V,然后V 和P 以如下方式進(jìn)行交互:
(1)如果y=f(x),那么P 應(yīng)該能向V 證明y的正確性,即使得V 接受y.其中,證明可以通過回答V 提出的一些問題完成,也可以通過給V 提供一個(gè)證書完成.
(2)如果y≠f(x),V 能以很高的概率拒絕接受y.可驗(yàn)證計(jì)算協(xié)議的設(shè)計(jì)必須滿足3個(gè)基本原則:(1)協(xié)議應(yīng)該使得驗(yàn)證者的開銷比其在本地執(zhí)行程序f(x)的開銷要低,但可以允許證明者為達(dá)到協(xié)議的目標(biāo)產(chǎn)生合理的開銷,因?yàn)樘峁┻\(yùn)行程序的正確性保障本身就需要用戶付出一定的代價(jià),在云計(jì)算實(shí)際場(chǎng)景中,表現(xiàn)為云提供商可能會(huì)對(duì)需要提供程序正確執(zhí)行證據(jù)的用戶收取額外的費(fèi)用;
(2)不能假設(shè)證明者完全遵守協(xié)議,也就是說證明者可能是惡意的,這和云計(jì)算中不能假設(shè)云提供商是完全可信的實(shí)際場(chǎng)景也是十分吻合的;
(3)f 應(yīng)該是通用程序,然而在具體的協(xié)議設(shè)計(jì)中,可能需要對(duì)f 表示的程序做一些假設(shè),從而通過限制可驗(yàn)證計(jì)算協(xié)議適用的應(yīng)用程序種類使得協(xié)議的性能達(dá)到實(shí)際應(yīng)用場(chǎng)景的要求,但是可驗(yàn)證計(jì)算協(xié)議的設(shè)計(jì)原則依然是盡量能表示通用程序.
通常的安全保障工具比如說病毒檢測(cè)關(guān)注的都是不正確的行為的識(shí)別和防范,可驗(yàn)證計(jì)算協(xié)議則有所不同,其不關(guān)心證明者可能的不正確行為,比如犯了什么錯(cuò)誤,出現(xiàn)了什么故障等等,而只關(guān)心其執(zhí)行程序的結(jié)果是否是正確的,卻無法推測(cè)程序錯(cuò)誤執(zhí)行的原因.這和云計(jì)算中用戶對(duì)于程序執(zhí)行的要求也是相符的.
3 協(xié)議流程和關(guān)鍵
3.1 可驗(yàn)證計(jì)算協(xié)議流程
可驗(yàn)證計(jì)算協(xié)議的流程主要包括編譯處理和證明系統(tǒng),具體流程如圖1所示.首先是編譯處理階段,驗(yàn)證者V 和證明者P 將高級(jí)語言(比如C 語言)編寫的`程序轉(zhuǎn)換成一組布爾電路集(根據(jù)協(xié)議的不同,也可以是其他計(jì)算模型比如算術(shù)電路集或者約束集等).接下來,P 和V 進(jìn)行一系列協(xié)議交互,不失一般性,這里用布爾電路集C表示程序f.V 把輸入變量x傳輸給P,P 計(jì)算C,輸出程序執(zhí)行結(jié)果y和C正確執(zhí)行的一組軌跡{C,x,y}給V,{C,x,y}也稱為C的一個(gè)可滿足性賦值z(mì).其中,C正確執(zhí)行的一組軌跡是指C的輸入線路被賦值為x,輸出線路被賦值為f(x)時(shí),電路集中所有電路門的賦值集合.在程序執(zhí)行的過程中,證明者P 獲得了正確計(jì)算電路的執(zhí)行軌跡{C,x,y}.如果P 聲稱的輸出y是不正確的,即y不等于f(x),那么對(duì)于{C,x,y},就不可能存在一個(gè)有效的執(zhí)行軌跡(電路C正確計(jì)算的一個(gè)證明).因此,如果P 能夠?qū)C,x,y}構(gòu)建一個(gè)有效的執(zhí)行軌跡,那么就一定能使得驗(yàn)證者V 相信它返回的結(jié)果是正確的.顯然,電路正確計(jì)算過程中的各個(gè)門的賦值本身就能說明存在有效的執(zhí)行軌跡.但是,如果需要V 依次驗(yàn)證所有電路門在計(jì)算電路過程中的值,進(jìn)而確定程序是否正確執(zhí)行,這個(gè)工作量和V 本地執(zhí)行f 是相當(dāng)?shù),這就違背了可驗(yàn)證計(jì)算協(xié)議設(shè)計(jì)的基本原則.所以,圖中第步就需要證明者對(duì)程序執(zhí)行軌跡編碼,生成一個(gè)很長(zhǎng)的字符串,并使得不同的執(zhí)行軌跡生成的編碼在所有不同的位置的取值是不相同的.這樣,驗(yàn)證者就可以通過檢查隨機(jī)選擇的編碼的特定的位置的取值,來驗(yàn)證執(zhí)行軌跡的有效性,進(jìn)而對(duì)返回的結(jié)果采取特定的測(cè)試來確定證明者返回的結(jié)果是否正確.
3.2 可驗(yàn)證計(jì)算協(xié)議的理論依據(jù)
理解可驗(yàn)證計(jì)算協(xié)議的原理和流程關(guān)鍵在于理解兩個(gè)等價(jià)關(guān)系,如3.1節(jié)所述,可驗(yàn)證計(jì)算協(xié)議的流程主要包括編譯處理和證明系統(tǒng).其中,編譯處理階段,編譯器完成高級(jí)語言程序到電路集或者約束集(可以看做方程組)等計(jì)算模型的轉(zhuǎn)化,其實(shí)現(xiàn)的理論依據(jù)在于等價(jià)關(guān)系:程序執(zhí)行的正確性等價(jià)于電路集或者約束集可滿足問題.
4 計(jì)算模型生成原理流程
為了應(yīng)用IPs和PCPs理論構(gòu)造可驗(yàn)證計(jì)算協(xié)議,必須先把高級(jí)語言程序轉(zhuǎn)換成IPs和PCPs 判定器可以接受的計(jì)算模型,比如說電路集和約束集.Cook-Levin 理論表明這種轉(zhuǎn)換理論上是可以的,因?yàn)槿魏纬绦騠 都可以用圖靈機(jī)來模擬,同時(shí)圖靈機(jī)可以轉(zhuǎn)換成布爾電路,且不會(huì)超過程序的步驟.目前可驗(yàn)證計(jì)算協(xié)議中編譯器都是基于Fairplay和Benjamin 編譯器設(shè)計(jì)的,常用的計(jì)算模型主要有電路集和約束集兩種.Fairplay編譯器和通常的硬件編譯器不同,不能使用寄存器,沒有時(shí)序邏輯,通過Fairplay Web 網(wǎng)站可以獲取該編譯器.Fairplay 可以用來把高級(jí)語言編寫的程序編譯成一組布爾電路集,但這種高級(jí)語言并不是通常所說的高級(jí)語言,而是一種類似Pascal或者C 語言的子集的程序語言,稱為(安全函數(shù)定義)SFDL 語言.Benjamin 提出的編譯器繼承并改進(jìn)了Fairplay 編譯器,用于把高級(jí)語言表示的程序編譯成一組約束集.這種編譯器也引入了一種類似SFDL 的高級(jí)程序語言,稱為擴(kuò)展函數(shù)描述BFDL.不失一般性,本文以Benjamin 編譯器為例說明從高級(jí)語言程序(C 語言為例)轉(zhuǎn)化成約束集的原理和工作流程.BFDL 的語法很容易理解,很多地方都是從C和Pascal語言繼承的.BFDL 語言使用C 風(fēng)格的語法,是一種靜態(tài)類型語言,支持類型引用:第一部分是類型聲明,定義將要使用的數(shù)據(jù)類型、支持布爾型、整型、結(jié)構(gòu)體和數(shù)組.
5 可驗(yàn)證計(jì)算協(xié)議分類
5.1 依據(jù)編譯器復(fù)雜程度分類
由第3節(jié)所述,可驗(yàn)證計(jì)算協(xié)議主要流程包括編譯處理和證明系統(tǒng)兩個(gè)階段,所以下文將依據(jù)協(xié)議流程對(duì)不同協(xié)議分類,并說明每種分類的特點(diǎn)和典型協(xié)議.
本文提到的協(xié)議中的編譯處理都是直接使用Fairplay和Benjamin編譯器或者對(duì)其改進(jìn)后使用,生成證明系統(tǒng)可以接受的計(jì)算模型.依據(jù)可驗(yàn)證計(jì)算協(xié)議使用的編譯器的復(fù)雜程度,可以分為簡(jiǎn)單編譯器的可驗(yàn)證計(jì)算協(xié)議和復(fù)雜編譯器的可驗(yàn)證計(jì)算協(xié)議.簡(jiǎn)單的編譯器是指不支持內(nèi)存隨機(jī)存取的編譯器,即不考慮內(nèi)存概念,假設(shè)程序的輸入都來源于驗(yàn)證者.簡(jiǎn)單編譯器的可驗(yàn)證計(jì)算協(xié)議包括GKR、CMT、Thaler、Allspice、Pepper、Ginger、Zaatar和Pinocchio等,其中Pinocchio是第一個(gè)直接接受C語言程序的協(xié)議,而其他協(xié)議則需要先將C語言程序轉(zhuǎn)化為另一種指定的高級(jí)語言比如BFDL語言,然后再轉(zhuǎn)化成證明系統(tǒng)可以接受的計(jì)算模型.GKR使用算術(shù)電路作為計(jì)算模型,相比較之前協(xié)議使用的布爾電路減少了程序編譯的開銷.CMT、Thaler、Allspice、Pepper基本沿用了GKR 中的編譯器,且Pepper對(duì)算術(shù)電路進(jìn)行了簡(jiǎn)化,Ginger擴(kuò)展了算術(shù)電路模型表示的程序種類,使得模型包含浮點(diǎn)數(shù)類型,不等測(cè)試,邏輯表達(dá)式,條件語句等等,因而使得模型能表示的程序更加接近于通用程序.Allspice編譯器通過增加了一個(gè)靜態(tài)分析器來自動(dòng)確定并運(yùn)行Zaatar或GKR兩個(gè)協(xié)議中效率較高的一個(gè),增加了協(xié)議的可擴(kuò)展性.
復(fù)雜編譯器的可驗(yàn)證計(jì)算協(xié)議包括Pantry和BCGTV.復(fù)雜的編譯器支持內(nèi)存操作,這更符合實(shí)際應(yīng)用場(chǎng)景.Pantry中的編譯器改進(jìn)了Zaatar和Pinocchio使用的編譯器,結(jié)合了不可信存儲(chǔ)中使用的技術(shù),使用Merkle-hash樹來支持內(nèi)存隨機(jī)存取.通過構(gòu)建一個(gè)二叉樹來表示內(nèi)存,二叉樹的每個(gè)葉節(jié)點(diǎn)存儲(chǔ)相應(yīng)內(nèi)存地址的值,每個(gè)內(nèi)部節(jié)點(diǎn)存儲(chǔ)作用于其子節(jié)點(diǎn)的抗沖突哈希函數(shù)的值.每當(dāng)驗(yàn)證者通過(根節(jié)點(diǎn)值、內(nèi)存地址)二元組訪問一個(gè)內(nèi)存地址(葉節(jié)點(diǎn))時(shí),證明者可以通過提供沿葉節(jié)點(diǎn)到根節(jié)點(diǎn)“證明路徑”的所有值來“證明”其返回值是正確的.證明者欺騙驗(yàn)證者的唯一方法是通過找到哈希函數(shù)中的沖突.由于Pantry使用的抗沖突哈希函數(shù)的計(jì)算函數(shù)可以有效地表示成約束集,從而使得內(nèi)存操作也可以有效的表示成約束集.如果把內(nèi)存操作也看作普通的程序,就可以實(shí)現(xiàn)包含內(nèi)存操作的程序的可驗(yàn)證計(jì)算了.更重要的是,Pantry支持“遠(yuǎn)程輸入”,這使其能更好的支持MapReduce程序,且在MapReduce程序中為了降低開銷定義了GetBlock和PutBlock兩種元操作來代替構(gòu)造Merklehash樹6 基于交互式證明系統(tǒng)的可驗(yàn)證計(jì)算協(xié)議 本文首先說明交互式證明系統(tǒng)是如何使驗(yàn)證者V確信它接收到的程序執(zhí)行結(jié)果是正確的,.假設(shè)要執(zhí)行的程序是計(jì)算輸入為x 的函數(shù)f.首先,驗(yàn)證者在把輸入x 和f傳輸給證明者,同時(shí)隨機(jī)選取關(guān)于輸入的低階多項(xiàng)式擴(kuò)展函數(shù)的值(比如加權(quán)和)作為秘密s,s不依賴于要執(zhí)行的程序,因此無需在輸入要執(zhí)行的程序之前選取秘密s.接下來,P和V 進(jìn)行一系列交互(d 輪,d 為電路層數(shù)),這些交互的目的在于V 控制并引導(dǎo)P從生成V0(0,0,…,0)=R0遞歸到Vd(Zd)=Rd(從一層的電路門的值的低階多項(xiàng)式擴(kuò)展函數(shù)的某個(gè)點(diǎn)的值遞歸到下一層的電路門的值的低階多項(xiàng)式擴(kuò)展函數(shù)的某個(gè)點(diǎn)的值,其中低階多項(xiàng)式擴(kuò)展函數(shù)是每層的線性組合,如加權(quán)和),Vd是輸入x的低階多項(xiàng)式擴(kuò)展函數(shù),V 此時(shí)的任務(wù)就是計(jì)算Vd在特定點(diǎn)Zd的函數(shù)值,并檢測(cè)和P 的回復(fù)是否一致.在這個(gè)過程中,V 發(fā)送給P 詢問向量Zi=(z1,z2,…,zm),P 計(jì)算Ri=Vi(Zi),用Ri回復(fù)V 的詢問.這些詢問向量(一共d個(gè))都是相關(guān)的,V 遞歸檢測(cè)P 對(duì)所有詢問向量的回復(fù)是否一致.V 隨機(jī)生成的詢問向量使得P 對(duì)第一個(gè)詢問向量的回復(fù)包含所執(zhí)行的程序f的結(jié)果的聲稱值.同樣的,P 對(duì)最后一個(gè)詢問的回復(fù)包含一個(gè)關(guān)于V 的輸入變量的低階多項(xiàng)式擴(kuò)展函數(shù)的某個(gè)點(diǎn)的值的聲稱Rd.如果P 對(duì)所有向量的回復(fù)都是一致的,且聲稱的值Rd和Rd的真實(shí)值相匹配,然后P 使得V 確信其遵守了協(xié)議,即正確的執(zhí)行了程序,因此接受結(jié)果.否則,V 知道P 在某個(gè)點(diǎn)欺騙它,因此拒絕接受.
6 問題與展望
目前可驗(yàn)證計(jì)算協(xié)議還只是“玩具”系統(tǒng),由于性能開銷過大,仍無法真正用于通用應(yīng)用程序和云計(jì)算的實(shí)際場(chǎng)景中.本文說這些協(xié)議接近實(shí)際場(chǎng)景,是因?yàn)橄鄬?duì)于相關(guān)理論的直接實(shí)現(xiàn)所產(chǎn)生的開銷來說,這些協(xié)議已經(jīng)有了質(zhì)的飛躍.在特定構(gòu)造的程序中,這些協(xié)議還是有意義的.而且,在某些需要犧牲性能來?yè)Q得安全性的場(chǎng)景下,比如在高確保計(jì)算場(chǎng)景中,為了掌握部署在遠(yuǎn)端的機(jī)器的運(yùn)行是否正常,通常愿意花費(fèi)比較大的代價(jià).更幸運(yùn)的是,現(xiàn)有可驗(yàn)證計(jì)算協(xié)議基于性能的考慮要求證明者有大量空閑的CPU周期,驗(yàn)證的程序有多個(gè)不同的實(shí)例(同一程序、不同輸入),這些和數(shù)據(jù)并行的云計(jì)算場(chǎng)景十分吻合,因而研究可驗(yàn)證計(jì)算協(xié)議,對(duì)于解決引言中提出的云計(jì)算中的程序執(zhí)行的可信問題從而構(gòu)建可信的云計(jì)算是有意義的.
然而,可驗(yàn)證計(jì)算協(xié)議領(lǐng)域以及其構(gòu)建可信云計(jì)算領(lǐng)域在以下幾個(gè)方面還有待進(jìn)一步的研究:
(1)相關(guān)的理論工具還有待于進(jìn)一步改進(jìn).
一方面需要通過理論工具的研究和改進(jìn)來降低驗(yàn)證者和證明者的開銷,尤其是要把證明者的開銷降低到一個(gè)合理的范圍,使得協(xié)議真正能用于實(shí)際的場(chǎng)景中.驗(yàn)證者的開銷可以分為固定的開銷(可以分?jǐn),通常指每個(gè)程序或者每次批處理的初始階段的開銷)和可變的開銷(程序的每個(gè)實(shí)例的驗(yàn)證開銷).研究如何降低驗(yàn)證者的可變開銷,研究能否使用密碼學(xué)操作和復(fù)雜的理論工具來降低或取消驗(yàn)證者初始階段的開銷.改進(jìn)基于無預(yù)處理的論證系統(tǒng)的可驗(yàn)證計(jì)算協(xié)議,使得其能用于實(shí)際場(chǎng)景.
另一方面,研究利用理論工具來建立更加合理的計(jì)算模型,用于高效的表示通用程序,從而提高協(xié)議的效率.目前的系統(tǒng)要不不能很好的處理循環(huán)結(jié)構(gòu),要不就是編譯的代價(jià)太高無法實(shí)用.BCGTV協(xié)議可以處理獨(dú)立于數(shù)據(jù)的循環(huán)的程序,但是其對(duì)于程序轉(zhuǎn)化成特殊的電路模型引入了過大的開銷.BCGTV和Pantry協(xié)議可以處理包含RAM 的程序,但是Pantry協(xié)議對(duì)內(nèi)存操作轉(zhuǎn)換成約束集也引入了過大的開銷(目前,在T 機(jī)器運(yùn)行的一些計(jì)算機(jī)程序原本需要T 步,轉(zhuǎn)換成由電路計(jì)算遠(yuǎn)遠(yuǎn)超過T 步).有必要改進(jìn)這兩種計(jì)算模型使得其既可以很好的處理循環(huán)結(jié)構(gòu)和RAM,又不至于引入過大的開銷.或者設(shè)計(jì)新的更加高效的計(jì)算模型來表示通用計(jì)算.
(2)在系統(tǒng)和編程語言方面值得研究.
針對(duì)已有的電路和約束計(jì)算模型,設(shè)計(jì)定制的高級(jí)程序語言,降低程序到計(jì)算模型的轉(zhuǎn)化開銷.目前,一些可驗(yàn)證計(jì)算協(xié)議編譯處理和證明系統(tǒng)的工作已經(jīng)有所交叉,而且很多協(xié)議在并行計(jì)算中性能更優(yōu),由于計(jì)算模型的高效轉(zhuǎn)化,可以使得驗(yàn)證的效率提高.所以設(shè)計(jì)一整套相應(yīng)的高級(jí)語言程序、計(jì)算模型、驗(yàn)證機(jī)器十分必要.
目前還沒有協(xié)議在真實(shí)的云計(jì)算場(chǎng)景中測(cè)試,開發(fā)適用于云計(jì)算實(shí)際場(chǎng)景的支持并發(fā)、訪問控制、合理結(jié)構(gòu)的數(shù)據(jù)庫(kù)應(yīng)用的可驗(yàn)證計(jì)算,使得協(xié)議支持多用戶數(shù)據(jù)庫(kù),才能更好的構(gòu)建可信的云計(jì)算.
(3)改變協(xié)議的目標(biāo)和原則,減少可驗(yàn)證計(jì)算
協(xié)議的限制條件,比如可驗(yàn)證計(jì)算協(xié)議的無條件假設(shè),即除了密碼學(xué)假設(shè)之外不做任何其他假設(shè).如果假設(shè)多個(gè)證明者之間不能相互交互、合謀,那么多證明協(xié)議相對(duì)單證明者的開銷則降低很多.實(shí)際上,如果假設(shè)兩個(gè)證明者至少有一個(gè)是計(jì)算正確的,就可以使得很多協(xié)議能用于特定構(gòu)造的場(chǎng)景中.
(4)增加安全相關(guān)的屬性用于構(gòu)建可信的云計(jì)算
Pinocchio、Pantry協(xié)議說明了在證明者對(duì)驗(yàn)證者隱藏詢問信息的場(chǎng)景下的簡(jiǎn)單應(yīng)用,還有很多地方值得研究,比如說提供隱私相關(guān)的其他安全屬性,可以用來保護(hù)云計(jì)算用戶的隱私.再比如說公開可驗(yàn)證性的特性使得任何擁有密碼的用戶都可以驗(yàn)證其可信性,這為第3方審計(jì)來保證云計(jì)算的可信性提供了良好的思路.
可驗(yàn)證計(jì)算協(xié)議把復(fù)雜的密碼學(xué)和理論計(jì)算機(jī)科學(xué)的研究成果用于實(shí)際本身就具有里程碑的意義.基于證據(jù)的可驗(yàn)證計(jì)算協(xié)議是一個(gè)趨勢(shì),這不僅使理論應(yīng)用于實(shí)際,而且開創(chuàng)了理論計(jì)算機(jī)新的研究領(lǐng)域.雖然可驗(yàn)證計(jì)算協(xié)議的性能和在云計(jì)算實(shí)際場(chǎng)景中的部署還有一定的距離.但是以當(dāng)前的研究節(jié)奏,相信不久的將來,就會(huì)有基于證據(jù)的可驗(yàn)證計(jì)算協(xié)議應(yīng)用到云計(jì)算的真實(shí)場(chǎng)景中.而且,可驗(yàn)證計(jì)算的潛力很大,遠(yuǎn)遠(yuǎn)不只是云計(jì)算.如果這個(gè)領(lǐng)域的研究性能降低到合理的范圍,除了驗(yàn)證云計(jì)算之外,還有更大的價(jià)值.將會(huì)有新的方法來構(gòu)建協(xié)議,在任何一個(gè)模塊為另一個(gè)模塊執(zhí)行程序的場(chǎng)景中都可以應(yīng)用.包括微觀層面(micro level),如果CPU可以驗(yàn)證GPU,則可以消除硬件錯(cuò)誤;宏觀層面(macro level)分布式計(jì)算將基于不同的可信假設(shè)構(gòu)建.而且,隨著計(jì)算能力的增加和計(jì)算成本的下降,原本無法實(shí)踐的協(xié)議也可以用于實(shí)際場(chǎng)景中.
【淺析基于可驗(yàn)證計(jì)算的可信云計(jì)算優(yōu)秀論文】相關(guān)文章:
云計(jì)算閱讀答案04-27
用計(jì)算器計(jì)算說課稿11-16
簡(jiǎn)便計(jì)算說課稿11-06
《時(shí)間的計(jì)算》教學(xué)反思05-10
《時(shí)間的計(jì)算》教學(xué)反思04-15