閆建紅
(太原師范學(xué)院 計(jì)算機(jī)科學(xué)與技術(shù)系,山西 太原 030012)
可信密碼模塊軟件棧的數(shù)據(jù)加密策略
閆建紅
(太原師范學(xué)院 計(jì)算機(jī)科學(xué)與技術(shù)系,山西 太原 030012)
介紹了關(guān)于可信計(jì)算和可信軟件棧,并特別對(duì)可信計(jì)算模塊的密鑰設(shè)置和種類進(jìn)行說(shuō)明.從數(shù)據(jù)結(jié)構(gòu)和加密過(guò)程兩個(gè)方面對(duì)綁定和密封這兩種方式的性能進(jìn)行比較和分析,討論其共同點(diǎn)和適用的范圍,指出密封比綁定的功能更強(qiáng)大,安全性更高.實(shí)驗(yàn)表明,對(duì)數(shù)據(jù)綁定的時(shí)間要比密封需要的時(shí)間少,解除綁定的時(shí)間要比解除密封的時(shí)間少.在時(shí)間效率方面,可信計(jì)算的這兩種數(shù)據(jù)保護(hù)方式只適用于較小數(shù)據(jù)量,而對(duì)大的數(shù)據(jù)量,其操作時(shí)間將會(huì)增加很多.
可信計(jì)算;可信計(jì)算模塊密鑰;數(shù)據(jù)綁定;數(shù)據(jù)密封;數(shù)據(jù)安全
可信計(jì)算TC(trusted computing)由可信計(jì)算組織TCG(Trusted Computing Group)制定工業(yè)標(biāo)準(zhǔn)和一系列規(guī)范[1],通過(guò)可信芯片,TPM(Trusted Platform Module)為信任根,依靠其提供的各種功能保護(hù)平臺(tái)安全.可信軟件棧TSS(TCG Software Stack)是TPM平臺(tái)的驅(qū)動(dòng)軟件,在結(jié)構(gòu)上分為三層,自上而下分別為T(mén)CG服務(wù)提供者TSP(TSS Service Providers),TSS核心服務(wù)TCS(TSS Core Services)和TCG設(shè)備驅(qū)動(dòng)庫(kù) TDDL(TCG Device Driver Library),提供給應(yīng)用層接口為 TSPI(TCG Service Provider Interface)[2].目前可信軟件棧的實(shí)現(xiàn)有多種,本文采用IBM的Trousers項(xiàng)目,測(cè)試通過(guò)TSPI提供的接口進(jìn)行.
TPM使用非對(duì)稱密鑰進(jìn)行綁定或密封操作Binding是可信計(jì)算技術(shù)提供的傳統(tǒng)的公鑰加密方法.當(dāng)加密的公鑰對(duì)應(yīng)的私鑰不可移植時(shí),被公鑰加密的數(shù)據(jù)就只能在創(chuàng)建密鑰的TPM平臺(tái)上解密,通Sealing是另一種在可信平臺(tái)下的數(shù)據(jù)加密方法,將數(shù)據(jù)和特定平臺(tái)的狀態(tài)綁定,通過(guò)平臺(tái)狀態(tài)寄存器PCR(Platform Configuration Register)值和數(shù)據(jù)以及加密的密鑰進(jìn)行綁定,加密數(shù)據(jù).針對(duì)可信計(jì)算數(shù)據(jù)安全有學(xué)者對(duì)其進(jìn)行研究,文獻(xiàn)[2]分析了綁定和密封的功能接口.劉昌平等在特定的平臺(tái)狀態(tài)和可信密碼模塊下綁定數(shù)據(jù),這些數(shù)據(jù)只有在該可信計(jì)算平臺(tái)特定的環(huán)境下才能進(jìn)行解密[3].陳小峰用形式化的方式對(duì)數(shù)據(jù)保護(hù)進(jìn)行了描述[4].劉安戰(zhàn)分別以不同位的RSA密鑰對(duì)數(shù)據(jù)保護(hù)方式的Sealing(封裝)和Binding(綁定)保護(hù)進(jìn)行測(cè)試[5].以上的文獻(xiàn)都沒(méi)有針對(duì)綁定和密封兩種方法的性能和特點(diǎn)進(jìn)行具體的分析和比較.本文對(duì)TPM這兩種特有的數(shù)據(jù)保護(hù)方法通過(guò)過(guò)程、數(shù)據(jù)結(jié)構(gòu)、適用環(huán)境以及時(shí)間消耗進(jìn)行分析得出其各自適應(yīng)的范圍,并通過(guò)實(shí)驗(yàn)驗(yàn)證.
TPM的一個(gè)主要功能是密鑰的產(chǎn)生和使用.在TPM中,產(chǎn)生并存儲(chǔ)另外的密鑰(如綁定密鑰、存儲(chǔ)密鑰等),不存儲(chǔ)對(duì)稱密鑰的密鑰稱為存儲(chǔ)密鑰.在重置(或激活)TPM時(shí),TPM的隨機(jī)數(shù)產(chǎn)生器產(chǎn)生一個(gè)2 048位的RSA密鑰,其位于芯片內(nèi),該不可遷移的存儲(chǔ)密鑰,稱為存儲(chǔ)根密鑰SRK(Storage Root Key).是整個(gè)密鑰鏈的根,所有不可遷移的以及未被遷移的密鑰都依賴于它.TPM強(qiáng)制規(guī)定只有當(dāng)父密鑰存在,才能產(chǎn)生不可遷移密鑰.而可遷移密鑰是在TPM內(nèi)部或外部產(chǎn)生,由存儲(chǔ)密鑰、可遷移密鑰或不可遷移密鑰加密.TPM 的密鑰結(jié)構(gòu)圖如圖1[6]:
圖1 TPM的密鑰結(jié)構(gòu)圖
如圖1所示,TPM擁有各種密鑰,這些密鑰結(jié)構(gòu)靈活,可解決不同的問(wèn)題.左邊的密鑰是可遷移密鑰,由平臺(tái)可遷移密鑰控制進(jìn)行遷移,不需終端用戶對(duì)所有密鑰進(jìn)行各自遷移.用戶可以知道密鑰的祖先密鑰是誰(shuí),擁有者是誰(shuí),如果父密鑰遷移,則所有子孫密鑰都將同時(shí)遷移.
綁定在TSS層的API與數(shù)據(jù)綁定有關(guān)的功能接口函數(shù)是Tspi_Data_Bind和Tspi_Data_Unbind.綁定密鑰是用來(lái)存儲(chǔ)對(duì)稱密鑰,它可以存儲(chǔ)單個(gè)或多個(gè)對(duì)稱密鑰.需要注意的是,綁定密鑰只能用來(lái)做基本的RSA加密.不能用來(lái)加密對(duì)稱密鑰以外的其他內(nèi)容.綁定是一個(gè)用公鑰對(duì)數(shù)據(jù)進(jìn)行加密的傳統(tǒng)過(guò)程:
1)發(fā)送者用接收者的公鑰進(jìn)行加密.
2)數(shù)據(jù)只能被接收者的私鑰解密,當(dāng)私鑰是TPM的不可遷移密鑰創(chuàng)建的時(shí),就由TPM管理.
3)數(shù)據(jù)是被公鑰加密.綁定作為T(mén)PM一個(gè)特定的應(yīng)用.
因此也可能在多個(gè)TPM設(shè)備之間創(chuàng)建可遷移的私鑰,如果可以遷移,綁定就和傳統(tǒng)的加密意義是一樣的.其過(guò)程如圖2,
圖2 TPM綁定和解除綁定過(guò)程
其中,Unbind操作是在TPM中內(nèi)部操作,而B(niǎo)inding操作不一定都是由TPM產(chǎn)生的密鑰進(jìn)行加密,是在TPM之外執(zhí)行,可以是由軟件來(lái)執(zhí)行,使用其他合適的密鑰.如果是TPM之外的密鑰,則不能使用Tspi_Data_Unbind進(jìn)行解綁定操作.Unbinding就是用TPM的綁定密鑰來(lái)解密數(shù)據(jù).對(duì)由Tspi_Data_Bind命令進(jìn)行綁定的數(shù)據(jù)進(jìn)行解密,必須驗(yàn)證解密的密鑰是否正確,解密用公鑰加密的數(shù)據(jù),私鑰存儲(chǔ)在TPM內(nèi)部.這個(gè)密鑰必須是TPM認(rèn)可的密鑰.用來(lái)對(duì)隨機(jī)的會(huì)話密鑰進(jìn)行解除綁定,而這個(gè)密鑰通常是用來(lái)加密比較大的數(shù)據(jù).
TCG規(guī)范中,Tspi_Data_Seal和Tspi_Data_Unseal是TSS層的API的密封功能接口函數(shù).其中,Tspi_Data_Seal用來(lái)對(duì)數(shù)據(jù)進(jìn)行加密,Tspi_Data_Unseal是其逆運(yùn)算,對(duì)數(shù)據(jù)進(jìn)行解封.不可遷移密鑰的公鑰用來(lái)加密數(shù)據(jù),公鑰是由給定的其它密鑰按照?qǐng)D1的結(jié)構(gòu)圖產(chǎn)生.密封將PCR值一起密封,作為記錄被密封到數(shù)據(jù)中,在解封過(guò)程中,首先驗(yàn)證PCR值是否一致,如果一致,說(shuō)明當(dāng)前平臺(tái)狀態(tài)和密封時(shí)平臺(tái)狀態(tài)是一致的.這種密封主要用于第三方的證明.如果驗(yàn)證者不對(duì)平臺(tái)狀態(tài)進(jìn)行安全性的要求,則PCR不必密封進(jìn)去.只有需要對(duì)平臺(tái)的狀態(tài)進(jìn)行安全驗(yàn)證時(shí),才將PCR和數(shù)據(jù)一起進(jìn)行密封.
通過(guò)一個(gè)特定的TPM進(jìn)行密封,并且僅僅有該TPM解密,必須滿足:1)知道密封認(rèn)證秘密;2)能載入密封數(shù)據(jù)的父密鑰;3)PCR是正確的狀態(tài).滿足這三個(gè)屬性才可以解密.其過(guò)程如圖3:
圖3 TPM密封過(guò)程圖
計(jì)算被密封數(shù)據(jù)的摘要值,并將其存儲(chǔ)到變量Sealdata.storedigest,同時(shí)將PCR值存儲(chǔ)到摘要變量indata.Sealinfo.digestrelease,其中由TPM授權(quán)的密鑰key對(duì)indata進(jìn)行密封,產(chǎn)生密封后的數(shù)據(jù)endata.
Tspi_Data_Unseal是其逆操作,過(guò)程相對(duì)比密封復(fù)雜,其過(guò)程如圖4:
圖4 TPM解封過(guò)程圖
具體如下:
a.先檢查密封時(shí)的數(shù)據(jù)的摘要值和數(shù)據(jù)存儲(chǔ)摘要變量值Sealdata.storedigest是否一致,如果一致,到下一步;否則,return為數(shù)據(jù)密封錯(cuò)誤;
b.接下來(lái)檢查密封時(shí)PCR值和當(dāng)前密封時(shí)PCR值是否一致,如果一致,到下一步;否則,return PCR錯(cuò)誤;
c.檢查T(mén)PM授權(quán)dataauth值和密封數(shù)據(jù)的授權(quán)數(shù)據(jù)authdata值的一致性,如果一致,到下一步;否則,return授權(quán)值的錯(cuò)誤;
d.最后使用TPM的密鑰key對(duì)數(shù)據(jù)encdata進(jìn)行解密,ruturn結(jié)果.
2.3.1 綁定和密封操作過(guò)程對(duì)比分析
綁定和密封都是TPM的數(shù)據(jù)保護(hù)方法,并且都是由非對(duì)稱密鑰給密鑰加密,都可以用來(lái)遠(yuǎn)程認(rèn)證,在TSS層都有相應(yīng)的功能接口被調(diào)用.但它們又有一定的區(qū)別:
綁定:a.可以使用綁定密鑰加密和遺留密鑰加密.綁定密鑰用來(lái)在可信平臺(tái)中加密小數(shù)據(jù)(比如對(duì)稱密鑰),只能用來(lái)做基本的RSA加密,不能用來(lái)加密除對(duì)稱密鑰之外的其他內(nèi)容.
b.只能加密對(duì)稱密鑰.
c.可以是可遷移的密鑰,重點(diǎn)強(qiáng)調(diào)的是被綁定密鑰加密.
d.在TPM中,沒(méi)有相應(yīng)的TPM_Bind命令,但有TPM_Unbind命令
密封:a.只能用存儲(chǔ)密鑰RSA密鑰的公鑰加密,這意味著對(duì)密封密鑰的長(zhǎng)度要求更加嚴(yán)格.
b.PCR值作為記錄和密鑰一起被密封.
c.一般是不可遷移密鑰,重點(diǎn)強(qiáng)調(diào)是和平臺(tái)的綁定,即被TPM或是與PCR的綁定.
d.在TPM中,有相應(yīng)的TPM_Seal命令,也有TPM_Unseal命令.
密封比綁定功能更強(qiáng)大,密封操作允許用戶將獨(dú)立的數(shù)據(jù)塊與任意的PCR進(jìn)行密封,而不需要考慮密鑰本身是否和PCR綁定.
2.3.2 綁定和密封運(yùn)行時(shí)間分析
TPM_BOUND_DATA是綁定的結(jié)構(gòu)體,字節(jié)數(shù)有5字節(jié).一個(gè)512位RSA密鑰能加密64字節(jié)的數(shù)據(jù),減去TPM_BOUND_DATA結(jié)構(gòu)體5個(gè)字節(jié)的長(zhǎng)度,如果用OAEP填充長(zhǎng)度,占38個(gè)字節(jié),因此僅僅剩下21個(gè)字節(jié)的可用長(zhǎng)度來(lái)加密密鑰;如果用PKCS#v1.5填充,占用11個(gè)字節(jié),剩下53個(gè)字節(jié),以此類推,用PKCS#v1.5能加密更多的數(shù)據(jù),其對(duì)比如表1:
表1 不同長(zhǎng)度和類型的密鑰可用于加密數(shù)據(jù)的最大長(zhǎng)度
TPM_SEALED_DATA是密封的結(jié)構(gòu)體,字節(jié)數(shù)有65個(gè)字節(jié),對(duì)比5字節(jié)的TPM_BOUND_DATA,在密封對(duì)稱密鑰時(shí),空余的長(zhǎng)度是不夠的.表2列出了不同長(zhǎng)度的RSA密鑰允許密封數(shù)據(jù)的長(zhǎng)度(以O(shè)AEP為填充數(shù)據(jù)).
表2 不同長(zhǎng)度的密鑰允許密封數(shù)據(jù)的最大長(zhǎng)度
從表2中可以看出,可以加密目前所有的常用對(duì)稱密鑰.但由于TPM_SEALED_DATA結(jié)構(gòu)體的長(zhǎng)度限制,導(dǎo)致其他長(zhǎng)度的密鑰不能用.因此每次密封的長(zhǎng)度要比綁定的長(zhǎng)度小.一般情況下要用到2 048位的RSA密鑰加密.用戶可以使用遺留密鑰或是綁定密鑰對(duì)數(shù)據(jù)進(jìn)行綁定(不一定是TPM產(chǎn)生的密鑰)但只有存儲(chǔ)密鑰(由RSK產(chǎn)生)才能用來(lái)對(duì)數(shù)據(jù)密封,這意味著對(duì)密封密鑰的長(zhǎng)度要求更加嚴(yán)格.而綁定數(shù)據(jù)用RSA密鑰綁定可以是512,1 024,2 048字節(jié),RSA密鑰可以是TPM之外的密鑰.
從上面的分析可知,每次加密時(shí),相對(duì)于2 048位的RSA密鑰加密而言,Binding每次加密的字節(jié)長(zhǎng)度要大于Sealing加密的長(zhǎng)度,除此之外,密封過(guò)程還要驗(yàn)證PCR的值,并且綁定過(guò)程不需要在TPM內(nèi)部執(zhí)行.因此,從數(shù)據(jù)結(jié)構(gòu)和原理上分析,綁定的時(shí)間要比密封的時(shí)間要短.下面通過(guò)實(shí)驗(yàn)來(lái)進(jìn)行驗(yàn)證.
本文測(cè)試硬件采用Atmel TPM芯片,符合TCG1.2規(guī)范的TPM;OS為linux,使用fedora-1.3194;內(nèi)核采用2.6.34.7;而可信軟件棧 TSS使用Trousers 0.3.6.
對(duì)于數(shù)據(jù)綁定操作,所用的TPM平臺(tái)可以支持512位,1 024位和2 048位的RSA密碼.而對(duì)密封操作,TPM平臺(tái)僅僅提供2 048位的RSA密鑰支持.對(duì)Binding和Sealing操作,一般以2 048位的RSA密鑰加密目前常用的對(duì)稱密鑰,對(duì)不同大小的數(shù)據(jù)塊進(jìn)行Binding和Sealing測(cè)試,數(shù)據(jù)塊以0.1 KB間隔的大小遞增,最大測(cè)試數(shù)據(jù)為1KB,以最后加密時(shí)間進(jìn)行比較.則綁定和密封時(shí)間比較如圖5所示:
圖5 綁定和密封的時(shí)間比較圖
圖5顯示,密封1KB數(shù)據(jù)塊的時(shí)間大約為2.80s,而對(duì)綁定的為時(shí)間大約為1.07s.對(duì)同樣大小的數(shù)據(jù)塊,密封所用的時(shí)間要大于綁定的時(shí)間.并且,隨著數(shù)據(jù)塊的增加,密封和綁定時(shí)間都在增加,綁定增幅沒(méi)有密封明顯.對(duì)較大數(shù)據(jù)塊進(jìn)行Binding操作時(shí),是將其數(shù)據(jù)塊分成較小的數(shù)據(jù)塊,并分別進(jìn)行Binding操作,最后再重新組裝成大的數(shù)據(jù)塊保存在外存.假設(shè)加密1KB的數(shù)據(jù)塊,使用2 048位的RSA密鑰進(jìn)行Binding,填充類型為OAEP(Optimal Asymmetric Encryption Padding),每次可Binding213個(gè)字節(jié),大約需要5次的數(shù)據(jù)塊分割,分別進(jìn)行綁定,組后組裝成一個(gè)大的數(shù)據(jù)塊.而對(duì)于密封操作來(lái)說(shuō)每次只能Sealing153個(gè)字節(jié),需要大約7次數(shù)據(jù)塊分割,分別進(jìn)行Sealing,最后再組裝.因此,綁定消耗的時(shí)間要小于密封消耗的時(shí)間,另外,綁定的操作不需要在TPM內(nèi)部執(zhí)行而在宿主機(jī)上執(zhí)行,因此,綁定的時(shí)間要比密封的時(shí)間要短很多.
通過(guò)調(diào)用位于TSS層的Tspi_Data_Unbind和Tspi_Data_Unseal的功能接口,對(duì)Binding和Sealing操作的數(shù)據(jù)做逆運(yùn)算,驗(yàn)證通過(guò)Unbinding和Unsealing解密之后的數(shù)據(jù)和Binding和Sealing加密之前的數(shù)據(jù)一致,對(duì)比其運(yùn)行時(shí)間如圖6:
圖6 解封和解除綁定的時(shí)間比較圖
從圖中可以看出,對(duì)于同樣大小的數(shù)據(jù)塊,解封的時(shí)間要大于解除綁定的時(shí)間,隨著數(shù)據(jù)塊的增大,解封的時(shí)間和解除綁定的時(shí)間都基本是以線性增加.而對(duì)于只對(duì)1 KB的解除綁定和解封來(lái)說(shuō),時(shí)間一個(gè)是5.75 s,一個(gè)是7.85 s,時(shí)間相對(duì)綁定和密封來(lái)說(shuō)都要長(zhǎng)一些,對(duì)于密封和綁定如果只是對(duì)1 KB大小的數(shù)據(jù)進(jìn)行操作,這個(gè)時(shí)間還是可以接受.但如果是對(duì)更大的數(shù)據(jù)進(jìn)行操作,時(shí)間會(huì)線性增加.同樣這個(gè)時(shí)間對(duì)于解除綁定和解封也會(huì)線性增加.因此,對(duì)更大的數(shù)據(jù)密封或者綁定將需要很長(zhǎng)的時(shí)間,因此可信計(jì)算在數(shù)據(jù)保護(hù)方面,從時(shí)間效率上考慮,加密較大的數(shù)據(jù)將要花費(fèi)大量的時(shí)間,比較適用于加密小的數(shù)據(jù),如可以加密密鑰等數(shù)據(jù).
綁定適合于傳統(tǒng)的遠(yuǎn)程認(rèn)證中,接收方和發(fā)送者之間對(duì)密鑰進(jìn)行加密,只不過(guò)這個(gè)密鑰是由TPM來(lái)綁定,但也可以根據(jù)情況進(jìn)行遷移密鑰的遷移.而密封是與TPM當(dāng)前的平臺(tái)配置信息相關(guān),如果和平臺(tái)配置信息一致,則用TPM的不可遷移密鑰進(jìn)行解密.整個(gè)過(guò)程與特定平臺(tái)的特定狀態(tài)相關(guān)聯(lián).由于密封操作的數(shù)據(jù)結(jié)構(gòu)比綁定結(jié)構(gòu)空間需要大,且操作過(guò)程需要PCR的狀態(tài)驗(yàn)證,所以比綁定需要的時(shí)間更長(zhǎng).但這兩種數(shù)據(jù)保護(hù)方式由于都用到RSA算法,適合加密密鑰等數(shù)據(jù).如果是更大的數(shù)據(jù),需要其他方式來(lái)解決.在應(yīng)用程序使用過(guò)程中,將常規(guī)密碼和公鑰密碼結(jié)合在一起使用,比如:利用DES來(lái)加密信息,而采用RSA來(lái)傳遞會(huì)話密鑰.將數(shù)據(jù)用對(duì)稱密鑰通過(guò)宿主機(jī)的CPU加密,再用TSS的Tspi_Data_Seal或Tspi_Data_Bind通過(guò)TPM對(duì)對(duì)稱密鑰進(jìn)行綁定和密封,就可以克服TPM運(yùn)行綁定和密封時(shí)運(yùn)行時(shí)間長(zhǎng)的特點(diǎn),在遠(yuǎn)程認(rèn)證過(guò)程中,建立會(huì)話密鑰,再由TPM對(duì)會(huì)話密鑰進(jìn)行綁定和密封.將TPM的嚴(yán)密的數(shù)據(jù)保護(hù)功能應(yīng)用到應(yīng)用程序中.
目前,TPM芯片已廣泛應(yīng)用到PC中,通過(guò)TPM的功能設(shè)計(jì)和比較安全的構(gòu)架,增強(qiáng)了平臺(tái)的安全性.Sealing和Binding是可信平臺(tái)下的兩種數(shù)據(jù)保護(hù)方式.本文通過(guò)從數(shù)據(jù)結(jié)構(gòu)和過(guò)程兩個(gè)方面對(duì)這兩種方式的性能進(jìn)行比較和分析,分析其共同點(diǎn)和適用的范圍.通過(guò)測(cè)試,得出對(duì)數(shù)據(jù)的綁定的時(shí)間要比密封的需要的時(shí)間少,解除綁定的時(shí)間要比解除密封的時(shí)間少.從時(shí)間的效率方面考慮,可信計(jì)算的數(shù)據(jù)保護(hù)適用于對(duì)較小的數(shù)據(jù)量操作,對(duì)較大的數(shù)據(jù),其操作時(shí)間是線性增長(zhǎng)的,因此,需要通過(guò)其他方式進(jìn)行解決,如將加密過(guò)程移到宿主機(jī)來(lái)執(zhí)行或者是由遠(yuǎn)程服務(wù)器加密之后再傳遞會(huì)話密鑰.如果應(yīng)用不必考慮可信平臺(tái)的配置信息時(shí),用綁定操作比密封操作更能節(jié)省時(shí)間,但安全性能不如密封操作.
[1] Trusted Computing Group.TCG Specification architecture overview specification revision 1.2[EB/OL].http://www.trustedcomputinggroup.org,2012-05-01
[2] Trusted Computing Group.TCG software stack specification version 1.2[EB/OL].http://www.trustedcomputinggroup.org,2012-05-01
[3] 劉昌平,范明鈺,王光衛(wèi).可信計(jì)算環(huán)境數(shù)據(jù)封裝方法[J].計(jì)算機(jī)應(yīng)用研究,2009,26(10):3 891-3 893
[4] 陳小峰.可信平臺(tái)模塊的形式化分析和測(cè)試[J].計(jì)算機(jī)學(xué)報(bào),2009,32(4):646-652
[5] 劉安戰(zhàn),韓玉民.可信平臺(tái)模塊數(shù)據(jù)保護(hù)能力測(cè)試與分析[J].計(jì)算機(jī)應(yīng)用,2010,30(5):1 243-1 245
[6] (美)查利納(Challener,D.).可信計(jì)算[M].趙 波,譯.北京:機(jī)械工業(yè)出版社,2009
Data Encryption Strategy Based on Trusted Computing Software Stack
Yan Jianhong
(Department of Computer Science,Taiyuan Normal University,Taiyuan 030012,China)
The concept of trusted computing and the TCG Software Stack(TSS)was introduced.In particular,configurations and kinds of the Trusted Platform Module(TPM)was expounded.Performance between of binding and sealing was compared and analyzed from the data structure and encryption process.And similarities and applicable scope of them were discussed.It is concluded that sealing is more powerful than binding and its safety is also higher than binding.The test results show that data-binding need less time than data-sealing and data-unbinding need less time than data-unsealing.The two kinds of data protection method of trusted computing are only suitable for smaller data from the aspect of time efficiency.The time of encrypting and decrypting mass data increases greatly.
trusted computing;trusted platform module key;data binding;data sealing;data security
張麗萍】
1672-2027(2012)03-0057-06
O223;C934
A
2012-06-27
山西省高等學(xué)??萍柬?xiàng)目(20101115).
閆建紅(1972-),女,山西盂縣人,博士研究生,太原師范學(xué)院計(jì)算機(jī)系副教授,主要從事網(wǎng)絡(luò)安全、可信計(jì)算研究.