孫江輝 杜程 馬龍
摘 要: 為了使可信計(jì)算平臺(tái)之間的身份能夠安全并高效地驗(yàn)證,通過(guò)對(duì)可信計(jì)算平臺(tái)和PKI技術(shù)的研究與分析,設(shè)計(jì)一種基于PKI技術(shù)的可信計(jì)算平臺(tái)之間的相互驗(yàn)證的協(xié)議。該協(xié)議通過(guò)引入可信第三方CA,用可信第三方向相互認(rèn)證的可信平臺(tái)頒發(fā)AIK證書(shū),可信計(jì)算平臺(tái)通過(guò)可信第三方驗(yàn)證對(duì)方AIK證書(shū)的真實(shí)性和AIK私鑰加密AIK證書(shū),驗(yàn)證平臺(tái)的身份和完整性以及可信計(jì)算平臺(tái)的狀態(tài)。
關(guān)鍵詞: 可信計(jì)算平臺(tái); 公鑰安全基礎(chǔ)設(shè)施; 身份認(rèn)證證書(shū); 認(rèn)證協(xié)議
中圖分類號(hào): TN918.912?34; TP309 文獻(xiàn)標(biāo)識(shí)碼: A 文章編號(hào): 1004?373X(2016)06?0030?03
Design of authentication mechanism on dependable computing platform
SUN Jianghui1, DU cheng2, MA long2
(1. School of Telecommunication and Information Engineering, Xian University of Posts & Telecommunications, Xian 710061, China;
2. School of Computing, Xian University of Posts & Telecommunications, Xian 710061, China)
Abstract: In order to verify the identity safely and efficiently on the dependable computing platform, a mutual authentication protocol among the dependable computing platforms was designed based on the research and analysis of the dependable computing platform and PKI technology, in which a trusted third party CA is introduced to issue AIK certificates to the dependable computing platforms identified mutually. The identity and integrity of the platform, the status of dependable computing platform, as well as the authenticity of the opposite sides AIK certificate and AIK private key encryption are verified through the dependable third party.
Keywords: trust computing platform; public key infrastructure; AIK certificate; authentication protocol
隨著人們對(duì)信息安全的關(guān)注,可信計(jì)算逐漸興起,從而對(duì)可信計(jì)算平臺(tái)認(rèn)證機(jī)制的研究不可或缺。現(xiàn)實(shí)中有很多認(rèn)證機(jī)制,如基于口令的認(rèn)證方法、零知識(shí)身份認(rèn)證技術(shù)、挑戰(zhàn)握手認(rèn)證協(xié)議、雙因子認(rèn)證技術(shù)、基于公鑰基礎(chǔ)設(shè)施(PKI)的認(rèn)證等[1]。PKI證書(shū)認(rèn)證是一種較為常見(jiàn)且成熟的認(rèn)證技術(shù),適用于規(guī)模較大、分布復(fù)雜的網(wǎng)絡(luò)環(huán)境[2]。PKI技術(shù)采用證書(shū)管理密鑰,提供第三方的可信機(jī)構(gòu)——認(rèn)證中心(CA),可以提供可靠的信息處理。這就為可信計(jì)算平臺(tái)認(rèn)證了一種認(rèn)證方案,通過(guò)數(shù)字證書(shū)來(lái)驗(yàn)證可信計(jì)算平臺(tái)的身份。
1 可信計(jì)算平臺(tái)
在網(wǎng)絡(luò)或者Internet中,最常用的終端計(jì)算機(jī)系統(tǒng)是微機(jī),為了從終端上解決計(jì)算機(jī)系統(tǒng)的安全問(wèn)題,提出了可信計(jì)算平臺(tái)??尚庞?jì)算平臺(tái)是指在硬件平臺(tái)上引入了安全芯片(TPM),通過(guò)提供安全特性來(lái)提高終端系統(tǒng)的安全性[3]??尚庞?jì)算的主要手段是進(jìn)行身份的確認(rèn),使用加密來(lái)進(jìn)行存儲(chǔ)保護(hù)和使用完整性的度量進(jìn)行完整性保護(hù)??尚庞?jì)算的目標(biāo)是實(shí)現(xiàn)系統(tǒng)的行為是可信的,即保證軟件在給定的環(huán)境下,其行為與預(yù)期是一致的[4]。可信計(jì)算平臺(tái)能夠?yàn)橛脩籼峁┮韵滦湃伪U蠙C(jī)制:
(1) 基于可信度量機(jī)制。建立平臺(tái)啟動(dòng)過(guò)程中的信任鏈,為平臺(tái)構(gòu)建初始的信任環(huán)境;通過(guò)驗(yàn)證運(yùn)行時(shí)應(yīng)用程序的完整性和合法性,保證平臺(tái)內(nèi)部應(yīng)用程序的可信運(yùn)行;基于安全芯片提供的密鑰計(jì)算功能,為平臺(tái)內(nèi)部數(shù)據(jù)提供基于硬件保護(hù),從而構(gòu)建平臺(tái)內(nèi)部的信任。
(2) 基于匿名證明以及遠(yuǎn)程證明機(jī)制。提供平臺(tái)身份及平臺(tái)軟硬件配置的正確性的證明,構(gòu)建平臺(tái)之間的信任。
(3) 基于可信計(jì)算平臺(tái)的完整性收集與遠(yuǎn)程證明等機(jī)制,對(duì)將要接入網(wǎng)絡(luò)的平臺(tái)的完整性進(jìn)行驗(yàn)證,以確保網(wǎng)絡(luò)中各個(gè)節(jié)點(diǎn)的信任,為構(gòu)建整個(gè)網(wǎng)絡(luò)的信任奠定基礎(chǔ)。可信計(jì)算平臺(tái)的結(jié)構(gòu)圖如圖1所示。
從圖1中可以看到,可信計(jì)算平臺(tái)主要由嵌入在主板的可信BIOS、密碼模塊芯片、操作系統(tǒng)和安全應(yīng)用組件構(gòu)成。它是以密碼技術(shù)為支撐,以安全操作系統(tǒng)為核心的[5]。
2 公鑰基礎(chǔ)設(shè)施
2.1 公鑰基礎(chǔ)設(shè)施系統(tǒng)的組成
公鑰基礎(chǔ)設(shè)施(PKI)信息安全系統(tǒng)中的主要技術(shù)之一,在數(shù)字證書(shū)和公開(kāi)密鑰密碼體制的基礎(chǔ)上發(fā)展起來(lái)的,通過(guò)非對(duì)稱密碼技術(shù)提供安全的基礎(chǔ)設(shè)施。PKI主要包括:認(rèn)證中心CA、注冊(cè)中心RA、證書(shū)發(fā)布庫(kù)、密鑰備份及恢復(fù)和證書(shū)撤銷(xiāo),如圖2所示。
2.2 PKI的安全性分析
(1) PKI使用了公鑰加密技術(shù)、對(duì)稱加解密技術(shù)、數(shù)字簽名等密碼學(xué)技術(shù)能夠提供保密性服務(wù)。保證了數(shù)據(jù)的秘密。使網(wǎng)絡(luò)中的攻擊者很難得到信息真實(shí)的內(nèi)容。通過(guò)保密性服務(wù),可以透明地加密算法的協(xié)商、密鑰的交換以及機(jī)密信息的傳送[6]。
(2) 數(shù)字證書(shū)是PKI的基本組成部分,作為可信的第三方,可以提供認(rèn)證性服務(wù),鑒別身份的真?zhèn)?,確保通訊者是自己事先約定好的,保證通信雙方的身份的確認(rèn),這對(duì)通信的建立以及正常的通信具有重要的意義。
(3) PKI可以利用單向散列的性質(zhì),對(duì)產(chǎn)生的消息摘要進(jìn)行數(shù)字簽名驗(yàn)證消息的完整性。保證消息在傳輸過(guò)程中沒(méi)有發(fā)生丟失變化或者被黑客進(jìn)行篡改和重放。
PKI中的數(shù)字簽名還可對(duì)發(fā)送者的電子數(shù)據(jù)進(jìn)行簽名,提供了不可否認(rèn)性服務(wù)。此外PKI還能夠提供如訪問(wèn)控制和權(quán)限管理等服務(wù)。作為一套完整的體系結(jié)構(gòu),能夠很好地保證信息的安全。
3 可信認(rèn)證機(jī)制的建立
3.1 通信模型建立
可信計(jì)算能夠從計(jì)算機(jī)系統(tǒng)的終端來(lái)保證信息的安全,保證內(nèi)部系統(tǒng)的可信,進(jìn)而保證整個(gè)網(wǎng)絡(luò)的可信。本文主要建立一套認(rèn)證協(xié)議,使兩個(gè)可信平臺(tái)之間的相互認(rèn)證,確保兩個(gè)可信計(jì)算機(jī)之間的安全通信。通信模型如圖3所示。
本文可信計(jì)算機(jī)之間的通信要保證以下幾點(diǎn):
(1) 兩個(gè)可信計(jì)算平臺(tái)之間能夠相互的確認(rèn)身份,保證消息的不可抵賴性;
(2) 保證消息傳遞的機(jī)密性;
(3) 保證消息的完整性,確保消息沒(méi)有被修改。
3.2 模型分析
可信計(jì)算平臺(tái)是從底層建立信任根、信任鏈開(kāi)始,進(jìn)行信任傳遞,進(jìn)而保證整個(gè)操作系統(tǒng)的可信。CA會(huì)給每個(gè)可信計(jì)算平臺(tái)一個(gè)身份證明的證書(shū)(AIK),用來(lái)證明每個(gè)可信平臺(tái)的身份。
可信計(jì)算組(TCG)規(guī)定了7種密鑰,7種密鑰的類型分別是簽名密鑰(Signing Keys)、存儲(chǔ)密鑰(Storage Keys)、身份證明密鑰(Attestation Keys)、驗(yàn)證密鑰(Endorsement Keys)、綁定密鑰(Bind Keys)、繼承密鑰(Legacy Keys)和鑒別密鑰(Authentication Keys)。每種密鑰都有使用約束[7],例如簽名的密鑰不能用來(lái)加密信息。身份證明密鑰是用來(lái)對(duì)可信計(jì)算平臺(tái)的平臺(tái)配置寄存器(PCR)進(jìn)行簽名的,來(lái)證明平臺(tái)的身份。
AIK身份證書(shū)與TPM中存在的身份證明密鑰的私鑰是相對(duì)應(yīng)的,用AIK的私鑰來(lái)進(jìn)行簽名既可以保證信息的來(lái)源又可以保證消息的不可否認(rèn)性。而AIK證書(shū)則是由認(rèn)證中心CA發(fā)布的。AIK證書(shū)的獲取過(guò)程如圖3所示。
(1) 可信計(jì)算平臺(tái)利用TPM的密碼產(chǎn)生器產(chǎn)生RSA公私密碼對(duì),將私鑰存放在TPM相應(yīng)的位置中。
(2) 向認(rèn)證中心CA發(fā)出請(qǐng)求,并將AIK的公鑰和平臺(tái)證書(shū)、鑒注證書(shū)等信息打包在一起發(fā)送給認(rèn)證中心,請(qǐng)求認(rèn)證中心CA發(fā)布AIK證書(shū)。
(3) 認(rèn)證中心CA接受請(qǐng)求并進(jìn)行驗(yàn)證。
(4) 如果驗(yàn)證通過(guò)則會(huì)頒布一個(gè)由認(rèn)證中心CA私鑰簽名的身份證明證書(shū)(AIK),并存放在TPM相應(yīng)的位置中。
(5) 通過(guò)上述過(guò)程,既可以驗(yàn)證可信計(jì)算平臺(tái)的身份,又可以保證由CA頒布證書(shū)的真實(shí)性??尚庞?jì)算平臺(tái)在獲得AIK證書(shū)之后,TPM才可以使用AIK密鑰和AIK證書(shū)才能證明平臺(tái)的身份,才具備兩個(gè)可信計(jì)算平臺(tái)相互驗(yàn)證的能力。在現(xiàn)實(shí)的過(guò)程中,證書(shū)是可以在線申請(qǐng)或者去認(rèn)證中心領(lǐng)取。
4 協(xié)議設(shè)計(jì)
本文協(xié)議設(shè)計(jì)的目的是使兩個(gè)可信計(jì)算平臺(tái)之間相互驗(yàn)證身份,并建立連接,保證安全可靠的通信?,F(xiàn)在假設(shè)有兩個(gè)可信平臺(tái)A和B,A和B的主板上都嵌有芯片TPM。TPM主要是一個(gè)密碼芯片,在TPM上進(jìn)行密碼的加解密運(yùn)算、密鑰的產(chǎn)生以及平臺(tái)配置寄存器(PCR)和度量日志(ML)的報(bào)告。假設(shè)平臺(tái)A和B都處在可信的網(wǎng)絡(luò)中,并且已經(jīng)獲得注冊(cè)中心CA頒布的證書(shū),證書(shū)在網(wǎng)絡(luò)中是惟一的。協(xié)議的符號(hào)含義如下:PKA為可信平臺(tái)A的公鑰;PVA為可信平臺(tái)A的私鑰;CertA為可信平臺(tái)A的AIK證書(shū);PCRA為可信平臺(tái)A的PCR值;MLA為可信平臺(tái)A的度量日志;PKB為可信平臺(tái)B的公鑰;PVB為可信平臺(tái)B的私鑰;CertB為可信平臺(tái)B的AIK證書(shū);PCRB為可信平臺(tái)B的PCR值;MLB為可信平臺(tái)B的度量日志??尚庞?jì)算平臺(tái)之間的相互認(rèn)證的協(xié)議流程圖如圖4所示,具體描述如下:
(1) 平臺(tái)A和平臺(tái)B建立連接,用自己的私鑰將平臺(tái)的ID號(hào)和平臺(tái)的身份證書(shū)加密,并進(jìn)行發(fā)送給B。
(2) 平臺(tái)B接收到消息,用平臺(tái)A的私鑰進(jìn)行解密,得到CertA,并向CA發(fā)出驗(yàn)證請(qǐng)求,查看CertA是否為真,有沒(méi)有過(guò)期等。
(3) CA將驗(yàn)證的結(jié)果返還給B。假設(shè)驗(yàn)證通過(guò)。
(4) 平臺(tái)B用自己的私鑰將平臺(tái)的ID號(hào)和平臺(tái)的身份證書(shū)加密,并進(jìn)行發(fā)送給A。
(5) 平臺(tái)A接收到消息,用平臺(tái)B的私鑰進(jìn)行解密,得到CertA,并向CA發(fā)出驗(yàn)證請(qǐng)求,查看CertA是否為真,有沒(méi)有過(guò)期等。
(6) CA將驗(yàn)證的結(jié)果返還給B。假設(shè)驗(yàn)證通過(guò)。
(7) 平臺(tái)A用平臺(tái)自己的AIK私鑰分別對(duì)平臺(tái)A的PCR值和ML報(bào)告進(jìn)行簽名,然后用B的公鑰將之前的簽名結(jié)果和平臺(tái)A的PCR值、ML報(bào)告和AIK私鑰進(jìn)行加密,一起打包發(fā)送給B。
(8) 平臺(tái)B用自己的私鑰解密,得到平臺(tái)A的AIK私鑰,再用平臺(tái)A的AIK私鑰對(duì)平臺(tái)A的PCR值和ML報(bào)告進(jìn)行簽名,并與平臺(tái)A的簽名比較。這樣能夠得到平臺(tái)A的配置信息,并能驗(yàn)證平臺(tái)A的身份及完整性。若驗(yàn)證通過(guò),則平臺(tái)B用平臺(tái)用自己的AIK私鑰對(duì)平臺(tái)B的PCR值和ML報(bào)告進(jìn)行簽名,然后用平臺(tái)A的公鑰將平臺(tái)B之前的簽名結(jié)果、PCR值、ML報(bào)告和平臺(tái)B的AIK私鑰加密打包一起發(fā)送給平臺(tái)A,平臺(tái)A用自己的私鑰解密得到平臺(tái)B的AIK私鑰,然后用平臺(tái)B的AIK私鑰分別對(duì)平臺(tái)B的PCR值和ML報(bào)告進(jìn)行簽名,并與平臺(tái)B的簽名比較。這樣能得到平臺(tái)B的平臺(tái)配置信息并能驗(yàn)證平臺(tái)B的身份及其平臺(tái)的完整性,然后在確定是否建立連接。通過(guò)上述協(xié)議過(guò)程,可信平臺(tái)A和B之間可以相互驗(yàn)證身份,建立安全可靠的通信連接。
5 結(jié) 語(yǔ)
隨著信息技術(shù)的發(fā)展,人們對(duì)可信計(jì)算平臺(tái)的研究也會(huì)更加的深入。本文基于PKI的身份驗(yàn)證技術(shù),設(shè)計(jì)了一套認(rèn)證協(xié)議使得兩個(gè)可信計(jì)算平臺(tái)之間的身份的相互驗(yàn)證。保證了可信計(jì)算平臺(tái)的身份的安全性與真實(shí)性。
參考文獻(xiàn)
[1] 謝穎瑩.基于PKI的身份認(rèn)證系統(tǒng)的研究與實(shí)現(xiàn)[D].北京:華北電力大學(xué),2007.
[2] 林釔霖.基于PKI的身份認(rèn)證系統(tǒng)的研究[D].重慶:重慶理工大學(xué),2012.
[3] ISO/IEC. Information technology?trusted platform module: ISO/IEC 11889?1?2009 [S/OL]. (2009?05?15) [2010?03?12]. http://www.trustedcomputinggroup.org/home.
[4] 馮國(guó)登.可信計(jì)算:理論與實(shí)踐[M].北京:清華大學(xué)出版社,2013.
[5] 韓春林,葉里莎.基于可信計(jì)算平臺(tái)的認(rèn)證機(jī)制的設(shè)計(jì)[J]通信技術(shù),2010(7):92?94.
[6] 楊宇.基于PKI的身份認(rèn)證系統(tǒng)的研究和實(shí)現(xiàn)[D].成都:電子科技大學(xué),2009.
[7] 王海燕,吳振強(qiáng),種慧芳,等.可信計(jì)算環(huán)境下基于TPM的認(rèn)證密鑰協(xié)商協(xié)議[J].計(jì)算機(jī)工程與應(yīng)用,2010,46(35):115?118.