可信平臺(二)完整性測量

1、測量事件
測量的核心程序產生測量事件。一個測量事件包含兩類數據:
①測量值:用於表示嵌入式的數據或程序代碼;
②測量的信息摘要:測量值的hash結果。

2、產生
測量的核心程序通過掃描數據產生信息摘要。
信息摘要是(當前)機器運行狀態的快照。
新的測量值被添加進信息摘要中並重新進行hash,因此更像是信息摘要的擴展。
這樣的擴展必須保證相關的測量值不能被忽略並且保留操作順序。

3、存儲
測量值和測量摘要分開存儲。測量摘要通過RTR和RTS功能存儲在TPM中。
測量值(通常指測量的存儲日誌Stored Measurement Log -SML)可以由測量的核心程序存儲在其認可的任何位置。
事實上,測量值根本不必存儲,而只是在需要連續表達的時候能夠重新進行計算。

4、存儲日誌
測量的存儲日誌SML(Stored Measurement Log (SML))包含了相關的測量值的若干個序列,每一個序列共享一個公共的測量信息摘要。
TCG並不定義SML內容的編碼規則,但是推薦使用類似XML語言的編碼標準以保證其可以被廣泛接受。
SML的容量可能會非常大,因此,SML不存儲在TPM的內部。
因爲當SML受到攻擊時,攻擊是可以被檢測到的,所以SML不需要受到TPM的保護。
但是,由於SML還易受到拒絕服務攻擊,實施者應對SML進行復製備份或重新生成日誌。

5、平臺配置寄存器
TPM中有一組稱爲平臺配置寄存器(PCR)的寄存器組用於保存測量的摘要。
更新PCR的數學表達式爲:PCR[n]SHA-1(PCR[n]+measured data)。
PCR的值在系統重新引導時將被重置,因此PCR的值只是臨時性數據。

6、驗證
對測量事件的驗證需要重新創建測量摘要並與PCR中的值進行比較。
發佈了180 篇原創文章 · 獲贊 12 · 訪問量 27萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章