TPM核心功能(1)_第1頁
TPM核心功能(1)_第2頁
TPM核心功能(1)_第3頁
TPM核心功能(1)_第4頁
TPM核心功能(1)_第5頁
已閱讀5頁,還剩39頁未讀, 繼續(xù)免費閱讀

下載本文檔

版權說明:本文檔由用戶提供并上傳,收益歸屬內容提供方,若內容存在侵權,請進行舉報或認領

文檔簡介

1、.1TPM核心功能核心功能羌衛(wèi)中.2背景背景 (1)l在包括關鍵任務的信息系統(tǒng)中,我們需要保護數據,并維護和提高使用Internet的信心l傳統(tǒng)的安全計算難以使用、并且開銷很大;l可信計算可信計算提供了為保護和處理隱私和秘密數據的優(yōu)化計算平臺.3背景背景 (2)l可信計算機提供了隔離環(huán)境,可以限制對在該隔離環(huán)境中被存儲和使用的數據的訪問;l在該隔離環(huán)境中存儲和使用的數據不需要是安全的,但是系統(tǒng)可以保證只有在相同的環(huán)境在相同的環(huán)境中的應用程序可以訪問該數據;.4目前的狀態(tài)目前的狀態(tài) (1)l目前的個人計算機(和相關的設備,如PDAs、智能手機,等)具有許多根本的安全和信任問題,包括:l用戶無法知

2、道他的計算機在做什么l用戶無法知道其他人在做什么l計算機消耗了越來越多的資源來掃描病毒或者攻擊l用戶很容易被欺騙以訪問惡意虛假網站l筆記本信息的丟失l服務器信息的丟失.5目前的狀態(tài)目前的狀態(tài) (2)l這些問題的核心是基于這樣一個事實:標準個人計算機結構不是專門為安全設計的;lJust as a faster car needs better brakes and seat belts, a computer used for mission critical purposes needs better protection.6可信計算的根本目標可信計算的根本目標l可信計算的根本目標就是解決上述

3、問題l核心問題: 我們如何知道系統(tǒng)真正地在做我們認為它在做的事情?l最終, 這個問題可以通過修改硬件,以提供良好的信任基來實現(xiàn),因為軟件總是可以被改變的。.7可信計算解決的攻擊可信計算解決的攻擊l可信計算的目的是解決所有的軟件攻擊,但只解決部分硬件攻擊lNothing can be guaranteed to resist all hardware attacks unless it is physically isolated (in a locked room, surrounded by armed guards);lA smartcard level of protection is

4、all we can do at a reasonable price.8當前的計算環(huán)境當前的計算環(huán)境l平臺l操作系統(tǒng)l應用程序l惡意軟件l配置(Configuration).9啟動記錄報告啟動記錄報告l本地報告l當挑戰(zhàn)者要判斷本地機器是否被攻陷,意味著本機有可能是不可信的。如果本機已經被攻擊者控制,那么可信判斷所得到的結果就會被攻擊者篡改,挑戰(zhàn)者就會受到欺騙;l所以必須借助TPM本身提供的機制來完成本地的安全報告。 .10啟動記錄報告啟動記錄報告l本地報告lPCR值是標志機器狀態(tài)是否可信的標志lSEAL操作是將數據或密鑰與一個或一組指定的PCR值綁定,只有當這個或這組PCR的值符合特定指定值

5、時,這些數據和密鑰才能夠被釋放出來。lSeal操作實際上是將數據的可訪問性與機器狀態(tài)綁定。操作系統(tǒng)或者用戶能夠在特定的機器狀態(tài)訪問某些被Seal的數據,機器狀態(tài)(PCR值)改變之后數據就將無法訪問。 l如何進行可信的本地報告:l可以將一個機密信息綁定到PCR值來標志一個可信的啟動過程l當要判斷機器的啟動過程是否可信,用戶可以要求TPM對這條秘密信息執(zhí)行Unseal操作。如果這條被Seal的機密信息能夠被釋放,那么就表示相應PCR值都符合期望值,進而說明啟動過程是安全的。 .11TPM-數據保護數據保護lTPM的保護能力是唯一一組許可訪問保護區(qū)域(shielded locations)的命令;l

6、保護區(qū)域是能夠安全操作敏感數據的地方(比如內存,寄存器等)。通過建立平臺的保護區(qū)域,實現(xiàn)對敏感數據的訪問授權,從而控制外部實體對這些敏感數據的訪問;lTPM通過實現(xiàn)保護能力和保護區(qū)域,以此來保護和報告完整性度量。l保護區(qū)域是一塊可信平臺模塊中存放敏感信息的存儲區(qū);保護能力是可信平臺模塊提供的可以對被保護區(qū)域進行訪問的功能,以命令的形式提供。.12TPM-數據保護數據保護lTPM或多或少有些像智能卡,但它們之間一個顯著的區(qū)別是:TPM附屬了大量的非易失性存儲器。所以可以存儲大量與TPM相關的數據到這些非易失性存儲器中。安全存儲的一個目標就是利用非易失性存儲器,保存一些重要的密鑰和敏感數據。 .1

7、3TPM-數據保護數據保護l數據密封-Sealingl數據綁定-Bindingl數據加密.14Sealingl如果想獲取M,必須先獲取K,這就需要由TPM用KPRI-S對KPUB-SVPCR-x,K進行解密,此時,TPM檢查GPCR-x的值是否與VPCR-x相等,只有在相等的情況下,TPM才提供K,否則,不提供K。lPCR寄存器組GPCR-x的值VPCR-x也稱為TPM的一個狀態(tài)(或一個配置),因此密封把信息M與TPM的一個狀態(tài)關聯(lián)了起來,只有當TPM的狀態(tài)與密封時的狀態(tài)相同時,才有可能把密封過的信息KM恢復為原來的信息M。換言之,當且僅當密封時的TPM狀態(tài)與解密封時的TPM狀態(tài)相同時,解密封

8、操作才能成功。.15Sealingl密封的簽名:設實體ES擬對信息M進行簽名,ES的公鑰和私鑰分別為KPUB-ES和KPRI-ES,某TPM的一組PCR寄存器GPCR-x的值是VPCR-x,密封的簽名的含義是:l把M和VPCR-x連接起來,得到M|VPCR-x;l計算M|VPCR-x的哈希值,得到H(M|VPCR-x);l用KPRI-ES對H(M|VPCR-x)進行簽名,得到H(M|VPCR-x)KPRI-ES。l驗證簽名時,驗證方只需使用ES的公鑰KPUB-ES對H(M|VPCR-x)KPRI-ES進行驗證,就可以判斷該簽名是不是在TPM的指定狀態(tài)VPCR-x下實施的。.16TPM-Bind

9、ingl綁定:設實體ES擬把信息M發(fā)送給實體ER,ER的公鑰和私鑰分別是KPUB-ER和KPRI-ER,用KPUB-ER對M進行加密得到KPUB-ERM,就相當于把M和ER綁定在一起,因為只有用KPRI-ER才能對KPUB-ERM進行解密,而只有ER才擁有PPRI-ER。如果實體ER是一個TPM,則是把信息M綁定到特定的TPM上。其中, ER稱為綁定密鑰。 .17Attestationl證明者利用AIK對挑戰(zhàn)者指定的PCR值進行簽名后,附加上對應的度量日志(SML)表項和AIK證書一起發(fā)送給挑戰(zhàn)者。l接下來挑戰(zhàn)者對證明值進行驗證。驗證過程包括根據度量日志重新計算哈希值(期望值)、對AIK證書進

10、行驗證以及將簽名值和期望值進行匹配三個步驟。 .18Attestationl(1)遠程挑戰(zhàn)者產生一個隨機數nonce對可信平臺客戶端發(fā)起挑戰(zhàn)請求,指定要求的PCR寄存器編號。為了以防止重放攻擊,挑戰(zhàn)者同時發(fā)送一個密碼學隨機數給客戶端。由于客戶端可在數字簽名的摘要中加入nonce,挑戰(zhàn)者可以驗證簽名的新鮮性。l(2)配備TPM的客戶端與TSS交互,載入AIK,調用Tspi_TPM_Quote接口對制定的PCR進行簽名。l首先,將PCR寄存器值和nonce串聯(lián)并用SHA1算法求出度量值,度量值為160比特,然后使用RSA算法用AIK的私鑰對此度量值進行數字簽名。lTspi_TPM_Quote接口的

11、輸入包括TPM對象句柄,簽名密鑰對象的句柄, PCR組件對象(含需要簽名的PCR索引號)以及對PCR簽名的相關信息。對PCR簽名的相關信息包含輸入數據和輸出數據,輸入數據指定完成簽名需要的額外數據如nonce,用于防止重放攻擊;輸出數據記錄簽名成功后獲取到的TSS_PCRS_STRUCT_INFO結構和簽名的PCR值。l最后,經過簽名的PCR值和對應的度量日志的摘要和AIK證書被反饋給挑戰(zhàn)者。.19Attestationl(3)挑戰(zhàn)者驗證摘要數據塊的簽名,檢查nonce。這一步驟驗證AIK簽名的合法性。挑戰(zhàn)者從TSS_PCRS_STRUCT_INFO中獲取到PCR值,與nonce串聯(lián)后計算其哈

12、希值,得到SHA1(PCR|nonce);另外使用AIK證書的公鑰解密已簽名的PCR值 ,得到RSA_DecAIK(Quote),如果SHA1(PCR|nonce)= RSA_DecAIK(Quote)則AIK簽名是合法的,否則PCR值是已被篡改的或者nonce不是新鮮的。l(4)挑戰(zhàn)者驗證存AIK證書的合法性。AIK證書的合法性是由第三方CA來給出證明的,即驗證AIK證書是否為CA所簽發(fā)。另外還需確認AIK證書不在證書作廢列表當中,即AIK證書仍在有效期內。.20Attestationl(5)挑戰(zhàn)者基于客戶端狀態(tài)做出下一步動作的決定,即對比PCR摘要值是否與期望值相符。其關鍵是用戶讀取度量日

13、志(SML)重新計算期望值的過程。l挑戰(zhàn)者讀取SML,其中包含每次度量得到的度量值,模仿PCR擴展操作,按擴展的順序對度量值執(zhí)行擴展操作。通過上面的計算即可得到期望的PCR值,如果期望的PCR值和客戶端返回的值相等則可以證實客戶端的環(huán)境配置是值得信任的,否則不然。.21Creation of AIK Credentiall該流程與一般PKI體系中證書的創(chuàng)建流程大致相同。但需要指出的不相同的地方是:l該流程中客戶端與PCA的交互是在線的,也就是說AIK證書的創(chuàng)建過程是自動進行的;l而一般PKI體系中,證書的創(chuàng)建需要證書注冊機構RA(Register Authority)對證書請求進行審核,而該審

14、核過程一般是通過離線的方式進行的,如證書請求者需要向RA寄送書面請求報告等。l需要說明的是,AIK證書的在線創(chuàng)建主要得益于“TPM是可信的”這個前提,正因為TPM是可信的,那么由TPM所創(chuàng)建的AIK密鑰也是可信的,所以由RA進行的證書請求審核過程就自然可以不需要了。.22Problems of Attestation with Privacy CAl但是,使用Privacy CA進行遠程證明(Attestation)具有一些缺點。l首先,驗證方(Verifier)進行AIK證書驗證時需要驗證 Privacy CA證書的合法性,那么Privacy CA和驗證方的可能進行合謀,從而導致TPM平臺的

15、身份被泄露,因為Privacy CA是了解AIK證書所對應的EK證書的;l其次,TPM使用者需要與Privacy CA進行交互以獲得AIK證書,而TPM可能會有大數量的AIK,那么Privacy CA將服務大規(guī)模數量的AIK證書請求,從而導致了可用性問題。lSolution: Direct Anonymous Attestation (DAA) BrCaCh2004,Brik2007.23Direct Anonymous Attestations (DAA) protocoll直接匿名證明(DAA,Direct Anonymous Attestation)協(xié)議基于TPM平臺、DAA簽署方(Is

16、suer)、DAA驗證方(Verifier)三個實體。DAA協(xié)議包括加入(Join)和簽名/驗證(Sign/Verify)兩個步驟:l在Join步驟,簽署方驗證TPM平臺,并為TPM平臺簽署DAA證書;l在Sign步驟,TPM平臺使用DAA證書與驗證方進行交互,通過“零知識證明”,驗證方可以在不違反TPM平臺隱私性的前提下對DAA證書進行驗證。DAA協(xié)議支持黑名單的功能,這樣驗證方可以將那些被攻陷的TPM識別出來。.24TPM-KeyslTPM/TCM提供密鑰管理的功能,用戶可以通過該功能生成密鑰、使用密鑰進行加密或者簽名操作??尚庞嬎闫脚_中密鑰包括多種類型,不同類型密鑰具有不同的安全需求,特

