[發明專利]基于TPM/VTPM的可信程序列表生成方法及系統有效
| 申請號: | 201210160589.2 | 申請日: | 2012-05-22 |
| 公開(公告)號: | CN102722665A | 公開(公告)日: | 2012-10-10 |
| 發明(設計)人: | 高云偉;薛棟梁;孫毓忠 | 申請(專利權)人: | 中國科學院計算技術研究所 |
| 主分類號: | G06F21/00 | 分類號: | G06F21/00 |
| 代理公司: | 北京律誠同業知識產權代理有限公司 11006 | 代理人: | 祁建國;梁揮 |
| 地址: | 100080 北*** | 國省代碼: | 北京;11 |
| 權利要求書: | 查看更多 | 說明書: | 查看更多 |
| 摘要: | |||
| 搜索關鍵詞: | 基于 tpm vtpm 可信 程序 列表 生成 方法 系統 | ||
技術領域
本發明涉及可信程序列表,具體涉及一種計算機可信啟動過程中可信程序列表的生成方法,屬于可信計算領域。
背景技術
一個實體的行為以可預期的方式符合預期的目標,則該實體是可信的。從技術角度劃分,可信分為靜態可信和動態可信。靜態可信以TPM(可信平臺模塊)及部分BIOS(基本輸入輸出系統)作為為可信度量核心根,在加載運行新的程序前,先計算其Hash值,之后將Hash值擴展到TPM的PCR(平臺配置寄存器)中。動態可信基于CPU(中央處理器)的擴展特性比如Intel的TXT(可信執行技術)和TPM,在計算機啟動之后的任意時刻都可以構建一個隔離的可信計算環境。然而不論是靜態可信還是動態可信,它們都是面向遠程驗證的,即遠程的挑戰方定時要求被挑戰方提供其平臺的PCR及所加載程序的列表,之后遠程的挑戰方根據可信程序列表(或稱為指紋數據庫)確認被挑戰方平臺的可信性。考慮到遠程驗證需要定時同第三方進行平臺可信性驗證,其不可避免地存在著通信安全漏洞,同時如何保障第三方的可信性也是很大的問題,還有可信驗證和程序加載之間存在著的時間窗口也給系統的可信性帶來巨大的威脅。基于上述考慮,我們引入本地可信驗證方法,即將可信程序列表保存在本地,系統或程序啟動過程中實時地驗證其可信性,若不可信則中止系統或程序的執行,避免惡意程序進一步擴散。然而在本地可信驗證方法中,如何保證可信程序列表的安全性和易用性就非常重要。
發明內容
為解決上述問題,本發明目的提供一種可信程序列表的生成方法,經由這種方法生成的可信列表易于使用,同時其安全性也非常好。
本發明公開一種基于TPM/VTPM的可信程序列表生成方法,包括:
步驟1,更改計算機的啟動配置,將啟動模式改為可信程序列表生成模式并設置數據封存或解封密碼,啟動計算機;
步驟2,BIOS將封存保護的Boot?Loader(啟動加載器)的Hash值保存到TPM或VTPM的非易失性存儲中;BIOS只能封存保護Boot?Loader的第一部分,后續部分由前一部分封存保護;
步驟3,Boot?Loader將封存保護的操作系統內核及相關模塊的Hash值保存到TPM或VTPM的非易失性存儲中;
步驟4,操作系統內核將封存保護的關鍵或全部可執行程序、內核模塊和動態庫的可信程序列表保存至文件系統指定文件中。
所述的基于TPM/VTPM的可信程序列表生成方法,還包括:
步驟5,虛擬機的操作系統內核將步驟2及步驟3中保存到VTPM非易失性存儲的數據以及步驟4中保存到文件系統中的文件,傳輸到管理域或主機的文件系統指定位置,并清除步驟2及步驟3中保存到VTPM非易失性存儲的數據以及步驟4中保存到文件系統中的文件;虛擬機啟動完畢后使用的過程中,虛擬機用戶根本無法讀取這些可信程序列表,進一步增強了這些列表的安全性。
所述的基于TPM/VTPM的可信程序列表生成方法,所述步驟2還包括:
步驟31,BIOS讀取啟動介質中Boot?Loader的相關扇區到內存中;
步驟32,計算內存中的Boot?Loader相關扇區的Hash值,添加到Hash數組hashes1;
步驟33,以數據封存密碼調用TPM或VTPM的Seal功能封存保護hashes1數組,生成二進制數據blob1,其中blob1為非易失性存儲數據;
步驟34,調用TPM或VTPM的DefineSpace和WriteValueAuth功能保存blob1到TPM或VTPM的非易失性存儲區,TPM或VTPM返回數據索引i1,其中DefineSpace為從非易失性存儲中分配的空間,WriteValueAuth為將數據寫到分配的空間中。
所述的基于TPM/VTPM的可信程序列表生成方法,所述步驟3還包括:
步驟41,Boot?Loader讀取操作系統內核及相關模塊到內存中;
步驟42,計算內存中的操作系統內核及相關模塊的Hash值,并分別添加到Hash數組hashes2;
步驟43,以數據封存密碼調用TPM或VTPM的Seal功能封存保護hashes2數組,生成二進制數據blob2,其中blob2為非易失性存儲數據;
步驟44,調用TPM或VTPM的DefineSpace和WriteValueAuth功能保存blob2到TPM或VTPM的非易失性存儲區,TPM或VTPM返回數據索引i2。
所述的基于TPM/VTPM的可信程序列表生成方法,所述步驟4還包括:
該專利技術資料僅供研究查看技術是否侵權等信息,商用須獲得專利權人授權。該專利全部權利屬于中國科學院計算技術研究所,未經中國科學院計算技術研究所許可,擅自商用是侵權行為。如果您想購買此專利、獲得商業授權和技術合作,請聯系【客服】
本文鏈接:http://www.szxzyx.cn/pat/books/201210160589.2/2.html,轉載請聲明來源鉆瓜專利網。





