亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

面向網(wǎng)絡(luò)化操作系統(tǒng)的可信任虛擬運(yùn)行平臺(tái)的制作方法

文檔序號(hào):7609085閱讀:132來源:國(guó)知局
專利名稱:面向網(wǎng)絡(luò)化操作系統(tǒng)的可信任虛擬運(yùn)行平臺(tái)的制作方法
技術(shù)領(lǐng)域
本發(fā)明屬于計(jì)算機(jī)基礎(chǔ)軟件技術(shù)領(lǐng)域,主要解決如何設(shè)計(jì)和構(gòu)建一個(gè)可信任的網(wǎng)絡(luò)化操作系統(tǒng)虛擬運(yùn)行平臺(tái)。針對(duì)網(wǎng)絡(luò)化操作系統(tǒng)虛擬運(yùn)行平臺(tái)的主要操作和使用范圍, 包括物理服務(wù)器管理和可信任性認(rèn)證,虛擬鏡像和虛擬機(jī)管理及可信任性認(rèn)證,虛擬機(jī)遷移的可信任性認(rèn)證等,設(shè)計(jì)了相應(yīng)的認(rèn)證協(xié)議和算法??s略語和關(guān)鍵術(shù)語定義
TCC(Trusted Cloud Controller)可信云控制器
CM(Cloud Manager)云管理系統(tǒng)
BIOS (Basic Input Output System)基本輸入輸出系統(tǒng)
OS (Operating System)操作系統(tǒng)
VMM(Virtual Machine Monitor)虛擬機(jī)監(jiān)視器
TPM(Trusted Platform Module)可信賴平臺(tái)模塊
PCR(Platform Configuration registers)平臺(tái)配置寄存器
Bootloader 系統(tǒng)引導(dǎo)程序
ETE (External Trusted Entity)外部可信任實(shí)體
背景技術(shù)
網(wǎng)絡(luò)化操作系統(tǒng)通過把用網(wǎng)絡(luò)連接的大規(guī)模計(jì)算資源進(jìn)行統(tǒng)一管理和調(diào)度,構(gòu)成一個(gè)計(jì)算資源池向用戶提供按需收費(fèi)的服務(wù)。它具有數(shù)據(jù)安全可靠、客戶端需求低、能夠輕松共享數(shù)據(jù)等優(yōu)點(diǎn)。作為一種新型計(jì)算模型,網(wǎng)絡(luò)化操作系統(tǒng)受到了工業(yè)界和學(xué)術(shù)界的廣泛關(guān)注,越來越多的機(jī)構(gòu)和個(gè)人選擇以它作為基礎(chǔ)設(shè)施搭建分布式IT平臺(tái)。然而,使用網(wǎng)絡(luò)化操作系統(tǒng)也具有一定的風(fēng)險(xiǎn)。從網(wǎng)絡(luò)化操作系統(tǒng)資源的使用者和提供者兩個(gè)角度,上述風(fēng)險(xiǎn)可總結(jié)如下1.使用者角度使用者將計(jì)算過程或數(shù)據(jù)部署在遠(yuǎn)端服務(wù)器上,從而失去了對(duì)它們的直接控制。在非網(wǎng)絡(luò)化操作系統(tǒng)模式下,計(jì)算在服務(wù)器上運(yùn)行的位置取決于用戶的所在地,用戶可以物理訪問機(jī)器、可以直接監(jiān)控機(jī)器的狀態(tài)、可以令信任的人管理機(jī)器;而在網(wǎng)絡(luò)化操作系統(tǒng)中,由網(wǎng)絡(luò)化操作系統(tǒng)提供者來管理物理機(jī)器,使用者僅能利用網(wǎng)絡(luò)連接遠(yuǎn)距離管理虛擬機(jī),因此不具有上述管理機(jī)器的能力,即使用者失去了對(duì)計(jì)算過程和數(shù)據(jù)的直接控制。2.提供者角度提供者可能并不知道在其系統(tǒng)上運(yùn)行的使用者服務(wù)的具體細(xì)節(jié)。 使用者使用平臺(tái)資源或在平臺(tái)上部署自己的應(yīng)用,這些行為多變且不具有可預(yù)測(cè)性。以 !^cebook為例,它允許第三方應(yīng)用在其平臺(tái)上的自由發(fā)布,并不對(duì)其進(jìn)行詳細(xì)的驗(yàn)證,用戶如果添加了某一惡意應(yīng)用,則平臺(tái)或其他使用者的敏感數(shù)據(jù)可能會(huì)遭到惡意應(yīng)用的竊取和破壞。綜上,在網(wǎng)絡(luò)化操作系統(tǒng)中,不同對(duì)象之間的交互可能是敏感多變的,缺乏相互之間的有效信任、缺乏可信賴的故障檢測(cè)和仲裁機(jī)制會(huì)損失潛在的用戶,因此需要構(gòu)建信任管理框架來建立、協(xié)商和維護(hù)系統(tǒng)中不同實(shí)體之間的信任行為,保證各方都能按照協(xié)議好的情況運(yùn)行,并在不符合協(xié)議情況出現(xiàn)時(shí)能夠有效檢測(cè)出來報(bào)告給相關(guān)方。具體來說,網(wǎng)絡(luò)化操作系統(tǒng)中包含許多注冊(cè)的物理節(jié)點(diǎn),虛擬機(jī)會(huì)被分配到某一物理節(jié)點(diǎn)上運(yùn)行并在需要時(shí)遷移到其他節(jié)點(diǎn)上,如何驗(yàn)證這些過程中各個(gè)實(shí)體的完整性與可信任性,如何確保虛擬機(jī)始終運(yùn)行在一個(gè)可信任的環(huán)境下,都具有十分重要的意義。在上述過程中,可能會(huì)遇到的威脅主要包括以下幾個(gè)方面1.物理節(jié)點(diǎn)在啟動(dòng)前或啟動(dòng)過程中的改動(dòng)需要可檢測(cè)物理節(jié)點(diǎn)的硬件、BIOS、 bootloader或VMM在啟動(dòng)前或啟動(dòng)過程中遭到了惡意修改;2.物理節(jié)點(diǎn)在啟動(dòng)后運(yùn)行時(shí)的配置改動(dòng)需要可檢測(cè)物理節(jié)點(diǎn)的硬件、BIOS、 bootloader或VMM在運(yùn)行時(shí)遭到了惡意修改;3.系統(tǒng)中各個(gè)節(jié)點(diǎn)間通信的過程,有可能遭遇重放攻擊、篡改和假冒等威脅。本專利針對(duì)以上3各方面的威脅,通過設(shè)立第三方可信認(rèn)證機(jī)構(gòu),即可信云控制器,對(duì)每一個(gè)網(wǎng)絡(luò)化操作系統(tǒng)中的節(jié)點(diǎn),設(shè)計(jì)其可信注冊(cè)及啟動(dòng)機(jī)制;經(jīng)過可信云控制器的認(rèn)證協(xié)議后,方可成為一個(gè)可信節(jié)點(diǎn),提供虛擬機(jī)可信的宿主運(yùn)行環(huán)境,保證其完整性和正確性遭到的破壞能夠在啟動(dòng)過程中被檢測(cè)出來,并且中斷受破壞機(jī)器的啟動(dòng)和注冊(cè)過程。 且對(duì)虛擬機(jī)的主要操作,即啟動(dòng)過程和遷移過程,設(shè)計(jì)了相應(yīng)的可信任保證機(jī)制。

