可信平臺模塊(TPM)部件

TPM可以由硬件或軟件實現。
在平臺特徵描述文檔中說明實現的細節。模型中更多的傾向於TPM規格描述中硬件的解釋,但過於抽象,因此不排除使用軟件實現。
圖4-7是一個支持RTR和RTS的TPM的結構框圖。
作爲可信平臺的構建模塊,TPM的部件的正常工作是可信的。這樣的信任源自很好的工程實踐、生產過程和工業評審。
工程實踐和工業評審的結論體現在CCC認證的結果中。


1、分離部件
1)輸入/輸出(IO)
輸入/輸出部件處理通訊總線上的數據流。
它完成適合於內部和外部總線通訊協議的編、解碼操作,並將信息發送給適當的部件。
與其他TPM功能需要訪問控制一樣,Opt-in部件嚴格控制着I/O部件的訪問規則
2)非易失性存儲器
非易失性存儲器用於存儲背書密鑰EK,存儲根密鑰SRK,擁有者的授權數據和永久標誌。
PCR可以使用非易失性存儲器或易失性存儲器實現。
在系統啓動或下電時,PCR被複位。
TCG指定PCR的最小數量爲16,寄存器0~7保留給TPM使用,8~15供操作系統和應用程序使用。
3)身份認證密鑰AIK
AIK必須是永久不變的,但是推薦將AIK作爲密鑰段存儲在永久不變的外部存儲設備中,而不是永久不變的存儲在TPM內部的非易失性存儲器中。
TCG希望TPM可以提供足夠的易失性存儲器空間用於同時讀取多個AIK密鑰段以加快計算速度。
4)程序代碼
程序代碼包括用於測量平臺設備的固件。
邏輯上講,這就是用於測量的核心根信任(CRTM)。
在理想的狀態下,CRTM是存儲在TPM的內部,但根據實現的需要,它可能需要裝載於其他固件中。
5)隨機數發生器(RNG)
TPM應包含一個真隨機數位發生器用於產生隨機數發生器的種子。
RNG用於密鑰的生成,產生nonce和增強口令訪問的熵。
6)Sha-1加速器
Sha-1信息摘要加速器用於計算數字簽名,產生密鑰段和其他常規應用。
7)RSA密鑰產生器
TCG將RSA算法作爲TPM中使用的標準算法。
當前公開的RSA版本和長久的應用歷史使得TCG將RSA算法最爲最好的選擇。
RSA密鑰產生器用於產生簽名和存儲密鑰。
TCG需要TPM支持到2048位模數的RSA密鑰,並且要求幾個密鑰(如SRK和AIK)必須至少是2048位模數的。
8)RSA加速器
RSA加速器用於使用簽名密鑰進行數字簽名、使用存儲密鑰進行加密和解密、使用EK進行解密。
TCG委員會希望包含RSA加速器的TPM模塊不受制於進出口的約束。
9)選擇進入Opt-in
TCG的政策是希望TPM以消費者要求的狀態交付使用,這樣的功能由Opt-in實現。
包括從禁用(Disable)、休眠(Deactivated)到完全使能(Enabled);爲取得擁有權做好準備。
Opt-in機制包括確定物理存在狀態的邏輯和接口,以及確保應用到其他TPM部件的禁用操作是否被執行。
10)執行引擎(CPU)
執行引擎運行程序代碼,完成TPM初始化和測量的操作。

2、通訊接口
TCG的主要規範中沒有指定通訊接口或總線結構。
這些是在平臺規格說明書中考慮並決定的。
TCG定義的連續串行傳輸實際上可以用任何一種總線或連接來實現。

3、防篡改(攻擊)封裝
TCG要求TPM必須進行物理保護以免受攻擊。
其中包括將TPM的物理模塊(可能是多個分離的部件)綁定在平臺的物理部件上(如主板),使得不能被容易的將其分解或轉移到其他平臺上。
應能夠進行攻擊證據的測量。通過物理檢查就可以探測到攻擊。
TPM軟件的實現必須具有與硬件等價的防攻擊能力。這樣的機制應該實現所期望的安全性。
發佈了180 篇原創文章 · 獲贊 12 · 訪問量 27萬+
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章