TPM Key相關概念


1. Storage Keys:存儲密鑰,用來加密數據和其它密鑰的通用非對稱密鑰,這里的其它密鑰可以是另外一個存儲密鑰,也可以是綁定密鑰或簽名密鑰。它本身是長度2048bit的RSA私鑰;它既可以是可遷移密鑰,也可以是不可遷移密鑰。


2. SRK:storage Root Key,存儲根密鑰,是存儲密鑰的一個特例。整個系統擁有一個最高權限的存儲密鑰,這個最高級密鑰也就是存儲根密鑰。它很特殊,在每個用戶創建的時候生成,管理這個用戶的所有數據,也就是存儲可信根(Root of Trust for Storage, RTS).和簽署密鑰(Endorsement Key,EK)一樣,一個TPM僅存在唯一一個。所有其它的密鑰都在存儲根密鑰的保護之下。


3. 簽名密鑰(Signing Key):是非對稱密鑰,用於對應用數據和信息簽名。簽名密鑰可以是可遷移或不可遷移的。可遷移密鑰能夠在TPM之間傳遞,通過遷移密鑰傳遞保密數據。TPM中的簽名密鑰都遵循RSA簽名密鑰的標准,它們有若干種不同長度。TPM能夠正確地進行處理的最大密鑰長度是2048bit。


4. 簽署密鑰,或背書密鑰(Endorsement Key,EK)是一個TPM平台的不可遷移的解密密鑰,它是一個2048bit的RSA密鑰對。它生成於平台的生產過程中,代表着每個平台的真實身份,每個平台都擁有唯一的一個。在確定平台所有者時,用於解密所有者的授權數據,還有解密與生成AIK相關的數據。簽署密鑰從不用作數據加密和簽名。簽署密鑰的主要功能是生成身份證明密鑰(AIK)和建立TPM平台的所有者,由TPM的所有者來生成存儲根密鑰SRK,使用SRK來加密、存儲其他的密鑰。
EK可以通過密鑰生成服務器,采用兩種方法來產生:一種使用TPM命令,TCG規范定義了一組背書密鑰操作命令,其中創建背書密鑰對的命令為TPM_CreateEndorsementKeyPair,產生密鑰長度要求至少2048位。另外一種方法是密鑰注入技術,在信任制造商的前提下,由TPM制造商產生背書密鑰對,然后采用人工方式注入,注入方法有:鍵盤輸入、軟盤輸入、專用密鑰搶輸入等。
對比這兩種方法,前者必須依賴硬件中提供受保護的功能和被隔離的位置,從而保證在設備內部產生密鑰對,而且密鑰對是在篡改保護的環境下產生,能夠很好地減少密鑰對泄露的風險。


5. AIK:認證身份密鑰,或平台身份認證密鑰(Attestation Identity Key)是不可遷移密鑰。專用於對TPM產生的數據(如TPM功能、PCR寄存器的值等)進行簽名,用來證明平台的身份和平台的環境配置,凡是經過AIK簽名的實體,都表明已經經過TPM的處理。每個用戶可以擁有多個AIK,每個AIK的生成都需要可信第三方的支持。


6. 綁定密鑰(Binding Keys):用於在一個平台中加密小規模數據(如對稱密鑰),然后在另一個TPM平台上進行解密。由於使用平台所特有的密鑰加密,所以與該平台綁定。這個密鑰的用法同傳統非對稱密鑰加密相同。


7. 密封密鑰(Sealing Keys):內置TPM的計算機可以創建一個密鑰,該密鑰不僅被綁定,而且還被連接到特定硬件或軟件條件,這就是密封密鑰。首次創建密封密鑰時TPM將記錄配置值和文件哈希的快照。僅在這些當前系統值與快照中的值想匹配時才能解封或釋放密封密鑰。


8. 遺留密鑰(legacy Keys):在TPM之外生成,它們被定義為可遷移的,在被用來簽名或加密之后才能載入TPM。這些密鑰用在一些需要在平台之間傳遞數據的場合。


9. 鑒別密鑰(Authentication Keys):用來保護涉及TPM傳輸會話的對稱密鑰。


10. Key Management:為了更有效地管理存儲在TPM外邊的密鑰,引進一種密鑰緩沖管理機制(Key Cache Manager),它主要管理TPM中受限制的資源,並且對應用程序調用隱藏這些限制。應用程序可以通過利用KCM來載入密鑰到TPM中,並假定此密鑰可以進一步利用。KCM負責保證當應用程序某個命令需要密鑰時,這個已經被應用程序載入的密鑰存在於TPM中。如果所有TPM資源被占用,KCM需要釋放資源將不經常使用的密鑰從TPM取出來,以便為那些經常進出TPM的密鑰騰出空間,將需要的密鑰放入TPM。應用程序需要利用KCM來將密鑰載入TPM中。


11. 可遷移密鑰和不可遷移密鑰:在整個TPM/TCM的密鑰體系中,每個密鑰在開始創建的時候都需要指定密鑰屬性。密鑰按照屬性不同分為:可遷移密鑰(Migratable Key)和不可遷移密鑰(Non-Migratable Key)。可遷移密鑰並不局限於某個特定平台,可以由平台用戶的控制在平台之間遷移。不可遷移密鑰則永久地與某個指定平台關聯。不可遷移密鑰能夠用來加密保護可遷移密鑰,反之則不可。
不可遷移密鑰由TPM內部產生,在TPM產生之后就被打上了TPM的標記。不可遷移密鑰本身的安全性要比可遷移密鑰高,因為不可遷移密鑰全部由TPM內部產生並且從產生到銷毀整個周期私鑰部分都不會離開TPM(除非不可遷移密鑰轉化為可遷移密鑰,這個時候安全級別降低,注意的是由於可遷移密鑰安全級別低所以無法轉化為不可遷移密鑰)。同時不可遷移密鑰可以被TPM簽名,從而可以向挑戰者或者用戶證明其不可遷移的屬性,從而證明其安全性。

摘自:TPM核心功能

 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM