專利名稱:一種多兼容性可信計算系統(tǒng)及方法
技術(shù)領(lǐng)域:
本發(fā)明涉及信息安全領(lǐng)域,具體而言,是涉及到可信計算領(lǐng)域,特別是涉及一種具有多兼容性的可信計算系統(tǒng)及方法。
背景技術(shù):
現(xiàn)有在可信計算領(lǐng)域中存在多種可信計算標準,最典型的是國際標準,是由信任運算組織(Trusted Computing Group,TCG)制定的可信運算的標準實施規(guī)范,目前最新為1.2版(2003年10月)。同時,也存在如中國各服務(wù)廠商制定的可信計算標準等。這些標準既存在著相似性,同時也存在著差異性。
現(xiàn)有的TCG可信計算標準是由TCG組織制定的開放的國際標準,該標準與中國各服務(wù)廠商制定的可信計算標準有很多差異性,比如可信計算標準的算法不同,TCG標準中使用RSA(R.Rirest、A.Sllalnlr和L.Adlemand三人開發(fā))非對稱加密算法,AES(Advanced Encryption Standard)對稱加密算法,SHA1(Secure Hash Algorithm 1)HASH算法;而中國各服務(wù)廠商制定的可信計算標準使用橢圓曲線加密算法(Elliptic Curves Cryptography,ECC)非對稱加密算法,SMS4對稱加密算法,SCH HASH算法。同時,多種標準之間的通訊協(xié)議也不同,導(dǎo)致這多種標準不能互相兼容,即如果在某個安全系統(tǒng)上,安裝有多個可信計算系統(tǒng),則多個可信系統(tǒng)之間只能獨立運行計算,相互之間不能兼容,這樣,多個可信計算系統(tǒng)占有很多的資源,不能很好的適應(yīng)于不同的商業(yè)應(yīng)用環(huán)境,適應(yīng)性很差,使用成本很高。
發(fā)明內(nèi)容
本發(fā)明的所要解決的問題在于提供一種多兼容可信計算系統(tǒng)及方法,其擁有很好的兼容性和適應(yīng)性,占用資源少,成本低。
為實現(xiàn)本發(fā)明目的而提供的一種多兼容可信計算系統(tǒng),包括至少一個第一可信計算功能單元和至少一個第二可信計算功能單元,其特征在于,還包括一可信接口控制單元,用于從總線接收到傳遞給第一可信計算功能單元和/或第二可信計算功能單元的協(xié)議命令數(shù)據(jù)流,根據(jù)不同的協(xié)議命令字,對協(xié)議命令數(shù)據(jù)流進行不同的處理。
所述可信接口控制單元可以包括接收發(fā)送單元,解析單元,判斷打包單元,其中所述接收發(fā)送單元,用于從總線接收協(xié)議命令數(shù)據(jù)流,并將協(xié)議命令數(shù)據(jù)流發(fā)送到第一可信計算功能單元或者第二可信計算功能單元;接收第一可信計算功能單元或者第二可信計算功能單元的處理結(jié)果,并將處理結(jié)果返回給總線;所述解析單元,用于根據(jù)接收發(fā)送單元接收的協(xié)議命令數(shù)據(jù)流,解析得到不同的協(xié)議數(shù)據(jù)包,根據(jù)不同的數(shù)據(jù)包獲得不同的命令字,并將解析數(shù)據(jù)發(fā)送給判斷打包單元;所述判斷打包單元,用于根據(jù)解析數(shù)據(jù),判斷該協(xié)議命令數(shù)據(jù)流是發(fā)送到第一可信計算功能單元還是第二可信計算功能單元,并根據(jù)判斷結(jié)果,將解析數(shù)據(jù)重新按照第一可信計算功能單元標準或者第二可信計算功能單元標準格式打包,并通過接收發(fā)送單元發(fā)送給相應(yīng)的功能單元。
所述可信接口控制單元還可以包括功能配置單元,用于設(shè)置處理協(xié)議命令數(shù)據(jù)流的功能模式。
所述功能配置單元設(shè)置處理協(xié)議命令數(shù)據(jù)流的功能模式為第一可信計算功能單元標準的功能模式和/或者第二可信計算功能單元標準的功能模式;當(dāng)功能配置單元設(shè)置為只運行第一可信計算功能單元標準的功能模式時,可信接口控制單元將不對第二可信計算功能單元標準的請求進行響應(yīng);當(dāng)功能配置單元設(shè)置為只運行第二可信計算功能單元標準的功能模式時,可信接口控制單元將不對第一可信計算功能單元標準的請求進行響應(yīng);當(dāng)功能配置單元設(shè)置為運行第一可信計算功能單元標準的功能模式和第二可信計算功能單元標準的功能模式時,既可以對第一可信計算功能單元的標準進行響應(yīng),也可以對第一可信計算功能單元的標準進行響應(yīng)。
所述功能配置單元設(shè)置處理協(xié)議命令數(shù)據(jù)流的功能模式為第一可信計算功能單元標準的功能模式和/或第二可信計算功能單元標準的功能模式時,由外部設(shè)置命令控制,功能配置單元可以根據(jù)外部設(shè)置命令的請求,返回當(dāng)前的功能配置,并接受外部設(shè)置命令請求,重新設(shè)置功能模式。
所述可信接口控制單元,還可以進一步包括數(shù)據(jù)驗證單元,用于接收發(fā)送單元從總線接收協(xié)議命令數(shù)據(jù)流后,驗證該協(xié)議命令數(shù)據(jù)流是否為發(fā)送給第一可信計算功能單元或者第二可信計算功能單元的數(shù)據(jù)流,并在驗證通過后將協(xié)議命令數(shù)據(jù)流傳輸給解析單元。
所述多兼容可信計算系統(tǒng),還包括存儲單元,用于將所述第一可信計算功能單元和/或第二可信計算功能單元的數(shù)據(jù),分別存儲在不同的存儲區(qū)域。
為實現(xiàn)本發(fā)明目的還提供一種多兼容可信計算方法,包括下列步驟步驟A,從外部總線接口接收協(xié)議命令數(shù)據(jù)流;步驟B,從協(xié)議命令數(shù)據(jù)流中解析得到協(xié)議數(shù)據(jù)包,從協(xié)議數(shù)據(jù)包中獲得協(xié)議命令數(shù)據(jù)流的命令字;步驟C,根據(jù)解析的命令字,判斷該協(xié)議命令數(shù)據(jù)流是發(fā)送到第一可信計算功能單元還是第二可信計算功能單元,并根據(jù)判斷結(jié)果,進行數(shù)據(jù)處理;步驟D,第一可信計算功能單元或者第二可信計算功能單元對協(xié)議命令數(shù)據(jù)流數(shù)據(jù)進行處理,并將處理結(jié)果通過可信接口控制單元返回給總線,可信接口控制單元重新準備接收數(shù)據(jù)。
所述步驟A之前還包括下列步驟步驟A′,設(shè)置處理協(xié)議命令數(shù)據(jù)流的功能模式。
所述的多兼容可信計算方法,還包括下列步驟由外部設(shè)置命令控制,功能配置單元可以根據(jù)外部設(shè)置命令的請求,返回當(dāng)前的功能配置,并接受外部設(shè)置命令請求,重新設(shè)置功能模式。
所述步驟A和步驟B之間還包括下列步驟驗證數(shù)據(jù)流是否完整正確,如果否,則表明數(shù)據(jù)包不正確,丟棄并準備接收新數(shù)據(jù),轉(zhuǎn)到步驟A;否則,轉(zhuǎn)到步驟B。
所述步驟C中根據(jù)判斷結(jié)果,進行數(shù)據(jù)處理,包括下列步驟步驟C1,如果設(shè)置為只運行第一可信計算功能單元標準的功能模式,在判斷是第二可信計算功能標準的請求后,則不再打包傳送到第一可信計算功能單元,直接中斷處理并返回結(jié)束;否則,將解析數(shù)據(jù)重新按照第一可信計算功能標準格式打包,轉(zhuǎn)入步驟D;步驟C2,如果設(shè)置為只運行第二可信計算功能單元標準的功能模式,在判斷是第一可信計算功能標準的請求后,則不再打包傳送到第二可信計算功能單元,直接中斷處理并返回結(jié)束;否則,將解析數(shù)據(jù)重新按照第二可信計算功能標準格式打包,轉(zhuǎn)入步驟D;步驟C3,如果設(shè)置為運行第一可信計算功能單元標準的功能模式和第二可信計算功能單元標準的功能模式,在判斷該協(xié)議命令請求后,根據(jù)不同的協(xié)議命令字,將解析數(shù)據(jù)重新按照第一可信計算功能標準或者第一可信計算功能標準格式打包,發(fā)送給不同的功能單元處理,轉(zhuǎn)入步驟D。
所述的多兼容可信計算方法,所述不同的第一可信計算功能單元和第二可信計算功能單元存儲在不同的存儲區(qū)域,兩種存儲區(qū)域之間互不關(guān)聯(lián),訪問其中一個存儲區(qū)域的指令不能訪問另一個存儲區(qū)域。
所述第一可信計算功能單元為TPM功能單元;所述第二可信計算功能單元為cTPM功能單元。
所述總線為LPC總線;所述可信接口控制單元為LPC可信接口控制單元。
本發(fā)明的有益效果是本發(fā)明的多兼容可信計算系統(tǒng)及計算方法,可以很好的支持多種可信計算的標準,使得可信計算系統(tǒng)在商業(yè)應(yīng)用上具有更好的適應(yīng)性,可以應(yīng)用于不同的商業(yè)應(yīng)用環(huán)境,擁有極大的靈活性,并且對于最終用戶而言,對多種可信計算標準的使用成本也將極大的降低。
圖1本發(fā)明多兼容可信計算系統(tǒng)結(jié)構(gòu)示意圖;圖2為本發(fā)明多兼容可信計算方法流程圖;圖3為根據(jù)配置以及協(xié)議命令判斷結(jié)果對協(xié)議命令數(shù)據(jù)流進行處理流程圖。
具體實施例方式
為了使本發(fā)明的目的、技術(shù)方案及優(yōu)點更加清楚明白,以下結(jié)合附圖及實施例,對本發(fā)明的一種多兼容可信計算系統(tǒng)及方法進行進一步詳細說明。應(yīng)當(dāng)理解,此處所描述的具體實施例僅僅用以解釋本發(fā)明,并不用于限定本發(fā)明。
本發(fā)明的多兼容可信計算系統(tǒng)是在同一個物理芯片中實現(xiàn)對多種可信計算標準的支持。
圖1為本發(fā)明一種多兼容可信計算系統(tǒng)的結(jié)構(gòu)示意圖,包括至少一個TPM(Trusted Platform Module,可信賴平臺模塊)功能單元和至少一個cTPM(China Trusted Platform Module,中國可信平臺模塊)功能單元。
TPM功能單元131,又稱TPM安全芯片,是指符合TPM標準的安全芯片,它能有效地保護PC、防止非法用戶訪問,是執(zhí)行TCG可信計算標準的模塊單元,該單元根據(jù)TCG組織制定的標準規(guī)范運行。
TPM標準是指1999年10月,多家IT公司聯(lián)合發(fā)起成立可信賴運算平臺聯(lián)盟(Trusted Computing Platform Alliance,TCPA)制定的可信計算標準,初期加入者有康柏、HP、IBM、Intel、微軟等公司。該聯(lián)盟致力于促成新一代具有安全且可信賴的硬件運算平臺。2003年3月,TCPA增加了諾基亞、索尼等公司的加入,并改組為可信賴計算組織(Trusted Computing Group,TCG),希望從跨平臺和操作環(huán)境的硬件和軟件兩方面,制定可信賴電腦相關(guān)標準和規(guī)范。并在并提出了TPM規(guī)范,目前最新版本為1.2。
cTPM功能單元132,又稱cTPM安全芯片,是指符合中國TPM標準的安全芯片,它具有現(xiàn)有TPM的功能,同時采用不同與TPM安全芯片的接口與算法。該安全芯片根據(jù)中國制定的可信計算標準規(guī)范運行。目前中國有聯(lián)想的“恒智”cTPM安全芯片以及兆日公司的cTPM安全芯片。
TPM功能單元131和cTPM功能單元132的運行工作過程都是一種規(guī)范的現(xiàn)有技術(shù),因此,在本發(fā)明實施例中不再一一詳細描述。
本發(fā)明的多兼容可信計算系統(tǒng),還包括一可信接口控制單元12(TrustedInformation Systems Interface,TIS Interface)。
所述可信接口控制單元12,用于從總線11(BUS)接收到傳遞給TPM功能單元131和/或cTPM功能單元132的協(xié)議命令數(shù)據(jù)流,根據(jù)不同的協(xié)議命令字,對協(xié)議命令數(shù)據(jù)流進行不同的處理。
其中,一般地,所述總線11為低腳位數(shù)(Low Pin Count,LPC)總線11,相應(yīng)地,所述可信接口控制單元12為低腳位數(shù)-可信接口控制單元12(LPC-TISInterface)。
所述可信接口控制單元12,包括接收發(fā)送單元122,解析單元124,判斷打包單元125,其中所述接收發(fā)送單元122,用于從總線11接收協(xié)議命令數(shù)據(jù)流,并將協(xié)議命令數(shù)據(jù)流發(fā)送到TPM功能單元131或者cTPM功能單元132;接收TPM功能單元131或者cTPM功能單元132的處理結(jié)果,并將處理結(jié)果返回給總線11;所述解析單元124,用于根據(jù)接收發(fā)送單元122接收的協(xié)議命令數(shù)據(jù)流,解析得到不同的協(xié)議數(shù)據(jù)包,根據(jù)不同的數(shù)據(jù)包獲得不同的命令字,并將解析數(shù)據(jù)發(fā)送給判斷打包單元125;所述判斷打包單元125,用于根據(jù)解析數(shù)據(jù),判斷該協(xié)議命令數(shù)據(jù)流是發(fā)送到TPM功能單元131還是cTPM功能單元132,并根據(jù)判斷結(jié)果,將解析數(shù)據(jù)重新按照TPM標準或者cTPM標準格式打包,并通過接收發(fā)送單元122發(fā)送給相應(yīng)的功能單元。
較佳地,所述可信接口控制單元12,還包括數(shù)據(jù)驗證單元123,功能配置單元121,其中所述數(shù)據(jù)驗證單元123,用于接收發(fā)送單元122從總線11接收協(xié)議命令數(shù)據(jù)流后,驗證該協(xié)議命令數(shù)據(jù)流是否為發(fā)送給TPM功能單元131或者cTPM功能單元132的數(shù)據(jù)流,并在驗證通過后將協(xié)議命令數(shù)據(jù)流傳輸給解析單元124;當(dāng)接收發(fā)送單元122從總線11接收協(xié)議命令數(shù)據(jù)流后,首先根據(jù)協(xié)議命令數(shù)據(jù)流中的校驗位,判斷數(shù)據(jù)包是否完整正確,如果否,則表明數(shù)據(jù)包不正確,丟棄并準備接收新數(shù)據(jù);否則,在驗證通過后將協(xié)議命令數(shù)據(jù)流傳輸給解析單元124。
所述功能配置單元121,用于設(shè)置處理協(xié)議命令數(shù)據(jù)流的功能模式。
功能配置單元121設(shè)置處理協(xié)議命令數(shù)據(jù)流的功能模式為TPM功能模式和/或者cTPM功能模式。當(dāng)功能配置單元121設(shè)置為只運行TPM功能模式時,可信接口控制單元12將不對cTPM標準的請求進行響應(yīng);當(dāng)功能配置單元121設(shè)置為只運行cTPM標準模式時,可信接口控制單元12將不對TPM標準的請求進行響應(yīng);當(dāng)功能配置單元121設(shè)置為運行TPM功能模式和cTPM功能模式時,既可以對TPM標準進行響應(yīng),也可以對cTPM標準進行響應(yīng)。
更佳地,功能配置單元121設(shè)置處理協(xié)議命令數(shù)據(jù)流的功能模式為TPM功能模式和/或cTPM功能模式時,可以由外部設(shè)置命令控制,功能配置單元121可以根據(jù)外部設(shè)置命令的請求,返回當(dāng)前的功能配置,并接受外部設(shè)置命令請求,重新設(shè)置功能模式。
進一步地,本發(fā)明的多兼容可信計算系統(tǒng),包括存儲單元13,用于將所述TPM功能單元131和/或cTPM功能單元132的數(shù)據(jù),分別存儲在不同的存儲區(qū)域。
作為一種可實施的方式,存儲單元13內(nèi)部有0x0000到0xFFFF大小的存儲區(qū)域,則將存儲區(qū)域強制劃分為兩個存儲區(qū)域0x0000~0x7FFF和0x8000~0xFFFF。其中,0x0000~0x7FFF為TPM功能單元131的數(shù)據(jù)存儲地址;0x8000~0xFFFF為cTPM功能單元132的數(shù)據(jù)存儲區(qū)域。兩種存儲區(qū)域之間互不關(guān)聯(lián),訪問其中一個存儲區(qū)域的指令不能訪問另一個存儲區(qū)域。
從總線11發(fā)送給TPM或者cTPM功能單元132的協(xié)議命令都是標準格式的數(shù)據(jù)流,也就是說,總線11與安全芯片之間的通訊協(xié)議,不同的安全芯片,有不同的標準協(xié)議命令格式,其都是一些有標準格式的數(shù)據(jù)流,因此,當(dāng)可信接口控制單元12的接收發(fā)送單元122接收到協(xié)議命令數(shù)據(jù)流后,首先由數(shù)據(jù)驗證單元123校驗接收到的數(shù)據(jù)流是否完整正確,并在驗證通過后傳輸給解析單元124,解析得到不同的數(shù)據(jù)包,根據(jù)不同的數(shù)據(jù)包獲得不同的命令字,然后傳送給判斷打包單元125,判斷決定該協(xié)議命令是發(fā)送到TPM功能單元131還是cTPM功能單元132,將協(xié)議命令打包分發(fā)至TPM功能單元131或者cTPM功能單元132進行處理,并將處理結(jié)果返回給總線11。
作為一種可實施的方式,功能配置單元121可以設(shè)置處理協(xié)議命令數(shù)據(jù)流的功能模式。
如果功能配置單元121設(shè)置為只運行TPM功能模式,判斷打包單元125在判斷是cTPM標準的請求后,則不再打包傳送到功能單元,直接中斷處理并返回結(jié)束,可信接口控制單元12不對cTPM標準的請求進行響應(yīng);如果功能配置單元121設(shè)置為只運行cTPM標準模式,則判斷打包單元125在判斷是TPM標準的請求后,則不再打包傳送到功能單元,直接中斷處理并返回結(jié)束,可信接口控制單元12將不對TPM標準的請求進行響應(yīng);如果功能配置單元121設(shè)置為運行TPM功能模式和cTPM功能模式,則判斷打包單元125在判斷該協(xié)議命令請求后,根據(jù)不同的協(xié)議命令字將協(xié)議命令數(shù)據(jù)流發(fā)送給不同的功能單元處理,并將處理結(jié)果返回給總線11,這樣,可信接口控制單元12既可以對TPM標準的TPM功能單元131進行響應(yīng),也可以對cTPM標準的cTPM功能單元132進行響應(yīng)。
本發(fā)明的多兼容可信計算系統(tǒng),在同一個內(nèi)核上實現(xiàn)了多種可信計算標準所規(guī)定的功能。其分別對不同的外部請求進行控制,以最終實現(xiàn)對多種可信計算標準的支持。而且,多個可信計算標準的功能單元可以使用同一個物理設(shè)備,共用存儲空間和通訊地址。從而以不同的形式實現(xiàn)了對多種可信計算標準邏輯的支持,其支持形式包括1)只支持cTPM標準;2)只支持TPM標準。3)同時支持多種可信計算標準。同時,在這樣的架構(gòu)上,也可以使得本發(fā)明的多兼容可信計算系統(tǒng)動態(tài)的支持不同的可信計算標準,即通過外部設(shè)置命令,讀取并改變所支持的可信計算標準。
下面結(jié)合本發(fā)明的多兼容可信計算系統(tǒng),進一步詳細說明本發(fā)明的一種多兼容可信計算方法,如圖所示,其包括如下步驟步驟S100,設(shè)置處理協(xié)議命令數(shù)據(jù)流的功能模式;設(shè)置處理協(xié)議命令數(shù)據(jù)流的功能模式為TPM功能模式和/或者cTPM功能模式。當(dāng)設(shè)置為只運行TCG功能模式時,將不對cTPM標準的請求進行響應(yīng);當(dāng)設(shè)置為只運行中國標準模式時,將不對TPM標準的請求進行響應(yīng);當(dāng)設(shè)置為運行TPM功能模式和cTPM功能模式時,既可以對TPM標準進行響應(yīng),也可以對cTPM標準進行響應(yīng)。
較佳地,所述多兼容可信計算方法還包括下列步驟由外部設(shè)置命令控制,可以根據(jù)外部設(shè)置命令的請求,返回當(dāng)前的功能配置,并接受外部設(shè)置命令請求,重新設(shè)置功能模式。
步驟S200,從外部總線11接口接收協(xié)議命令數(shù)據(jù)流;當(dāng)系統(tǒng)開始上電運行,自動初始化TPM功能單元131和cTPM功能單元132,以及可信接口控制單元12,等待從外部總線11接收傳輸給TPM功能單元131或者cTPM功能單元132的協(xié)議命令數(shù)據(jù)流。
較佳地,所述可信接口控制單元12為LPC可信接口控制單元12,所述總線11為LPC總線11。
步驟S300,驗證數(shù)據(jù)流是否完整正確,如果否,則表明數(shù)據(jù)包不正確,丟棄并準備接收新數(shù)據(jù),轉(zhuǎn)到步驟S200;否則,轉(zhuǎn)到下一步驟;可信接口控制單元12從總線11接收協(xié)議命令數(shù)據(jù)流后,首先根據(jù)協(xié)議命令數(shù)據(jù)流中的校驗位,判斷數(shù)據(jù)包是否完整正確,如果否,則表明數(shù)據(jù)包不正確,丟棄并返回步驟S200準備接收新數(shù)據(jù);否則,在驗證通過后進入下一步驟,將協(xié)議命令數(shù)據(jù)流進行解析。
步驟S400,從協(xié)議命令數(shù)據(jù)流中解析得到協(xié)議數(shù)據(jù)包,從協(xié)議數(shù)據(jù)包中獲得協(xié)議命令數(shù)據(jù)流的命令字;可信接口控制單元12接收到的協(xié)議命令數(shù)據(jù)流后,根據(jù)現(xiàn)有的TPM和cTPM規(guī)范解析標準,從協(xié)議命令數(shù)據(jù)流中解析得到協(xié)議數(shù)據(jù)包,從協(xié)議數(shù)據(jù)包中獲得協(xié)議命令數(shù)據(jù)流的命令字。
從協(xié)議命令數(shù)據(jù)流解析并獲得命令字的過程,本領(lǐng)域普通技術(shù)人員根據(jù)現(xiàn)有的TPM和cTPM標準就可以解析得到,因此,在本發(fā)明中,不再一一詳細描述。
步驟S500,根據(jù)解析的命令字,判斷該協(xié)議命令數(shù)據(jù)流是發(fā)送到TPM功能單元131還是cTPM功能單元132,并根據(jù)判斷結(jié)果,進行數(shù)據(jù)處理;由于TPM標準和cTPM標準的不同協(xié)議的命令字的定義空間是不同的,我們可以通過區(qū)分命令包的命令字部分判斷該協(xié)議請求是期望以什么標準運行。
可信接口控制單元12在設(shè)置處理協(xié)議命令數(shù)據(jù)流的功能模式為TPM功能模式和/或者cTPM功能模式后。當(dāng)設(shè)置為只運行TPM功能模式時,可信接口控制單元12將不對cTPM標準的請求進行響應(yīng);當(dāng)設(shè)置為只運行cTPM標準模式時,可信接口控制單元12將不對TPM標準的請求進行響應(yīng);當(dāng)設(shè)置為運行TPM功能模式和cTPM功能模式時,既可以對TPM標準進行響應(yīng),也可以對cTPM標準進行響應(yīng)。
具體而言,所述根據(jù)判斷結(jié)果,進行數(shù)據(jù)處理,包括下列步驟步驟S510,如果設(shè)置為只運行TPM功能模式,在判斷是cTPM標準的請求后,則不再打包傳送到TPM功能單元131,直接中斷處理并返回步驟S200等待新的數(shù)據(jù),可信接口控制單元12不對cTPM標準的請求進行響應(yīng);否則,將解析數(shù)據(jù)重新按照TPM標準格式打包,轉(zhuǎn)入步驟S600;步驟S520,如果設(shè)置為只運行cTPM標準模式,在判斷是TPM標準的請求后,則不再打包傳送到cTPM功能單元132,直接中斷處理并返回步驟S200等待新的數(shù)據(jù),可信接口控制單元12將不對TPM標準的請求進行響應(yīng);否則,將解析數(shù)據(jù)重新按照cTPM標準格式打包,轉(zhuǎn)入步驟S600;步驟S530,如果設(shè)置為運行TPM功能模式和cTPM功能模式,在判斷該協(xié)議命令請求后,根據(jù)不同的協(xié)議命令字,將解析數(shù)據(jù)重新按照TPM標準或者cTPM標準格式打包,發(fā)送給不同的功能單元處理,轉(zhuǎn)入步驟S600,這樣,可信接口控制單元12既可以對TPM標準的TPM功能單元131進行響應(yīng),也可以對cTPM標準的cTPM功能單元132進行響應(yīng)。
較佳地,不同的TPM功能單元131和cTPM功能單元132存儲在不同的存儲區(qū)域,兩種存儲區(qū)域之間互不關(guān)聯(lián),訪問其中一個存儲區(qū)域的指令不能訪問另一個存儲區(qū)域。這樣,可信接口控制單元12就可以在判斷不同的協(xié)議命令后,將協(xié)議命令數(shù)據(jù)流傳輸?shù)讲煌牡刂愤M行處理,并使得數(shù)據(jù)處理物理隔離,不會引起數(shù)據(jù)處理錯誤。
步驟S600,TPM功能單元131或者cTPM功能單元132對協(xié)議命令數(shù)據(jù)流數(shù)據(jù)進行處理,并將處理結(jié)果通過可信接口控制單元12返回給總線11,可信接口控制單元12重新準備接收數(shù)據(jù)。
TPM功能單元131或者cTPM功能單元132從可信接口控制單元12接收到符合自己標準對協(xié)議命令數(shù)據(jù)流,并根據(jù)現(xiàn)有的TPM標準或者cTPM標準對數(shù)據(jù)流進行處理,并將處理結(jié)果通過可信接口控制單元12返回給總線11。
根據(jù)TPM標準或者cTPM標準對接收到的數(shù)據(jù)流進行處理,是本領(lǐng)域的現(xiàn)有技術(shù),因此,在本發(fā)明中不再一一詳細描述。
本發(fā)明的多兼容可信計算系統(tǒng)及方法,在可信接口控制單元的控制下,根據(jù)不同的協(xié)議命令數(shù)據(jù)流,決定將請求發(fā)送到TPM功能單元或者cTPM功能單元,并將各單元的處理結(jié)果返回給總線。其從物理實現(xiàn)上,表現(xiàn)為在同一個內(nèi)核上實現(xiàn)了多種可信計算標準所規(guī)定的硬件功能,分別對不同的外部請求進行控制,以最終實現(xiàn)對多種可信計算標準的支持。以不同的形式實現(xiàn)了對多種可信計算標準邏輯的支持。并且通過利用外部指令實現(xiàn)強制指定其所需要支持的可信計算標準,包括1)只支持cTPM標準。2)只支持TPM標準。3)同時支持多種可信計算標準。
通過以上結(jié)合附圖對本發(fā)明具體實施例的描述,本發(fā)明的其它方面及特征對本領(lǐng)域的技術(shù)人員而言是顯而易見的。
本發(fā)明多兼容可信計算系統(tǒng)及方法可以很好的支持多種可信計算標準,這將在商業(yè)應(yīng)用上可以更好的適應(yīng)于不同的商業(yè)應(yīng)用環(huán)境,擁有極大的靈活性。并且對于最終用戶而言,對多種可信計算標準的使用成本也將極大的降低。
以上對本發(fā)明的具體實施例進行了描述和說明,這些實施例應(yīng)被認為其只是示例性的,并不用于對本發(fā)明進行限制,本發(fā)明應(yīng)根據(jù)所附的權(quán)利要求進行解釋。
權(quán)利要求
1.一種多兼容可信計算系統(tǒng),包括至少一個第一可信計算功能單元和至少一個第二可信計算功能單元,其特征在于,還包括一可信接口控制單元,用于從總線接收到傳遞給第一可信計算功能單元和/或第二可信計算功能單元的協(xié)議命令數(shù)據(jù)流,根據(jù)不同的協(xié)議命令字,對協(xié)議命令數(shù)據(jù)流進行不同的處理。
2.根據(jù)權(quán)利要求1所述的多兼容可信計算系統(tǒng),其特征在于,所述可信接口控制單元包括接收發(fā)送單元,解析單元,判斷打包單元,其中所述接收發(fā)送單元,用于從總線接收協(xié)議命令數(shù)據(jù)流,并將協(xié)議命令數(shù)據(jù)流發(fā)送到第一可信計算功能單元或者第二可信計算功能單元;接收第一可信計算功能單元或者第二可信計算功能單元的處理結(jié)果,并將處理結(jié)果返回給總線;所述解析單元,用于根據(jù)接收發(fā)送單元接收的協(xié)議命令數(shù)據(jù)流,解析得到不同的協(xié)議數(shù)據(jù)包,根據(jù)不同的數(shù)據(jù)包獲得不同的命令字,并將解析數(shù)據(jù)發(fā)送給判斷打包單元;所述判斷打包單元,用于根據(jù)解析數(shù)據(jù),判斷該協(xié)議命令數(shù)據(jù)流是發(fā)送到第一可信計算功能單元還是第二可信計算功能單元,并根據(jù)判斷結(jié)果,將解析數(shù)據(jù)重新按照第一可信計算功能單元標準或者第二可信計算功能單元標準格式打包,并通過接收發(fā)送單元發(fā)送給相應(yīng)的功能單元。
3.根據(jù)權(quán)利要求2所述的多兼容可信計算系統(tǒng),其特征在于,所述可信接口控制單元還包括功能配置單元,用于設(shè)置處理協(xié)議命令數(shù)據(jù)流的功能模式。
4.根據(jù)權(quán)利要求3所述的多兼容可信計算系統(tǒng),其特征在于,所述功能配置單元設(shè)置處理協(xié)議命令數(shù)據(jù)流的功能模式為第一可信計算功能單元標準的功能模式和/或者第二可信計算功能單元標準的功能模式;當(dāng)功能配置單元設(shè)置為只運行第一可信計算功能單元標準的功能模式時,可信接口控制單元將不對第二可信計算功能單元標準的請求進行響應(yīng);當(dāng)功能配置單元設(shè)置為只運行第二可信計算功能單元標準的功能模式時,可信接口控制單元將不對第一可信計算功能單元標準的請求進行響應(yīng);當(dāng)功能配置單元設(shè)置為運行第一可信計算功能單元標準的功能模式和第二可信計算功能單元標準的功能模式時,既可以對第一可信計算功能單元的標準進行響應(yīng),也可以對第一可信計算功能單元的標準進行響應(yīng)。
5.根據(jù)權(quán)利要求4所述的多兼容可信計算系統(tǒng),其特征在于,所述功能配置單元設(shè)置處理協(xié)議命令數(shù)據(jù)流的功能模式為第一可信計算功能單元標準的功能模式和/或第二可信計算功能單元標準的功能模式時,由外部設(shè)置命令控制,功能配置單元可以根據(jù)外部設(shè)置命令的請求,返回當(dāng)前的功能配置,并接受外部設(shè)置命令請求,重新設(shè)置功能模式。
6.根據(jù)權(quán)利要求1至5任一項所述的多兼容可信計算系統(tǒng),其特征在于,所述可信接口控制單元,還包括數(shù)據(jù)驗證單元,用于接收發(fā)送單元從總線接收協(xié)議命令數(shù)據(jù)流后,驗證該協(xié)議命令數(shù)據(jù)流是否為發(fā)送給第一可信計算功能單元或者第二可信計算功能單元的數(shù)據(jù)流,并在驗證通過后將協(xié)議命令數(shù)據(jù)流傳輸給解析單元。
7.根據(jù)權(quán)利要求1至5任一項所述的多兼容可信計算系統(tǒng),其特征在于,還包括存儲單元,用于將所述第一可信計算功能單元和/或第二可信計算功能單元的數(shù)據(jù),分別存儲在不同的存儲區(qū)域。
8.根據(jù)權(quán)利要求1至5任一項所述的多兼容可信計算系統(tǒng),其特征在于,所述第一可信計算功能單元為TPM功能單元;所述第二可信計算功能單元為cTPM功能單元。
9.根據(jù)權(quán)利要求8所述的多兼容可信計算系統(tǒng),其特征在于,所述總線為LPC總線;所述可信接口控制單元為LPC可信接口控制單元。
10.一種多兼容可信計算方法,其特征在于,包括下列步驟步驟A,從外部總線接口接收協(xié)議命令數(shù)據(jù)流;步驟B,從協(xié)議命令數(shù)據(jù)流中解析得到協(xié)議數(shù)據(jù)包,從協(xié)議數(shù)據(jù)包中獲得協(xié)議命令數(shù)據(jù)流的命令字;步驟C,根據(jù)解析的命令字,判斷該協(xié)議命令數(shù)據(jù)流是發(fā)送到第一可信計算功能單元還是第二可信計算功能單元,并根據(jù)判斷結(jié)果,進行數(shù)據(jù)處理;步驟D,第一可信計算功能單元或者第二可信計算功能單元對協(xié)議命令數(shù)據(jù)流數(shù)據(jù)進行處理,并將處理結(jié)果通過可信接口控制單元返回給總線,可信接口控制單元重新準備接收數(shù)據(jù)。
11.根據(jù)權(quán)利要求10所述的多兼容可信計算方法,其特征在于,所述步驟A之前還包括下列步驟步驟A′,設(shè)置處理協(xié)議命令數(shù)據(jù)流的功能模式。
12.根據(jù)權(quán)利要求11所述的多兼容可信計算方法,其特征在于,還包括下列步驟由外部設(shè)置命令控制,功能配置單元可以根據(jù)外部設(shè)置命令的請求,返回當(dāng)前的功能配置,并接受外部設(shè)置命令請求,重新設(shè)置功能模式。
13.根據(jù)權(quán)利要求10至12任一項所述的多兼容可信計算方法,其特征在于,所述步驟A和步驟B之間還包括下列步驟驗證數(shù)據(jù)流是否完整正確,如果否,則表明數(shù)據(jù)包不正確,丟棄并準備接收新數(shù)據(jù),轉(zhuǎn)到步驟A;否則,轉(zhuǎn)到步驟B。
14.根據(jù)權(quán)利要求11或12所述的多兼容可信計算方法,其特征在于,所述步驟C中根據(jù)判斷結(jié)果,進行數(shù)據(jù)處理,包括下列步驟步驟C1,如果設(shè)置為只運行第一可信計算功能單元標準的功能模式,在判斷是第二可信計算功能標準的請求后,則不再打包傳送到第一可信計算功能單元,直接中斷處理并返回結(jié)束;否則,將解析數(shù)據(jù)重新按照第一可信計算功能標準格式打包,轉(zhuǎn)入步驟D;步驟C2,如果設(shè)置為只運行第二可信計算功能單元標準的功能模式,在判斷是第一可信計算功能標準的請求后,則不再打包傳送到第二可信計算功能單元,直接中斷處理并返回結(jié)束;否則,將解析數(shù)據(jù)重新按照第二可信計算功能標準格式打包,轉(zhuǎn)入步驟D;步驟C3,如果設(shè)置為運行第一可信計算功能單元標準的功能模式和第二可信計算功能單元標準的功能模式,在判斷該協(xié)議命令請求后,根據(jù)不同的協(xié)議命令字,將解析數(shù)據(jù)重新按照第一可信計算功能標準或者第一可信計算功能標準格式打包,發(fā)送給不同的功能單元處理,轉(zhuǎn)入步驟D。
15.根據(jù)權(quán)利要求12所述的多兼容可信計算方法,其特征在于,所述不同的第一可信計算功能單元和第二可信計算功能單元存儲在不同的存儲區(qū)域,兩種存儲區(qū)域之間互不關(guān)聯(lián),訪問其中一個存儲區(qū)域的指令不能訪問另一個存儲區(qū)域。
16.根據(jù)權(quán)利要求14所述的多兼容可信計算方法,其特征在于,所述第一可信計算功能單元為TPM功能單元;所述第二可信計算功能單元為cTPM功能單元。
17.根據(jù)權(quán)利要求16所述的多兼容可信計算方法,其特征在于,所述總線為LPC總線;所述可信接口控制單元為LPC可信接口控制單元。
全文摘要
本發(fā)明公開了一種多兼容性可信計算系統(tǒng)及方法。該系統(tǒng)包括至少一個第一可信計算功能單元和至少一個第二可信計算功能單元,還包括一可信接口控制單元,用于從總線接收到傳遞給第一可信計算功能單元和/或第二可信計算功能單元的協(xié)議命令數(shù)據(jù)流,根據(jù)不同的協(xié)議命令字,對協(xié)議命令數(shù)據(jù)流進行不同的處理。其擁有很好的兼容性和適應(yīng)性,占用資源少,成本低。
文檔編號G06F21/00GK101055612SQ20071009871
公開日2007年10月17日 申請日期2007年4月25日 優(yōu)先權(quán)日2007年4月25日
發(fā)明者魏愷言, 劉宏偉, 袁蘭平, 喬椿 申請人:深圳兆日技術(shù)有限公司