一種可信計算密碼平台及其實現方法

一種可信計算密碼平台及其實現方法

《一種可信計算密碼平台及其實現方法》是瑞達信息安全產業股份有限公司於2009年9月4日申請的專利,該專利的申請號為2009100638242,公布號為CN101650764,授權公布日為2010年2月17日,發明人是劉毅、余發江、魏天運、張大鵬、胡曉。

《一種可信計算密碼平台及其實現方法》涉及一種可信計算密碼平台及其實現方法,屬於計算機安全技術領域,包括一個硬體系統,一個作業系統;硬體系統,與作業系統相連線;所述硬體系統包括一個硬體安全模組HSM;該硬體安全模組HSM與平台及其實現方法相綁定,包括連線在主機板上的嵌入式安全模組ESM或/和插拔的USB/PCI密碼模組;所述作業系統有一個作業系統安全模組,包括強制訪問控制子模組、進程監控子模組、應用程式完整性度量驗證模組。該發明的優點是,增加了所述可信計算密碼平台及其實現方法技術的適用範圍,增加了強制訪問控制子模組、進程監控子模組和完整性度量驗證模組本身的抗攻擊程度,整個平台及其實現方法的完整性都被度量,整個平台及其實現方法的可信環境予以建立,充分保證平台及其實現方法使用者的利益。

2016年12月7日,《一種可信計算密碼平台及其實現方法》獲得第十八屆中國專利優秀獎。

(概述圖為《一種可信計算密碼平台及其實現方法》摘要附圖)

基本介紹

  • 中文名:一種可信計算密碼平台及其實現方法
  • 公布號:CN101650764
  • 授權日:2010年2月17日
  • 申請號:2009100638242
  • 申請日:2009年9月4日
  • 申請人:瑞達信息安全產業股份有限公司
  • 地址:湖北省武漢市武昌區武珞路628號亞貿廣場A座28樓
  • 發明人:劉毅、余發江、魏天運、張大鵬、胡曉
  • Int.Cl.:G06F21/00(2006.01)I
  • 代理機構:武漢凌達智慧財產權事務所(特殊普通合夥)
  • 代理人:宋國榮
  • 類別:發明專利
專利背景,發明內容,專利目的,技術方案,改善效果,附圖說明,技術領域,權利要求,實施方式,榮譽表彰,

專利背景

隨著信息技術及相關產業的發展,各種計算裝置被廣泛套用,這些計算裝置通過多種方式相互連線,形成信息網路。計算裝置及信息網路促進了社會的進步,也帶來了很大的安全風險。這些風險主要源於各種計算裝置,計算機病毒、木馬等惡意程式被植入到計算裝置中,對系統安全和數據安全構成巨大威脅,使得這些計算裝置不再“可信”。如何確保計算裝置可信成為一個非常重要的問題。所述的“平台”可表示任何類型的計算裝置,包括硬體、固件和軟體的組合。
截至2009年9月,為提高平台的可信性,所採取的措施主要有“安裝防護軟體”、“作業系統安全增強”和“增加安全協處理器”等幾種方式:1.安裝的防護軟體主要有反病毒工具和防火牆等。這些軟體主要採用被動的防護措施,只對清除已知的計算機病毒和阻擋已知的網路攻擊,對新的病毒和攻擊則無能為力。防護軟體運行在作業系統之上,這些防護軟體和作業系統也容易受到攻擊。安裝防護軟體這種方式並不能從根本上解決信息安全問題。2.作業系統安全增強主要是在作業系統上加入強制訪問控制等安全措施。計算機病毒、木馬等惡意程式可能在作業系統載入之前就已被載入到記憶體中,從而避開作業系統的安全措施。對作業系統進行安全增強也不能從根本上解決信息安全問題。3.增加安全協處理器是在平台上增加一個相對安全的獨立計算環境,以運行安全套用。這種方式並不能提高原平台本身的安全性。
可見上述方式都不能從根本上解決平台的信息安全問題。有鑒於此,IBM、惠普、微軟、因特爾等公司成立了可信計算組織TCG(Trusted Computing Group),為了提高平台的可信性,提出了“可信計算平台平台及其實現方法”的概念,並制定和公布了有關可信計算平台的一系列規範。可信計算平台是在普通計算平台上嵌入了一個可信平台模組TPM(Trusted Platform Module),基於TPM建立信任鏈度量平台各部件的完整性,將部件完整性度量值存儲在TPM中,並通過TPM向關注平台安全狀態的實體報告平台完整性度量值。關注平台安全狀態的實體依據一定的安全策略決定平台是否可信,再採取相應的回響措施。TCG所公布的可信計算平台相關規範中並沒有定義如何提高2009年9月前平台的可信性,沒有定義如何實現可信計算平台作業系統,沒有定義如何度量應用程式的完整性。
密碼是信息安全的關鍵技術之一。TCG故意淡化對稱密鑰密碼算法的使用,而對稱密鑰密碼算法相對於非對稱密鑰密碼算法而言,其安全強度更具有優勢。如何在可信計算平台中加入對稱密鑰密碼算法支持也是一個確保平台可信的關鍵問題。

