新四季網

用於多方驗證的基於平臺的可信性驗證服務的方法和系統的製作方法

2023-04-28 11:55:31

用於多方驗證的基於平臺的可信性驗證服務的方法和系統的製作方法
【專利摘要】用於多方驗證的基於平臺的可信性驗證服務的方法和系統。在一個實施例中,所述方法包括客戶端平臺訪問網絡上的服務提供者。一旦訪問所述服務提供者,所述客戶端平臺就從所述服務提供者接收平臺測量和驗證的請求。所述客戶端平臺收集平臺信息,並執行測量和驗證,包括執行完整性清單比較。如果所述完整性清單比較指示良好的客戶端平臺狀況,則所述客戶端平臺對所述客戶端平臺狀況進行籤名,並向所述服務提供者發送許可通知,用於指示所述客戶端平臺未受損害。然後,所述客戶端平臺可以接收所述服務提供者的服務。如果所述完整性清單比較指示所述客戶端平臺狀況不好,則所述客戶端平臺將向所述服務提供者發送故障通知,以指示所述客戶端平臺受到損害。
【專利說明】用於多方驗證的基於平臺的可信性驗證服務的方法和系統
[0001]本申請是2009年6月30日提交的,申請號為200910139642.9的同名專利申請的
分案申請。
【技術領域】
[0002]本發明一般涉及網絡使能計算設備的安全性。更具體地,本發明涉及用於多方驗證的基於平臺的可信性驗證服務的方法和裝置。
【背景技術】
[0003]全球資訊網正在向服務模型發展。全球資訊網上的服務提供者控制服務的子集,並利用合同範圍內的一組分布式能力將它們提供給消費者。當今,全球資訊網上存在許多惡意用戶,並且由於各種原因,許多設備在它們所提供的信息方面並不完全可靠。如果消費者平臺被平臺上運行的惡意代碼或其它原因損害,那麼服務提供者和/或它們提供給消費者的服務也可能受到損害。
【專利附圖】

【附圖說明】
[0004]被併入本文並構成說明書的一部分的【專利附圖】

【附圖說明】了本發明的實施例,並且與說明書中的描述一起還用來解釋本發明的原理,並使相關領域的技術人員能夠構造和使用本發明。在附圖中,相同的附圖標記一般指示相同的、功能類似的和/或結構類似的元件。元件首次出現的附圖用對應附圖標記中的最左邊的數字來指示。
[0005]圖1A是說明根據本發明實施例的具有主動管理模塊的示例性主機計算平臺的框圖。
[0006]圖1B是說明根據本發明實施例的示例性虛擬技術(VT)使能主機計算平臺的框圖。
[0007]圖2是說明根據本發明實施例的用於基於平臺的可信性驗證服務的主機處理器和主機作業系統的示例性框圖。
[0008]圖3是說明根據本發明實施例的用於基於平臺的可信性驗證服務的示例性代理執行環境(AEE)的框圖。
[0009]圖4是描述根據本發明實施例的用於基於平臺的可信性驗證服務的示例性方法的流程圖。
【具體實施方式】
[0010]儘管本文參照針對特定應用的說明性實施例對本發明進行了描述,但是應該理解,本發明並不限於此。通過參考本文提供的教導,相關領域的技術人員將認識到落入本發明範圍以及本發明的實施例具有顯著效用的其它領域內的其它修改、應用和實施例。
[0011]說明書中的對本發明的「 一個實施例」、「實施例」或「另一實施例」的引用是指結合該實施例而描述的具體特徵、結構或特性包含在本發明的至少一個實施例中。因此,在整個說明書不同位置處出現的短語「在一個實施例中」或「在實施例中」不一定全指同一實施例。
[0012]本發明的實施例針對用於多方驗證的基於平臺的可信性驗證服務的方法和系統。這通過利用平臺硬體特徵識別平臺的弱點來實現。網際網路或者提供受保護內容或其它私有服務的任何其它網絡上的多方可以在沒有平臺上的額外開銷的情況下,以可信方式查明平臺的狀況。
[0013]本發明的實施例使得授權的服務提供者能夠請求測量和驗證客戶端主機的有關軟體和硬體組件的完整性的平臺屬性,其中,所述軟體和硬體組件是客戶端主機與服務提供者之間的任何事務的來源。因此,僅僅授權的服務可以查明平臺的狀況的有效性(即,狀況報告)。本發明的實施例使得客戶端實體能夠確保將數據傳送到服務提供者的伺服器的軟體代理的完整性,所述軟體代理包括通過平臺上的硬體(例如指紋讀取器或其它傳感器)獲取信息的軟體代理。確保平臺(包括軟體代理)的完整性的能力對於提供在線服務(例如,在線廣告服務、基於位置的服務、優質內容傳送服務等)的商業服務來說是非常重要的,因為這些服務依賴於由軟體代理髮送以提供這些服務的數據的準確性。
[0014]本發明的實施例還提供OS (作業系統)不可知能力,該能力使得能夠進行保護以免受平臺的惡意的授權擁有者和平臺上的惡意代碼的攻擊。
[0015]儘管本發明被描述為可應用於網際網路,但是本發明並不限於網際網路。相關領域的技術人員將知道,本發明同樣可應用於私有網絡上的服務,例如,企業IT (信息技術)網絡或者傳送受保護內容或其它私有服務的商用網絡。
[0016]圖1A是說明根據本發明實施例的具有主動管理模塊的示例性主機平臺100的框圖。主機平臺100表示執行程序的計算平臺。在本發明的實施例中,主機平臺100可以是客戶端平臺。例如,主機平臺100可以包括桌面計算機、膝上型計算機、平板計算機、機頂盒、個人數字助理(PDA)、電話、智慧型電話、MID (移動網際網路設備)、遊戲機、健康監控設備以及其它連接的數字消費性設備。主機平臺100包括主機處理器102、具有主動管理模塊106的服務處理器104、存儲器108、存儲設備110、輸入/輸出設備112以及通信接口 114等。部件102、104、106、108、110、112和114中的每一個通過系統總線116相互耦合,所述系統總線116代表一個或多個總線。在多個總線的情況中,可以通過一個或多個總線橋(未示出)來橋接這些總線。
[0017]主機處理器102可以表示處理器、微控制器、中央處理單元(CPU)等。儘管在圖1A中將主機處理器102顯示為單個單元,但是主機處理器102可以包括可以提供並行處理能力的一個或多個處理核心或處理單元。下文將參照圖2更詳細地描述主機處理器102。
[0018]服務處理器104表示用於在主機處理器102的環境外部執行任務的處理器/控制邏輯。在一個實施例中,服務處理器104可以稱為「副處理器」(adjunct piOcessor),並且可以是主機處理器102的一部分、嵌入式設備、晶片組部件等。當服務處理器104在安全/可信分區上或在系統管理模式下執行管理代碼時,還可以通過主機處理器102來實現服務處理器104。在一個實施例中,服務處理器104可以包括主動管理模塊106。或者,主動管理模塊106可以作為主機平臺100上的、與服務處理器104協同工作的獨立實體而存在。主動管理模塊106可以包括代理執行環境(AEE) 118,其可以用來確定在主機平臺100上執行的程序的完整性。下文將參照圖3進一步詳細地討論AEE118。[0019]在本發明的一個實施例中,服務處理器104可以包括帶外(OOB )管理模塊120。OOB管理模塊120涉及在主機處理器102上執行的作業系統(OS)不能訪問的通信資源的管理和/或控制。OOB管理模塊120可以包括與主機平臺100外部的實體(例如,在諸如網絡124的網絡上的遠程伺服器122)相連的通信鏈路126。通信鏈路126可以是有線鏈路或無線鏈路。有線鏈路可以包括物理導體,例如雙絞線、Cat-5、同軸電纜、光纖等。無線鏈路可以包括但不限於=WiFi (無線保真,其為根據IEEE802.11協議族的天線網絡通信的共同名稱)、3G (第三代移動通信技術)、WiMax (微波存取全球互通,其為基於IEEE802.16標準的寬帶技術)等。在一個實施例中,遠程伺服器122可以連接到遠程OOB管理模塊120。
[0020]存儲器108可以用來存儲/提供指令和/或數據,以用於主機處理器102的直接操作和/或功能的執行。存儲器108可以包括隨機訪問存儲器(RAM)、靜態RAM (SRAM)、動態RAM (DRAM)、同步DRAM (SDRAM)、雙倍數據速率RAM (DDRRAM)等。存儲器108可以包括存儲在其中的一個或多個代碼和/或數據的序列,並且可以稱為操作存儲器。代碼序列可以是表示一個或多個函數調用、一個或多個子例程或者一個或多個操作的機器指令的集合或組。程序在這裡可以指這些機器指令中單獨的任意一種,也可以指這些機器指令中的一種或多種的結合。存儲設備110可以表示用於存儲持久性數據的非易失性存儲設備。非易失性存儲設備指這樣的存儲介質,即,即使當電源從存儲設備移除時,該存儲介質仍保留它的值。持久性數據是指當中斷到主機平臺100的電源時仍期望保留的數據,例如系統文件、作業系統、程序文件、配置文件等。存儲設備110可以包括存儲盤及關聯的驅動器(例如磁碟、光碟)、通用串行總線(USB)存儲設備及關聯的埠、快閃記憶體、只讀存儲器(ROM)、非易失性半導體驅動器等。
[0021]主機平臺100還可以包括輸入/輸出設備112。輸入/輸出設備112可以包括但不限於鍵盤、光標控制器等。
[0022]主機平臺100還可以包括通信接口 114。通信接口 114可以包括但不限於:使得主機平臺100能夠在諸如網絡124的網絡上與其它實體進行通信的網絡接口卡、調製解調
翌坐
-nfrO
[0023]圖1B是說明根據本發明實施例的示例性的虛擬技術(VT)主機計算平臺130的框圖。在本發明的實施例中,需要用於AEE118的安全隔離分區。利用VT計算平臺的實現,可以創建用於AEEl 18的隔離分區。
[0024]和主機平臺100所指示的一樣,主機平臺130表示執行程序的計算平臺。在本發明的實施例中,主機平臺130可以用作客戶端平臺或伺服器平臺。主機平臺130可以包括例如:桌面計算機、膝上型計算機、平板計算機、個人數字助理(PDA)或者其它手持計算或通信設備等。
[0025]主機平臺130包括多個虛擬機監控器(VMM)管理部件132,VMMl34直接在VMM管理部件132之上運行。可以用硬體、軟體、固件或它們的組合來實現VMM管理部件132。VMM管理部件132可以包括處理器102、存儲器108、存儲設備110、I/O設備112以及通信接口114。主機平臺130還包括至少一個虛擬機(VM)136。VM136包括下面參照圖2描述的作業系統200。主機平臺130還包括具有客戶作業系統和VT完整性服務(VIS)模塊140的輔助VMl38ο VT完整性服務(VIS)模塊140包括AEE118。儘管圖1B被顯示為具有兩個VM,SPVMl36和輔助VM138,但是平臺130並不限於僅具有兩個VM。相關領域的技術人員將知道,在不偏離本發明的範圍和精神的情況下,平臺130中可以包括更多個VM。
[0026]虛擬機監控器(VMM) 134允許主機平臺130同時並且獨立地運行多個客戶作業系統(OS),其中,每個OS具有自己隔離的環境,即,VMl36和輔助VM138,以用於軟體執行。VMMl34直接在VT使能硬體(VMM管理部件132)之上運行,所述VT使能硬體例如是處理器102、存儲器108、存儲設備110、I/O設備112以及通信接口 114,並且VMM134具有對平臺130中所有資源的完全訪問權。VMM134可以向獨立操作的VM136和輔助VM138呈現VT使能的硬體(132)的多個方面。可以用軟體、硬體、固件和/或它們的任意組合來實現VMM134。
[0027]如前所示,VM136和輔助VM138包含在VMM134上運行的客戶作業系統(OS)。VMl36和輔助VM138被配置為獨立地執行代碼,其中,VM136和輔助VM138被安全地相互隔離。也就是說,在VM136和輔助VM138上操作的組件可以分別進行操作,如同它們分別運行在專用計算機上而不是虛擬機上一樣。這些VM上的組件可以控制各種事件,並且具有對VT使能的硬體(132)的完全訪問權。VMM114可以管理VM對VT使能的硬體(132)的訪問。
[0028]輔助VM138可以包括VT完整性服務(VIS)模塊140,以提供附加的安全性增強。結合VIS模塊140,輔助VM138可以被配置為獨立地執行代碼,可以與VM136安全地隔離,並且可以防止VM136的組件執行會改變、修改、讀取或以其它方式影響輔助VM138的組件的操作。因此,通過使AEE188駐留在VIS模塊140上,使得AEE188能夠更安全地與在VM136上實現的0S200隔離。在該實施例中,AEEl 18通過通信鏈路A和VMM134與0S200通信。
[0029]如之前參照圖1A所指示的,儘管主機處理器102在圖1B中被顯示為單個單元,但是主機處理器102可以包括一個或多個處理核心或者處理單元。
[0030]圖1A和IB描述了本發明實施例的示例性主動管理和VT實現。本發明並不限於這些實現。相關領域技術人員將知道,可以使用支持本發明實施例的功能的其它實現。這些實現可以包括但不限於,可信計算模塊實現或先進RISC機器(ARM)的信任區(Trust Zone)實現。
[0031]圖2是說明根據本發明實施例的用於基於平臺的可信性驗證服務的主機處理器102和主機作業系統200的示例性框圖。如前所示,主機處理器102可以是例如處理器、微控制器、中央處理單元(CPU)等。主機處理器102包括主機作業系統200。主機作業系統200是負責為主機平臺100或300管理與協調動作和進行資源共享的軟體組件。主機作業系統200包括用戶應用程式202、策略管理器204以及第三方代碼206等。
[0032]用戶應用程式202可以包括但不限於:服務提供者特定的支持它們的服務傳送的任何應用程式。例如,當今在網際網路上支持服務提供者的服務傳送的最普遍的用戶應用程式可能是瀏覽器應用程式,例如Microsoft?的Internet Explorer或者目前為AOL的子公司的網景通信公司的Netscape Navigator。也可以使用支持服務提供者的服務傳送或者用作客戶端與服務提供者之間的接口的其它類型的用戶應用程式。例如Netflix (—種提供電影或其它類型的媒體的在線電影租賃服務)需要Netflix媒體播放器應用程式作為用戶與Netflix網站之間的接口,以使得用戶能夠在其個人計算機(PC)上觀看電影和電視演出。
[0033]本發明的實施例向服務提供者提供信息,以使服務提供者能夠知道客戶端上運行的用戶應用程式是否已經被篡改或損害。作為主機作業系統200的一部分,策略管理器204提供定義主機平臺的狀態和用戶應用程式的狀態的策略。因此,策略管理器204可由用戶和服務提供者訪問,並且賦予用戶/服務提供者為平臺和用戶應用程式配置默認參數和屬性的能力,所述參數和屬性可以用來定義主機平臺的狀態和代表服務提供者的用戶應用程式的狀態。
[0034]主機作業系統200還包括第三方代碼206。第三方代碼206包括來自授權的服務提供者和/或其它授權的獨立軟體供應商(ISV)的代碼。第三方代碼206可以稱為代理,並且更具體地,可以稱為測量可下載代理208。向服務提供者提供有標準SDK (軟體開發工具包),以在第三方代碼206的存儲器區域內實現並安裝它們的測量可下載代理208。因此,測量可下載代理208可以是服務提供者特定的。它們被用來測量服務提供者特定的用戶應用程式。例如,如前所示,用於Netflix的用戶應用程式接口是Netflix媒體播放器。用於Netflix的第三方代碼是測量Netflix媒體播放器的測量可下載代理(即,用於Netflix媒體播放器的檢驗器代碼,用來確定Netflix媒體播放器代碼在正確地操作,沒有被修改或損害)。測量可下載代理還被用來測量某些平臺特定屬性,例如OS版本、反病毒軟體版本信息以及適當的功能硬體,並且用來確保將數據傳送到服務提供者的伺服器的代理的完整性。
[0035]圖3是說明根據本發明實施例的用於基於平臺的可信性驗證服務的示例性代理執行環境(AEE) 118的框圖。在本發明的實施例中,代理執行環境(AEE) 118監控並測量受保護的主機軟體代理,例如在主機平臺100上執行的用戶應用程式和第三方代碼,從而使得可以防止修改和/或惡意終止這些軟體程序。AEE118還測量關鍵的作業系統組件,該關鍵的作業系統組件表明整個作業系統的狀態及作業系統提供的服務。AEE118可以測量某些平臺特定屬性,例如作業系統版本、反病毒程序版本以及平臺上安裝的其它軟體程序的版本。
[0036]在本發明的實施例中,可以由代理執行環境(AEE) 118直接監控軟體程序和第三方代碼206。本發明的實施例通過採用AEEl 18檢驗第三方代碼代理206的方式來使用「對檢驗器進行檢驗」的方法。例如,現在使用反病毒軟體來檢測、移除和阻止平臺上的間諜軟體與病毒,但是誰來檢驗反病毒軟體的完整性呢?在本發明的實施例中,AEE118可以用來檢驗反病毒軟體的完整性。因此,在該實例中,反病毒軟體是檢驗器,並且AEE118是用來「對檢驗器進行檢驗」的檢驗模塊。
[0037]如前所示,AEEl 18可以與作業系統200隔離,以提供能夠在作業系統200外部獲得高級測量的封閉的測量系統,以驗證主機平臺(100或130)上的任意軟體組件,包括來自服務提供者的軟體組件。因此,將AEE118與0S200隔離是重要的,這樣使得AEE118能夠具有自己的私有區域,其與0S200相分離,用於存儲不能被0S200損害的數據和運行時信息。
[0038]AEE118通過將存儲的完整性清單(integrity manifest)與運行時的完整性清單進行比較來確保任意軟體組件(包括第三方代碼206)的完整性。軟體程序的身份可以用兩種屬性來定義:第一,將程序加載到存儲器中時發生的重定位修正(relocation fix_up)的列表;第二,代理籤名。代理籤名包括可以涵蓋程序的可執行代碼存儲、靜態配置數據、動態配置數據以及重定位修正的列表的完整性檢驗值(ICV)或測試值/身份測試/驗證值。重定位修正可以被描述為是指應用於程序的源中的位置的偏移,該偏移基於程序被加載到存儲器中的位置來定位具有可變位置的程序/例程/函數。總的來說,重定位修正的列表和ICV可以稱為軟體程序的身份。當它們被一同存儲或使用時,它們可以被稱為軟體程序的「完整性清單」。
[0039]在一個實施例中,完整性檢驗可以包括生成涵蓋表示代理或軟體程序的身份的所有區域的加密散列值。代理或軟體程序的身份可以包括可執行代碼、靜態配置數據以及重定位修正。代理或軟體的身份的各種組件可以用來生成特定的完整性檢驗值(lev)。ICV被包括在代理或軟體程序的完整性清單中,並且可以被驗證以確定代理/軟體程序的身份和完整性。將計算的散列值與代理/軟體程序的已知/期望值(即,原始的完整性清單)進行比較,所述已知/期望值可以在製造該代理時已經生成。
[0040]在一個實施例中,可以用加密散列算法生成ICV。該算法可以用來生成存儲在代理/軟體程序的完整性清單中的一個或多個ICV。存儲在代理/軟體程序的完整性清單中的ICV可以稱為「原始ICV」。本文中也可以將原始ICV稱為「已知良好的」ICV。AEE118可以使用與用來創建原始ICV的加密散列算法一樣的算法來生成ICV,以與原始ICV進行比較。所計算的ICV與已知良好的ICV或原始ICV進行比較。如果這些ICV匹配,那麼代理/軟體程序未被修改。如果計算的ICV中存在差異,則代理/軟體程序被AEE118確定為已被修改,並且可以報告差異。
[0041]除了 ICV之外,完整性清單可以包括涵蓋ICV的加密籤名。完整性清單籤名可以由軟體製造者/開發者創建,並與作為軟體的一部分的完整性清單一起存儲。或者,可以在安裝軟體程序時從製造者生成和/或接收籤名,並將其作為程序的一部分進行存儲。該籤名可以是軟體程序各部分的生成的ICV的加密散列。在一個實施例中,軟體開發者可以用公私密鑰對中的私鑰執行加密散列。因此,軟體開發者可以創建並存儲完整性清單的籤名,然後,諸如AEE118的另一實體可以用軟體開發者的公鑰來驗證該籤名。通過驗證完整性清單的籤名,AEE118可以假設完整性清單中的所有值都是正確的,並將完整性清單的ICV用作由AEEl 18或另一實體進行的驗證的期望值。
[0042]AEEl 18還具有對重要的系統表的訪問權,例如,系統服務描述符表、中斷描述符表以及輸入地址表。利用對這些表的特許訪問,AEEl 18可以確保第三方代碼做出的系統調用被翻譯成正確的內核代碼,而不會被翻譯成根套件(rootkit)代碼通過鉤子技術進行的任何函數調用。
[0043]AEEl 18包括代理執行完整性檢驗器302、證書管理器306以及事務管理器308。
[0044]代理執行完整性檢驗器302持續監視主機作業系統200上的第三方代碼206的存儲器區域以及該區域內安裝的任何軟體組件。代理執行完整性檢驗器302包括清單管理器304。清單管理器304維護第三方代碼306和所述區域中任何軟體代理的散列值的儲存庫。清單管理器304還可以與遠程伺服器(例如遠程伺服器122)建立安全信道,以當未在本地存儲完整性清單時獲取其第三方代碼的完整性清單。當服務提供者發出測量和驗證請求時,代理執行完整性檢驗器306聯合清單管理器304通過以下步驟來執行測量和驗證:測量客戶端平臺的操作狀態,確定運行時完整性清單以及執行如上所述的完整性清單比較。
[0045]證書管理器306維護證書存儲。由證書管理器306維護的密鑰/證書的列表包括
(I)用於AEE188的公開密鑰對(當製造硬體(AEEpk)時熔合或者在消費者激活之後生成)以及(2)由服務提供者發布的服務證明密鑰(SCK),用來保證客戶端和服務提供者之間的協議是適當的,並且在認證第三方代碼206中運行的代理時使用所述協議。證書管理器306還提供用於證書的撤銷和更新的處理。[0046]事務管理器308指示主機處理器102執行附加操作,以在AEE118和由主機處理器102執行的任何事務之間形成綁定。
[0047]在一個實施例中,事務管理器308和主機處理器102之間的通信鏈路A可能涉及到現有處理器微碼的擴展。可以定義新的處理器寄存器,其可以用來監視主機存儲器的特定區域(例如存儲器類型範圍寄存器(MTRR)),並且如果這些區域被修改,則可以向AEE118發送警報。
[0048]如前所示,本發明的實施例使得服務提供者能夠請求客戶端平臺的測量和驗證,以確保在客戶端平臺上運行的服務提供者的用戶應用程式未受損害,並且它們的服務不能被竊取。許多在線商業需要這種服務來防止對它們的服務進行電腦化盜竊。例如,用戶從Netflix.com租賃電影,以在用戶的客戶端平臺上的Netflix媒體播放器中觀看該電影。然而,如果用戶的用於觀看電影的客戶端平臺(即Netflix媒體播放器)被惡意的視頻截取者損害,則能夠在未從Netflix.com租賃電影的情況下,從Netflix媒體播放器竊取電影。本發明的實施例提供所有必要的組件來測量和驗證客戶端平臺,包括測量服務提供者的用戶應用程式,以保證用戶應用程式未被損害。例如,利用本發明的實施例,Netflix.com可以請求測量和驗證,以確保正在播放電影的Netflix媒體播放器未被損害,並且因此可以保證電影不會被惡意的視頻截取者竊取。
[0049]因此,本發明的實施例使得網際網路或提供服務的任何其它網絡上的多方能夠在沒有平臺上的額外開銷的情況下,以可信方式查明平臺的狀況。如下面參照圖4所示出的,本發明的實施例還使得授權的服務僅能查明狀況報告的有效性。本發明的實施例還是OS不可知的,並且提供保護以免受平臺的惡意的授權擁有者和平臺上的惡意代碼的侵害。
[0050]圖4是描述根據本發明實施例的用於基於平臺的可信性驗證服務的示例性方法的流程圖400。本發明並不限於本文參照流程圖400所描述的實施例。相反,在閱讀本文提供的指導後,對於相關領域技術人員來說顯而易見的是:其它功能流程圖也在本發明的範圍內。處理在402處開始,其中,處理立即前進到404。
[0051]在可以驗證可信性之前,必須首先建立可信性。換言之,在AEE可以對檢驗器(SP第三方代理)進行檢驗之前,必須在AEE和第三方代理之間建立可信性。為了建立這種可信性,必須將第三方代理的證書提供給AEE。因此,在404處,通過AEE來執行證書提供。證書提供在本領域是熟知的。如前所示,證書管理器維護證書存儲。由服務提供者發布服務證明密鑰(SCK),以保證在服務提供者向客戶端提供服務之前,服務提供者和客戶端之間的協議是適當的。如果已經規定了服務提供者,則應該已經用證書管理器存儲了服務證明密鑰。然後,服務證明密鑰(SCK)可以用來認證第三方代理。
[0052]一旦在406處主機平臺訪問來自服務提供者的網際網路服務,主機平臺就在408處從對應的服務提供者接收對於平臺測量和驗證的請求。不希望在主機已經被損害的情況下被該主機損害的服務提供者在向該主機平臺提供任何服務之前發出該請求。
[0053]響應於來自服務提供者的請求,在410處,主機平臺測量代理(B卩,代表服務提供者的第三方代碼)請求AEE為該服務提供者執行平臺測量和驗證。平臺測量和驗證包括測量第三方代碼的狀態,以及測量表明整個作業系統的狀態和其提供的服務的關鍵的作業系統組件。
[0054]在412處,AEE的清單管理器執行與服務提供者相關聯的第三方代碼的完整性清單比較。為了執行清單比較,清單管理器必須首先執行如上所述的第三方代碼的運行時完整性清單計算。講運行時完整性清單與存儲在清單管理器中的原始完整性清單進行比較。在一個實施例中,如果原始完整性清單未存儲在清單管理器中,則如上所述,可以從服務提供者獲取原始完整性清單。
[0055]如果原始完整性清單和運行時完整性清單不等同,或者如果客戶端平臺的整個作業系統狀態不令人滿意,則在414處,將不認為主機平臺狀況是良好的,並且AEE將在416處向服務提供者發送故障通知。故障通知使得服務提供者知道主機平臺已被損害。在接收到該通知之後,服務提供者必須決定採取什麼行動。
[0056]如果原始完整性清單和運行時完整性清單等同,並且客戶端平臺的整體的作業系統狀態令人滿意,則在414處,認為主機平臺狀況是良好的,並且在418處,AEE可以對該平臺狀況進行籤名,並向服務提供者發送許可。
[0057]在420處,因為已經使服務提供者確信主機平臺的作業系統狀態和該服務提供者的第三方代碼未受損害,所以主機平臺可以從服務提供者接收服務。
[0058]本發明實施例的某些方面可以使用硬體、軟體或它們的組合來實現,並且可以在一個或多個計算機系統或其它處理系統中實現。實際上,在一個實施例中,所述方法可以用在可編程機器上執行的程序來實現,所述可編程機器例如是移動或固定計算機、個人數字助理、機頂盒、蜂窩電話和尋呼機,以及其它可以包括至少一個處理器、可由所述處理器讀取的存儲介質(包括易失性和非易失性存儲器和/或存儲元件)、至少一個輸入設備和一個或多個輸出設備的電子設備。程序代碼被應用到使用輸入設備輸入的數據,以執行所描述的功能並生成輸出信息。輸出信息可以應用到一個或多個輸出設備。本領域的普通技術人員可以意識到,本發明的實施例可以用各種計算機系統來實現,包括多處理器系統、微型計算機、大型計算機等。
[0059]每個程序可以以高級的過程或面向對象程式語言來實現,以與處理系統通信。然而,如果需要,程序可以以彙編或機器語言來實現。在任何情況下,所述語言可以被編譯或解釋。
[0060]程序指令可以被用來使得用所述指令編程的通用或專用處理系統執行本文描述的方法。或者,所述方法可以由包含用於執行所述方法的硬連線邏輯的特定硬體組件來執行,或由編程的計算機組件和定製的硬體組件的任何組合來執行。本文描述的方法可以作為包括存儲有指令的機器可讀介質在內的製品或電腦程式產品來提供,所述指令可以用來編程處理系統或其它電子設備以執行所述方法。本文使用的術語「機器可讀介質」或「機器可訪問介質」應該包括能夠存儲或編碼指令序列的任何介質,所述指令序列由機器執行並且使所述機器執行本文所描述的方法中的任何一個。因此,術語「機器可讀介質」或「機器可訪問介質」應該包括但不限於:固態存儲器、光或磁碟以及編碼數據信號的載波。此外,本領域中普遍地以一種形式或另一種形式(例如程序、過程、進程、應用程式、模塊、邏輯等)來將軟體表述為採取動作或導致結果。這種表達僅僅是表述由處理系統執行軟體而導致處理器執行動作或產生結果的簡便方式。
[0061]儘管上面已經描述了本發明的各種實施例,但是應該理解,僅通過實例而非限制的方式提出了這些實施例。本領域技術人員將理解,在不偏離所附權利要求中定義的本發明的精神和範圍的情況下,可以對各實施例的形式和細節做出各種改變。因此,本發明的廣度和範圍不應該受任何上述示例性的實施例的限制,而應該根據所附權利要求及它們的等價物來定義。
【權利要求】
1.一種用於執行可信性驗證的裝置,包括客戶端設備,其包括: 用於執行第三方證書提供的模塊,以在所述客戶端設備和服務提供者之間建立可信性; 用於向所述服務提供者發送對於訪問由所述服務提供者提供的服務的請求的模塊; 用於從所述服務提供者接收對於驗證所述客戶端設備的平臺狀況信息的請求的模塊,由所述服務提供者提供給所述客戶端設備的請求是響應於從所述客戶端設備到所述服務提供者的對於訪問由所述服務提供者提供的服務的請求的,所述平臺狀況包括表明駐留在所述客戶端設備上的作業系統的狀態的測量值; 用於響應於來自所述服務提供者的請求執行操作的模塊,包括用於建立與所述服務提供者的安全信道的模塊,所述安全信道配置為便於從所述服務提供者獲取第三方代碼的完整性清單; 用於收集與所述客戶端設備上的所述平臺狀況信息有關的一個或多個測量值的模塊; 用於將所述一個或多個測量值與一個或多個預先知道的良好值進行比較的模塊;用於基於所述比較確定所述客戶端設備具有良好的平臺狀況的模塊;以及用於響應於從所述服務提供者接收的所述請求來向所述服務提供者發送所述平臺狀況信息的許可的模塊;並且 用於基於所述許可的發送來從所述服務提供者接收所述服務的模塊,其中,用於執行第三方證書提供的模塊和 用於響應於來自所述服務提供者的請求執行操作的模塊與所述作業系統隔離並且被配置為包括用於存儲與所述平臺狀況信息相關的測量值的存儲器區域,其不能被所述作業系統訪問。
2.如權利要求1所述的裝置,其中: 所述用於發送請求的模塊還用於向另一服務提供者發送對於另一服務的另一請求;所述用於接收驗證請求的模塊還用於從所述另一服務提供者接收對於驗證所述平臺狀況信息的另一請求; 所述用於確定所述客戶端設備具有良好的平臺狀況的模塊還用於確定所述客戶端設備具有較差的平臺狀況; 所述用於向所述服務提供者發送所述平臺狀況信息的許可的模塊還用於向所述另一服務提供者發送故障通知,其中,所述故障通知使所述另一服務提供者知道所述客戶端設備已被損害。
3.如權利要求1所述的裝置,還包括:用於在所述向服務提供者發送請求之前,規定所述服務提供者的模塊。
4.如權利要求1所述的裝置,還包括:用於在所述向所述服務提供者發送許可之前,對指示所述許可的所述平臺狀況信息進行籤名的模塊。
5.如權利要求1所述的裝置,其中,所述用於收集一個或多個測量值的模塊包括: 用於測量指示整個作業系統的狀態的關鍵的作業系統組件和應用程式的模塊;以及 用於生成完整性清單的模塊。
6.如權利要求5所述的裝置,其中,所述用於生成完整性清單的模塊包括: 用於對代表所述服務提供者的所述第三方代碼執行運行時完整性清單計算的模塊;以及 其中,所述用於比較所述一個或多個測量值的模塊包括: 用於如果所存儲的所述服務提供者的完整性清單存在於所述客戶端設備上,則將所述運行時完整性清單與所存儲的完整性清單進行比較的模塊。
7.如權利要求6所述的裝置,其中,所述用於比較所述一個或多個測量值的模塊還包括: 用於如果存儲的完整性清單不存在,則經由所述安全信道從所述服務提供者獲取所述第三方代碼的完整性清單的模塊;以及 用於將所述運行時完整性清單與所述獲取的完整性清單進行比較的模塊。
8.如權利要求1所述的裝置,還包括,用於對所述客戶端設備上的代表所述服務提供者的所述第三方代碼進行認證的模塊。
9.如權利要求1所述的裝置,其中,所述用於收集測量值的模塊和所述用於比較測量值的模塊是作業系統(OS)不可知的。
10.如權利要 求1所述的裝置,其中,所述服務提供者包括授權的服務提供者。
【文檔編號】G06F21/57GK103763331SQ201410056443
【公開日】2014年4月30日 申請日期:2009年6月30日 優先權日:2008年6月30日
【發明者】D·N·科拉爾孫達爾, H·科斯拉維, D·德拉姆, D·達爾, P·德萬 申請人:英特爾公司

