專利名稱:將虛擬令牌連接到物理令牌的制作方法
背景技術(shù):
現(xiàn)有的基于軟件的安全服務(wù)都隱含地假設(shè)計算設(shè)備或平臺都是可信任的。假定它們在安全的環(huán)境中執(zhí)行,在此前提下它們提供應(yīng)用級的安全性。這種假設(shè)對于保證現(xiàn)有的商務(wù)模型所需的安全級別而言是成立的,但是當(dāng)前的安全功能已在提供最高級別的保護(hù),這些級別的保護(hù)無需額外的硬件支持就能實現(xiàn)。
到目前為止,可信平臺計算聯(lián)盟(TPCA)在2001年7月31日發(fā)布的TCPA主規(guī)范,版本1.1中描述了一種可信平臺模塊(TPM)或物理令牌,其提供了更大的可信度,并且實現(xiàn)了現(xiàn)有服務(wù)的增強和新服務(wù)。TPM支持對軟件過程、平臺引導(dǎo)完整性、文件完整性和軟件許可的審計(audit)和寫日志(log)。TPM為平臺提供了受保護(hù)信息存儲庫,其可被用來證實由存在的硬件(例如,處理器、芯片集、固件等)定義的平臺的身份。這些特征鼓勵著第三方將對某些信息的訪問權(quán)授予平臺,而在不具有上述特征的情況下,平臺將被拒絕訪問這些信息。
TPM包含單獨的計算引擎,由于該引擎的過程無法更改,所以這些過程可被信任。這些過程以及該子系統(tǒng)到平臺的綁定,它們結(jié)合起來能夠可靠地量度并報告平臺內(nèi)部主計算環(huán)境的狀態(tài)。TPM為平臺的引導(dǎo)提供了信任的根基。向平臺提供安全的操作系統(tǒng)是所有者的責(zé)任,一旦OS被加載,它就可以在不可信的軟件被加載之前向TPM報告不可信軟件的加載情況。TPM因此可以報告量度數(shù)據(jù),這些數(shù)據(jù)指示出平臺中主軟件環(huán)境的當(dāng)前狀態(tài)。本地或遠(yuǎn)程實體可以僅僅查詢TPM就可靠地獲得這些量度結(jié)果,并判斷平臺的行為是否使得它對于預(yù)期目的而言是可信任的。因為TPM可以證實操作系統(tǒng)的當(dāng)前狀態(tài),所以軟件加載中的可信度增大了。
TPM對保密數(shù)據(jù)可以起到入口的作用,并且只有在訪問權(quán)和軟件環(huán)境的特定組合下才會允許這種數(shù)據(jù)的公開或使用。當(dāng)然,TPM的受保護(hù)存儲庫可用于任何敏感數(shù)據(jù),而不僅僅是身份信息。TPM可將這些服務(wù)輸出到系統(tǒng)級的軟件安全服務(wù)(例如IPSec),所述系統(tǒng)級的軟件安全服務(wù)自身也被通常的應(yīng)用程序稱為服務(wù)。這種布置帶來了對平臺身份的更大信任,并且如果需要可同時允許平臺匿名。因此,可以更加信任地來使用調(diào)用身份驗證的任何應(yīng)用程序,并可授予這些應(yīng)用程序更大的權(quán)力。
在附圖中以示例的方式而不是以限制的方式圖示了這里所描述的發(fā)明。為簡單和清楚起見,附圖中所示的元件未必是按照比例繪制的。例如,為了清楚起見,某些元件的尺寸可以相對于其它元件被夸大。此外,在合適的地方,在附圖中用相同的標(biāo)號來表示對應(yīng)的或類似的元件。
圖1示出了包括物理令牌和虛擬令牌的計算設(shè)備的例子。
圖2示出了圖1中的物理令牌和虛擬令牌的例子。
圖3示出了可由圖1中的計算設(shè)備來實施的可信運行環(huán)境的例子。
圖4示出了獲得圖1中的虛擬令牌的證書(credential)的方法示例。
具體實施例方式
在下面的詳細(xì)描述中,描述了很多具體的細(xì)節(jié)以徹底地理解本發(fā)明。然而,沒有這些具體細(xì)節(jié)也可以實現(xiàn)本發(fā)明。此外,沒有具體地描述公知的方法、過程、組件和電路,以免模糊本發(fā)明。而且,給出了示例性的尺寸/模型/值/范圍,但是本發(fā)明不限于這些具體的示例。
在說明書中引用“一個實施例”、“實施例”、“示例性實施例”等都表示所描述的實施例可以包括特定的特點、結(jié)構(gòu)或特征,但不是每個實施例都要包括這些特定的特點、結(jié)構(gòu)或特征。而且,這些短語指的不一定是同一個實施例。此外,當(dāng)關(guān)于某個實施例來描述特定的特點、結(jié)構(gòu)或特征時,我們認(rèn)為無論是否做出明確的描述,都可以將這樣的特點、結(jié)構(gòu)或特征應(yīng)用到其它實施例中,這種做法屬于本領(lǐng)域技術(shù)人員的知識范圍之內(nèi)。
圖1中所示的示例性計算設(shè)備100可以包括一個或多個處理器110。處理器110可支持一種或多種工作模式,例如實模式、保護(hù)模式、虛擬8086模式和虛擬機器模式(VMX模式)。此外,在每一種支持的工作模式中,處理器110可支持一個或多個特權(quán)級別或環(huán)??傊幚砥?10的工作模式和特權(quán)級別決定了可用于執(zhí)行的指令以及執(zhí)行這些指令的效果。更具體地說,只有當(dāng)處理器110處于適當(dāng)?shù)哪J胶?或特權(quán)級別時,才允許處理器110執(zhí)行某些具有特權(quán)的指令。
芯片集120可包括一個或多個集成電路封裝或芯片,它們將處理器110耦合到存儲器130、網(wǎng)絡(luò)接口140、物理令牌150、虛擬令牌160和計算設(shè)備100的其它I/O設(shè)備170,例如鼠標(biāo)、鍵盤、盤驅(qū)動器、視頻控制器等。芯片集120可包括存儲器控制器(未示出),用于將數(shù)據(jù)寫入存儲器130或從中讀出數(shù)據(jù)。此外,芯片集120和/或處理器110可將存儲器130的某些區(qū)域定義為受保護(hù)存儲器132,這些區(qū)域只有當(dāng)處于特定的工作模式(例如保護(hù)模式)和特權(quán)級別(例如,OP)時才可由處理器110進(jìn)行訪問。
網(wǎng)絡(luò)接口140通常為計算設(shè)備100提供通信機制,以經(jīng)由網(wǎng)絡(luò)180與遠(yuǎn)程代理190和認(rèn)證機構(gòu)195通信。例如,網(wǎng)絡(luò)接口140可包括10Mb或100Mb的以太網(wǎng)控制器、纜線調(diào)制解調(diào)器、數(shù)字用戶線(DSL)調(diào)制解調(diào)器、普通老式電話業(yè)務(wù)(POTS)調(diào)制解調(diào)器等,從而將計算設(shè)備100耦合到一個或多個遠(yuǎn)程代理190和/或認(rèn)證機構(gòu)195。
總的來說,計算設(shè)備100的物理令牌150包括用于完整性度量、密鑰和機密的受保護(hù)存儲,并可響應(yīng)于來自處理器110和芯片集120的請求執(zhí)行各種完整性功能。具體地說,物理令牌150可以可信方式來存儲完整性度量,可以可信方式來引用完整性度量,可將機密對于特定的環(huán)境(當(dāng)前的或以后的)施行保密,并可將機密對于以前施行保密的環(huán)境進(jìn)行解密。此外,后面將進(jìn)行解釋,物理令牌150可包括一個用于獨一無二地標(biāo)識計算設(shè)備100的標(biāo)識符或密鑰。
虛擬令牌160以和計算設(shè)備100的物理令牌150相類似的方式來操作。然而,由于虛擬令牌160可利用存儲器130和受保護(hù)存儲器132的存儲能力來存儲完整性度量、密鑰和機密,所以虛擬令牌160可包括更多的用于完整性度量、密鑰和機密的受保護(hù)存儲。此外,由于虛擬令牌160可以利用處理器110的處理能力來執(zhí)行完整性操作,所以虛擬令牌160相比物理令牌150可以更快地執(zhí)行這些完整性操作。
如圖2所示,物理令牌150可包括一個或多個處理單元210,它們可為計算設(shè)備100執(zhí)行完整性功能。物理令牌150還可以根據(jù)非對稱密碼算法例如RSA密碼算法來生成固定私有密鑰220和對應(yīng)的固定公開密鑰222。在一個示例性的實施例中,物理令牌150生成固定私有/公共密鑰對220、222,使得固定私有密鑰220和對應(yīng)的公開密鑰222是獨一無二的,并且一旦激活就不可改變。
也可以將物理令牌150附接到計算設(shè)備100上或合并到計算設(shè)備100當(dāng)中,以向遠(yuǎn)程代理190提供某種保證,確保物理令牌150僅與一個計算設(shè)備100相關(guān)聯(lián)。例如,物理令牌150可合并到芯片集120的多個芯片之一中,和/或表面安裝到計算設(shè)備100的主板上。由于固定物理令牌150的獨一無二性,并且它還合并到計算設(shè)備100中,所以遠(yuǎn)程代理190可以基于物理令牌150的固定公開密鑰222而有一定把握地識別計算設(shè)備100。
除了固定私有/公共密鑰對220、222之外,物理令牌150還可以根據(jù)非對稱密碼算法來生成一個或多個輔助私有/公共密鑰對230、232。在一個示例性的實施例中,盡管固定私有/公共密鑰對220、222是不可改變的,但是計算設(shè)備100可以根據(jù)需要生成輔助私有/公共密鑰對230、232。由此,計算設(shè)備100一般僅向一小組可信實體例如遠(yuǎn)程代理190和認(rèn)證機構(gòu)195提供固定公開密鑰222。此外,計算設(shè)備100一般使用它的輔助私有/公共密鑰對230、232來進(jìn)行其它大部分加密、解密和數(shù)字簽名操作,以減少固定公開密鑰222的暴露。
物理令牌150還包括一個或多個平臺配置寄存器(PCR寄存器)240、242、244,它們可被用來以可信方式記錄并報告完整性度量。處理單元210可支持一種PCR引文操作,該操作返回所標(biāo)識的PCR寄存器240、242、244的內(nèi)容或引文。處理單元210也可以支持PCR擴展操作,所述操作在所標(biāo)識的PCR寄存器240、242、244中記錄接收到的完整性度量。具體地說,PCR擴展操作可以(i)將接收到的完整性度量聯(lián)接或附加到存儲在所標(biāo)識的PCR寄存器240、242、244中所存儲的一個完整性度量上,以獲得一個附加后的完整性度量,(ii)散列(hash)所述附加后的完整性度量,以獲得一個更新后的完整性度量,其代表了接收到的完整性度量和先前由所標(biāo)識的PCR寄存器240、242、244記錄的完整性度量,以及(iii)將更新后的完整性度量存儲在PCR寄存器240、242、244中。
用在這里,動詞“散列”以及相關(guān)的形式指的是在一個操作數(shù)或消息上執(zhí)行操作,以產(chǎn)生一個值或一個“散列值”。理想情況下,散列操作生成一個散列值,要想從該散列值中找到具有這個散列值的消息,在計算上是不可行的,并且也不可能從該散列值中確定出關(guān)于具有這個散列值的消息的任何有用信息。此外,散列操作在理想情況下生成散列值,使得要確定兩個產(chǎn)生同一散列值的消息在計算上是不可能實現(xiàn)的。散列操作在理想情況下具有以上性質(zhì),在實際當(dāng)中,單向函數(shù)例如Message Digest 5函數(shù)(MD5)和Secure Hashing Algorithm(SHA-1)生成一些散列值,要想從中推導(dǎo)出所述消息是很困難的,在計算上是很密集的和/或在現(xiàn)實中是不可行的。
可用多種不同的方式來實現(xiàn)物理令牌150。但是,在一個示例性的實施例中,遵循可信平臺模塊(TPM)的規(guī)范來實現(xiàn)物理令牌150,所述規(guī)范在可信計算平臺聯(lián)盟(TCPA)主規(guī)范,版本1.1,2001年7月31日中做了詳細(xì)描述。
還是參考圖2,虛擬令牌160可提供虛擬結(jié)構(gòu)或軟件結(jié)構(gòu),這些結(jié)構(gòu)提供與物理令牌150類似的功能。具體地說,虛擬令牌160可以包括一個或多個處理單元250,這些單元可為計算設(shè)備100執(zhí)行完整性功能。虛擬令牌160還可以根據(jù)非對稱密碼算法生成固定私有密鑰260和對應(yīng)的固定公開密鑰262,使得固定私有密鑰260和對應(yīng)的公開密鑰262是獨一無二的,并且一旦激活就不可改變。
除了固定私有/公共密鑰對260、262之外,虛擬令牌160也可以根據(jù)非對稱密碼算法生成一個或多個輔助私有/公共密鑰對270、272。虛擬令牌160還可以包括一個或多個虛擬PCR寄存器280,這些寄存器可被用于以可信的方式來記錄并報告完整性度量。
圖3中示出了示例性的可信運行環(huán)境300。計算設(shè)備100可以利用處理器110的工作模式和特權(quán)級別來建立可信的運行環(huán)境300。如圖所示,可信運行環(huán)境300可以包括可信虛擬機內(nèi)核或監(jiān)控器310、一個或多個標(biāo)準(zhǔn)虛擬機(標(biāo)準(zhǔn)VM)320和一個或多個可信虛擬機(可信VM)330。運行環(huán)境300的監(jiān)控器310運行在最高特權(quán)的處理器環(huán)(例如OP)上的受保護(hù)模式中,以管理虛擬機320、330之間的安全和特權(quán)屏障。此外,監(jiān)控器310可包括實現(xiàn)虛擬令牌160的功能的代碼?;蛘撸捎脝为毜腣T軟件模塊來實現(xiàn)虛擬令牌160。
標(biāo)準(zhǔn)VM 320可包括操作系統(tǒng)322和一個或多個應(yīng)用程序324,所述操作系統(tǒng)322在VMX模式的最高特權(quán)處理器環(huán)(例如0D)上運行,所述應(yīng)用程序324在VMX模式的較低特權(quán)處理器環(huán)(例如3D)上運行。因為監(jiān)控器310運行所在的處理器環(huán)比操作系統(tǒng)322運行所在的處理器環(huán)具有更高的特權(quán),所以操作系統(tǒng)322不具有對計算設(shè)備100的隨意控制,相反,卻受到監(jiān)控器310的控制和約束。具體地說,監(jiān)控器310可以防止操作系統(tǒng)322及其應(yīng)用程序324訪問受保護(hù)的存儲器132和物理令牌150。
監(jiān)控器310可以對可信內(nèi)核332執(zhí)行一種或多種量度,例如內(nèi)核代碼的散列,以獲得一個或多個完整性度量,可使得物理令牌150能用內(nèi)核332的完整性度量來擴展所標(biāo)識的PCR寄存器244,并可將所述完整性度量記錄在存儲于受保護(hù)存儲器132中的關(guān)聯(lián)PCR日志中。監(jiān)控器310然后可基于內(nèi)核332的完整性度量來確定它是否信任內(nèi)核332。如果確定內(nèi)核332是值得信任的,則監(jiān)控器310可響應(yīng)于此,在受保護(hù)存儲器132中建立可信VM 330,并在建立起來的可信VM 330中啟動可信內(nèi)核332。
類似地,可信內(nèi)核332可對小應(yīng)用程序(applet)或應(yīng)用程序334進(jìn)行一種或多種量度,例如對小應(yīng)用程序的代碼進(jìn)行散列,以獲得一個或多個完整性度量??尚艃?nèi)核332接著通過監(jiān)控器310使得物理令牌150用小應(yīng)用程序334的完整性度量來擴展所標(biāo)識的PCR寄存器??尚艃?nèi)核332還可以將所述完整性度量記錄在存儲于受保護(hù)存儲器132中的關(guān)聯(lián)PCR日志中??尚艃?nèi)核332可基于小應(yīng)用程序334的完整性度量來確定它是否信任小應(yīng)用程序334。如果確定小應(yīng)用程序334是值得信任的,則可信內(nèi)核332可響應(yīng)于此,在受保護(hù)存儲器132中已建立的可信VM 330中啟動可信小應(yīng)用程序334。
如果啟動了圖3中的可信運行環(huán)境300,則計算設(shè)備100可響應(yīng)于此,也將對監(jiān)控器310和虛擬令牌160的完整性度量記錄在監(jiān)控器PCR寄存器240中,還將對硬件的完整性度量記錄在可信支持(TS)PCR寄存器242中??身憫?yīng)于各種事件而啟動可信運行環(huán)境300,例如系統(tǒng)啟動、應(yīng)用程序請求、操作系統(tǒng)請求等。
在一個示例性的實施例中,計算設(shè)備100如下所述地獲得并記錄對監(jiān)控器310和虛擬令牌160的完整性度量。處理器110散列監(jiān)控器軟件模塊,以獲得監(jiān)控器完整性度量。然后,處理器110使得物理令牌150利用所述監(jiān)控器完整性度量來擴展監(jiān)控器PCR寄存器240,并將所述監(jiān)控器完整性度量記錄在存儲于受保護(hù)存儲器132中的監(jiān)控器PCR日志當(dāng)中。此外,如果虛擬令牌(VT)功能被實現(xiàn)為單獨的軟件模塊,則處理器110散列該VT軟件模塊,以獲得VT完整性度量。然后,處理器110使得物理令牌150利用所述VT完整性度量來進(jìn)一步擴展監(jiān)控器PCR寄存器240,并將所述VT完整性度量記錄在監(jiān)控器PCR日志中。監(jiān)控器PCR寄存器240現(xiàn)在包括了一個既代表監(jiān)控器310又代表虛擬令牌160的值。
計算設(shè)備100還可以將對硬件的完整性度量記錄在TS PCR寄存器242中,以提供對可信運行環(huán)境的硬件支持的記錄。在一個示例性的實施例中,處理器110可以獲得硬件標(biāo)識符,例如處理器110、芯片集120和物理令牌150的處理器系列、處理器版本、處理器微代碼版本、芯片集版本和物理令牌版本。然后,處理器110可以利用所獲得的硬件標(biāo)識符來擴展TS PCR寄存器242,并將所述硬件標(biāo)識符記錄在存儲于受保護(hù)的存儲器132中的TS PCR日志中。
除了在物理令牌150中記錄完整性度量之外,計算設(shè)備100還可以將所記錄的完整性度量報告給遠(yuǎn)程代理190或認(rèn)證機構(gòu)195,以使得遠(yuǎn)程代理190和認(rèn)證機構(gòu)195能夠基于所報告的完整性度量來做出信任判斷。例如,計算設(shè)備100可向認(rèn)證機構(gòu)195提供完整性度量,從而讓認(rèn)證機構(gòu)195向計算設(shè)備100簽發(fā)身份證書,該身份證書用于證實與身份證書所標(biāo)識的實體(例如,計算設(shè)備100)綁定在一起的身份證書的公開密鑰。計算設(shè)備100可以向遠(yuǎn)程代理190提供所簽發(fā)的身份證書,從而從該遠(yuǎn)程代理190處獲得機密。然后,遠(yuǎn)程代理190可以確定是否向身份證書所標(biāo)識的實體公開機密。如果遠(yuǎn)程代理190決定向所述身份證書所標(biāo)識的實體公開機密,則遠(yuǎn)程代理190可以用所述身份證書的公開密鑰來加密所請求的機密,并向發(fā)出請求的實體提供加密后的機密。
在一個示例性的實施例中,認(rèn)證機構(gòu)195可以向計算設(shè)備100的輔助公開密鑰232簽發(fā)物理令牌-(PT)身份證書。在簽發(fā)該PT身份證書時,認(rèn)證機構(gòu)195主要證實該PT身份證書的輔助公開密鑰232屬于該PT身份證書所標(biāo)識的物理令牌150。所述PT身份證書可以包括該PT身份證書的身份標(biāo)簽、與這個PT身份證書綁定在一起的輔助公開密鑰232、PT背書證書的引用、平臺證書的引用、一致性證書的引用、以及物理令牌150的版本標(biāo)識符,這些都由簽發(fā)PT身份證書的認(rèn)證機構(gòu)195的私有密鑰CAPriv來加密。
PT身份證書所引用的PT背書證書、平臺證書和一致性證書都是認(rèn)證機構(gòu)195簽發(fā)的證書,它們用于證實計算設(shè)備100的多個完整性方面,并提供用于支持這種證實的信息。具體地說,PT背書證書證實該PT背書證書的固定公開密鑰232是由所識別出的物理令牌150生成的,并且所識別出的物理令牌150滿足為適當(dāng)?shù)奈锢砹钆?50而定義的標(biāo)準(zhǔn)。類似地,平臺證書主要證實與所引用的PT背書證書綁定在一起的平臺或計算設(shè)備100所具有的設(shè)計和構(gòu)造滿足為適當(dāng)?shù)钠脚_所定義的標(biāo)準(zhǔn)。此外,一致性證書用于證實與所引用的PT背書證書綁定在一起的平臺或計算設(shè)備100所具有的總體設(shè)計符合為適當(dāng)?shù)钠脚_所定義的標(biāo)準(zhǔn)。
可以多種不同方式來實現(xiàn)并簽發(fā)PT身份證書、PT背書證書、平臺證書和一致性證書。然而,在一個示例性的實施例中,所實施并簽發(fā)的PT身份證書、PT背書證書、平臺證書和一致性證書分別遵循在2001年7月31日發(fā)布的TCPA主規(guī)范,版本1.1中所具體描述的“身份證書”、“TPM背書證書”、“平臺證書”和“一致性證書”的要求。
現(xiàn)在參考圖4,描繪了一種方法400,該方法用于從所選擇的認(rèn)證機構(gòu)195處獲得VT背書證書。計算設(shè)備100可以響應(yīng)于各種事件而執(zhí)行方法400,所述事件例如是監(jiān)控器310、標(biāo)準(zhǔn)VM 320、可信VM 330、遠(yuǎn)程代理190和/或認(rèn)證機構(gòu)195請求計算設(shè)備100建立虛擬令牌160及相應(yīng)的VT背書證書。在簽發(fā)VT背書證書時,所選擇的認(rèn)證機構(gòu)195證實該VT背書證書的固定公開密鑰262與虛擬令牌160綁定,該虛擬令牌160與所述計算設(shè)備100綁定并唯一地標(biāo)識它,并且所述虛擬令牌160滿足為適當(dāng)?shù)奶摂M令牌所定義的標(biāo)準(zhǔn)。
計算設(shè)備100和所選擇的認(rèn)證機構(gòu)195可以響應(yīng)于執(zhí)行機器可讀介質(zhì)的指令而執(zhí)行方法400的所有步驟或其中一部分,所述機器可讀介質(zhì)例如是只讀存儲器(ROM)、隨機訪問存儲器(RAM)、磁盤存儲介質(zhì)、光盤存儲介質(zhì)、閃存器件、和/或以電、光、聲或其它形式傳播的信號,例如載波、紅外信號、數(shù)字信號、模擬信號。另外,雖然方法400將計算設(shè)備100和所選擇的認(rèn)證機構(gòu)195的操作圖示為一序列的操作,但是計算設(shè)備100和所選擇的認(rèn)證機構(gòu)195可以并行地或以不同的順序來執(zhí)行多種不同的操作。
在框410,響應(yīng)于一個請求,監(jiān)控器310生成和/或獲得被提供給物理令牌150的參數(shù),其中所述請求是請求物理令牌150證實監(jiān)控器310的身份,將接收的參數(shù)聯(lián)系到所述請求,并證實計算設(shè)備100的當(dāng)前硬件和/或軟件環(huán)境。在框418,監(jiān)控器310可通過執(zhí)行請求函數(shù)例如TPM_VirtualTPMCredential函數(shù)來對物理令牌150做出這一請求。下面示出了示例性的TPM_VirtualTPMCredential函數(shù)的格式TPM_VirtualTPMCredential(SigH,MQuote,CertM1,H2,AllPCRQuote)其中,被簽名的散列值SigH是一個輸入?yún)?shù),而參數(shù)MQuote、CertM1、H2、AllPCRQuote是由物理令牌150提供的輸出參數(shù)。
被簽名的散列值SigH向物理令牌150提供一個值,這個值標(biāo)識出VT公開密鑰262、物理令牌150的PT身份證書PTIdCred和所選擇的認(rèn)證機構(gòu)195的公開密鑰CAPub。例如,監(jiān)控器310可生成一個數(shù)據(jù)集,其包括有VT公開密鑰262、PT身份證書PTIdCred和公開密鑰CAPub,并可用VT私有密鑰260對該數(shù)據(jù)集進(jìn)行加密,以獲得被簽名的數(shù)據(jù)集SigDS。然后,監(jiān)控器310可以通過SHA-1散列算法或其它一些算法來散列這個被簽名的數(shù)據(jù)集SigDS,以獲得被簽名的散列值SigH,用于證實、對之取指紋或者標(biāo)識VT公開密鑰262、PT身份證書PTIdCred和公開密鑰CAPub。
響應(yīng)于所述請求,物理令牌150在框422中向監(jiān)控器310提供用于證實監(jiān)控器310的身份、VT公開密鑰262和PT身份證書PTIdCred并且證實計算設(shè)備100的當(dāng)前硬件和/或軟件環(huán)境的信息。例如,響應(yīng)于示例性的TPM_VirtualTPMCredential函數(shù),物理令牌150向監(jiān)控器310提供認(rèn)證消息CertM1,被簽名的索引MQuote,所有PT PCR寄存器240、242、244的引文AllPCRQuote,以及具備唯一性并用于證實其它參數(shù)的散列值H2。物理令牌150可通過利用與PT身份證書PTIdCred相關(guān)聯(lián)的輔助私有密鑰230來加密用于標(biāo)識物理令牌150的監(jiān)控器PCR寄存器240的索引MPCR,從而生成被簽名的索引MQuote。
在一個示例性的實施例中,物理令牌150基于以下消息格式來生成認(rèn)證消息CertM1CertM1=(Format1,H1,H2)CAPub這表示認(rèn)證消息CertM1包括由公開密鑰CAPub加密的散列值H1和所述散列值H2。格式參數(shù)Format1可以包括預(yù)定義的ASCII字符串,例如“PT_CertM1”,其用于將所述消息標(biāo)識為由物理令牌150創(chuàng)建的認(rèn)證消息CertM1。公開密鑰CAPub對應(yīng)于所選擇的認(rèn)證機構(gòu)195的公開密鑰,它可能已經(jīng)應(yīng)監(jiān)控器310的請求而提供,或先前已提供給物理令牌150。
散列值H1用于標(biāo)識VT公開密鑰262、PT身份證書PTIdCred和公開密鑰CAPub,并具備唯一性以利于防止重放(replay)攻擊。在一個示例性的實施例中,物理令牌150生成一個隨機現(xiàn)時值Noncel,例如由它的處理單元210的隨機數(shù)發(fā)生器生成的160位隨機值。然后,物理令牌150可通過根據(jù)某種散列算法例如SHA-1散列算法,散列從監(jiān)控器310接收的被簽名的散列值SigH以及所生成的隨機現(xiàn)時值Noncel,從而生成散列值H1。
散列值H2證實散列值H1、索引MPCR、被簽名的索引MPCR,并具備唯一性。在一個示例性的實施例中,物理令牌150可通過對散列值H1、索引MPCR和被簽名的索引MQuote進(jìn)行散列而生成散列值H2,從而將散列值H1聯(lián)系到索引MPCR和被簽名的索引MQuote。此外,因為散列值H2包括散列值H1,所以散列值H2還證實VT公開密鑰262、PT身份證書PTIdCred和公開密鑰CAPub,因而還將這些參數(shù)聯(lián)系到索引MPCR和被簽名的索引MPCR。此外,散列值H2通過散列值H1的隨機現(xiàn)時值Noncel而包括唯一性。
監(jiān)控器310在框426中可生成證書請求包CredP1,其向認(rèn)證機構(gòu)195提供信息,認(rèn)證機構(gòu)195可從所述信息決定簽發(fā)VT背書證書。在一個示例性的實施例中,物理令牌150基于以下的包格式來生成證書請求包CredP1CredP1=(EDS1,CredM1·CAPub)這表示證書請求包CredP1包括用所選擇的認(rèn)證機構(gòu)195的公開密鑰CAPub進(jìn)行加密的證書請求消息CredM1以及不是用公開密鑰CAPub進(jìn)行加密的加密數(shù)據(jù)集EDS1。
加密數(shù)據(jù)集EDS1提供關(guān)于計算設(shè)備100的信息。在一個示例性的實施例中,監(jiān)控器310生成數(shù)據(jù)集DS1,該數(shù)據(jù)集包括認(rèn)證消息CertM1,VT公開密鑰262,PT身份證書PTIdCred,用于標(biāo)識TS PCR寄存器242的索引TSPCR,PCR寄存器240、242、244的引文AllPCRQuote以及PCR寄存器240、242、244的日志AllPCRLog。監(jiān)控器310還生成會話密鑰S1,并使用會話密鑰S1和對稱加密算法例如DES、3DES和/或AES對數(shù)據(jù)集DS1進(jìn)行加密。
證書請求消息CredM1證實加密數(shù)據(jù)集EDS1的信息,并提供用于加密/解密所述加密數(shù)據(jù)集EDS1的會話密鑰S1。在一個示例性的實施例中,監(jiān)控器310基于下列消息格式生成證書請求消息CredM1CredM1=(Format2,H2,H3,S1)CAPub這表示證書請求消息CredM1包括格式參數(shù)Format2、由物理令牌150提供的散列值H2、另一個散列值H3和會話密鑰S1,上述信息都用所選擇的認(rèn)證機構(gòu)195的公開密鑰CAPub進(jìn)行加密。
格式參數(shù)Format2可包括預(yù)定義的ASCII字符串,例如“Mon_CredM1”,其用于將所述消息標(biāo)識為由監(jiān)控器310創(chuàng)建的證書請求消息。散列值H3用于證實數(shù)據(jù)集DS1的數(shù)據(jù)。監(jiān)控器310可通過使用散列算法或其它某種算法來散列數(shù)據(jù)集DS1的參數(shù),從而生成散列值H3。在一個示例性的實施例中,監(jiān)控器31使用SHA-1散列算法來散列證書消息CredM1、VT公開密鑰262、PT身份證書PTIdCred、索引TSPCR、引文AllPCRQuote以及日志AllPCRLog。
在框430中,監(jiān)控器310可以請求所選擇的認(rèn)證機構(gòu)195向虛擬令牌160簽發(fā)VT背書證書,并且可以將證書請求包CredP1傳送到所選擇的認(rèn)證機構(gòu)195以支持所述請求。在一個示例性的實施例中,作為一個事務(wù)(transaction)的一部分,監(jiān)控器310將證書請求包CredP1傳送到認(rèn)證機構(gòu)195,該事務(wù)可以提供有關(guān)所述請求的進(jìn)一步信息,例如所使用的加密算法、所使用的散列算法、所使用的證書請求包格式等。
在框434中,認(rèn)證機構(gòu)195可以拆分所述證書請求包CredP1,以獲得由該證書請求包CredP1提供的信息。例如,認(rèn)證機構(gòu)195可以使用它相應(yīng)的私有密鑰CAPriv來解密證書請求包CredP1,以得到會話密鑰S1和證書請求包CredP1的其它信息。認(rèn)證機構(gòu)195還可以使用認(rèn)證消息CertM1的會話密鑰S1來解密所述加密數(shù)據(jù)集EDS1,從而獲得數(shù)據(jù)集DS1的數(shù)據(jù)。認(rèn)證機構(gòu)195還可以使用它的私有密鑰CAPriv來解密認(rèn)證消息CertM1和證書請求消息CredM1。
在框438,認(rèn)證機構(gòu)195可以驗證證書請求包CredP1所提供的信息。例如,認(rèn)證機構(gòu)195可以由數(shù)據(jù)集DS1所提供的參數(shù)來重新計算散列值H1、H2、H3,以獲得計算后的散列值CH1、CH2、CH3。然后,如果計算后的散列值CH1、CH2、CH3與所提供的散列值H1、H2、H3具有預(yù)定的關(guān)系(例如,相等),則認(rèn)證機構(gòu)195響應(yīng)于此,可以確定數(shù)據(jù)集DS1的數(shù)據(jù)正是散列值H1、H2、H3證實的參數(shù)。
如果確定證書請求包CredP1所提供的信息不對應(yīng)于該證書請求包CredP1的散列值H1、H2、H3,則響應(yīng)于此,認(rèn)證機構(gòu)195在框442可以拒絕簽發(fā)所請求的VT背書證書。認(rèn)證機構(gòu)195還可以向計算設(shè)備100提供關(guān)于為什么拒絕對VT背書證書VTCred的請求的指示。在一個示例性的實施例中,認(rèn)證機構(gòu)195不提供有關(guān)為什么拒絕請求的任何指示,以防止提供可被用來規(guī)避認(rèn)證過程的信息。
如果確定證書請求包CredP1所提供的信息對應(yīng)于該證書請求包CredP1的散列值H1、H2、H3,則響應(yīng)于此,認(rèn)證機構(gòu)195在框446可以基于PT身份證書參數(shù)PTIdCred來確定它是否不信任物理令牌150。認(rèn)證機構(gòu)195可能由以下原因而確定虛擬令牌160是不值得信任的所識別出的物理令牌150的版本已知為易受攻擊的、PT身份證書已過期、和/或PT身份證書所標(biāo)識的實體是不值得信任的。認(rèn)證機構(gòu)195還可以由以下原因而確定虛擬令牌160是不值得信任的簽發(fā)PT身份證書的認(rèn)證機構(gòu)195是不值得信任的、所引用的平臺一致性證書是不值得信任的、和/或所引用的一致性證書是不值得信任的。
如果基于PT身份證書參數(shù)PTIdCred而不信任虛擬令牌160,則響應(yīng)于此,認(rèn)證機構(gòu)195在框442可以拒絕簽發(fā)所請求的VT背書證書。否則,認(rèn)證機構(gòu)195在框450中可以基于監(jiān)控器PCR寄存器240的引文以及它對應(yīng)的PCR日志來確定認(rèn)證機構(gòu)195是否不信任計算設(shè)備100的虛擬令牌160。如上所述,監(jiān)控器PCR寄存器240記錄監(jiān)控器310和虛擬令牌160的完整性度量。此外,監(jiān)控器PCR日志包括被監(jiān)控器PCR寄存器240記錄的完整性度量。因此,認(rèn)證機構(gòu)195可以基于證書請求包CredP1的索引MPCR,從引文AllPCRQuote和日志AllPCRLog中獲得監(jiān)控器PCR寄存器240的引文和日志。然后,認(rèn)證機構(gòu)195可確定監(jiān)控器PCR寄存器240的引文和日志是否指示出監(jiān)控器310的一種可信任實現(xiàn)。
如果基于監(jiān)控器PCR寄存器240的引文和日志而不信任虛擬令牌160,則響應(yīng)于此,認(rèn)證機構(gòu)195在框442可以拒絕簽發(fā)所請求的VT背書證書。否則,認(rèn)證機構(gòu)195在框454可以基于TS PCR寄存器242的引文以及它對應(yīng)的PCR日志來確定認(rèn)證機構(gòu)195是否不信任計算設(shè)備100的虛擬令牌160。如上所述,TS PCR寄存器242記錄對計算設(shè)備100的硬件組件的完整性度量,從中可以確定可信的環(huán)境支持能力。此外,TS PCR日志包括由TS PCR寄存器242記錄的完整性度量。因此,認(rèn)證機構(gòu)195可以基于證書請求包CredP1的索引TSPCR,從引文AllPCRQuote和日志AllPCRLog中獲得TS PCR寄存器242的引文和日志。然后,認(rèn)證機構(gòu)195可以確定TS PCR寄存器242的引文和日志是否指示了可信的硬件組件。
如果基于TS PCR寄存器242的引文和/或日志而不信任虛擬令牌160,則響應(yīng)于此,認(rèn)證機構(gòu)195在框442可以拒絕簽發(fā)所請求的VT背書證書。否則,認(rèn)證機構(gòu)195在框458可以基于證書請求包CredP1的附加信息來確定是否不信任計算設(shè)備100的虛擬令牌160。例如,認(rèn)證機構(gòu)195可以基于由證書請求包CredP1的引文AllPCRQuote和日志AllPCRLog提供的其它PCR寄存器244的引文和/或日志來確定對虛擬令牌160的不信任。
如果基于所述附加信息而不信任虛擬令牌160,則響應(yīng)于此,認(rèn)證機構(gòu)195在框442可以拒絕簽發(fā)VT背書證書。否則,認(rèn)證機構(gòu)195在框462可以向監(jiān)控器310提供所請求的VT背書證書。為此,認(rèn)證機構(gòu)195可以生成VT背書證書,其包括用于將該證書標(biāo)識為VT背書證書的標(biāo)簽、虛擬令牌160的固定公開密鑰262、對認(rèn)證機構(gòu)195的引用,以及關(guān)于計算設(shè)備100、物理令牌150和/或虛擬令牌160的其它可能信息。然后,認(rèn)證機構(gòu)195可以用它的私有密鑰CAPub給VT背書證書進(jìn)行數(shù)字簽名,并且還用虛擬令牌160的公開密鑰262對被簽名的背書證書加密。
計算設(shè)備100隨后可以向遠(yuǎn)程代理190提供所獲得的VT背書證書,以證實該VT背書證書的固定公開密鑰262被綁定到計算設(shè)備100。此外,計算設(shè)備100可以利用VT背書證書從所選擇的認(rèn)證機構(gòu)195中獲得VT身份證書,這些VT身份證書用于證實輔助公開密鑰272被綁定到計算設(shè)備100。認(rèn)證機構(gòu)195可以用類似于上述PT身份證書的方式來簽發(fā)VT身份證書。
應(yīng)當(dāng)理解,上述方法400僅是一個示例性的方法。例如,方法400利用一些技術(shù)克服了典型的非對稱密碼算法的大小限制。非對稱密碼算法一般只能成功地對某些數(shù)據(jù)或數(shù)據(jù)集進(jìn)行加密,這些數(shù)據(jù)或數(shù)據(jù)集的大小要小于或等于該非對稱密碼算法的模數(shù)(modulus)所定義的最大尺寸。一種克服非對稱密碼算法的大小限制的方法就是生成用于對稱算法的會話密鑰,使用該會話密鑰和所述對稱算法對數(shù)據(jù)集進(jìn)行加密,并且使用非對稱密鑰和非對稱加密算法來加密所述會話密鑰。隨后可由使用對應(yīng)的非對稱密鑰和非對稱算法而獲取的會話密鑰來解密所述數(shù)據(jù)集。這樣,就通過非對稱密鑰和非對稱加密算法對數(shù)據(jù)集進(jìn)行了有效地加密。
另一種克服非對稱密碼算法的大小限制的方法則是生成一個或多個用于證實包含在數(shù)據(jù)集中的數(shù)據(jù)的散列值,并對所述一個或多個所生成的散列值進(jìn)行非對稱加密。一個實體(例如,認(rèn)證機構(gòu)195)可以非對稱地解密這些散列值,從所接收的數(shù)據(jù)集中算出計算后的散列值,并且如果計算后的散列值與解密后的散列值具有預(yù)定的關(guān)系(例如,相等),則響應(yīng)于此,確定所接收的數(shù)據(jù)集就是解密后的散列值所證實的數(shù)據(jù)集。
另外一種克服所述大小限制的方法是將數(shù)據(jù)集分割為若干數(shù)據(jù)子集,這些子集都小于非對稱密碼算法的最大尺寸。然后,可以使用非對稱密鑰和非對稱算法來逐個加密各數(shù)據(jù)子集。隨后,一個實體(例如,認(rèn)證機構(gòu)195)可以使用對應(yīng)的非對稱密鑰來解密每一個子集,并由這些數(shù)據(jù)子集重建該數(shù)據(jù)集。
應(yīng)當(dāng)理解,根據(jù)數(shù)據(jù)集的大小和所使用的加密算法的大小限制,可以實現(xiàn)方法400來使用以上技術(shù)中的一些技術(shù),也可不使用它們。此外,應(yīng)當(dāng)理解,所描述的方法400也使用散列值(例如,H1、H2、H3)來減小各組件(例如,監(jiān)控器和物理令牌150)和/或各實體(計算設(shè)備100和認(rèn)證機構(gòu)195)之間的流量,所述散列值是較大數(shù)據(jù)集(例如160KByte)的壓縮表示(例如,160比特)。然而,應(yīng)當(dāng)理解的是,總的來說,可以用散列值所代表的數(shù)據(jù)集的傳送來代替散列值的生成和/或傳送。
例如,監(jiān)控器310可向物理令牌150提供由被簽名的散列值SigH來表示的數(shù)據(jù)集的一個或多個部分(例如,VT公開密鑰262、PT身份證書PTIdCred、和/或公開密鑰CAPub)。因此,被簽名的散列值SigH的生成和傳送,或者在被簽名的散列值SigH中包含數(shù)據(jù)集的那些部分,這些操作都可以被消除。然后,如上所述,物理令牌150可以通過認(rèn)證消息CertM1的散列值H1、H2來證實數(shù)據(jù)集的已接收部分。或者,物理令牌150可以通過將數(shù)據(jù)集的所接收部分中的一個或多個包括在認(rèn)證消息CertM1中,而證實數(shù)據(jù)集的所接收部分。這樣,就可消除認(rèn)證消息CertM1的散列值H1、H2,或者不必包含數(shù)據(jù)集中的某些部分就可以生成認(rèn)證消息CertM1的散列值H1、H2,其中所述數(shù)據(jù)集中的某些部分僅通過包含在認(rèn)證消息CertM1中就可以被證實。應(yīng)當(dāng)理解,如果認(rèn)證消息CertM1包括數(shù)據(jù)而不是該數(shù)據(jù)的散列值,那么由于認(rèn)證機構(gòu)195可以從認(rèn)證消息CertM1中獲得該數(shù)據(jù),所以可從數(shù)據(jù)集DS1中消除這樣的數(shù)據(jù)。
雖然已參考示例性的實施例對本發(fā)明的某些特點進(jìn)行了描述,但是不應(yīng)將這些描述理解為限制性的含義。對于本發(fā)明所屬領(lǐng)域的技術(shù)人員而言,可以對所述示例性的實施例、以及本發(fā)明的其它實施例做出各種修改,這些修改都被視為落入本發(fā)明的精神和范圍之內(nèi)。
權(quán)利要求
1.一種方法,包括接收由計算設(shè)備的物理令牌生成的認(rèn)證消息,該認(rèn)證消息用于證實與所述計算設(shè)備的虛擬令牌相關(guān)聯(lián)的公開密鑰以及所述物理令牌;以及請求某一實體基于所述認(rèn)證消息,為和所述虛擬令牌相關(guān)聯(lián)的所述公開密鑰簽發(fā)證書。
2.如權(quán)利要求1所述的方法,其中的接收包括接收由所述實體的公開密鑰進(jìn)行加密的認(rèn)證消息,并且該認(rèn)證消息包括與所述虛擬令牌相關(guān)聯(lián)的所述公開密鑰、以及簽發(fā)給所述物理令牌的證書這二者的散列值。
3.如權(quán)利要求2所述的方法,其中的請求包括向所述實體發(fā)送所述認(rèn)證消息、與所述虛擬令牌有關(guān)的所述公開密鑰、以及簽發(fā)給所述物理令牌的所述證書。
4.如權(quán)利要求3所述的方法,其中的請求還包括向所述實體發(fā)送一個或多個來自所述物理令牌的完整性度量引文、以及與該完整性度量引文有關(guān)的一個或多個日志。
5.如權(quán)利要求1所述的方法,還包括用一種對稱密碼算法的會話密鑰來加密一個或多個完整性度量引文,以獲得第一加密參數(shù);用與所述實體有關(guān)的公開密鑰來加密所述認(rèn)證消息和會話密鑰,以獲得第二加密參數(shù);其中的請求包括向所述實體發(fā)送所述第一加密參數(shù)和第二加密參數(shù)。
6.如權(quán)利要求1所述的方法,其中的接收包括接收由所述實體的公開密鑰進(jìn)行加密的認(rèn)證消息,該認(rèn)證消息包括用于證實與所述虛擬令牌相關(guān)聯(lián)的公開密鑰以及簽發(fā)給所述物理令牌的證書的散列值。
7.如權(quán)利要求1所述的方法,其中的接收包括接收由所述實體的公開密鑰進(jìn)行加密的認(rèn)證消息,該認(rèn)證消息包括與所述虛擬令牌有關(guān)的公開密鑰以及簽發(fā)給所述物理令牌的證書。
8.一種用于計算設(shè)備的物理令牌,包括寄存器,用于記錄對所述計算設(shè)備的虛擬令牌進(jìn)行量度的完整性度量,和一個或多個處理單元,用于生成隨機數(shù)以及指定所述寄存器的認(rèn)證消息,該認(rèn)證消息由某一實體的密鑰進(jìn)行加密,并且基于所述隨機數(shù)而具有唯一性。
9.如權(quán)利要求8所述的物理令牌,其中所述一個或多個處理單元生成所述認(rèn)證消息,使得該認(rèn)證消息還包括用于標(biāo)識與所述虛擬令牌相關(guān)聯(lián)的密鑰以及簽發(fā)給所述物理令牌的證書的散列值。
10.如權(quán)利要求8所述的物理令牌,其中所述一個或多個處理單元生成所述認(rèn)證消息,使得該認(rèn)證消息還標(biāo)識與所述虛擬令牌有關(guān)的密鑰以及簽發(fā)給所述物理令牌的證書。
11.如權(quán)利要求8所述的物理令牌,其中所述完整性度量包括虛擬機監(jiān)控器的散列值,所述虛擬機監(jiān)控器包括所述虛擬令牌。
12.如權(quán)利要求8所述的物理令牌,其中所述認(rèn)證消息包括一個或多個散列值,這些散列值用于證實與所述虛擬令牌有關(guān)的密鑰、簽發(fā)給所述物理令牌的所述證書、以及指定所述寄存器的索引。
13.一種計算設(shè)備,包括虛擬令牌,用于記錄完整性度量;物理令牌,用于記錄量度所述虛擬令牌的完整性度量,并且生成用于證實所述完整性度量的認(rèn)證消息,所述認(rèn)證消息由某一實體的非對稱密鑰進(jìn)行加密,并且具有唯一性;和處理器,用于請求所述實體基于所述認(rèn)證消息,為與所述虛擬令牌相關(guān)聯(lián)的非對稱密鑰簽發(fā)證書。
14.如權(quán)利要求13所述的計算設(shè)備,其中所述物理令牌生成所述認(rèn)證消息,使得該認(rèn)證消息標(biāo)識與所述虛擬令牌相關(guān)聯(lián)的非對稱密鑰以及簽發(fā)給所述物理令牌的證書,并且所述處理器向所述實體發(fā)送所述認(rèn)證消息、與所述虛擬令牌相關(guān)聯(lián)的非對稱密鑰、以及簽發(fā)給所述物理令牌的證書。
15.如權(quán)利要求14所述的計算設(shè)備,其中所述處理器還發(fā)送一個或多個來自所述物理令牌的完整性度量引文、以及與該完整性度量引文相關(guān)聯(lián)的一個或多個日志。
16.如權(quán)利要求13所述的計算設(shè)備,其中,所述處理器向所述實體發(fā)送對稱密鑰,該對稱密鑰是用所述實體的非對稱密鑰進(jìn)行加密的,并且向所述實體發(fā)送認(rèn)證消息、與所述虛擬令牌相關(guān)聯(lián)的非對稱密鑰以及簽發(fā)給所述物理令牌的證書,上述三項信息都用所述對稱密鑰加密。
17.一種計算設(shè)備,包括物理令牌,用于生成認(rèn)證消息,以證實所述計算設(shè)備的運行環(huán)境、以及簽發(fā)給所述物理令牌的證書;和包括虛擬令牌的虛擬機監(jiān)控器,所述虛擬令牌用于進(jìn)一步證實所述運行環(huán)境,其中,所述虛擬機監(jiān)控器請求所述物理令牌提供所述認(rèn)證消息,使得該認(rèn)證消息被傳送到某一實體,并響應(yīng)于將所述認(rèn)證消息傳送到所述實體而接收用于所述虛擬令牌的證書。
18.如權(quán)利要求17所述的計算設(shè)備,其中所述物理令牌生成所述認(rèn)證消息,使得該認(rèn)證消息還包括一個或多個散列值,這些散列值用于標(biāo)識與所述虛擬令牌相關(guān)聯(lián)的公開密鑰以及簽發(fā)給所述物理令牌的證書。
19.如權(quán)利要求17所述的計算設(shè)備,其中所述物理令牌生成所述認(rèn)證消息,使得該認(rèn)證消息還包括與所述虛擬令牌相關(guān)聯(lián)的公開密鑰以及簽發(fā)給所述物理令牌的證書。
20.如權(quán)利要求17所述的計算設(shè)備,其中所述物理令牌將所述認(rèn)證消息生成為包括代表所述虛擬機監(jiān)控器的完整性度量。
21.如權(quán)利要求17所述的計算設(shè)備,其中所述物理令牌和虛擬令牌通過提供所記錄完整性度量的引文來證實所述運行環(huán)境,并且所述虛擬機監(jiān)控器還向所述實體提供所記錄的完整性度量的一個或多個引文。
22.一種方法,包括接收一個請求,該請求用于使得向計算設(shè)備的虛擬令牌簽發(fā)證書;基于所述請求的信息來確定所述虛擬令牌是否滿足對適當(dāng)?shù)奶摂M令牌的標(biāo)準(zhǔn);以及如果確定所述虛擬令牌滿足所述標(biāo)準(zhǔn),則響應(yīng)于此,向所述計算設(shè)備的虛擬令牌簽發(fā)所述證書。
23.如權(quán)利要求22所述的方法,其中的確定包括分析已被簽發(fā)給所述計算設(shè)備的物理令牌的、由所述請求提供的證書。
24.如權(quán)利要求23所述的方法,其中的確定還包括分析代表所述計算設(shè)備的虛擬令牌的完整性度量。
25.如權(quán)利要求24所述的方法,其中的確定還包括分析一個完整性度量,該完整性度量依賴于包括所述虛擬令牌的監(jiān)控器的散列值。
26.一種包括指令的機器可讀介質(zhì),這些指令在被執(zhí)行時,導(dǎo)致計算設(shè)備生成認(rèn)證消息,該認(rèn)證消息用于證實計算設(shè)備的物理令牌和運行環(huán)境;并且請求某一實體基于所述認(rèn)證消息,向所述計算設(shè)備的虛擬令牌簽發(fā)證書。
27.如權(quán)利要求26所述的機器可讀介質(zhì),其中,所述指令在被執(zhí)行時,還導(dǎo)致所述計算設(shè)備生成所述認(rèn)證消息,使得該認(rèn)證消息包括用于證實與所述虛擬令牌相關(guān)聯(lián)的公開密鑰的散列值。
28.如權(quán)利要求27所述的機器可讀介質(zhì),其中,所述指令在被執(zhí)行時,還導(dǎo)致所述計算設(shè)備生成所述認(rèn)證消息,使得該認(rèn)證消息是由所述實體的公開密鑰進(jìn)行加密的,并且所述散列值還證實簽發(fā)給所述物理令牌的證書。
29.如權(quán)利要求28所述的機器可讀介質(zhì),其中,所述指令在被執(zhí)行時,還導(dǎo)致所述計算設(shè)備發(fā)送與所述虛擬令牌相關(guān)聯(lián)的公開密鑰以及與所述物理令牌相關(guān)聯(lián)的證書。
30.如權(quán)利要求26所述的機器可讀介質(zhì),其中,所述指令在被執(zhí)行時,還導(dǎo)致所述計算設(shè)備生成所述認(rèn)證消息,使得該認(rèn)證消息是用所述實體的公開密鑰進(jìn)行加密的,并且包括一個或多個散列值,這些散列值證實與所述虛擬令牌相關(guān)聯(lián)的公開密鑰以及簽發(fā)給所述物理令牌的證書;用會話密鑰來加密與所述虛擬令牌相關(guān)聯(lián)的公開密鑰、與所述物理令牌相關(guān)聯(lián)的證書、所述認(rèn)證消息、由所述物理令牌記錄的完整性度量的引文、以及與所述完整性度量相關(guān)聯(lián)的日志,以獲得第一參數(shù);并且用所述實體的公開密鑰來加密所述會話密鑰,以獲得第二參數(shù),其中的請求包括向所述實體發(fā)送所述第一參數(shù)和第二參數(shù)。
全文摘要
可基于簽發(fā)給計算設(shè)備的物理令牌的證書,向該計算設(shè)備的虛擬令牌簽發(fā)證書,從而將虛擬令牌證書聯(lián)系到物理令牌證書。
文檔編號G06F21/00GK1605054SQ02825303
公開日2005年4月6日 申請日期2002年11月22日 優(yōu)先權(quán)日2001年12月17日
發(fā)明者戴維·克勞羅克 申請人:英特爾公司