發明內容

專利目的

《一種可信計算密碼平台及其實現方法》的目的是提供一種可信計算密碼平台及其實現方法,從根本上確保計算裝置的可信性:1.對於2009年9月前平台,增加安全強度、適用範圍和套用靈活性;2.增加子模組本身的抗攻擊程度;3.增加進程監控、記錄,充分保證平台使用者的利益;4.使整個平台的完整性都被度量,整個平台的可信環境予以建立。

技術方案

一種可信計算密碼平台,包括一個硬體系統,一個作業系統;硬體系統,與作業系統相連線;所述硬體系統包括一個硬體安全模組HSM(Hardware Security Module);該硬體安全模組HSM與平台相綁定,包括連線在主機板上的嵌入式安全模組ESM(Embedded Security Module)或/和插拔的USB/PCI密碼模組;所述作業系統有一個作業系統安全模組,包括強制訪問控制子模組、進程監控子模組、應用程式完整性度量驗證模組。
所述強制訪問控制子模組,包括訪問控制執行部件和訪問控制列表;進程監控子模組包括進程監控執行部件和進程行為標準資料庫;所述應用程式完整性度量驗證模組是運行在作業系統之上的一個安全模組,包括度量驗證執行部件和程式完整性值標準資料庫。
所述的硬體安全模組HSM是一個獨立封裝的安全晶片;該硬體安全模組HSM是多個晶片集成的獨立安全模組,或是與其它晶片直接集成在一起的綜合模組,或是以IP核的形式嵌入而成的綜合晶片。
所述的硬體安全模組HSM與平台相綁定是嵌入式安全模組ESM直接物理焊接物理綁定在在平台主機板上,或是可插拔的USB/PCI密碼模組與平台進行相互認證來實現的密碼模組與平台的邏輯綁定。
所述的硬體安全模組HSM還具有能進行高速對稱密鑰密碼算法引擎;還具有與主平台進行數據的快速傳輸的高速接口。
《一種可信計算密碼平台及其實現方法》包括如下程式:
1)由硬體安全模組HSM通過對稱密鑰密碼算法引擎進行高速對稱密鑰密碼算法加解密運算、更換對稱密鑰密碼算法;2)由安全模組HSM對控制執行部件、進程監控執行部件和度量驗證執行部件進行完整性保護;3)由進程監控子模組對進程行為標準資料庫進行評測、監控;4)由應用程式完整性度量驗證模組對程式完整性值標準資料庫進行評測、回響。
所述的由硬體安全模組HSM通過對稱密鑰密碼算法引擎進行高速對稱密鑰密碼算法加解密運算、更換對稱密鑰密碼算法的步驟為:
對於直接焊接在主機板上的嵌入式安全模組ESM,則將新的密碼算法代碼安全地下載到嵌入式安全模組ESM中,並清除原有的密碼算法代碼;控制執行部件、進程監控執行部件和度量驗證執行部件是受到安全模組HSM完整性保護
對於可插拔的USB/PCI密碼模組,則平台插入具有新的對稱密鑰密碼算法引擎的密碼模組,並與平台進行相互認證,完成邏輯綁定。
所述的嵌入式安全模組ESM將新的密碼算法代碼安全地下載到嵌入式安全模組ESM中的步驟:是由嵌入式安全模組ESM先行確保所下載新的對稱密鑰密碼算法代碼在下載過程中的秘密性,認證新的密碼算法代碼確實是可信方所編寫的算法代碼,確保所下載的算法代碼未被篡改,然後完全正確地寫入嵌入式安全模組ESM,最後再清除原有的密碼算法代碼;所述的插入具有新的對稱密鑰密碼算法引擎的密碼模組的步驟:先是舊的USB/PCI密碼模組上與平台相關的密鑰等數據需被安全地遷移到具有新的對稱密鑰密碼算法引擎的密碼模組上,然後由舊的密碼模組與新的模組相互認證,確保兩個模組都是與同一個平台相綁定的密碼模組,並確保遷移數據的秘密性和完整性。
所述的由硬體安全模組HSM對訪問控制執行部件、進程監控執行部件和度量驗證執行部件進行完整性保護步驟是,首先在作業系統核心啟動的時候與硬體安全模組HSM進行互動,確認這些被保護部件未被篡改;在確認其未被篡改後,然後將訪問控制執行部件、進程監控執行部件和度量驗證執行部件裝載到平台記憶體中,並開始運行;若發現已被篡改,則對這些被保護部件進行可信恢復。
所述的由進程監控子模組對進程行為標準資料庫進行評測、監控是:訪問控制執行部件讀取查詢訪問控制列表之前,先與硬體安全模組HSM進行互動判斷訪問控制列表是否被篡改;若發現訪問控制列表已被篡改,對其進行可信恢復;當有作業系統上的進程要運行時,進程監控執行部件為該進程生成一個進程伴侶,進程伴侶在查詢進程行為標準資料庫之前,先與硬體安全模組HSM互動判斷進程行為標準資料庫是否被篡改;若發現進程行為標準資料庫已被篡改,對其進行可信恢復;度量驗證部件在查詢程式完整性值標準資料庫之前,先與硬體安全模組HSM進行互動,判斷其是否被篡改;若發現程式完整性值標準資料庫已被篡改,則對其進行可信恢復;所述的進程行為標準資料庫由進程監控子模組根據程式開發商或發行商的說明書來建立,或是對程式進程進行評測的可信方獲取或從覺得該程式進程是可信的推薦方獲取。
所述的由應用程式完整性度量驗證模組對程式完整性值標準資料庫進行評測、回響是:在有應用程式要運行時,度量驗證執行部件讀取該程式的代碼和配置數據,並分別利用特徵函式計算出各自的實際完整性值,並將該實際完整性值存儲到硬體安全模組HSM中,以形成平台完整性狀態數據;在得到實際完整性值之後,度量驗證執行部件查詢程式完整性值標準資料庫,得到該程式代碼和配置數據的標準完整性值;度量驗證執行部件比較該程式代碼和數據的實際完整性值與標準完整性值,若兩者一致則允許該程式運行,否則禁止該程式運行;所述的存儲到硬體安全模組HSM中的程式實際完整性值所形成的平台完整性狀態數據,有關注平台安全狀態的實體在詢問平台的可信性時,硬體安全模組HSM將平台完整性狀態數據報告給該實體;實體依據一定的安全策略判斷平台是否可信,從而採取相應的回響措施。