發(fā)明內(nèi)容
根據(jù)以上分析,本專利提出面向網(wǎng)絡(luò)化操作系統(tǒng)的可信任虛擬運(yùn)行平臺(tái)體系結(jié)構(gòu),如圖1所示??尚湃翁摂M運(yùn)行平臺(tái)包含網(wǎng)絡(luò)化操作系統(tǒng)平臺(tái)和外部可信任實(shí)體兩大部分。外部可信任實(shí)體提供了 TCC用來對(duì)網(wǎng)絡(luò)化操作系統(tǒng)平臺(tái)中物理節(jié)點(diǎn)的可信任性進(jìn)行驗(yàn)證。每個(gè)物理節(jié)點(diǎn)最下層是硬件平臺(tái),其中包含了 TPM,用來保證物理節(jié)點(diǎn)啟動(dòng)過程中的可信任性;物理節(jié)點(diǎn)上層的軟件棧由下到上依次包括BIOS、Bootloader、操作系統(tǒng)內(nèi)核以及 VMM,而各種不同需求的虛擬機(jī)就運(yùn)行在VMM之上。對(duì)其中的主要角色和變量定義說明如下EKputcc =TCC的簽署公鑰(事先公開)EKpetcc =TCC 的簽署私鑰TKputcc =TCC的公鑰(事先公開)TKpetcc =TCC 的私鑰EKpun 物理節(jié)點(diǎn)的簽署公鑰(事先公開)EKpen 物理節(jié)點(diǎn)的簽署私鑰TKpun:物理節(jié)點(diǎn)的公鑰TKpkn:物理節(jié)點(diǎn)的私鑰ECLtcc =TCC的預(yù)期配置列表(事先公開)CLtcc =TCC的配置列表,在物理節(jié)點(diǎn)注冊(cè)時(shí)由TCC發(fā)送給物理節(jié)點(diǎn)并在物理節(jié)點(diǎn)端與ECLra對(duì)比CLn 物理節(jié)點(diǎn)的配置列表,在物理節(jié)點(diǎn)注冊(cè)時(shí)由物理節(jié)點(diǎn)發(fā)送給TCC,TCC將其保存在本地目錄Ks 一次會(huì)話中使用的對(duì)稱密鑰
challenge 挑戰(zhàn)發(fā)送給對(duì)方,若對(duì)方返回的信息中包含該challenge表明對(duì)方可以解密自己的信息wm_stat 虛擬機(jī)的狀態(tài)信息h(wm_stat) :wm_stat 的 Hash 值N 物理節(jié)點(diǎn)在可信任虛擬運(yùn)行平臺(tái)中的標(biāo)號(hào)本專利針對(duì)面向網(wǎng)絡(luò)化操作系統(tǒng)的可信任虛擬運(yùn)行平臺(tái)的4個(gè)關(guān)鍵過程及操作設(shè)計(jì)可信算法,分別是(1)物理節(jié)點(diǎn)注冊(cè)過程,這個(gè)過程需要物理節(jié)點(diǎn)和TCC相互驗(yàn)證,最后保證物理節(jié)點(diǎn)的配置信息保存到TCC本地目錄中,用于TCC以后對(duì)物理節(jié)點(diǎn)真實(shí)性的驗(yàn)證;( 虛擬機(jī)啟動(dòng)過程,該過程由用戶發(fā)起,經(jīng)CM分配一個(gè)物理節(jié)點(diǎn),然后該節(jié)點(diǎn)在TCC 的控制下完成對(duì)虛擬機(jī)的啟動(dòng);C3)虛擬機(jī)跨物理節(jié)點(diǎn)遷移過程,該過程由CM指定遷移的目的節(jié)點(diǎn),并由TCC驗(yàn)證源節(jié)點(diǎn)和目的節(jié)點(diǎn)的可信任性,最后虛擬機(jī)由源節(jié)點(diǎn)遷移到目的節(jié)點(diǎn);(4)物理節(jié)點(diǎn)安全啟動(dòng)過程,該過程用來保證物理節(jié)點(diǎn)在啟動(dòng)過程中的可信任性。在所有的過程中,用公鑰加密是為了保證信息在傳輸過程中不被泄露,用私鑰簽名用于驗(yàn)證簽名者的身份。物理節(jié)點(diǎn)注冊(cè)過程的算法描述如圖2所示。具體步驟如下1)物理節(jié)點(diǎn)向TCC發(fā)送一個(gè)請(qǐng)求challenge以驗(yàn)證TCC的身份;2) TCC將自己的配置列表CLra和剛才接收的challenge用自己TPM模塊的簽署私鑰EKrara簽名,并綁定一個(gè)請(qǐng)求challenge^回復(fù)給物理節(jié)點(diǎn),然后等待物理節(jié)點(diǎn)的注冊(cè) fn息;3)物理節(jié)點(diǎn)用TCC的TPM模塊的簽署公鑰EKputo解析出CLra,與事先收到的TCC 預(yù)期配置列表ECLto對(duì)比,如果一致即驗(yàn)證的TCC的真實(shí)身份。然后物理節(jié)點(diǎn)將自己的配置列表(、和剛從接收到的(^3116叫4。。用自己的簽署私鑰簽名,隨后用TCC的公鑰加密這個(gè)簽名以及物理節(jié)點(diǎn)的公鑰TKPUN,這樣保證了傳輸過程中的保密性,最后將這個(gè)加密的信息發(fā)送給TCC ;4) TCC用物理節(jié)點(diǎn)TPM模塊的簽署公鑰EKpkn解析出CLn同時(shí)驗(yàn)證了物理節(jié)點(diǎn)的真實(shí)性,然后TCC將物理節(jié)點(diǎn)的公鑰以及配置列表保存到本地一個(gè)目錄中,然后用自己的私鑰TKrara對(duì)確認(rèn)信息ACK進(jìn)行簽名,然后發(fā)送給物理節(jié)點(diǎn)以通知其注冊(cè)成功。虛擬機(jī)啟動(dòng)過程的算法描述如圖3所示。步驟如下1) User向CM請(qǐng)求一個(gè)虛擬機(jī)。User向CM發(fā)送的請(qǐng)求包括兩部分{vm_stat, h (vm_stat)} Kvm 和 Ichallengeu, KvJ TKputcc ;前者使用 her 本地創(chuàng)建的一個(gè)會(huì)話密鑰Kvm來加密虛擬機(jī)的初始化狀態(tài)vm_Stat以及該狀態(tài)的Hash值h (vm_stat); 后者使用TCC的公鑰TKpura來加密本次請(qǐng)求的標(biāo)號(hào)chalIengi5u和her創(chuàng)建的會(huì)話密鑰Kvm, 該加密信息最終由TCC來解密得到會(huì)話密鑰Kvm,然后將其發(fā)送給物理節(jié)點(diǎn);2) CM接收到信息后,在可信任虛擬運(yùn)行平臺(tái)中選擇一個(gè)物理節(jié)點(diǎn)然后將該信息轉(zhuǎn)發(fā)給物理節(jié)點(diǎn);3)物理節(jié)點(diǎn)保留下{vm_Stat,h (vm_Stat)} Kvm,并將 IchaIlengeu, KvJ TKputc 連同與TCC會(huì)話的標(biāo)志challenge用自己的私鑰簽名,然后將簽名的結(jié)果以及自己在可信任虛擬運(yùn)行平臺(tái)中的標(biāo)號(hào)N用TCC的公鑰加密,最后將加密的結(jié)果發(fā)送給TCC,以獲得與her的會(huì)話密鑰Kvm ;
4)TCC接收到消息后用自己的私鑰解密,得到物理節(jié)點(diǎn)簽名的信息以及該物理節(jié)點(diǎn)的在可信任虛擬運(yùn)行平臺(tái)中的標(biāo)號(hào),然后TCC通過該標(biāo)號(hào)在本地目錄中搜索該物理節(jié)點(diǎn)的公鑰,并用它驗(yàn)證得到Ichallengeu, Kj TKpurce和本次會(huì)話標(biāo)志challenge,然后TCC用自己的私鑰解密前者得到challenge和her與物理節(jié)點(diǎn)之間的會(huì)話密鑰Kvm,最后TCC將 Challenge^Challengeu以及會(huì)話密鑰Kvm用物理節(jié)點(diǎn)的公鑰加密并用自己的私鑰簽名后發(fā)送給物理節(jié)點(diǎn);5)物理節(jié)點(diǎn)接收到TCC返回的信息后,用TCC的公鑰驗(yàn)證并用自己的私鑰解密得到challenge和會(huì)話密鑰Kvm,然后用Kvm加密challenge和自己在可信任虛擬運(yùn)行平臺(tái)中的標(biāo)號(hào),并將加密后的結(jié)果發(fā)送給User。虛擬機(jī)跨物理節(jié)點(diǎn)遷移過程的算法描述如圖4所示。步驟如下1) CM將物理節(jié)點(diǎn)d的標(biāo)號(hào) 發(fā)送給物理節(jié)點(diǎn)s,以通知物理節(jié)點(diǎn)s本機(jī)上VM遷移的目的節(jié)點(diǎn)是物理節(jié)點(diǎn)d;2)物理節(jié)點(diǎn)s用自己的私鑰對(duì)遷移目的節(jié)點(diǎn)物理節(jié)點(diǎn)d的標(biāo)號(hào)Nd和本次會(huì)話的標(biāo)號(hào)challenge進(jìn)行簽名,然后將簽名的結(jié)果和自己的標(biāo)號(hào)Ns用TCC的公鑰加密并發(fā)送給TCC,以獲得物理節(jié)點(diǎn)d的公鑰;3) TCC接收到物理節(jié)點(diǎn)s的請(qǐng)求,解密后將本次會(huì)話標(biāo)號(hào)challenge和物理節(jié)點(diǎn) d的公鑰用自己的私鑰簽名并用物理節(jié)點(diǎn)s的公鑰加密,并將加密的結(jié)果返回給物理節(jié)點(diǎn)
S ;4)物理節(jié)點(diǎn)s接收到TCC的回復(fù)后解密出物理節(jié)點(diǎn)d的公鑰,然后用自己的私鑰對(duì)本地生產(chǎn)的與物理節(jié)點(diǎn)d的會(huì)話密鑰和新會(huì)話標(biāo)號(hào)challenge^進(jìn)行簽名,并將簽名的結(jié)果以及自己的標(biāo)號(hào)Ns用物理節(jié)點(diǎn)d的公鑰加密,然后發(fā)送給物理節(jié)點(diǎn)d ;5)物理節(jié)點(diǎn)d接收到物理節(jié)點(diǎn)s的信息后解密出物理節(jié)點(diǎn)s的標(biāo)號(hào)Ns和用物理節(jié)點(diǎn)s私鑰簽名的信息,下一步物理節(jié)點(diǎn)d需要向TCC請(qǐng)求物理節(jié)點(diǎn)s的公鑰以驗(yàn)證這個(gè)簽名,所以,物理節(jié)點(diǎn)d用自己的私鑰簽名新的會(huì)話標(biāo)號(hào)Challenged和物理節(jié)點(diǎn)s的標(biāo)號(hào) Ns,然后連同自己的標(biāo)號(hào) 用TCC的公鑰加密并傳送給TCC ;6) TCC將chal Ienged和物理節(jié)點(diǎn)s的公鑰用自己的私鑰簽名并用物理節(jié)點(diǎn)d的公鑰加密發(fā)送給物理節(jié)點(diǎn)d ;7)物理節(jié)點(diǎn)d接收到TCC的信息并解密出物理節(jié)點(diǎn)s的公鑰Ns,然后用Ns驗(yàn)證得出與物理節(jié)點(diǎn)s的會(huì)話密鑰Ks ;并用該會(huì)話密鑰加密challenge-并發(fā)送給物理節(jié)點(diǎn)s ;8)物理節(jié)點(diǎn)s接收到物理節(jié)點(diǎn)d的信息后,解密出challenge-并得知物理節(jié)點(diǎn)d 已經(jīng)可以做好接收VM的準(zhǔn)備,然后將自己本地VM的狀態(tài)以及該狀態(tài)的Hash值用會(huì)話密鑰 Ks加密發(fā)送給物理節(jié)點(diǎn)d ;9)物理節(jié)點(diǎn)d接收到物理節(jié)點(diǎn)s所發(fā)送來的VM的狀態(tài)信息并通過Hash值對(duì)比, 如果一致,就在本地運(yùn)行該VM。物理節(jié)點(diǎn)安全啟動(dòng)過程的算法描述如圖5所示。使用TPM來作為可信的基礎(chǔ),其本質(zhì)上是一片含有存儲(chǔ)部件和獨(dú)立密碼運(yùn)算部件的系統(tǒng)安全芯片,能夠?yàn)槠脚_(tái)提供密碼服務(wù)功能、可信存儲(chǔ)功能,對(duì)外提供受保護(hù)的、系統(tǒng)的、規(guī)范的訪問接口,TCG組織發(fā)布的TPM 規(guī)范對(duì)其實(shí)現(xiàn)原理、功能接口作了詳細(xì)規(guī)定。我們使用它的完整性度量機(jī)制來實(shí)現(xiàn)安全啟動(dòng),其方法為通過在信息設(shè)備啟動(dòng)過程中對(duì)BIOS、bootloader、操作系統(tǒng)、VMM依次進(jìn)行完整性驗(yàn)證,從而保證信息處理設(shè)備的安全啟動(dòng)。圖5為TPM安全芯片應(yīng)用于安全啟動(dòng)的流程。具體步驟如下1)在確保物理節(jié)點(diǎn)安全的環(huán)境下,如生產(chǎn)線上,或首次應(yīng)用時(shí),生成BIOS、 bootloader、操作系統(tǒng)、VMM的完整性校驗(yàn)碼,存儲(chǔ)在TPM安全芯片中;2)在物理節(jié)點(diǎn)加電時(shí),其內(nèi)部的TPM芯片進(jìn)行基本初始化;3) TPM安全芯片讀出BIOS代碼,計(jì)算其完整性校驗(yàn)碼,存放至TPM的一個(gè)PCR中;4) TPM安全芯片讀出bootloader代碼,計(jì)算其完整性校驗(yàn)碼,存放至TPM的一個(gè) PCR 中;5) TPM安全芯片讀出待加載操作系統(tǒng)代碼,計(jì)算其完整性校驗(yàn)碼,存放至TPM的一個(gè)PCR中;6) TPM安全芯片讀出VMM代碼,計(jì)算其完整性校驗(yàn)碼,存放至TPM的一個(gè)PCR中;7)從存儲(chǔ)部件中讀取預(yù)先保存的完整性校驗(yàn)碼,判斷其與計(jì)算出的各完整性校驗(yàn)碼是否分別一致,如果全部一致,則CPU逐步運(yùn)行讀取的BIOS代碼、bootloader代碼、操作系統(tǒng)和VMM ;否則,禁用讀出的BIOS代碼,并發(fā)出不一致部件代碼已被非法修改的提示。