同类文章

一種新型多功能組合攝影箱的製作方法

一種新型多功能組合攝影箱的製作方法【專利摘要】本實用新型公開了一種新型多功能組合攝影箱,包括敞開式箱體和前攝影蓋,在箱體頂部設有移動式光源盒,在箱體底部設有LED脫影板,LED脫影板放置在底板上;移動式光源盒包括上蓋,上蓋內設有光源,上蓋部設有磨沙透光片,磨沙透光片將光源封閉在上蓋內;所述LED脫影

壓縮模式圖樣重疊檢測方法與裝置與流程

本發明涉及通信領域,特別涉及一種壓縮模式圖樣重疊檢測方法與裝置。背景技術:在寬帶碼分多址(WCDMA,WidebandCodeDivisionMultipleAccess)系統頻分復用(FDD,FrequencyDivisionDuplex)模式下,為了進行異頻硬切換、FDD到時分復用(TDD,Ti

個性化檯曆的製作方法

專利名稱::個性化檯曆的製作方法技術領域::本實用新型涉及一種檯曆,尤其涉及一種既顯示月曆、又能插入照片的個性化檯曆,屬於生活文化藝術用品領域。背景技術::公知的立式檯曆每頁皆由月曆和畫面兩部分構成,這兩部分都是事先印刷好,固定而不能更換的。畫面或為風景,或為模特、明星。功能單一局限性較大。特別是畫

一種實現縮放的視頻解碼方法

專利名稱:一種實現縮放的視頻解碼方法技術領域:本發明涉及視頻信號處理領域,特別是一種實現縮放的視頻解碼方法。背景技術: Mpeg標準是由運動圖像專家組(Moving Picture Expert Group,MPEG)開發的用於視頻和音頻壓縮的一系列演進的標準。按照Mpeg標準,視頻圖像壓縮編碼後包

基於加熱模壓的纖維增強PBT複合材料成型工藝的製作方法

本發明涉及一種基於加熱模壓的纖維增強pbt複合材料成型工藝。背景技術:熱塑性複合材料與傳統熱固性複合材料相比其具有較好的韌性和抗衝擊性能,此外其還具有可回收利用等優點。熱塑性塑料在液態時流動能力差,使得其與纖維結合浸潤困難。環狀對苯二甲酸丁二醇酯(cbt)是一種環狀預聚物,該材料力學性能差不適合做纖

一種pe滾塑儲槽的製作方法

專利名稱:一種pe滾塑儲槽的製作方法技術領域:一種PE滾塑儲槽一、 技術領域 本實用新型涉及一種PE滾塑儲槽,主要用於化工、染料、醫藥、農藥、冶金、稀土、機械、電子、電力、環保、紡織、釀造、釀造、食品、給水、排水等行業儲存液體使用。二、 背景技術 目前,化工液體耐腐蝕貯運設備,普遍使用傳統的玻璃鋼容

釘的製作方法

專利名稱:釘的製作方法技術領域:本實用新型涉及一種釘,尤其涉及一種可提供方便拔除的鐵(鋼)釘。背景技術:考慮到廢木材回收後再加工利用作業的方便性與安全性,根據環保規定,廢木材的回收是必須將釘於廢木材上的鐵(鋼)釘拔除。如圖1、圖2所示,目前用以釘入木材的鐵(鋼)釘10主要是在一釘體11的一端形成一尖

直流氧噴裝置的製作方法

專利名稱:直流氧噴裝置的製作方法技術領域:本實用新型涉及ー種醫療器械,具體地說是ー種直流氧噴裝置。背景技術:臨床上的放療過程極易造成患者的局部皮膚損傷和炎症,被稱為「放射性皮炎」。目前對於放射性皮炎的主要治療措施是塗抹藥膏,而放射性皮炎患者多伴有局部疼痛,對於止痛,多是通過ロ服或靜脈注射進行止痛治療

新型熱網閥門操作手輪的製作方法

專利名稱:新型熱網閥門操作手輪的製作方法技術領域:新型熱網閥門操作手輪技術領域:本實用新型涉及一種新型熱網閥門操作手輪,屬於機械領域。背景技術::閥門作為流體控制裝置應用廣泛,手輪傳動的閥門使用比例佔90%以上。國家標準中提及手輪所起作用為傳動功能,不作為閥門的運輸、起吊裝置,不承受軸向力。現有閥門

用來自動讀取管狀容器所載識別碼的裝置的製作方法

專利名稱:用來自動讀取管狀容器所載識別碼的裝置的製作方法背景技術:1-本發明所屬領域本發明涉及一種用來自動讀取管狀容器所載識別碼的裝置,其中的管狀容器被放在循環於配送鏈上的文檔匣或託架裝置中。本發明特別適用於,然而並非僅僅專用於,對引入自動分析系統的血液樣本試管之類的自動識別。本發明還涉及專為實現讀