改善效果

1.對於2009年9月前平台,可以通過插入USB/PCI密碼卡來增加整個平台的安全性,增加了該文所述可信計算密碼平台技術的適用範圍。在硬體安全模組HSM里加入對稱密鑰密碼算法引擎,增加了硬體安全模組HSM的安全強度。硬體安全模組HSM的對稱密鑰密碼算法可更換,使得所述可信計算密碼平台的套用更加靈活,適用於不同的套用領域。
2.可信計算密碼平台作業系統中具有強制訪問控制子模組,其包含的訪問控制執行部件和訪問控制列表受硬體安全模組HSM收保護,這增加了強制訪問控制子模組本身的抗攻擊程度。
3.可信計算密碼平台作業系統中具有進程監控子模組,其包含的進程監控執行部件和進程行為標準資料庫受硬體安全模組HSM收保護,這增加了進程監控子模組本身的抗攻擊程度。進程監控子模組能記錄平台進程的行為表現,若發2009年9月前程式進程的表現與其開發商或發行商所宣稱的不一致,則可以通過記錄數據對該廠商提起訴訟。以充分保證平台使用者的利益。
4.可信計算密碼平台具有完整性度量驗證模組,其包含的度量驗證執行部件和程式完整性值標準資料庫受硬體安全模組HSM保護,這增加了完整性度量驗證模組本身的抗攻擊程度。完整性度量驗證模組,通過度量和驗證應用程式的完整性,使得整個平台的完整性都被度量,整個平台的可信環境予以建立。

附圖說明

圖1為《一種可信計算密碼平台及其實現方法》可信計算密碼平台的示意圖;
圖2為嵌入式安全模組ESM高速加解密功能的一個實施例示意圖;
圖3為圖2所示實施例加解密流程圖;
圖4為嵌入式安全模組ESM更換對稱密鑰密碼算法的一個實施例示意圖;
圖5為可信計算密碼平台確保下載到嵌入式安全模組ESM中新的對稱密鑰密碼算法來自可信方的一個實施例示意圖;
圖6為圖5所示實施例對稱密鑰密碼算法代碼開發者或發行者成為可信方的流程圖;
圖7為圖5所示實施例的對稱密鑰密碼算法下載數據包示意圖;
圖8為圖5所示實施例中嵌入式安全模組ESM判斷所下載的算法代碼是否來自可信方的流程圖;
圖9為可插拔的USB/PCI密碼模組與平台邏輯綁定的一個實施例示意圖。
圖10為圖9所示實施例中平台認證密碼模組的流程圖;
圖11為圖9所示實施例中密碼模組認證平台的流程圖;
圖12為通過硬體安全模組HSM防止訪問控制執行部件、進程監控執行部件和度量驗證執行部件被篡改的一個實施例示意圖;
圖13為通過硬體安全模組HSM防止訪問控制列表、進程行為標準資料庫、程式完整性值標準資料庫被篡改的一個實施例示意圖。

技術領域