17、別體現(xiàn)在密鑰的產生、傳輸、存儲、備份、銷毀等主要環(huán)節(jié)。.25可遷移密鑰與不可遷移密鑰可遷移密鑰與不可遷移密鑰 l在整個TPM/TCM的密鑰體系中,每個密鑰在開始創(chuàng)建的時候都需要指定密鑰屬性。密鑰按照屬性不同分為:可遷移密鑰(Migratable Key) 、不可遷移密鑰(Non-Migratable Key)。l可遷移存儲密鑰并不局限于某個特定平臺,可以由平臺用戶的控制下在平臺之間遷移。l不可遷移密鑰則永久地與某個指定平臺關聯(lián)。不可遷移密鑰能夠用來加密保護可遷移密鑰,反之則不行。.26可遷移密鑰可遷移密鑰l由于系統(tǒng)升級或者其他原因用戶需要改變系統(tǒng),密鑰需要由一個平臺上的密鑰空間轉移到另外一個平

18、臺的密鑰空間。l另一方面,也是最主要的,可遷移密鑰設計可用于在多個平臺上使用(即解密)同一密鑰所加密的數據。這種密鑰的優(yōu)點是可以將關鍵數據復制(備份并恢復)到另一個平臺上使用,這樣可以為用戶提供便利,如有些用戶使用多個平臺,或者數據需要供使用不同平臺的多個用戶使用。l舉個例子,假如一個密鑰被用來對E-mail簽名,這個密鑰的使用者可能希望不管是在工作還是在家,都可以使用這個密鑰來簽發(fā)電子郵件??蛇w移密鑰的另一個優(yōu)點是,可以將數據從一個發(fā)生故障的平臺備份并恢復到一個新的平臺上。 .27不可遷移密鑰不可遷移密鑰l雖然可遷移密鑰對用戶提供了很多方便,但是在某些場景可能無法提供特定應用所需的適當保護級

19、別。l例如用戶希望將數據限定為只在一個平臺上使用,這時就需要不可遷移密鑰。lTPM內部產生,在TPM產生后被打上了TPM的標記。l不可遷移密鑰的本質是,它可用于一個并且只能用于一個TPM。如果系統(tǒng)或 TPM 發(fā)生故障,所有不可遷移密鑰以及與它們關聯(lián)的所有數據將不可訪問,而且無法恢復。l不可遷移密鑰本身的安全性要比可遷移密鑰高,因為不可遷移密鑰全部是由TPM內部產生并且從產生到銷毀整個周期私鑰部分都不會離開TPM(除非不可遷移密鑰轉化為可遷移密鑰,這個時候安全級別也會降低,注意的是由于可遷移密鑰安全級別低所以無法轉化成為不可遷移密鑰)。同時不可遷移密鑰可以被TPM簽名,從而可以向挑戰(zhàn)者或者用戶證

20、明其不可遷移的屬性,從而證明其安全性。 .28TPM-Keysl功能分類:lTCG定義了7種密鑰類型。每種類型都附加了一些約束條件以限制其應用。 TCG 的密鑰可以粗略的分類為簽名密鑰和存儲密鑰。更進一步的分類有:平臺、身份認證、綁定、普通和繼承密鑰。對稱密鑰被單獨分類為驗證密鑰,非對稱密鑰大多要求 2048 位的RSA密鑰。.29TPM Key Object.30Storage Keysl存儲密鑰(Storage Keys)是用來加密數據和其它密鑰的通用非對稱密鑰,這里的其它密鑰可以是另一個存儲密鑰、也可以是綁定密鑰或者是簽名密鑰。它本身是長度為2048比特的RSA私鑰;它既可以是可遷移密鑰

