邴丕政 戴紫彬 戴 強(qiáng)
(解放軍信息工程大學(xué)密碼工程學(xué)院 河南 鄭州 450001)
基于哈希樹(shù)的度量證據(jù)可信存儲(chǔ)方案設(shè)計(jì)
邴丕政 戴紫彬 戴 強(qiáng)
(解放軍信息工程大學(xué)密碼工程學(xué)院 河南 鄭州 450001)
計(jì)算平臺(tái)的可信性由遠(yuǎn)程證明過(guò)程中提供的度量證據(jù)進(jìn)行驗(yàn)證,驗(yàn)證程序根據(jù)計(jì)算平臺(tái)在啟動(dòng)過(guò)程創(chuàng)建的度量證據(jù)建立信任。度量值擴(kuò)展操作創(chuàng)建的度量證據(jù)和相關(guān)度量記錄是線性的,查找效率較低。提出一種基于平衡二叉哈希樹(shù)的構(gòu)建度量證據(jù)的方法。計(jì)算平臺(tái)上組件的度量值作為樹(shù)葉,所有組件的度量值集合的度量值作為樹(shù)根。在驗(yàn)證計(jì)算平臺(tái)的過(guò)程中,使用哈希樹(shù)的度量記錄和根寄存器,在度量證據(jù)與標(biāo)準(zhǔn)值比較時(shí)顯著提高錯(cuò)誤組件查找的速度,從而提高效率。實(shí)驗(yàn)結(jié)果表明,平衡二叉哈希樹(shù)模型在不增加空間復(fù)雜度的同時(shí),查詢時(shí)間開(kāi)銷顯著減少。
平衡二叉哈希樹(shù) 遠(yuǎn)程證明 錯(cuò)誤定位 可信計(jì)算
計(jì)算平臺(tái)啟動(dòng)期間,BIOS、bootloader、操作系統(tǒng)、應(yīng)用程序等組件都需要經(jīng)過(guò)計(jì)算平臺(tái)的度量,一級(jí)信任一級(jí)地產(chǎn)生信任鏈。組件度量值由組件代碼和配置數(shù)據(jù)經(jīng)過(guò)計(jì)算平臺(tái)的哈希運(yùn)算產(chǎn)生,并存儲(chǔ)在平臺(tái)配置寄存器PCR(Platform Configuration Register)中,其存儲(chǔ)狀態(tài)受到保護(hù)。在對(duì)PCR進(jìn)行擴(kuò)展的同時(shí),組件在存儲(chǔ)度量日志SML(Storage Measurement Log)中記錄度量中間步驟的度量值和度量事件,不需要保護(hù)措施。安全啟動(dòng)完成后,度量值作為度量證據(jù)唯一確定平臺(tái)的可信狀態(tài)。
基于完整性度量架構(gòu),每個(gè)組件均包含一個(gè)完整性參考清單RM(Reference Menu)結(jié)構(gòu),該結(jié)構(gòu)提供組件的完整性參考值。遠(yuǎn)程證明中的相關(guān)對(duì)象需要加密存儲(chǔ)。平臺(tái)上使用身份認(rèn)證密鑰AIK(Attestation Identity Key)對(duì)當(dāng)前存儲(chǔ)的PCR值進(jìn)行簽名,然后報(bào)告平臺(tái)狀態(tài)。在進(jìn)行平臺(tái)驗(yàn)證時(shí),SML與相關(guān)PCR的值同時(shí)交給驗(yàn)證平臺(tái)進(jìn)行驗(yàn)證,驗(yàn)證平臺(tái)首先根據(jù)PCR的值驗(yàn)證SML的可信性,再根據(jù)SML查找相應(yīng)的RM結(jié)構(gòu),通過(guò)比較SML提交的平臺(tái)度量證據(jù)與RM結(jié)構(gòu)中的參考信息進(jìn)行評(píng)估,得出驗(yàn)證結(jié)論。SML的線性結(jié)構(gòu)決定了其在靈活性和效率上的局限性。Schmidt等[1]提出的改進(jìn)默克爾哈希樹(shù)模型來(lái)進(jìn)行平臺(tái)的遠(yuǎn)程證明,其模型的構(gòu)建基于滿二叉樹(shù),空間利用率不高。李俊中[2]提出以默克爾哈希樹(shù)模型作為完整性驗(yàn)證方案,通過(guò)數(shù)據(jù)塊簽名及標(biāo)簽綁定,完成動(dòng)態(tài)的數(shù)據(jù)操作。但是實(shí)際應(yīng)用中需要進(jìn)行頻繁的數(shù)據(jù)填充操作,其滿二叉樹(shù)的結(jié)構(gòu)也易造成額外空間開(kāi)銷。朱毅等[3]提出以非平衡二叉樹(shù)為基礎(chǔ)改進(jìn)哈希樹(shù)模型,其節(jié)點(diǎn)數(shù)量動(dòng)態(tài)增加,空間利用率高。該模型上的節(jié)點(diǎn)查找操作性能不佳。
本文提出一種方案,通過(guò)平衡二叉哈希樹(shù)構(gòu)造度量證據(jù)的數(shù)據(jù)組織方式,同時(shí)擴(kuò)展SML。該數(shù)據(jù)結(jié)構(gòu)在度量證據(jù)與標(biāo)準(zhǔn)值比較時(shí)定位錯(cuò)誤組件的效率更高,并且允許動(dòng)態(tài)增加組件以進(jìn)行更高效的驗(yàn)證。同時(shí)該結(jié)構(gòu)增加了每一點(diǎn)上的可擴(kuò)展性,其靈活性大大增強(qiáng)。
1.1 線性鏈及其產(chǎn)生步驟
度量證據(jù)存儲(chǔ)在TPM的PCR中,受到平臺(tái)保護(hù),在TPM中僅由授權(quán)指令訪問(wèn)。TPM通過(guò)擴(kuò)展操作規(guī)定度量證據(jù)的計(jì)算方法,其本質(zhì)是構(gòu)造線性順序的內(nèi)嵌哈希值鏈,計(jì)算過(guò)程如下:
Vi(k)=H(Vi(k-1)‖mk)
其中,Vi表示平臺(tái)配置寄存器(i=0,1,…,23),H是抗碰撞哈希函數(shù)(TPM中以SHA1為例實(shí)現(xiàn)),mk的值是數(shù)據(jù)的哈希值,順序啟動(dòng)過(guò)程的第k個(gè)度量值。擴(kuò)展操作在TPM安全執(zhí)行環(huán)境的內(nèi)部執(zhí)行。在原值的基礎(chǔ)上進(jìn)行擴(kuò)展操作,如果被度量的數(shù)據(jù)發(fā)生變化,運(yùn)算出的度量值將會(huì)發(fā)生變化。這種機(jī)制可判斷并保障平臺(tái)狀態(tài)信息是否可信,將PCR結(jié)果和SML一同比較,可驗(yàn)證平臺(tái)是否有新的進(jìn)程注入,同時(shí)也能發(fā)現(xiàn)攻擊者的惡意攻擊。圖1表示平臺(tái)配置寄存器的線性鏈結(jié)構(gòu),由擴(kuò)展操作產(chǎn)生,最終狀態(tài)由PCR記錄并保護(hù)。
圖1 線性鏈擴(kuò)展
1.2 錯(cuò)誤定位
驗(yàn)證程序比較SML的每個(gè)度量證據(jù)和相關(guān)組件的標(biāo)準(zhǔn)值,若度量證據(jù)與標(biāo)準(zhǔn)值不同,表示相應(yīng)組件的錯(cuò)誤。線性鏈度量證據(jù)的錯(cuò)誤組件定位需要追蹤度量證據(jù)的位置,即當(dāng)SML包含N個(gè)度量證據(jù)時(shí),至少需要計(jì)算復(fù)雜度為N的擴(kuò)展操作(PCR值的SHA1操作)和對(duì)標(biāo)準(zhǔn)值的N次搜索,以確定被修改的度量證據(jù)的位置。
線性鏈度量證據(jù)在查找上的局限性,使得由線性鏈擴(kuò)展操作構(gòu)建的度量證據(jù)對(duì)平臺(tái)遠(yuǎn)程證明和組件修復(fù)等高級(jí)管理功能都有局限性。實(shí)際的SML存儲(chǔ)空間有大量組件的度量證據(jù),若是以線性搜索的方法篩選錯(cuò)誤的組件,代價(jià)昂貴且效率較低。
平臺(tái)度量證據(jù)的處理需要滿足:(1) 度量證據(jù)包含足夠多的信息,允許計(jì)算平臺(tái)提供獨(dú)立的、受密碼保護(hù)的度量證據(jù),保證度量證據(jù)在傳遞過(guò)程中的可信,防止證據(jù)被篡改或者泄露;(2) 計(jì)算平臺(tái)的標(biāo)準(zhǔn)值對(duì)驗(yàn)證平臺(tái)而言是可獲得的,既要保證標(biāo)準(zhǔn)值的機(jī)密性,又要保證其授權(quán)訪問(wèn)。
2.1 哈希樹(shù)度量證據(jù)的構(gòu)建
為了使構(gòu)造算法盡可能簡(jiǎn)潔高效,提供錯(cuò)誤組件的快速查詢功能,本解決方案采用平衡二叉哈希樹(shù)進(jìn)行構(gòu)造。樹(shù)葉節(jié)點(diǎn)攜帶組件的度量證據(jù),樹(shù)根的度量證據(jù)是整個(gè)平臺(tái)的度量證據(jù)的集合,存儲(chǔ)于PCR;非樹(shù)葉節(jié)點(diǎn)攜帶的度量證據(jù)存儲(chǔ)在SML中。SML組織度量證據(jù)的數(shù)據(jù)結(jié)構(gòu)支持標(biāo)準(zhǔn)樹(shù)的操作和遍歷。平臺(tái)驗(yàn)證期間,SML支持新葉子的順序增加并保持左右子樹(shù)的關(guān)系。在深度為d的樹(shù)的葉子上增加新的度量證據(jù),需要重新計(jì)算所有深度為d-1的樹(shù)葉的內(nèi)部節(jié)點(diǎn)的度量證據(jù)。
平衡二叉哈希樹(shù)的構(gòu)造必須滿足如下條件:(1) 哈希樹(shù)的左子樹(shù)和右子樹(shù)的深度之差的絕對(duì)值不超過(guò)1;(2) 哈希樹(shù)的左子樹(shù)和右子樹(shù)也是一顆平衡二叉哈希樹(shù)。樹(shù)中每個(gè)節(jié)點(diǎn)的信息包括節(jié)點(diǎn)的左子樹(shù)、結(jié)點(diǎn)的右子樹(shù)、節(jié)點(diǎn)的度量證據(jù)、節(jié)點(diǎn)的深度。經(jīng)過(guò)分析得出,自下而上構(gòu)造平衡二叉哈希樹(shù)的算法如下所示。
node_t insert_node(node_t)
R、B、M newnode();
M->left = R;
M->right = B;
M->data = measure(R->data,B->data);
//構(gòu)造初始最簡(jiǎn)二叉樹(shù)
While(Vi != NULL)
//度量值成功寫(xiě)入時(shí)向二叉樹(shù)中添加節(jié)點(diǎn)
Mi = newnode();
Mi->left = M;
Mi->right = Vi;
Mi->data = HASH(M || Vi);
//新添加節(jié)點(diǎn)的信息填充
if(Height(Mi->left) - Height(Mi->right) ==-2)
//樹(shù)出現(xiàn)不平衡,需要左旋轉(zhuǎn)的情況
M = LeftRotate(Mi);
else if(Height(Mi->left) - Height(Mi->right)==2)
//樹(shù)出現(xiàn)不平衡,需要右旋轉(zhuǎn)的情況
M = RightRotate(Mi);
M->height = MAX( Height(M->left),Height(M->right) ) + 1;
//重新計(jì)算樹(shù)的平衡度
remeasure(M);
//重新計(jì)算整棵樹(shù)的節(jié)點(diǎn)度量值
return M;
其中,Vi表示存放組件度量證據(jù)的寄存器,初始化為NULL。自下而上地構(gòu)建基于度量證據(jù)的平衡二叉哈希樹(shù)的步驟如下。
第一步 每一個(gè)組件的度量證據(jù)均存放在PCR中,兩個(gè)組件完成度量,將它們的度量證據(jù)進(jìn)行擴(kuò)展,動(dòng)態(tài)添加新的樹(shù)節(jié)點(diǎn)并存放其中,令新節(jié)點(diǎn)為兩個(gè)組件葉子節(jié)點(diǎn)的父親。因此構(gòu)造出一棵最簡(jiǎn)單的基于兩個(gè)組件度量證據(jù)的平衡二叉哈希樹(shù)。如圖2所示。
圖2 平衡二叉哈希樹(shù)的構(gòu)造過(guò)程
第二步 當(dāng)有其他組件度量完成時(shí),將其證據(jù)跟最新的擴(kuò)展證據(jù)進(jìn)行擴(kuò)展,生成的擴(kuò)展證據(jù)作為最新的樹(shù)的根。此時(shí)需要注意,若破壞了平衡二叉哈希樹(shù)的條件之一導(dǎo)致樹(shù)的不平衡,需要進(jìn)行節(jié)點(diǎn)的旋轉(zhuǎn)。涉及到的旋轉(zhuǎn)類型包括左旋轉(zhuǎn)和右旋轉(zhuǎn)。其中右旋轉(zhuǎn)的具體操作如圖3所示。
圖3 調(diào)整樹(shù)平衡的右旋轉(zhuǎn)操作
經(jīng)過(guò)多次旋轉(zhuǎn),最終達(dá)到構(gòu)造平衡二叉哈希樹(shù)的兩個(gè)條件即可。
第三步 旋轉(zhuǎn)完成后,重新計(jì)算非葉子結(jié)點(diǎn)的中間度量證據(jù)。最終生成的樹(shù)中,其樹(shù)根是所有組件的度量證據(jù)的集合后的哈希root_hash,中間節(jié)點(diǎn)是組件之間度量證據(jù)的集合后哈希,樹(shù)葉是單個(gè)組件的度量證據(jù)。
2.2 遠(yuǎn)程證明步驟
計(jì)算平臺(tái)在進(jìn)行遠(yuǎn)程證明行為時(shí),遵循可信計(jì)算規(guī)范,加入TPM簽名步驟。流程及步驟如圖4所示。
圖4 遠(yuǎn)程身份證明流程
(1) 計(jì)算平臺(tái)及挑戰(zhàn)者進(jìn)行挑戰(zhàn)—應(yīng)答。
(2) 挑戰(zhàn)者生成160 bit的隨機(jī)數(shù)nonce,用于避免重放攻擊,并將該隨機(jī)數(shù)傳給計(jì)算平臺(tái)。
(3) 計(jì)算平臺(tái)從TPM產(chǎn)生的受保護(hù)的根密鑰SRK中獲取用于簽名的AIK私鑰,并對(duì)root_hash和nonce進(jìn)行加密簽名;獲取SML。計(jì)算平臺(tái)發(fā)送數(shù)據(jù)包給挑戰(zhàn)者,該數(shù)據(jù)包包含對(duì)nonce和SML的簽名和AIK的公鑰。
(4) 挑戰(zhàn)者驗(yàn)證AIK證書(shū)和簽名,獲得root_hash和SML值,處理SML并重新計(jì)算接收的PCR值,比較這兩個(gè)值是否匹配,檢査SML是否有效并且是否受到攻擊。
(5) 若匹配,說(shuō)明計(jì)算平臺(tái)處于可信狀態(tài);若不匹配,計(jì)算平臺(tái)驗(yàn)證身份失敗,需要定位錯(cuò)誤的組件構(gòu)成的子集。
驗(yàn)證程序從樹(shù)根開(kāi)始查找。在采用深度優(yōu)先搜索遍歷整棵樹(shù)的過(guò)程中,會(huì)產(chǎn)生度量證據(jù)跟標(biāo)準(zhǔn)值不同的組件的葉子節(jié)點(diǎn)集合。節(jié)點(diǎn)的值跟標(biāo)準(zhǔn)值作比較,不相等則說(shuō)明其子樹(shù)的樹(shù)葉代表的組件已經(jīng)被破壞,繼續(xù)針對(duì)其子節(jié)點(diǎn)繼續(xù)比較直至樹(shù)葉;相等則說(shuō)明其子樹(shù)的樹(shù)葉代表的組件完整性經(jīng)過(guò)驗(yàn)證,停止比較。結(jié)果標(biāo)記為g表示一致,標(biāo)記為b表示不符。結(jié)果標(biāo)記用圖5表示。
圖5 錯(cuò)誤定位標(biāo)記結(jié)果
在圖5(a)中,父節(jié)點(diǎn)及其子樹(shù)通過(guò)度量證據(jù)的驗(yàn)證,遍歷該節(jié)點(diǎn)的葉子節(jié)點(diǎn),表示平臺(tái)組件的完整性沒(méi)有受到惡意篡改,平臺(tái)是可信的。在圖5(b)中,驗(yàn)證程序計(jì)算父節(jié)點(diǎn)與度量證據(jù)比較失敗,向下遍歷到子節(jié)點(diǎn)的值,并比較子節(jié)點(diǎn)的完整性。通過(guò)這種方式,驗(yàn)證過(guò)程向下遍歷到下一個(gè)樹(shù)層,通過(guò)錯(cuò)誤的度量證據(jù)找到子樹(shù)的樹(shù)葉、左樹(shù)葉、右樹(shù)葉或者左右樹(shù)葉。
首先考慮構(gòu)造平衡二叉哈希樹(shù)算法的空間復(fù)雜度。平衡二叉哈希樹(shù)的構(gòu)造需要考慮兩個(gè)關(guān)鍵的因子:樹(shù)的深度、樹(shù)的葉子節(jié)點(diǎn)數(shù)??紤]最壞情況,即平衡二叉哈希樹(shù)是一個(gè)完全填充的深度為h的滿二進(jìn)制樹(shù),含有2h-1個(gè)節(jié)點(diǎn),均存儲(chǔ)在SML。在這種情況下,哈希樹(shù)SML的存儲(chǔ)空間約為兩倍的線性鏈SML存儲(chǔ)空間大小,即符合下列等式:
2h-1≈2h-1×2
考慮到兩種方案的PCR都只存儲(chǔ)樹(shù)葉的度量證據(jù),中間節(jié)點(diǎn)的度量證據(jù)中間值只存儲(chǔ)在SML中,這樣的空間開(kāi)銷是可接受的。
然后考慮時(shí)間復(fù)雜度。在平衡二叉哈希樹(shù)上的遍歷工作,其遍歷過(guò)程中和給定標(biāo)準(zhǔn)值進(jìn)行判定的關(guān)鍵字個(gè)數(shù)不會(huì)超過(guò)樹(shù)的深度。假設(shè)深度為h的平衡二叉哈希樹(shù)含有的最大節(jié)點(diǎn)數(shù)為Nh。顯然有:
N0=0N1=1N2=2
且有下式成立:
Nh=Nh-1+Nh-2+1
利用歸納法和斐波那契序列性質(zhì)容易證明:當(dāng)h≥0時(shí),含有n個(gè)節(jié)點(diǎn)的平衡二叉哈希樹(shù)的最大深度為:
因此,在平衡二叉哈希樹(shù)上進(jìn)行查找的時(shí)間復(fù)雜度為O(logn)。
為在實(shí)踐中驗(yàn)證該方案的可行性,在CentOS6.4系統(tǒng)下搭建以開(kāi)源項(xiàng)目TPM-Emulator為硬件TPM模擬環(huán)境,IBM開(kāi)源軟件TrouSerS為軟件基礎(chǔ)環(huán)境的實(shí)驗(yàn)平臺(tái),經(jīng)過(guò)源代碼的修改實(shí)現(xiàn)計(jì)算平臺(tái)的TCM軟件棧。實(shí)驗(yàn)環(huán)境如表1所示。
表1 實(shí)驗(yàn)環(huán)境
TPM調(diào)用TPM_TREE_EXTEND作為平衡二叉哈希樹(shù)構(gòu)造的命令,其輸入與原構(gòu)造線性鏈的命令TPM_EXTEND相同。TPM利用PCR的標(biāo)記指明當(dāng)前二叉樹(shù)的樹(shù)根,其值為度量證據(jù)的中間結(jié)果。TPM_TREE_EXTEND命令的返回值為更新過(guò)的度量證據(jù),按序排列。樹(shù)構(gòu)造成功時(shí)得到的最終的度量證據(jù)代表平臺(tái)的可信。
為了測(cè)試構(gòu)造平衡二叉哈希樹(shù)算法的性能,將任意的160bit的數(shù)據(jù)作為T(mén)PM_TREE_EXTEND命令的輸入。我們假定這些人工生成的輸入作為測(cè)試用例的度量證據(jù)。使用函數(shù)SystemNanoTime對(duì)執(zhí)行時(shí)間進(jìn)行計(jì)算。輸入的度量證據(jù)分別為215、217、219,從處理器頻率為2.53GHz的系統(tǒng)開(kāi)機(jī)引導(dǎo)模擬開(kāi)始執(zhí)行。實(shí)驗(yàn)得出的信任鏈構(gòu)造的時(shí)間曲線如圖6所示。
圖6 構(gòu)造時(shí)間比較
由圖6的結(jié)果表明,在線性鏈結(jié)構(gòu)的PCR度量值擴(kuò)展操作過(guò)程中,每進(jìn)行一次擴(kuò)展,算法只需要進(jìn)行數(shù)據(jù)的線性變換,所耗時(shí)間基于數(shù)據(jù)量的大小呈線性關(guān)系;在二叉樹(shù)樹(shù)式結(jié)構(gòu)的度量值擴(kuò)展操作過(guò)程中,每進(jìn)行一次擴(kuò)展,算法需要進(jìn)行樹(shù)的旋轉(zhuǎn)操作、樹(shù)的遍歷操作、重新計(jì)算除了樹(shù)葉之外的所有非樹(shù)葉節(jié)點(diǎn)的中間度量數(shù)據(jù)結(jié)果,因此時(shí)間基于數(shù)據(jù)量的大小呈現(xiàn)上升趨勢(shì)。
線性鏈的查找時(shí)間和平衡二叉哈希樹(shù)的遍歷時(shí)間的比較如圖7所示。
圖7 查找時(shí)間比較
圖7結(jié)果表明,當(dāng)驗(yàn)證失敗,需要定位錯(cuò)誤的時(shí)候,線性鏈結(jié)構(gòu)的查找采用順序查找,時(shí)間消耗基于數(shù)據(jù)量的大小逐漸升高;平衡二叉哈希樹(shù)的遍歷采用先序遍歷,遍歷的時(shí)間跟樹(shù)的高度相關(guān)。隨著數(shù)據(jù)量的增加,樹(shù)的高度較好地維持在O(logn),查找時(shí)間也相對(duì)穩(wěn)定。因此組件的度量證據(jù)數(shù)據(jù)量越龐大,平衡二叉哈希樹(shù)表現(xiàn)出來(lái)的查找優(yōu)勢(shì)越明顯。
本文在總結(jié)了度量證據(jù)生成過(guò)程中線性鏈機(jī)制錯(cuò)誤組件查找效率不佳的基礎(chǔ)上,利用二叉樹(shù)搜索時(shí)間復(fù)雜度為對(duì)數(shù)級(jí)的特性,構(gòu)造了以平衡二叉哈希樹(shù)為數(shù)據(jù)組織形式的度量證據(jù)可信存儲(chǔ)方案,實(shí)現(xiàn)了查找效率上的提升。最后搭建實(shí)驗(yàn)平臺(tái),給出鏈?zhǔn)胶蜆?shù)式的度量證據(jù)構(gòu)造和查詢的時(shí)間對(duì)比。結(jié)果顯示該方案的空間復(fù)雜度保持在O(n)情況下,查找時(shí)間大大減少,性能大大提升。
[1]AndreasUSchmidt,AndreasLeicher,AndreasBrett,etal.Tree-formedVerificationDataforTrustedPlatforms[J].ComputersandSecurity,2012,4(18):1-15.
[2] 李俊中.云存儲(chǔ)環(huán)境下數(shù)據(jù)完整性驗(yàn)證方法研究[D].重慶:重慶郵電大學(xué),2013.
[3] 朱毅,李清寶,鐘春麗,等.用于細(xì)粒度完整性度量的非平衡二叉哈希樹(shù)模型[J].小型微型計(jì)算機(jī)系統(tǒng),2014,7(35):1604-1609.
[4]SchmidtAU,LeicherA,ChaI,etal.Trustedplatformvalidationandmanagement[J].InternationalJournalofDependableandTrustworthyInformationSystems,2010,1(2):1-31.
[5] 王防修,周康.一種構(gòu)建嚴(yán)格平衡二叉搜索樹(shù)的非遞歸算法[J].武漢工業(yè)學(xué)院學(xué)報(bào),2013,32(4):32-34.
[6]SchmidtAU,LeicherA,ChaI.Scalingconceptsbetweentrustandenforcement,in:Z.Yan(Ed.),TrustModelingandManagementinDigitalEnvironments:FromSocialConcepttoSystemDevelopment[J].IGIGlobal,Hershey,2010,2(54):20-57.
[7] 中國(guó)國(guó)家密碼管理局.可信計(jì)算密碼支撐平臺(tái)功能接口與規(guī)范[EB/OL].[2011-02-19].http://www.oscca.gov.cn/Doc/6/News_1132.htm.
[8] 王江,少余綜,李光.可信計(jì)算之信任鏈技術(shù)研究[J].計(jì)算機(jī)工程與設(shè)計(jì),2008,29(9):2195-2198.
[9]SailerR,ZhangX,JaegerT,etal.DesignandimplementationofaTCG-basedintegritymeasurementarchitecture[J].Proceedingsofthe13thUSENIXSecuritySymposium,2004,7(31):223-238.
[10]ElbazR,ChampagneD,GebotysC,etal.Hardwaremechanismsformemoryauthentication:Asurveyofexistingtechniquesandengines[J].TransactionsonComputationalScience,2009,4(5430):1-22.
THE DESIGN OF CREDIBLE STORAGE SCHEME ON MEASUREMENT EVIDENCE BASED ON HASH TREE
Bing Pizheng Dai Zibin Dai Qiang
(InstituteofCryptographicEngineering,People’sLiberationArmyInformationEngineeringUniversity,Zhengzhou450001,Henan,China)
The credibility of computing platform is verified by the measurement evidence provided in the process of remote attestation procedure, and the verification procedures build trust according to the measurement evidence which is created in the startup process of the computing platform. However, the measurement evidence and the associated measurement record which are created by extended operation of measurement are linear, with a low researching efficiency. Thus, a method of creating measurement evidence is proposed based on balanced binary hash tree. On the computing platform, the component measurement values are represented as leaves, and the set of measurement value of all components are represented as the roots of a hash tree. In the process of verifying computing platform, the hash tree measurement records and the root registers are used to increase the searching speed of fault component when the measurement evidence is compared with the standard value. The experimental results show that the proposed model reduces time cost without increasing space complexity.
Balanced binary hash tree Remote attestation Fault localization Trusted computing
2015-11-04。邴丕政,碩士生,主研領(lǐng)域:信息安全。戴紫彬,教授。戴強(qiáng),博士。
TP309
A
10.3969/j.issn.1000-386x.2017.01.057