《一種可信計算密碼平台及其實現方法》涉及一種可信計算密碼平台及其實現方法,屬於計算機安全技術領域,特別適合於計算機信息安全要求嚴格的場合使用。

權利要求

1.一種可信計算密碼平台包括一個硬體系統(100),一個作業系統(200);硬體系統(100)與作業系統(200)相連線;其特徵在於:所述硬體系統(100)包括一個硬體安全模組HSM(110);該硬體安全模組HSM(110)與平台相綁定,包括連線在主機板上的嵌入式安全模組ESM(130)或/和插拔的USB/PCI密碼模組(170/150);所述作業系統(200)有一個作業系統安全模組,包括強制訪問控制子模組(220)、進程監控子模組(240)、應用程式完整性度量驗證模組(260)。
2.按照權利要求1所述的可信計算密碼平台,其特徵在於,所述強制訪問控制子模組(220),包括訪問控制執行部件和訪問控制列表;進程監控子模組(240)包括進程監控執行部件和進程行為標準資料庫;所述應用程式完整性度量驗證模組(260)是運行在作業系統200之上的一個安全模組,包括度量驗證執行部件和程式完整性值標準資料庫。
3.按照權利要求1所述的可信計算密碼平台,其特徵在於,所述的硬體安全模組HSM(110)是一個獨立封裝的安全晶片;該硬體安全模組HSM(110)是多個晶片集成的獨立安全模組,或是與其它晶片直接集成在一起的綜合模組,或是以IP核的形式嵌入而成的綜合晶片。
4.按照權利要求1所述的可信計算密碼平台,其特徵在於,所述的硬體安全模組HSM(110)與平台相綁定是嵌入式安全模組ESM(130)直接物理焊接物理綁定在在平台主機板上,或是可插拔的USB/PCI密碼模組(170/150)與平台進行相互認證來實現的密碼模組與平台的邏輯綁定。
5.按照權利要求1所述的可信計算密碼平台,其特徵在於,所述的硬體安全模組HSM(110)還具有能進行高速對稱密鑰密碼算法引擎;還具有與主平台進行數據的快速傳輸的高速接口。
6.一種可信計算密碼平台的實現方法,其特徵在於:它包括如下程式:
1).由硬體安全模組HSM(110)通過對稱密鑰密碼算法引擎進行高速對稱密鑰密碼算法加解密運算、更換對稱密鑰密碼算法;
2).由安全模組HSM(110)對控制執行部件、進程監控執行部件和度量驗證執行部件進行完整性保護;
3).由進程監控子模組(240)對進程行為標準資料庫進行評測、監控;
4).由應用程式完整性度量驗證模組(260)對程式完整性值標準資料庫進行評測、回響。
7.按照權利要求6所述的可信計算密碼平台的實現方法,其特徵在於:所述的由硬體安全模組HSM(110)通過對稱密鑰密碼算法引擎進行高速對稱密鑰密碼算法加解密運算、更換對稱密鑰密碼算法的步驟包括:
對於直接焊接在主機板上的嵌入式安全模組ESM(130),則將新的密碼算法代碼安全地下載到嵌入式安全模組ESM(130)中,並清除原有的密碼算法代碼;控制執行部件、進程監控執行部件和度量驗證執行部件是受到安全模組HSM(110)完整性保護;
對於可插拔的USB/PCI密碼模組(170/150),則平台插入具有新的對稱密鑰密碼算法引擎的密碼模組,並與平台進行相互認證,完成邏輯綁定。
8.按照權利要求7所述的可信計算密碼平台的實現方法,其特徵在於,所述的嵌入式安全模組ESM(130)將新的密碼算法代碼安全地下載到嵌入式安全模組ESM(130)中的步驟:是由嵌入式安全模組ESM(130)先行確保所下載新的對稱密鑰密碼算法代碼在下載過程中的秘密性,認證新的密碼算法代碼確實是可信方所編寫的算法代碼,確保所下載的算法代碼未被篡改,然後完全正確地寫入嵌入式安全模組ESM(130),最後再清除原有的密碼算法代碼;所述的插入具有新的對稱密鑰密碼算法引擎的密碼模組的步驟:先是舊的USB/PCI密碼模組(170/150)上與平台相關的密鑰等數據需被安全地遷移到具有新的對稱密鑰密碼算法引擎的密碼模組上,然後由舊的密碼模組與新的模組相互認證,確保兩個模組都是與同一個平台相綁定的密碼模組,並確保遷移數據的秘密性和完整性。
9.按照權利要求6或7或8所述的可信計算密碼平台的實現方法,其特徵在於,所述的由硬體安全模組HSM(110)對訪問控制執行部件、進程監控執行部件和度量驗證執行部件進行完整性保護步驟是,首先在作業系統(200)核心啟動的時候與硬體安全模組HSM(110)進行互動,確認這些被保護部件未被篡改;在確認其未被篡改後,然後將訪問控制執行部件、進程監控執行部件和度量驗證執行部件裝載到平台記憶體中,並開始運行;若發現已被篡改,則對這些被保護部件進行可信恢復。
10.按照權利要求6所述的可信計算密碼平台的實現方法,其特徵在於,所述的由進程監控子模組(240)對進程行為標準資料庫進行評測、監控是:訪問控制執行部件讀取查詢訪問控制列表之前,先與硬體安全模組HSM(110)進行互動判斷訪問控制列表是否被篡改;若發現訪問控制列表已被篡改,對其進行可信恢復;當有作業系統上的進程要運行時,進程監控執行部件為該進程生成一個進程伴侶,進程伴侶在查詢進程行為標準資料庫之前,先與硬體安全模組HSM(110)互動判斷進程行為標準資料庫是否被篡改;若發現進程行為標準資料庫已被篡改,對其進行可信恢復;度量驗證部件在查詢程式完整性值標準資料庫之前,先與硬體安全模組HSM(110)進行互動,判斷其是否被篡改;若發現程式完整性值標準資料庫已被篡改,則對其進行可信恢復;所述的進程行為標準資料庫由進程監控子模組根據程式開發商或發行商的說明書來建立,或是對程式進程進行評測的可信方獲取或從覺得該程式進程是可信的推薦方獲取。