21、,也可以是不可遷移密鑰。 .31Storage Keysl存儲根密鑰(Storage Root Key,SRK)是存儲密鑰的一個特例。整個系統(tǒng)擁有一個最高權限的存儲密鑰,這個最高級密鑰也就是存儲根密鑰。它很特殊,在每個用戶創(chuàng)建的時候生成,管理著這個用戶的所有數據,也就是存儲可信根 (Root of Trust for Storage,RTS)。它簽署密鑰(Endorsement Key,EK)一樣,一個TPM僅存在唯一一個。所有其他的密鑰都在存儲根密鑰的保護之下。.32Signing keys l簽名密鑰(Signing Key):是非對稱密鑰,用于對應用數據和信息簽名。簽名密鑰可以是可遷移或

22、者不可遷移的??蛇w移密鑰能夠在TPM之間傳遞,通過遷移密鑰傳遞保密數據。TPM中的簽名密鑰都遵循RSA簽名密鑰的標準,它們有若干種不同的長度。TPM能夠正確地進行處理的最大密鑰長度是2048比特。 .33Attestation Identity Keys(AIK),),EK l簽署密鑰(Endorsement Key,EK)是一個TPM平臺的不可遷移的解密密鑰,它是一個2048 bits的RSA密鑰對。l它生成于平臺的生產過程中,代表著每個平臺的真實身份,每個平臺都擁有唯一的一個。在確立平臺所有者時,用于解密所有者的授權數據,還有解密與生成AIK相關的數據。l簽署密鑰從不用作數據加密和簽名。簽

23、署密鑰的主要功能是生成身份證明密鑰(AIK)和建立TPM平臺的所有者,由TPM的所有者來生成存儲根密鑰SRK(Storage Root Key),使用SRK來加密、存儲其他的密鑰。.34EKlEK可以通過密鑰生成服務器,采用兩種方法來產生:l一是使用TPM命令,TCG規(guī)范定義了一組背書密鑰操作命令,其中創(chuàng)建背書密鑰對的命令為:TPM_CreateEndorsementKeyPair,產生密鑰長度要求至少2048位;l另一種方法是密鑰“注入”技術,在信任制造商的前提下,由TPM制造商產生背書密鑰對,然后采用人工方式注入,注入的方法有:鍵盤輸入、軟盤輸入、專用密鑰槍輸入等。.35EKl對比這兩種方

24、法,前者必須依賴硬件中提供受保護的功能(Protected Capability)和被隔離的位置(Shielded Location),從而保證在設備內部產生密鑰對,而且密鑰對是在篡改保護的環(huán)境下產生,能夠很好地減少密鑰對泄露的風險;l后者則對環(huán)境、管理和操作方法要求較高,首先密鑰的裝入過程應當在一個封閉的環(huán)境下進行,不存在可能被竊聽裝置接收的電磁泄露或其它輻射,所有接近密鑰注入工作的人員應該絕對可靠。采用密鑰槍或密鑰軟盤應與鍵盤輸入的口令相結合,并建立一定的接口規(guī)范,只有在輸入了合法的加密操作口令后,才能激活密鑰槍或軟盤里的密鑰信息。在密鑰裝入后,應將使用過的存儲區(qū)清零,防止一切可能導出密鑰殘留信息的事件發(fā)生。.36AIKl平臺身份認證密鑰(Attestation Identity Key,AIK)是不可遷移密鑰。專用于對TPM產生的數據(如TPM功能、PCR寄存器的值等)進行簽名,用來證明平臺的身份和平臺的環(huán)境配置,凡是經過AIK簽名的實體,都表明已經經過TPM的處理。每

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網頁內容里面會有圖紙預覽,若沒有圖紙預覽就沒有圖紙。
  • 4. 未經權益所有人同意不得將文件中的內容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網僅提供信息存儲空間,僅對用戶上傳內容的表現(xiàn)方式做保護處理,對用戶上傳分享的文檔內容本身不做任何修改或編輯,并不能對任何下載內容負責。
  • 6. 下載文件中如有侵權或不適當內容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準確性、安全性和完整性, 同時也不承擔用戶因使用這些下載資源對自己和他人造成任何形式的傷害或損失。

評論

0/150

提交評論