圖1為面向網(wǎng)絡(luò)化操作系統(tǒng)的可信任虛擬運(yùn)行平臺(tái)體系結(jié)構(gòu)圖2為物理節(jié)點(diǎn)注冊(cè)過程圖3為虛擬機(jī)啟動(dòng)過程圖4為虛擬機(jī)跨物理節(jié)點(diǎn)遷移過程圖5為物理節(jié)點(diǎn)安全啟動(dòng)過程
具體實(shí)施例方式本專利的技術(shù)在具體實(shí)施時(shí)需要注意以下事項(xiàng)1)由外部可信任實(shí)體提供可信云管理器來對(duì)網(wǎng)絡(luò)化操作系統(tǒng)平臺(tái)進(jìn)行驗(yàn)證。 TCC在本地管理一個(gè)目錄,該目錄中存放有網(wǎng)絡(luò)化操作系統(tǒng)中可信任物理節(jié)點(diǎn)的簽署公鑰 EKpun,公鑰TKpun以及配置列表CLn等信息,此外它還負(fù)責(zé)以安全的渠道對(duì)外公布自己的簽署公鑰EKpura、公鑰TKputo和預(yù)期的TCC配置列表CLto。2)本專利另假設(shè)以下條件成立a)外部可信任實(shí)體的可信任性不需要驗(yàn)證;b)TCC的簽署公鑰、公鑰以及預(yù)期配置列表,物理節(jié)點(diǎn)的簽署公鑰以及預(yù)期配置列表在系統(tǒng)運(yùn)行前公布,它們的可信性由外部可信任實(shí)體保證,不在本專利的考慮范圍;a) TPM的可信任性由TPM生產(chǎn)商保證,也不作為本專利的內(nèi)容。3)為保證本專利的技術(shù)在實(shí)際部署中能夠施行,需要輔助一些必要的物理防范手段和管理措施。如a)出入管理無關(guān)人員未經(jīng)管理人員批準(zhǔn)嚴(yán)禁進(jìn)入機(jī)房,進(jìn)入機(jī)房人員不得攜帶任何易燃易爆和強(qiáng)磁物品及其它與機(jī)房工作無關(guān)的物品;b)安全管理計(jì)算機(jī)房要保持清潔、衛(wèi)生,并由專人7拉4負(fù)責(zé)管理和維護(hù)(包括溫度、濕度、電力系統(tǒng)、網(wǎng)絡(luò)設(shè)備等),值班人員應(yīng)恪守保密制度,不得擅自泄露中心各種信息資料與數(shù)據(jù);c)操作管理值班人員必須密切監(jiān)視中心設(shè)備運(yùn)行狀況以及各網(wǎng)點(diǎn)運(yùn)行情況,確保安全、高效運(yùn)行。嚴(yán)格按規(guī)章制度要求做好各種數(shù)據(jù)、文件的備份工作,中心服務(wù)器數(shù)據(jù)庫要定期進(jìn)行雙備份,并嚴(yán)格實(shí)行異地存放、專人保管,所有重要文檔定期整理裝訂,專人保管,以備后查;d)運(yùn)行管理各類軟件系統(tǒng)的維護(hù)、增刪、配置的更改,各類硬件設(shè)備的添加、更換必需經(jīng)負(fù)責(zé)人書面批準(zhǔn)后方可進(jìn)行,必須按規(guī)定進(jìn)行詳細(xì)登記和記錄,對(duì)各類軟件、現(xiàn)場(chǎng)資料、檔案整理存檔。
權(quán)利要求
1.提出面向網(wǎng)絡(luò)化操作系統(tǒng)的可信任虛擬運(yùn)行平臺(tái)體系結(jié)構(gòu),如圖1所示??尚湃翁摂M運(yùn)行平臺(tái)包含網(wǎng)絡(luò)化操作系統(tǒng)平臺(tái)和外部可信任實(shí)體兩大部分。外部可信任實(shí)體提供了 TCC用來對(duì)網(wǎng)絡(luò)化操作系統(tǒng)平臺(tái)中物理節(jié)點(diǎn)的可信任性進(jìn)行驗(yàn)證。每個(gè)物理節(jié)點(diǎn)最下層是硬件平臺(tái),其中包含了 TPM,用來保證物理節(jié)點(diǎn)啟動(dòng)過程中的可信任性;物理節(jié)點(diǎn)上層的軟件棧由下到上依次包括BIOS、Bootloader、操作系統(tǒng)內(nèi)核以及VMM,而各種不同需求的虛擬機(jī)就運(yùn)行在VMM之上
2.如權(quán)利要求1所述,本專利針對(duì)面向網(wǎng)絡(luò)化操作系統(tǒng)的可信任虛擬運(yùn)行平臺(tái)的4個(gè)關(guān)鍵過程及操作,設(shè)計(jì)相應(yīng)的可信任保證機(jī)制及算法,分別是(1)物理節(jié)點(diǎn)注冊(cè)過程;(2) 虛擬機(jī)啟動(dòng)過程;(3)虛擬機(jī)跨物理節(jié)點(diǎn)遷移過程;(4)物理節(jié)點(diǎn)安全啟動(dòng)過程。
3.物理節(jié)點(diǎn)注冊(cè)過程的算法描述如圖2所示。具體步驟如下1)物理節(jié)點(diǎn)向TCC發(fā)送一個(gè)請(qǐng)求challenge以驗(yàn)證TCC的身份;2)TCC將自己的配置列表CLto和剛才接收的challenge用自己TPM模塊的簽署私鑰 EKpkto簽名,并綁定一個(gè)請(qǐng)求challenge^回復(fù)給物理節(jié)點(diǎn),然后等待物理節(jié)點(diǎn)的注冊(cè)信息;3)物理節(jié)點(diǎn)用TCC的TPM模塊的簽署公鑰EKputo解析出CLra,與事先收到的TCC預(yù)期配置列表ECLra對(duì)比,如果一致即驗(yàn)證的TCC的真實(shí)身份。然后物理節(jié)點(diǎn)將自己的配置列表0^和剛從接收到的(^3116叫4。。用自己的簽署私鑰簽名,隨后用TCC的公鑰加密這個(gè)簽名以及物理節(jié)點(diǎn)的公鑰TKpun,這樣保證了傳輸過程中的保密性,最后將這個(gè)加密的信息發(fā)送給TCC ;4)TCC用物理節(jié)點(diǎn)TPM模塊的簽署公鑰EKpkn解析出CLn同時(shí)驗(yàn)證了物理節(jié)點(diǎn)的真實(shí)性,然后TCC將物理節(jié)點(diǎn)的公鑰以及配置列表保存到本地一個(gè)目錄中,然后用自己的私鑰 TKpetcc對(duì)確認(rèn)信息ACK進(jìn)行簽名,然后發(fā)送給物理節(jié)點(diǎn)以通知其注冊(cè)成功。
4.虛擬機(jī)啟動(dòng)過程的算法描述如圖3所示。步驟如下DUser向CM請(qǐng)求一個(gè)虛擬機(jī)。her向CM發(fā)送的請(qǐng)求包括兩部分{vm_stat,h(vm_ stat)} Kvm和IchaIlengeu, KvJ TKputcc ;前者使用her本地創(chuàng)建的一個(gè)會(huì)話密鑰Kvm來加密虛擬機(jī)的初始化狀態(tài)vm_Stat以及該狀態(tài)的Hash值h (vm_stat);后者使用TCC的公鑰TKputo 來加密本次請(qǐng)求的標(biāo)號(hào)challenge和her創(chuàng)建的會(huì)話密鑰Kvm,該加密信息最終由TCC來解密得到會(huì)話密鑰Kvm,然后將其發(fā)送給物理節(jié)點(diǎn);2)CM接收到信息后,在可信任虛擬運(yùn)行平臺(tái)中選擇一個(gè)物理節(jié)點(diǎn)然后將該信息轉(zhuǎn)發(fā)給物理節(jié)點(diǎn);3)物理節(jié)點(diǎn)保留下{vm_Stat,h(VnustatMKvm,并將 IchaIlengeu, KvJ TKputc 連同與 TCC 會(huì)話的標(biāo)志challenge用自己的私鑰簽名,然后將簽名的結(jié)果以及自己在可信任虛擬運(yùn)行平臺(tái)中的標(biāo)號(hào)N用TCC的公鑰加密,最后將加密的結(jié)果發(fā)送給TCC,以獲得與her的會(huì)話密Kvm ;4)TCC接收到消息后用自己的私鑰解密,得到物理節(jié)點(diǎn)簽名的信息以及該物理節(jié)點(diǎn)的在可信任虛擬運(yùn)行平臺(tái)中的標(biāo)號(hào),然后TCC通過該標(biāo)號(hào)在本地目錄中搜索該物理節(jié)點(diǎn)的公鑰,并用它驗(yàn)證得到IchaIlengeu, KvJ TKputcc和本次會(huì)話標(biāo)志challenge,然后TCC用自己的私鑰解密前者得到challenge和her與物理節(jié)點(diǎn)之間的會(huì)話密鑰Kvm,最后TCC將 Challenge^Challengeu以及會(huì)話密鑰Kvm用物理節(jié)點(diǎn)的公鑰加密并用自己的私鑰簽名后發(fā)送給物理節(jié)點(diǎn);5)物理節(jié)點(diǎn)接收到TCC返回的信息后,用TCC的公鑰驗(yàn)證并用自己的私鑰解密得到 Challengeu和會(huì)話密鑰Kvm,然后用Kvm加密challenge和自己在可信任虛擬運(yùn)行平臺(tái)中的標(biāo)號(hào),并將加密后的結(jié)果發(fā)送給User。
5.虛擬機(jī)跨物理節(jié)點(diǎn)遷移過程的算法描述如圖4所示。步驟如下1)CM將物理節(jié)點(diǎn)d的標(biāo)號(hào) 發(fā)送給物理節(jié)點(diǎn)s,以通知物理節(jié)點(diǎn)s本機(jī)上VM遷移的目的節(jié)點(diǎn)是物理節(jié)點(diǎn)d;2)物理節(jié)點(diǎn)s用自己的私鑰對(duì)遷移目的節(jié)點(diǎn)物理節(jié)點(diǎn)d的標(biāo)號(hào)Nd和本次會(huì)話的標(biāo)號(hào)challenge進(jìn)行簽名,然后將簽名的結(jié)果和自己的標(biāo)號(hào)Ns用TCC的公鑰加密并發(fā)送給 TCC,以獲得物理節(jié)點(diǎn)d的公鑰;3)TCC接收到物理節(jié)點(diǎn)s的請(qǐng)求,解密后將本次會(huì)話標(biāo)號(hào)challenge和物理節(jié)點(diǎn)d的公鑰用自己的私鑰簽名并用物理節(jié)點(diǎn)s的公鑰加密,并將加密的結(jié)果返回給物理節(jié)點(diǎn)s ;4)物理節(jié)點(diǎn)s接收到TCC的回復(fù)后解密出物理節(jié)點(diǎn)d的公鑰,然后用自己的私鑰對(duì)本地生產(chǎn)的與物理節(jié)點(diǎn)d的會(huì)話密鑰和新會(huì)話標(biāo)號(hào)chalIenge5s2進(jìn)行簽名,并將簽名的結(jié)果以及自己的標(biāo)號(hào)Ns用物理節(jié)點(diǎn)d的公鑰加密,然后發(fā)送給物理節(jié)點(diǎn)d ;5)物理節(jié)點(diǎn)d接收到物理節(jié)點(diǎn)s的信息后解密出物理節(jié)點(diǎn)s的標(biāo)號(hào)Ns和用物理節(jié)點(diǎn) s私鑰簽名的信息,下一步物理節(jié)點(diǎn)d需要向TCC請(qǐng)求物理節(jié)點(diǎn)s的公鑰以驗(yàn)證這個(gè)簽名, 所以,物理節(jié)點(diǎn)d用自己的私鑰簽名新的會(huì)話標(biāo)號(hào)challenge^和物理節(jié)點(diǎn)s的標(biāo)號(hào)Ns,然后連同自己的標(biāo)號(hào) 用TCC的公鑰加密并傳送給TCC ;6)TCC將challenge^和物理節(jié)點(diǎn)s的公鑰用自己的私鑰簽名并用物理節(jié)點(diǎn)d的公鑰加密發(fā)送給物理節(jié)點(diǎn)d ;7)物理節(jié)點(diǎn)d接收到TCC的信息并解密出物理節(jié)點(diǎn)s的公鑰Ns,然后用Ns驗(yàn)證得出與物理節(jié)點(diǎn)s的會(huì)話密鑰Ks ;并用該會(huì)話密鑰加密challenge-并發(fā)送給物理節(jié)點(diǎn)s ;8)物理節(jié)點(diǎn)s接收到物理節(jié)點(diǎn)d的信息后,解密出challenge-并得知物理節(jié)點(diǎn)d已經(jīng)可以做好接收VM的準(zhǔn)備,然后將自己本地VM的狀態(tài)以及該狀態(tài)的Hash值用會(huì)話密鑰Ks 加密發(fā)送給物理節(jié)點(diǎn)d ;9)物理節(jié)點(diǎn)d接收到物理節(jié)點(diǎn)s所發(fā)送來的VM的狀態(tài)信息并通過Hash值對(duì)比,如果一致,就在本地運(yùn)行該VM。
6.物理節(jié)點(diǎn)安全啟動(dòng)過程的算法描述如圖5所示。具體步驟如下1)在確保物理節(jié)點(diǎn)安全的環(huán)境下,如生產(chǎn)線上,或首次應(yīng)用時(shí),生成BIOS、 bootloader、操作系統(tǒng)、VMM的完整性校驗(yàn)碼,存儲(chǔ)在TPM安全芯片中;2)在物理節(jié)點(diǎn)加電時(shí),其內(nèi)部的TPM芯片進(jìn)行基本初始化;3)TPM安全芯片讀出BIOS代碼,計(jì)算其完整性校驗(yàn)碼,存放至TPM的一個(gè)PCR中;4)TPM安全芯片讀出bootloader代碼,計(jì)算其完整性校驗(yàn)碼,存放至TPM的一個(gè)PCR中;5)TPM安全芯片讀出待加載操作系統(tǒng)代碼,計(jì)算其完整性校驗(yàn)碼,存放至TPM的一個(gè) PCR 中;6)TPM安全芯片讀出VMM代碼,計(jì)算其完整性校驗(yàn)碼,存放至TPM的一個(gè)PCR中;7)從存儲(chǔ)部件中讀取預(yù)先保存的完整性校驗(yàn)碼,判斷其與計(jì)算出的各完整性校驗(yàn)碼是否分別一致,如果全部一致,則CPU逐步運(yùn)行讀取的BIOS代碼、bootloader代碼、操作系統(tǒng)和VMM ;否則,禁用讀出的BIOS代碼,并發(fā)出不一致部件代碼已被非法修改的提示。
全文摘要
本發(fā)明設(shè)計(jì)一種面向網(wǎng)絡(luò)化操作系統(tǒng)的可信任虛擬運(yùn)行平臺(tái)技術(shù),屬于計(jì)算機(jī)基礎(chǔ)軟件技術(shù)領(lǐng)域。該技術(shù)針對(duì)典型的新型網(wǎng)絡(luò)應(yīng)用模式下網(wǎng)絡(luò)化操作系統(tǒng)的主要業(yè)務(wù)范圍和主要操作所面臨的主要威脅,通過設(shè)立第三方可信認(rèn)證機(jī)構(gòu),即可信云控制器,對(duì)每一個(gè)網(wǎng)絡(luò)化操作系統(tǒng)中的節(jié)點(diǎn),設(shè)計(jì)其可信注冊(cè)及啟動(dòng)機(jī)制;經(jīng)過可信云控制器的認(rèn)證協(xié)議后,方可成為一個(gè)可信節(jié)點(diǎn),提供虛擬機(jī)可信的宿主運(yùn)行環(huán)境,保證其完整性和正確性遭到的破壞能夠在啟動(dòng)過程中被檢測(cè)出來,并且中斷受破壞機(jī)器的啟動(dòng)和注冊(cè)過程。且對(duì)虛擬機(jī)的主要操作,即啟動(dòng)過程和遷移過程,設(shè)計(jì)了相應(yīng)的可信任保證機(jī)制。
文檔編號(hào)H04L9/32GK102202046SQ20111006126
公開日2011年9月28日 申請(qǐng)日期2011年3月15日 優(yōu)先權(quán)日2011年3月15日
發(fā)明者劉川意, 張旸旸, 楊金翠, 袁玉宇, 韓強(qiáng) 申請(qǐng)人:北京郵電大學(xué)
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1