實施方式

如圖所示,一種可信計算密碼平台採用多層次結構,有一個硬體系統100,一個作業系統200;硬體系統100,與作業系統200相連線;所述硬體系統100有一個硬體安全模組HSM110(Hardware Security Module);該硬體安全模組HSM110與平台相綁定,是連線在主機板上的嵌入式安全模組ESM130(Embedded Security Module),也可以是插拔的USB/PCI密碼模組170/150,當是插拔的USB密碼模組170,或是PCI密碼模組150,或三者均具有時,則是不同的實施例;所述作業系統200有一個作業系統安全模組,它由強制訪問控制子模組220、進程監控子模組240、應用程式完整性度量驗證模組260組成,還可以有其他模組。所述強制訪問控制子模組220,其中有訪問控制執行部件和訪問控制列表,訪問控制子模組220受硬體安全模組HSM110的保護,完成對系統包括套用的主體對客體的讀、寫、執行等的許可權控制;進程監控子模組240,其中有進程監控執行部件和進程行為標準資料庫,受硬體安全模組HSM110的保護,主要負責監控套用300程式進程的運行行為;所述應用程式完整性度量驗證模組260是運行在作業系統之上的一個安全模組,有一個度量驗證執行部件和程式完整性值標準資料庫,受硬體安全模組HSM110的保護,主要負責對套用300程式代碼和配置數據的完整性度量和驗證。所述的硬體安全模組HSM110是一個獨立封裝的安全晶片;該硬體安全模組HSM110是多個晶片集成的獨立安全模組,或是與其它晶片直接集成在一起的綜合模組,或是以IP核的形式嵌入而成的綜合晶片。無論採用何種方式,硬體安全模組HSM110都具有相對獨立的體系結構、基本功能和使用方式。所述的硬體安全模組HSM110與平台相綁定是嵌入式安全模組ESM130直接物理焊接物理綁定在在平台主機板上,或是可插拔的USB/PCI密碼模組170/150與平台進行相互認證來實現的密碼模組與平台的邏輯綁定。所述的訪問控制執行部件、進程監控執行部件和度量驗證執行部件是受到安全模組HSM110完整性保護的部件,所述保護的步驟是,首先在作業系統200核心啟動的時候將被保護的訪問控制執行部件、進程監控執行部件和度量驗證執行部件與硬體安全模組HSM110進行互動,確認這些被保護部件未被篡改;在確認其未被篡改後,然後將這些被保護部件裝載到平台記憶體中,並開始運行;若發現已被篡改,則對這些被保護部件進行可信恢復。所述的硬體安全模組HSM110還具有能進行高速對稱密鑰密碼算法加解密運算的、可更換對稱密鑰密碼算法的對稱密鑰密碼算法引擎;還具有與主平台進行數據的快速傳輸的高速接口。
一種可信計算密碼平台的實現方法,它有如下程式:
1)由硬體安全模組HSM110通過對稱密鑰密碼算法引擎進行高速對稱密鑰密碼算法加解密運算、更換對稱密鑰密碼算法;2)由安全模組HSM110對控制執行部件、進程監控執行部件和度量驗證執行部件進行完整性保護;3)由進程監控子模組240對進程行為標準資料庫進行評測、監控;4)由應用程式完整性度量驗證模組260)對程式完整性值標準資料庫進行評測、回響。所述的由硬體安全模組HSM110通過對稱密鑰密碼算法引擎進行高速對稱密鑰密碼算法加解密運算、更換對稱密鑰密碼算法的步驟為:對於直接焊接在主機板上的嵌入式安全模組ESM130,則將新的密碼算法代碼安全地下載到嵌入式安全模組ESM130中,並清除原有的密碼算法代碼;控制執行部件、進程監控執行部件和度量驗證執行部件是受到安全模組HSM110完整性保護對於可插拔的USB/PCI密碼模組170/150,則平台插入具有新的對稱密鑰密碼算法引擎的密碼模組,並與平台進行相互認證,完成邏輯綁定。所述的嵌入式安全模組ESM130將新的密碼算法代碼安全地下載到嵌入式安全模組ESM130中的步驟:是由嵌入式安全模組ESM130先行確保所下載新的對稱密鑰密碼算法代碼在下載過程中的秘密性,認證新的密碼算法代碼確實是可信方所編寫的算法代碼,確保所下載的算法代碼未被篡改,然後完全正確地寫入嵌入式安全模組ESM130,最後再清除原有的密碼算法代碼;所述的插入具有新的對稱密鑰密碼算法引擎的密碼模組的步驟:先是舊的USB/PCI密碼模組170/150上與平台相關的密鑰等數據需被安全地遷移到具有新的對稱密鑰密碼算法引擎的密碼模組上,然後由舊的密碼模組與新的模組相互認證,確保兩個模組都是與同一個平台相綁定的密碼模組,並確保遷移數據的秘密性和完整性。所述的由硬體安全模組HSM110對訪問控制執行部件、進程監控執行部件和度量驗證執行部件進行完整性保護步驟是,首先在作業系統200核心啟動的時候與硬體安全模組HSM110進行互動,確認這些被保護部件未被篡改;在確認其未被篡改後,然後將訪問控制執行部件、進程監控執行部件和度量驗證執行部件裝載到平台記憶體中,並開始運行;若發現已被篡改,則對這些被保護部件進行可信恢復。所述的由進程監控子模組240對進程行為標準資料庫進行評測、監控是:訪問控制執行部件讀取查詢訪問控制列表之前,先與硬體安全模組HSM110進行互動判斷訪問控制列表是否被篡改;若發現訪問控制列表已被篡改,對其進行可信恢復;當有作業系統上的進程要運行時,進程監控執行部件為該進程生成一個進程伴侶,進程伴侶在查詢進程行為標準資料庫之前,先與硬體安全模組HSM110互動判斷進程行為標準資料庫是否被篡改;若發現進程行為標準資料庫已被篡改,對其進行可信恢復;度量驗證部件在查詢程式完整性值標準資料庫之前,先與硬體安全模組HSM110進行互動,判斷其是否被篡改;若發現程式完整性值標準資料庫已被篡改,則對其進行可信恢復;所述的進程行為標準資料庫由進程監控子模組根據程式開發商或發行商的說明書來建立,或是對程式進程進行評測的可信方獲取或從覺得該程式進程是可信的推薦方獲取。所述的由應用程式完整性度量驗證模組260對程式完整性值標準資料庫進行評測、回響是:在有應用程式要運行時,度量驗證執行部件讀取該程式的代碼和配置數據,並分別利用特徵函式計算出各自的實際完整性值,並將該實際完整性值存儲到硬體安全模組HSM110中,以形成平台完整性狀態數據;在得到實際完整性值之後,度量驗證執行部件查詢程式完整性值標準資料庫,得到該程式代碼和配置數據的標準完整性值;度量驗證執行部件比較該程式代碼和數據的實際完整性值與標準完整性值,若兩者一致則允許該程式運行,否則禁止該程式運行;所述的存儲到硬體安全模組HSM110中的程式實際完整性值所形成的平台完整性狀態數據,有關注平台安全狀態的實體在詢問平台的可信性時,硬體安全模組HSM110將平台完整性狀態數據報告給該實體;實體依據一定的安全策略判斷平台是否可信,從而採取相應的回響措施。
所述的進程監控執行部件,在有作業系統上的進程要運行時,進程監控執行部件為該進程生成一個進程伴侶,進程伴侶查詢進程行為標準資料庫得到該進程的行為標準數據,進程伴侶記錄該進程的實際運行行為,並與標準行為進行比較,若發現該進程的運行行為與標準行為不一致,並且可能會造成對系統較大的破壞,進程伴侶能終止該進程的運行。在進程運行完畢正常結束或者被異常中止時,進程伴侶也結束運行。進程伴侶結束運行之前將該進程的實際運行行為數據寫入到HSM中,以形成平台運行狀態報告數據。
所述的進程伴侶寫入到HSM中的進程實際運行行為數據,在關注平台安全狀態的實體在詢問平台的可信性時,HSM將平台所有進程的實際運行數據報告給該實體。實體依據一定的安全策略判斷平台是否可信,從而採取相應的回響措施。
所述的程式完整性值標準資料庫可由應用程式完整性度量驗證模組根據應用程式開發商或發行商所公布的程式代碼和配置數據的標準完整性值來建立,也可從對應用程式進行評測的可信方獲取或從覺得該程式是可信的推薦方獲取。
圖2所示的實施例採用FPGA136來進行高速加解密運算,安全晶片133隻負責接受加解密命令再向FPGA136裝載密鑰。嵌入式安全模組ESM130的PCIE橋139通過平台PCI匯流排102完成大量加解密數據的高速傳輸。
圖3為圖2所示實施例加解密流程圖,說明嵌入式安全模組ESM130進行高速加解密的一個實施例。所述高速加解密始於方框1331,安全晶片133接受到加解密命令。在方框1335,安全晶片133裝載密鑰到FPGA136中。在方框1361,FPGA136接受加解密數據。在方框1364,FPGA136進行加解密運算。在方框1367,FPGA136返回加解密數據,整個高速加解密過程結束。
圖4所示為嵌入式安全模組ESM130更換對稱密鑰密碼算法的一個實施例。在圖4所示的實施例中,嵌入式安全模組ESM130包含安全晶片133、現場可程式邏輯門陣列FPGA136,安全晶片133上的通用輸入/輸出GPI/O引腳與平台輸入/輸出控制集線器ICH上的GPI/O103引腳相連。安全晶片133與平台主機之間採用自定義的GPI/O安全協定來實現數據的安全傳輸,保證對稱密鑰密碼算法代碼的安全性。可信計算密碼平台要確保下載到FPGA136中新的對稱密鑰密碼算法是可信方所寫,並保證該代碼未被篡改,在其被完整正確地寫入FPGA中去之後,再清除舊的算法代碼。
圖5所示為可信計算密碼平台確保下載到嵌入式安全模組ESM130中新的對稱密鑰密碼算法來自可信方TP400的一個實施例。在圖5所示的實施例中,嵌入式安全模組ESM130具有一個公私鑰對KESM,該公私鑰對可由嵌入式安全模組ESM130的製造商在製造階段生成,也可由平台用戶在對平台進行初始化配置時使用相應的命令生成。KESM的私鑰PRIKESM1303存儲在嵌入式安全模組ESM130的受保護存儲區內,嵌入式安全模組ESM130要保證PRIKESM1303的秘密性、完整性和許可權控制。若有新的對稱密鑰密碼算法代碼開發者或發行者想成為一個算法代碼的可信的開發者或發行者,即可信方TP400,該開發者或發行者生成一個公私鑰對KTP,將KTP的公鑰PUBKTP及算法代碼開發者或發行者的相關資料傳送給嵌入式安全模組ESM130。嵌入式安全模組ESM130通過採用資料審核等方式,判斷算法代碼開發者或發行者是否可信,在確定算法代碼開發者或發行者可信後,用PRIKESM1303為該開發者或發行者簽署證書CERTPubktp4007,該證書中包含具有該算法代碼開發者或發行者持有公鑰PUBKTP的聲明。算法代碼開發者或發行者要保證KTP的私鑰PRIKTP4003的安全。嵌入式安全模組ESM130將簽署的證書CERTPubktp4007傳送給算法代碼開發者或發行者,開發者或發行者用KESM的公鑰PUBKESM驗證證書的正確性,驗證通過之後,存儲證書CERTPubktp4007,該算法代碼的開發者或發行者成為嵌入式安全模組ESM130的一個算法代碼開發或發行的可信方。可信方在開發好或得到新的對稱密鑰密碼算法代碼後,用PRIKTP4003對算法代碼進行簽名,將算法代碼、代碼簽名及CERTPubktp4007一起傳送給嵌入式安全模組ESM130。嵌入式安全模組ESM130首先驗證CERTPubktp4007的正確性,驗證通過之後從證書中獲得PUBKTP,再用PUBKTP驗證算法代碼簽名的正確性,若驗證通過則確定該算法代碼由可信方開發或發行,否則則確定該算法代碼由非可信方開發或發行。
圖6為圖5所示實施例對稱密鑰密碼算法代碼開發者或發行者成為可信方的流程圖,說明算法代碼開發者或發行者如何成為一個可信方的實施例。所述流程始於方框4011,算法代碼開發者或發行者產生公私鑰對KTP。在方框4015,算法代碼開發者或發行者將KTP的公鑰PUBKTP及相關資料傳送給嵌入式安全模組ESM130。在方框4019,嵌入式安全模組ESM130對算法代碼開發者或發行者進行資質審查。在方框4023,資質審查通過,用PRIKESM簽署證書CERTPubktp。在方框4027,嵌入式安全模組ESM130將證書CERTPubktp傳送給算法代碼開發者或發行者。在方框4031,算法代碼開發者或發行者驗證CERTPubktp的正確性,驗證通過,成為可信方TP。
圖7為圖5所示實施例的對稱密鑰密碼算法代碼下載數據包示意圖,說明可信方TP400傳送到嵌入式安全模組ESM130的算法代碼下載數據包4035的組成,包括算法代碼4039、算法代碼簽名4043和證書CERTPubktp4007。
圖8為圖5所示實施例中嵌入式安全模組ESM130判斷所下載的算法代碼是否來自可信方的流程圖,說明嵌入式安全模組ESM130如何下載新的對稱密鑰密碼算法代碼並如何判斷其是否由可信方開發或發行。所述流程始於方框4051,可信方開發好或獲得算法代碼。在方框4055,可信方將算法代碼下載數據包4035傳送給嵌入式安全模組ESM130。在方框4059,嵌入式安全模組ESM130驗證證書CERTPubktp4007的正確性。在方框4063,證書驗證通過,從證書中獲得PUBKTP。在菱形4067,嵌入式安全模組ESM130用PUBKTP驗證算法代碼簽名數據的正確性。若簽名數據正確則轉到方框4071,確定算法代碼來自可信方;若簽名數據錯誤則轉到方框4075,判斷算法來自非可信方。
圖9所示為可插拔的USB/PCI密碼模組與平台邏輯綁定的一個實施例。在圖9所示的實施例中,平台主機板105的BIOS106中存儲有平台密鑰PKEY1065和模組密鑰MKEY1105。平台密鑰PKEY1065可由平台製造商在製造階段生成,也可由平台用戶在平台初始化配置時生成;模組密鑰MKEY1105由平台用戶在平台初始化配置時通過安全途徑導入到BIOS106中。USB/PCI密碼模組中也存儲有平台密鑰PKEY1065和模組密鑰MKEY1105,兩者都是由管理員在發行密碼模組時通過安全途徑載入到模組中。
圖10為圖9所示實施例中平台認證密碼模組的流程圖,說明平台如何認證插入到平台上的USB/PCI密碼模組是與平台相綁定的正確的模組。所述流程始於方框1063,BIOS生成隨機數N。在方框1067,BIOS將隨機數N傳送給密碼模組。在方框1109,密碼模組用模組密鑰MKEY對N加密M=Enc(N,MKEY)。在方框1113,密碼模組將M傳送給BIOS。在方框1071,BIOS用模組密鑰MKEY對M進行解密N’=Dec(M,MKEY)。在菱形1075,BIOS比較N與N’的異同。若兩者相同,轉到方框1079,密碼模組正確;若兩者不相同,轉到方框1083,密碼模組錯誤。
圖11為圖9所示實施例中密碼模組認證平台的流程圖,說明插入到平台上的USB/PCI密碼模組如何認證所在的平台是與相綁定的正確的平台。所述流程始於方框1117,模組生成隨機數N。在方框1121,密碼模組將隨機數N傳送給BIOS。在方框1087,BIOS用平台密鑰PKEY對N加密M=Enc(N,PKEY)。在方框1091,BIOS將M傳送給密碼模組。在方框1125,模組用平台密鑰PKEY對M進行解密N’=Dec(M,PKEY)。在菱形1129,模組比較N與N’的異同。若兩者相同,轉到方框1133,平台正確;若兩者不相同,轉到方框1137,平台錯誤。
圖12所示為通過硬體安全模組HSM110防止訪問控制執行部件、進程監控執行部件和度量驗證執行部件被篡改的一個實施例。在圖12所示的實施例中,硬體安全模組HSM110中存儲有各執行部件完整性標準值1141,該標準值1141存儲於硬體安全模組HSM110的受保護存儲區域內,硬體安全模組HSM110保證該標準值不能被隨意篡改。作業系統核心210在裝載訪問控制執行部件230、進程監控執行部件250和度量驗證執行部件270之前,先計算各個執行部件的當前完整性值;再從硬體安全模組HSM110中獲得各部件的完整性標準值1141;比較各執行部件的當前完整性值與完整性標準值是否一致,若一致則裝載並運行執行部件,否則對執行部件進行可信恢復。
圖13所示為通過硬體安全模組HSM110防止訪問控制列表、進程行為標準資料庫、程式完整性值標準資料庫被篡改的一個實施例。在圖13所示的實施例中,硬體安全模組HSM110中存儲有訪問控制列表完整性標準值1145、進程行為標準資料庫完整性標準值1149和程式完整性值標準資料庫完整性標準值1153,這些標準值存儲於硬體安全模組HSM110的受保護存儲區域內,硬體安全模組HSM110保證這些標準值不能被隨意篡改。各執行部件在查詢相應的列表或標準資料庫之前,先計算列表或標準資料庫的當前完整性值;再從硬體安全模組HSM110中獲得列表或標準資料庫的完整性標準值;比較列表或標準資料庫的當前完整性值與完整性標準值是否一致,若一致則查詢,否則對執行部件進行可信恢復。

榮譽表彰

2016年12月7日,《一種可信計算密碼平台及其實現方法》獲得第十八屆中國專利優秀獎。

相關詞條

熱門詞條

聯絡我們