TWI744797B - 用於將安全客體之安全金鑰繫結至硬體安全模組之電腦實施方法、系統及電腦程式產品 - Google Patents
用於將安全客體之安全金鑰繫結至硬體安全模組之電腦實施方法、系統及電腦程式產品 Download PDFInfo
- Publication number
- TWI744797B TWI744797B TW109104545A TW109104545A TWI744797B TW I744797 B TWI744797 B TW I744797B TW 109104545 A TW109104545 A TW 109104545A TW 109104545 A TW109104545 A TW 109104545A TW I744797 B TWI744797 B TW I744797B
- Authority
- TW
- Taiwan
- Prior art keywords
- security
- security module
- hardware security
- hardware
- interface control
- Prior art date
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/30—Authentication, i.e. establishing the identity or authorisation of security principals
- G06F21/44—Program or device authentication
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/57—Certifying or maintaining trusted computer platforms, e.g. secure boots or power-downs, version controls, system software checks, secure updates or assessing vulnerabilities
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/60—Protecting data
- G06F21/64—Protecting data integrity, e.g. using checksums, certificates or signatures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/71—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer to assure secure computing or processing of information
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/70—Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
- G06F21/86—Secure or tamper-resistant housings
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0861—Generation of secret information including derivation or calculation of cryptographic keys or passwords
- H04L9/0877—Generation of secret information including derivation or calculation of cryptographic keys or passwords using additional device, e.g. trusted platform module [TPM], smartcard, USB or hardware security module [HSM]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/088—Usage controlling of secret information, e.g. techniques for restricting cryptographic keys to pre-authorized uses, different access levels, validity of crypto-period, different key- or password length, or different strong and weak cryptographic algorithms
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/08—Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
- H04L9/0894—Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
- H04L9/0897—Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage involving additional devices, e.g. trusted platform module [TPM], smartcard or USB
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F9/00—Arrangements for program control, e.g. control units
- G06F9/06—Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
- G06F9/44—Arrangements for executing specific programs
- G06F9/455—Emulation; Interpretation; Software simulation, e.g. virtualisation or emulation of application or operating system execution engines
- G06F9/45533—Hypervisors; Virtual machine monitors
- G06F9/45558—Hypervisor-specific management and integration aspects
- G06F2009/45587—Isolation or security of virtual machine instances
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/03—Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
- G06F2221/034—Test or assess a computer or a system
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- General Engineering & Computer Science (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Mathematical Physics (AREA)
- Health & Medical Sciences (AREA)
- Bioethics (AREA)
- General Health & Medical Sciences (AREA)
- Storage Device Security (AREA)
Abstract
本發明提供一種方法、電腦程式產品及一種系統,其中一安全介面控制件組態一硬體安全模組以供一安全客體獨佔地使用。該安全介面控制件(「SC」)自藉由一超管理器管理之客體中的一給定客體獲得組態該硬體安全模組(HSM)之一組態請求(經由該超管理器)。該SC判定該HSM是否已組態至該一或多個客體中之一特定客體,但基於判定該HSM未組態至該特定客體且該特定客體為一安全客體,該SC藉由將客體對該HSM之存取獨佔地限於該給定客體來阻止建立該HSM之一組態。該SC藉由利用該給定客體之一秘密使該給定客體登入該HSM。該SC自該HSM獲得一工作階段碼且存留該工作階段碼。
Description
在現今的電腦系統及資訊輸送網路中,密碼編譯元件為重要的技術組件。資訊可用密碼編譯安全形式儲存或傳輸,以便避免對所儲存或傳輸之資訊的未經授權存取。在一些狀況下,可使用基於純軟體之技術,且在其他狀況下,可使用硬體支援及安全特定元件來執行此資料保護。在一些狀況下,此等特定元件被命名為硬體安全安全模組(HSM),其可用作電腦或資訊傳輸系統之部分。此硬體安全模組可包括特定電路系統,以便提供用於資料加密及資料解密之功能。該功能亦可包括產生及儲存供客體系統使用之密碼編譯金鑰。
HSM含有未經授權方可能無法存取之主金鑰。此等主金鑰用以對可用於HSM之使用者的金鑰加密(亦即,包裝)。由HSM主金鑰包裝之此類金鑰被稱作安全金鑰。HSM為防篡改的且保護秘密免於未經授權存取(例如,未排程之實體插入、實體滲透等)。HSM可經指派給諸如虛擬機器(VM)之各種虛擬資源,且在虛擬環境中,HSM可能不知曉其自一個VM至另一VM之重新指派。
VM指派之靈活性可造成安全問題,此係因為在高度敏感之
代管資訊技術(IT)環境中,較嚴格的安全協定將支援:保護受信任使用者(其利用具有安全金鑰(由HSM之主金鑰包裝)之客體)以免不受信任使用者使用安全金鑰,即使客體自身被攻擊或以其他方式受危害且安全金鑰及其他資料被盜。
經由提供用於將安全客體之安全金鑰繫結至硬體安全模組的方法來克服先前技術之缺點且提供額外優點。該方法包括例如:藉由通信耦接至超管理器及硬體安全模組之安全介面控制件組態硬體安全模組,以供由超管理器管理之安全客體獨佔地使用,該組態包含:藉由安全介面控制件經由超管理器自藉由超管理器管理之一或多個客體中的給定客體獲得組態硬體安全模組之組態請求;藉由安全介面控制件判定硬體安全模組是否已組態至一或多個客體中之特定客體,其中特定客體及給定客體包含一或多個客體中之不同客體;基於判定硬體安全模組未經組態至特定客體,藉由安全介面控制件而藉由評估給定客體之後設資料來判定給定客體包含安全客體;基於判定給定客體包含安全客體,藉由安全介面控制件而藉由將客體對硬體安全模組之存取獨佔地限於一或多個客體中之給定客體來阻止建立硬體安全模組之組態;藉由安全介面控制件使給定客體登入硬體安全模組,其中登入硬體安全模組包含利用給定客體之秘密,其中後設資料包含秘密;基於登入硬體安全模組,藉由安全介面控制件自硬體安全模組獲得工作階段碼;及藉由安全介面控制件存留工作階段碼。
經由提供用於將安全客體之安全金鑰繫結至硬體安全模組的電腦程式產品來克服先前技術之缺點且提供額外優點。該電腦程式產品包含可藉由處理電路讀取且儲存指令之儲存媒體,該等指令由處理電路執
行以用於執行方法。該方法包括例如:藉由通信耦接至超管理器及硬體安全模組之一或多個處理器組態硬體安全模組以供由超管理器管理之安全客體獨佔地使用,該組態包含:藉由一或多個處理器經由超管理器自藉由超管理器管理之一或多個客體中的給定客體獲得組態硬體安全模組之組態請求;藉由一或多個處理器判定硬體安全模組是否已組態至一或多個客體中之特定客體,其中特定客體及給定客體包含一或多個客體中之不同客體;基於判定硬體安全模組未經組態至特定客體,藉由安全介面控制件而藉由評估給定客體之後設資料來判定給定客體包含安全客體;基於判定給定客體包含安全客體,藉由一或多個處理器而藉由將客體對硬體安全模組之存取獨佔地限於一或多個客體中之給定客體來阻止建立硬體安全模組之組態;藉由一或多個處理器使給定客體登入硬體安全模組,其中登入硬體安全模組包含利用給定客體之秘密,其中後設資料包含秘密;基於登入硬體安全模組,藉由一或多個處理器自硬體安全模組獲得工作階段碼;及藉由一或多個處理器存留工作階段碼。
經由提供用於將安全客體之安全金鑰繫結至硬體安全模組的系統來克服先前技術之缺點且提供額外優點。該系統包含記憶體、與記憶體通信之一或多個處理器及可由一或多個處理器經由記憶體執行以執行方法的程式指令。該方法包括例如:藉由通信耦接至超管理器及硬體安全模組之一或多個處理器組態硬體安全模組以供由超管理器管理之安全客體獨佔地使用,該組態包含:藉由一或多個處理器經由超管理器自藉由超管理器管理之一或多個客體中的給定客體獲得組態硬體安全模組之組態請求;藉由一或多個處理器判定硬體安全模組是否已組態至一或多個客體中之特定客體,其中特定客體及給定客體包含一或多個客體中之不同客體;
基於判定硬體安全模組未經組態至特定客體,藉由安全介面控制件而藉由評估給定客體之後設資料來判定給定客體包含安全客體;基於判定給定客體包含安全客體,藉由一或多個處理器而藉由將客體對硬體安全模組之存取獨佔地限於一或多個客體中之給定客體來阻止建立硬體安全模組之組態;藉由一或多個處理器使給定客體登入硬體安全模組,其中登入硬體安全模組包含利用給定客體之秘密,其中後設資料包含秘密;基於登入硬體安全模組,藉由一或多個處理器自硬體安全模組獲得工作階段碼;及藉由一或多個處理器存留工作階段碼。
本文中亦描述及主張與一或多個態樣有關之方法及系統。另外,本文中亦描述及可能主張與一或多個態樣有關之服務。舉例而言,在本發明之一些實施例中,存留包含將工作階段碼與NULL工作階段碼之關聯儲存於安全介面控制件中之關聯表中。
在本發明之一些實施例中,客體之後設資料為完整度受保護的,且秘密由使用由安全介面控制件擁有之私用金鑰導出的金鑰加密。私用金鑰可包含給定客體之開機映像的密碼編譯度量。
在本發明之一些實施例中,基於該組態,處理器及/或安全介面控制件將新工作階段碼提供至給定客體,以供給定客體在對硬體安全模組之請求中利用。
在本發明之一些實施例中,提供(藉由處理器及/或安全介面控制件)包含:處理器及/或安全介面控制件攔截來自給定客體之硬體安全模組登入請求,其中硬體安全模組登入請求包含來自給定客體之登入資料;處理器及/或安全介面控制件基於給定客體之秘密產生新登入資料;處理器及/或安全介面控制件向硬體安全模組發出來自給定客體之新硬體
安全模組登入請求,其中新硬體安全模組登入請求包含新登入資料;處理器及/或安全介面控制件自硬體安全模組獲得工作階段碼;基於自硬體安全模組獲得工作階段碼,處理器及/或安全介面控制件產生新工作階段碼;處理器及/或安全介面控制件將來自硬體安全模組之工作階段碼與新工作階段碼之間的關聯儲存於表中;及回應於登入請求,處理器及/或安全介面控制件將新工作階段碼傳輸至給定客體。
在本發明之一些實施例中,處理器及/或安全介面控制件攔截自給定客體至硬體安全模組之請求,其中該請求包含新工作階段碼。處理器及/或安全介面控制件自表獲得與新工作階段碼相關聯之來自硬體安全模組的工作階段碼。處理器及/或安全介面控制件更新來自給定客體之請求以包含新請求,其中新請求包含來自硬體安全模組之工作階段碼而非新工作階段碼。處理器及/或安全介面控制件向硬體安全模組發出新請求。
在本發明之一些實施例中,處理器及/或安全介面控制件自硬體安全模組獲得請求之實現。處理器及/或安全介面控制件向給定客體發出請求之實現。在本發明之一些實施例中,該請求係選自由以下各者組成之群組:硬體安全模組安全金鑰產生請求,及硬體安全模組登出請求。
在本發明之一些實施例中,處理器及/或安全介面控制件自超管理器獲得給定客體已停止之指示。處理器及/或安全介面控制件在表中識別來自硬體安全模組之工作階段碼與新工作階段碼之間的關聯。處理器及/或安全介面控制件基於表利用來自硬體安全模組之工作階段碼而產生一或多個工作階段之清單。處理器及/或安全介面控制件使給定客體自一或多個工作階段登出。
在本發明之一些實施例中,處理器及/或安全介面控制件自超管理器獲得給定客體已停止之指示。處理器及/或安全介面控制件移除組態。
在本發明之一些實施例中,處理器及/或安全介面控制件自超管理器獲得給定客體已停止之指示。處理器及/或安全介面控制件識別存留於硬體安全模組中之對給定客體的參考。處理器及/或安全介面控制件移除參考。
在本發明之一些實施例中,安全介面組件係選自由以下各者組成之群組:韌體、硬體及軟體。
在本發明之一些實施例中,藉由評估給定客體之後設資料而判定給定客體包含安全客體包含處理器及/或安全介面控制件驗證後設資料之現況資訊或類型中之一者。
在本發明之一些實施例中,處理器及/或安全介面控制件利用給定客體之秘密包含處理器及/或安全介面控制件對秘密解密。
在本發明之一些實施例中,解密包含利用由安全介面控制件獨佔地運算之金鑰。
經由本文中所描述之技術實現額外特徵。本文中詳細描述其他實施例及態樣且將其視為所主張態樣之一部分。
10:雲端運算節點
12:電腦系統/伺服器
14:外部裝置
16:處理器/處理單元
18:匯流排
20:網路配接器
22:輸入/輸出(I/O)介面
24:顯示器
28:系統記憶體
30:隨機存取記憶體(RAM)
32:快取記憶體
34:儲存系統
40:程式/公用程式
42:程式模組
50:雲端運算環境
54A:個人數位助理(PDA)或蜂巢式電話/運算裝置
54B:桌上型電腦/運算裝置
54C:膝上型電腦/運算裝置
54N:汽車電腦系統/運算裝置
60:硬體及軟體層
61:大型電腦
62:基於精簡指令集電腦(RISC)架構之伺服器
63:伺服器
64:刀鋒伺服器
65:儲存裝置
66:網路及網路連接組件
67:網路應用程式伺服器軟體
68:資料庫軟體
70:虛擬化層
71:虛擬伺服器
72:虛擬儲存器
73:虛擬網路
74:虛擬應用程式及作業系統
75:虛擬用戶端
80:管理層
81:資源佈建
82:計量及定價
83:使用者入口網站
84:服務等級管理
85:服務等級協議(SLA)規劃及實現
90:工作負載層
91:地圖測繪及導航
92:軟體開發及生命週期管理
93:虛擬教室教育遞送
94:資料分析處理
95:異動處理
96:將安全金鑰繫結至安全客體
100:共用運算環境
110:HSM
120:主金鑰
130:安全金鑰
150:給定客體
160:第二客體
170:竊用金鑰
200:運算環境
210:HSM
215:表
220:主金鑰
225:秘密
230:安全金鑰
240:超管理器
245:表
250:安全客體
265:安全介面控制件
300:工作流程
400:工作流程
500:工作流程
600:工作流程
700:工作流程
800:工作流程
在本說明書之結尾處之申請專利範圍中作為實例特定地指出且清楚地主張一或多個態樣。一或多個態樣之前述內容以及物件、特徵及優點自結合隨附圖式進行之以下詳細描述顯而易見,其中:圖1說明利用硬體安全模組之當前接近所經歷的安全問題;
圖2說明本發明之一些實施例的各種態樣;圖3為說明本發明之一些實施例之某些態樣的工作流程;圖4為說明本發明之一些實施例之某些態樣的工作流程;圖5為說明本發明之一些實施例之某些態樣的工作流程;圖6為說明本發明之一些實施例之某些態樣的工作流程;圖7為說明本發明之一些實施例之某些態樣的工作流程;圖8為說明本發明之一些實施例之某些態樣的工作流程;圖9描繪可用於雲端運算環境中之運算節點的一個實施例;圖10描繪根據本發明之實施例的雲端運算環境;及圖11描繪根據本發明之實施例的抽象模型層。
隨附圖式進一步說明本發明且連同本發明之實施方式一起用以解釋本發明之原理,在隨附圖式中,類似參考編號貫穿分開視圖指相同或功能上類似之元件且隨附圖式併入本說明書中並形成本說明書之一部分。如熟習此項技術者所理解,提供附圖以易於理解且其說明本發明之某些實施例的態樣。本發明不限於圖式中所描繪之實施例。
如熟習此項技術者所理解,如貫穿本申請案所提及之程式碼包括軟體及硬體兩者。舉例而言,在本發明之某些實施例中,程式碼包括固定功能硬體,而其他實施例利用所描述功能性之基於軟體之實施。某些實施例組合兩種類型之程式碼。亦被稱作一或多個程式之程式碼的一個實例在圖9中描繪為具有一組(至少一個)程式模組42之程式/公用程式40可儲存於記憶體28中。
術語「硬體安全模組」或HSM可指示可插入組件或個別地
連接至電腦系統之組件。HSM可使用主金鑰或另一所提供金鑰(例如,客體金鑰)執行加密及解密操作。加密及/或解密可在硬體安全模組上以硬體及軟體或兩者之任何組合執行。資料可藉由硬體安全模組以未經加密方式接收且可在HSM上加密,或反之亦然。
術語「客體系統」可指示例如正在超管理器上之虛擬機器VM中執行的作業系統。可將使用者經指派給客體系統。可能夠將特定密碼編譯金鑰指派給客體系統。可在執行此指派時使用所提及之超管理器。特定密碼編譯金鑰可儲存於HSM上。
術語「內容」可指示任何基於字元之字串。該字串可包含可讀文字或任何其他二進位資料。
術語「資料型樣」基本上可為內容之另一表達。資料型樣可指示可讀字元之字串或可包括二進位資料。在此文件之上下文中,對資料型樣無額外要求。其亦可經預定義、任意選擇或以其他方式判定。
術語「主金鑰」可指示儲存於HSM上之加密/解密金鑰。在此文件之上下文中,可假定,在一個實施例中,主金鑰可能從未傳送出儲存其之硬體安全模組。
術語「客體加密單元」可指示經調適以在客體系統內或作為客體系統之部分或作為由客體系統使用之服務執行加密及/或解密操作的模組。
術語「硬體安全模組加密單元」可指示HSM內之經調適以使用主金鑰或例如客體金鑰之另一所提供金鑰對任何資料型樣加密的模組。因此,「硬體安全模組解密單元」可用於使用主金鑰對例如客體金鑰之任何資料型樣解密或使用例如客體金鑰之另一所提供金鑰對另一資料型
樣解密。
應注意,硬體安全模組(亦即,HSM)可為例如密碼卡。客體系統可例如為運行或執行客體作業系統之虛擬機器,亦即,VM。組態HSM可包括將主金鑰儲存於HSM之記憶體中。
本發明之實施例包括一種電腦實施方法、一種電腦程式產品及一種電腦系統,其包括在至少一個處理電路上執行之程式碼,其將HSM之安全金鑰高效地繫結至屬於特定擁有者之特定客體,使得由HSM保護之資料可僅在可存取HSM之系統內使用。具體而言,如下文更詳細地解釋,在本發明之實施例中,在一或多個處理器上執行之程式碼基於秘密將經組態以使用HSM之安全客體(例如,VM)的安全金鑰繫結至HSM工作階段碼,該秘密以密碼編譯方式連結至安全客體之映像。然而,該秘密並非客體之部分。確切而言,如本文中所描述,秘密作為客體後設資料之部分而經由安全通道(亦即,經加密)獨立地輸送至安全介面控制件(例如,韌體、受信任組件),且以密碼編譯方式連結至客體。該後設資料以密碼編譯方式連結至客體(例如,含有客體映像之簽名),因此一個客體之後設資料無法被誤用為另一客體之後設資料。因此,安全介面控制件可驗證客體及後設資料/秘密屬於彼此。在本發明之一些實施例中,秘密連結至安全客體之開機映像,該安全客體以密碼編譯方式繫結至安全地(完整度及機密性受保護)傳送(例如,且獨立地,經由安全通道)至受信任組件之後設資料。在本發明之一些實施例中,含有秘密之後設資料的部分將由僅安全介面控制件可運算之金鑰加密。
安全客體亦可被稱作客體虛擬機器、虛擬機器及/或虛擬伺服器。在本發明之實施例中,程式碼將秘密作為經提供以啟動安全客體之
映像的安裝後設資料之部分而提供(安全地)至安全介面控制件(例如,韌體、受信任組件)。儘管連結至客體,但秘密作為客體後設資料之部分而經由安全通道(亦即,經加密)獨立地輸送至安全介面控制件,且以密碼編譯方式連結至客體。因此,安全介面控制件可驗證客體及後設資料/秘密屬於彼此。因此,在本發明之一些實施例中,安全客體之後設資料為完整度受保護的,且包括由使用由安全介面控制件擁有之私用金鑰(例如,給定客體之開機映像的密碼編譯度量)導出之金鑰加密的秘密。後設資料無需可由安全客體本身存取。如下文將更詳細地解釋,在本發明之實施例中,受信任組件之程式碼:1)為安全客體保留HSM歷時客體之壽命;2)使用秘密開啟HSM工作階段;3)攔截HSM金鑰產生請求且在使用秘密開啟工作階段時重新發出用以傳回方式接收到之工作階段碼替換所使用之工作階段碼的請求;及4)在安全客體終止時關閉使用秘密開啟之所有工作階段。
圖1為包括HSM 110之共用運算環境100的部分,其說明由本發明之實施例解決的針對HSM相關金鑰安全性之現有方法的問題,因此表明本發明之實施例如何提供比針對HSM中之金鑰安全性之現有方法更有效的方法。如圖1中所說明,HSM含有不可由未經授權方存取之主金鑰120。主金鑰120由HSM之程式碼使用以對金鑰加密(亦即,包裝),HSM之程式碼使得該等金鑰可用於HSM之使用者。由HSM主金鑰120包裝之金鑰被稱作安全金鑰。在圖1中,客體150(guest1、虛擬機器(VM))擁有安全金鑰130,其係由超管理器140自HSM 110提供至客體150。如熟習此項技術者所理解,HSM為防篡改的且保護秘密免於未經授權存取(例如,未排程之實體插入、實體滲透等),然而,客體150不具有相當的安全
性且因此可表示漏洞。在虛擬環境中,因為超管理器140控制安全金鑰130之指派,所以HSM 110可能不知曉其自一個客體(亦即,VM)至另一客體(亦即,VM)之重新指派。因此,若惡意使用者利用第二客體160(guest2)攻擊給定客體150(guest1)且指派給客體150之安全金鑰130由第二客體160存留,則存在安全漏洞。因此,第二客體160可竊用(170)客體150之由超管理器140指派給其的安全金鑰130。此在高度敏感之代管IT環境中尤其成問題,在該等環境中,受代管客體之擁有者希望維持比主機環境之管理員更耐攻擊的安全性。在共用運算環境100中,各種客體可由不同實體擁有,且HSM 110可僅屬於彼等實體中之某些實體。因此,客體擁有者(諸如,指派有安全金鑰130之客體150的擁有者)期望維持其安全金鑰130,其由HSM 110之主金鑰120包裝。此客體擁有者不希望利用共用運算環境100中之資源的不同實體所擁有的不受信任客體使用安全金鑰130。在圖1中,客體及第二客體160具有不同擁有者,且客體150之擁有者希望確保:即使客體150被攻擊,如圖1中所說明,且安全金鑰130及其他資料被竊用(170),其仍無法由除最初指派有安全金鑰130之客體150之擁有者以外的任何擁有者利用。
本發明之實施例與運算密不可分,此至少係因為其有關於解決運算所特有之問題且提供亦在此領域內之技術方法。本發明之實施例將HSM之安全金鑰繫結至屬於特定擁有者之特定客體(例如,VM)。本發明之一些實施例的態樣用以解決的圖1中所說明之問題特定於運算(亦即,未經授權客體能夠存取經授權客體之安全包裝金鑰)。鑒於問題及方法兩者特定於運算,本發明之實施例與運算密不可分。
本發明之實施例提供針對圖1中所說明之金鑰安全性問題的
優於現有方法之顯著優點。舉例而言,一些現有方法藉由提供執行客體之內容脈絡而超管理器不能夠存取由客體使用之記憶體及/或機密地安裝此安全客體(亦即,使用公用金鑰保護用於客體之安裝資料內的秘密,僅受信任組件、硬體(HW)及/或韌體(FW)組件可存取私用金鑰)來提供對金鑰安全性之支援。在本發明之一些實施例中,安全介面控制件(其亦可理解為受信任組件)為硬體、韌體或其組合。此方法添加額外複雜層,且仍不將客體擁有者繫結至給定安全金鑰。其他方法建立個別工作階段以將安全金鑰繫結工作階段碼(其取決於工作階段登入資料),但此方法消除使給定金鑰由客體連續使用之功能性,從而損害在利用安全金鑰之情形中涉及客體之處理的效率。另外,一些方法試圖將HSM繫結至作業系統(OS)映像。此等方法具有在本發明之實施例中未發現的特定缺陷:1)當開機裝置改變時,繫結被破壞;及/或2)HSM配接器可僅在已插入之後進行檢查。
圖2說明諸如共用運算環境之運算環境200的各種態樣,在該運算環境中實施本發明之一些實施例的態樣。如圖1中,HSM 210包括主金鑰220。又,超管理器240與包括安全客體250之客體(例如,VM)互動,該安全客體理解為安全係因為其安全金鑰230(用主金鑰220包裝)繫結至HSM 210。除超管理器240以外,在本發明之實施例中,在此非限制性實例中說明為安全介面控制件265但在本發明之其他實施例中亦可為安全介面控制件的受信任組件支援對HSM 210之傳遞存取(passthrough access)的組態。具體而言,在本發明之一些實施例中,安全介面控制件265強制實行以下策略:一旦傳遞存取經組態用於安全客體250,則在彼安全客體250之壽命期間,HSM 210無法組態(暫時)給系統之另一客體或組件。在本發明之一些實施例中,安全介面控制件265基於秘密225向HSM
210開啟工作階段且將安全客體250之所有安全金鑰230繫結至彼秘密225,該秘密為以密碼編譯方式連結至客體之客體後設資料的部分,其可含於安全客體之安裝資料(例如,安全執行(SE)標頭)中。秘密225以密碼編譯方式連結至安全客體250之映像,且作為經提供以啟動安全客體250之映像的安裝後設資料之部分而安全地提供至安全介面控制件265。秘密225並非安全客體250之部分,且作為客體後設資料之部分而輸送至安全介面控制件265(經由安全通道,亦即,經加密)並以密碼編譯方式連結至安全客體250。因此,安全介面控制件265可驗證安全客體250及後設資料/秘密225屬於彼此。安全客體250之後設資料為完整度受保護的且包括秘密225,該秘密可由使用由安全介面控制件265擁有之私用金鑰(例如,給定客體之開機映像的密碼編譯度量)而導出的金鑰加密。
圖3為說明本發明之一些實施例之各種態樣的工作流程300。僅出於說明之目的,參考圖2之運算環境200說明工作流程300。具體而言,圖3為說明將安全客體250(具有由HSM主金鑰220包裝之至少一個安全金鑰230的客體)繫結至HSM 210的工作流程300。如前所述,許多繫結係在受信任組件(在圖2中,安全介面控制件265)之輔助下實現。在本發明之實施例中,安全介面控制件265之程式碼支援對HSM 210之傳遞存取的組態。為支援此態樣,在一或多個處理器上執行之程式碼組態安全介面控制件265(亦即,安全介面控制件265之程式碼)以提供某一功能性。
圖3之工作流程300說明由經組態安全介面控制件265提供之功能性。具體而言,工作流程300說明本發明之一些實施例的某些態樣,其中基於將HSM秘密包括於安全客體之後設資料中,受信任組件(例如,安全介面控制件265(為硬體、韌體或其組合之安全介面控制件))基於
HSM秘密而建立用於安全客體之工作階段。因此,來自安全客體的所建立之所有工作階段(亦即,經由登入起始)、金鑰產生請求及工作階段終止請求(亦即,經由登出起始)被安全介面控制件攔截。在攔截此等請求後,安全介面控制件之程式碼重新發出請求,該等請求最初包括由HSM提供之標準登入資料及工作階段碼,其中請求包括登入資料(包括HSM秘密)及由安全介面控制件產生之工作階段碼。因此,程式碼用包括HSM秘密之登入資料替換請求中之標準登入資料,且程式碼用由安全介面控制件產生之工作階段碼替換由HSM提供之工作階段碼。
參看圖3,為說明起見,以任意次序呈現工作流程之某些態樣。儘管以一定次序描述,但為易於理解,安全介面控制件之程式碼向HSM開啟預設工作階段以用於未(尚未)繫結至與HSM之任何工作階段之安全客體的安全金鑰(310)與程式碼判定安全客體已終止(370)之間的所有態樣為事件循環,其中剩餘態樣(程式碼攔截安全客體之每一HSM登入工作階段(320);程式碼基於安全客體之秘密使工作階段(由登入起始)與利用登入資料之HSM工作階段相關聯(330);程式碼攔截安全客體之每一HSM金鑰產生及工作階段登出請求(340);程式碼基於安全客體之秘密而用相關聯之工作階段碼替換用於此等動作之工作階段碼(350);及基於判定給定事件已發生,程式碼基於安全客體之秘密而關閉所有工作階段(360))可按任意次序發生,包括但不限於工作流程300之次序,且亦可在工作流程300期間之任何時間非同步地發生。
返回至參看圖2之圖3,在本發明之一些實施例中,安全介面控制件265之程式碼向HSM 210開啟預設工作階段,以用於未(尚未)繫結至與HSM 210之任何工作階段之安全客體250的安全金鑰(310)。程式碼
攔截安全客體250之每一HSM 210登入工作階段(320)。程式碼基於安全客體之秘密225而使工作階段(由登入起始)與利用登入資料之HSM 210工作階段關聯(330)。在本發明之實施例中,秘密225並非客體250之部分,此係因為其作為客體後設資料之部分而獨立地輸送至安全介面控制件265(經由安全通道,亦即,經加密),且以密碼編譯方式連結至客體250。因此,安全介面控制件265可驗證客體250及後設資料/秘密225屬於彼此。HSM 210之程式碼可將基於安全客體之秘密225的工作階段碼與傳回至安全客體250之工作階段碼的關聯存留於表(245)中。HSM可在表215中提供及追蹤傳回至安全客體250之工作階段碼。如圖2中所說明,連同儲存使基於安全客體之秘密的工作階段碼與傳回至安全客體250之工作階段碼相關聯的表,安全介面控制件265之程式碼亦儲存安全客體250之HSM組態。
返回至圖3,程式碼攔截安全客體250之每一HSM金鑰產生及工作階段登出請求(340)。安全客體250儲存藉由HSM 210用主金鑰220包裝之安全金鑰230。程式碼基於安全客體之秘密225而用相關聯之工作階段碼(例如,來自表245)替換用於此等動作之工作階段碼(350)。程式碼判定安全客體已終止(360)。基於判定給定事件已發生,程式碼基於安全客體之秘密225而關閉所有工作階段(370)。給定事件可發生變化。在本發明之一些實施例中,基於判定安全客體250已終止,程式碼基於安全客體之秘密225而關閉所有工作階段。當發生意外事件時,HSM 210之程式碼及系統之其他元件亦可採取額外動作來保護系統之安全性。舉例而言,在本發明之一些實施例中,若HSM 210被拔出,則程式碼刪除所有工作階段狀態資料。在本發明之一些實施例中,若安全介面控制件265意外地終
止,則在處理裝置上執行之程式碼清除HSM 210之所有工作階段。
在本發明之實施例中,為了將安全客體(例如,圖2之安全客體250)之安全金鑰(例如,圖2之安全金鑰230)繫結至HSM(例如,圖2之HSM 210),在處理資源上執行之程式碼,包括受信任組件(例如,圖2之安全介面控制件265)之程式碼,實現至少五個通用態樣:1)安全介面控制件之程式碼最初組態HSM與安全客體之間的關係/連接;2)安全介面控制件之程式碼攔截來自安全客體之請求,最終將新工作階段碼傳回至安全客體;3)安全介面控制件之程式碼攔截來自安全客體之請求以用於藉由HSM產生(用主金鑰包裝)新安全金鑰;4)安全介面控制件之程式碼攔截來自安全客體之請求以登出與HSM之工作階段;及5)基於停止安全客體,安全介面控制件之程式碼開始及完成各種清除活動。圖4至圖8說明用於此等態樣之工作流程400至800。
參看圖4,在本發明之實施例中,工作流程400說明安全介面控制件之程式碼最初組態HSM與安全客體之間的關係/連接。如圖2中所說明,安全介面控制件經由超管理器通信耦接至HSM以及由超管理器管理之客體。在本發明之實施例中,安全介面控制件(例如,受信任FW、受信任組件等)之程式碼經由超管理器(例如,虛擬機器管理器)自藉由超管理器管理之一或多個客體中的一客體(例如,虛擬機器)接收組態請求(410)。程式碼判定HSM是否已組態至一或多個客體中之給定客體(420)。基於判定HSM經組態至給定客體,程式碼回應於組態請求而傳回錯誤(435)。在本發明之實施例中,安全組件(例如,安全FW、安全介面控制件)之程式碼強制實行:對於經組態至客體之HSM,管理客體之超管理器無法攔截安全客體至HSM之任何請求。
返回至圖4,基於判定HSM未經組態至給定客體,程式碼判定客體是否為安全客體(例如,基於包括客體之後設資料的各種態樣進行鑑認)(440)。在本發明之實施例中,客體之後設資料的現況資訊或類型判定客體是否安全。後設資料以密碼編譯方式連結至客體(例如,含有客體映像之簽名),因此一個客體之後設資料無法被誤用為另一客體之後設資料。若客體並非安全的,則此程序終止(435)。基於判定客體為安全客體,程式碼阻止HSM被其他客體存取(450)。在本發明之一些實施例中,若安全客體已啟動但尚未終止,則經組態用於安全客體之HSM(特定而言,使用安全客體之HSM秘密建立工作階段所在的HSM)不可組態至另一客體(在系統中執行之組件)。
參看圖4,程式碼藉由利用安全客體之秘密來登入(例如,存取)HSM(460)。在安全客體第一次存取HSM之前,安全介面控制件之程式碼使用來自安全客體之後設資料的HSM秘密登入HSM。回應於登入HSM,程式碼自HSM接收工作階段碼(470)。程式碼將工作階段碼與NULL工作階段碼之關聯儲存於安全組件中之關聯表中(480)。因此,安全介面控制件將NULL工作階段碼與由HSM傳回之工作階段碼的關聯儲存於表中。在本發明之一些實施例中,此表使基於安全客體之秘密的工作階段碼與由HSM傳回至安全客體之工作階段碼相關聯。
參看圖5,在本發明之實施例中,工作流程500說明安全介面控制件之程式碼攔截來自安全客體之請求。如圖5中所說明,安全組件(例如,安全FW)之程式碼攔截來自安全客體之每一工作階段登入請求,且重新發出登入請求,其中安全客體之登入資料由彼登入資料與HSM秘密之組合(例如,藉由對兩筆資料進行逐位元互斥或(xor)運算)替換。因
此,替代傳回由HSM傳回之工作階段碼,安全介面控制件之程式碼產生符合登入請求之規格的新工作階段碼(例如,自安全客體之登入資料),且將所產生之工作階段碼與由HSM傳回之工作階段碼的關聯儲存於表(例如,圖2之表245)中。
返回至圖5,在本發明之一些實施例中,安全介面控制件(例如,受信任FW、受信任組件)之程式碼攔截來自安全客體之HSM登入請求,其中HSM登入請求利用來自安全客體之登入資料(510)。程式碼基於安全客體之秘密而產生新登入資料,其中安全客體之秘密以密碼編譯方式連結至安全客體之映像(520)。程式碼發出具有新登入資料(亦即,基於安全客體之秘密的資料)之HSM登入請求(已攔截原始請求)(530)。程式碼自HSM接收工作階段碼(540)。基於自HSM接收到工作階段碼,程式碼產生新工作階段碼(工作階段碼基於登入資料而發生變化)(550)。程式碼使來自HSM之工作階段碼與新工作階段碼相關聯,且將此關聯儲存於關聯表中(560)。程式碼將新工作階段碼傳回至安全客體(570)。
除攔截來自安全客體之HSM登入請求以外,如圖5中所說明,在本發明之實施例中,受信任組件(例如,圖2之安全介面控制件265)之程式碼亦攔截自安全客體至HSM之請求,包括但不限於產生請求及工作階段登出請求。圖6至圖7分別說明藉由安全組件處置金鑰產生及登出請求之態樣。如圖6至圖7中所說明,安全組件之程式碼攔截及重新發出此等請求,其中用由HSM提供之工作階段碼替換由安全客體提供之工作階段碼,如儲存於關聯表中。
圖6為說明安全介面控制件之程式碼攔截利用新工作階段碼(例如,圖5之560)之HSM金鑰產生請求的工作流程600。在本發明之一些
實施例中,安全介面控制件(例如,受信任FW、受信任組件)之程式碼攔截來自安全客體之HSM金鑰產生請求,其利用新工作階段碼(610)程式碼在關聯表中查找新工作階段碼且定位相關聯之工作階段碼(來自HSM之工作階段碼,例如圖5之540)(620)。基於定位工作階段碼,程式碼向HSM發出HSM金鑰產生請求,其利用工作階段碼(630)。回應於請求,程式碼獲得所請求金鑰且將金鑰傳回至安全客體(640)。因此,程式碼將HSM請求之結果傳回至安全客體。
類似於圖6上之工作流程600,圖7描繪工作流程700,其說明安全介面控制件之程式碼攔截HSM登出請求,其利用新工作階段碼(例如,圖5之560)。在本發明之一些實施例中,安全介面控制件(例如,受信任FW、受信任組件)之程式碼攔截來自安全客體之HSM登出請求,其利用新工作階段碼(710)。程式碼在關聯表中查找新工作階段碼且定位相關聯之工作階段碼(來自HSM之工作階段碼,例如圖5之540)(720)。基於定位工作階段碼,程式碼向HSM發出HSM登出請求,其利用工作階段碼(730)。程式碼自關聯表刪除關聯(使新工作階段碼與工作階段碼相關聯之關聯)(735)。回應於請求,安全客體自HSM之登出完成(740)。
在本發明之一些實施例中,圖8描繪工作流程800,其說明程式碼終止安全客體。一般而言,在本發明之實施例中,若安全客體終止,則安全介面控制件終止其建立之所有工作階段(使用安全客體之HSM秘密)。在本發明之一些實施例中,安全介面控制件之程式碼經由超管理器獲得指示安全客體已停止之資訊(810)。基於判定安全客體已停止,安全組件之程式碼基於關聯表而識別安全客體與HSM之所有工作階段(820)。在本發明之一些實施例中,程式碼可產生與工作階段碼相關聯之
所有工作階段的清單。基於識別工作階段,經由工作階段碼,程式碼使安全客體登出所有經識別工作階段(830)。程式碼移除安全客體之HSM組態(840)。程式碼清除安全客體之剩餘資源(850)。
本發明之實施例包括各種安全措施以保護HSM及安全客體之完整度。舉例而言,在本發明之一些實施例中,若安全介面控制件損毀,則HSM中之所有工作階段終止。另外,若自伺服器移除HSM,則HSM中之所有工作階段終止。
本發明之實施例包括用於將安全客體之安全金鑰繫結至硬體安全模組的一種電腦實施方法、一種電腦程式產品及一種系統。此等實施例之各種態樣由安全介面控制件執行,該安全介面控制件可由軟體、硬體及/或韌體構成。軟體態樣由一或多個處理器執行。因此,對於每一理解,本發明之各種實施例的態樣描述為廣泛地由可包括安全介面控制件之程式碼執行,而無關於此態樣之組成。因此,在本發明之一些實施例中,程式碼組態硬體安全模組以供由超管理器管理之安全客體獨佔地使用。該組態包括:程式碼經由超管理器自藉由超管理器管理之一或多個客體中的給定客體獲得組態硬體安全模組之組態請求;程式碼判定硬體安全模組是否已經組態至一或多個客體中之特定客體,其中特定客體及給定客體包含一或多個客體中之不同客體;基於程式碼判定硬體安全模組未經組態至特定客體,程式碼藉由評估給定客體之後設資料而判定給定客體包含安全客體;基於判定給定客體包含安全客體,程式碼藉由將客體對硬體安全模組之存取獨佔地限於一或多個客體中之給定客體來阻止建立硬體安全模組之組態。程式碼使給定客體登入硬體安全模組,其中登入硬體安全模組包含利用給定客體之秘密,其中後設資料包含秘密。基於程式碼登入硬體安全
模組,程式碼自硬體安全模組獲得工作階段碼;及藉由一或多個處理器存留工作階段碼。
在本發明之一些實施例中,存留包含程式碼將工作階段碼與NULL工作階段碼之關聯儲存於安全介面控制件中之關聯表中。
在本發明之一些實施例中,客體之後設資料為完整度受保護的,且秘密由使用由安全介面控制件擁有之私用金鑰導出的金鑰加密。私用金鑰可包含給定客體之開機映像的密碼編譯度量。
在本發明之一些實施例中,基於組態,程式碼將新工作階段碼提供至給定客體,以供給定客體在對硬體安全模組之請求中利用。
在本發明之一些實施例中,提供(藉由程式碼)包含:程式碼攔截來自給定客體之硬體安全模組登入請求,其中硬體安全模組登入請求包含來自給定客體之登入資料;程式碼基於給定客體之秘密產生新登入資料;程式碼向硬體安全模組發出來自給定客體之新硬體安全模組登入請求,其中新硬體安全模組登入請求包含新登入資料;程式碼自硬體安全模組獲得工作階段碼;基於自硬體安全模組獲得工作階段碼,程式碼產生新工作階段碼;程式碼將來自硬體安全模組之工作階段碼與新工作階段碼之間的關聯儲存於表中;及回應於登入請求,程式碼將新工作階段碼傳輸至給定客體。
在本發明之一些實施例中,程式碼攔截自給定客體至硬體安全模組之請求,其中該請求包含新工作階段碼。該程式碼自表獲得與新工作階段碼相關聯之來自硬體安全模組的工作階段碼。程式碼更新來自給定客體之請求以包含新請求,其中新請求包含來自硬體安全模組之工作階段碼而非新工作階段碼。該程式碼向硬體安全模組發出新請求。
在本發明之一些實施例中,程式碼自硬體安全模組獲得請求之實現。程式碼向給定客體發出請求之實現。在本發明之一些實施例中,該請求係選自由以下各者組成之群組:硬體安全模組安全金鑰產生請求,及硬體安全模組登出請求。
在本發明之一些實施例中,程式碼自超管理器獲得給定客體已停止之指示。程式碼在表中識別來自硬體安全模組之工作階段碼與新工作階段碼之間的關聯。程式碼基於該表利用來自硬體安全模組之工作階段碼而產生一或多個工作階段之清單。程式碼使給定客體自一或多個工作階段登出。
在本發明之一些實施例中,程式碼自超管理器獲得給定客體已停止之指示。程式碼移除組態。
在本發明之一些實施例中,程式碼自超管理器獲得給定客體已停止之指示。程式碼識別存留於硬體安全模組中之對給定客體的參考。程式碼移除參考。
在本發明之一些實施例中,安全介面組件係選自由以下各者組成之群組:韌體、硬體及軟體。
在本發明之一些實施例中,藉由評估給定客體之後設資料而判定給定客體包含安全客體包含程式碼驗證後設資料之現況資訊或類型中之一者。
在本發明之一些實施例中,程式碼利用給定客體之秘密包含程式碼對秘密解密。
在本發明之一些實施例中,解密包含利用由安全介面控制件獨佔地運算之金鑰。
經由本文中所描述之技術實現額外特徵。本文中詳細描述其他實施例及態樣且將其視為所主張態樣之一部分。
現參看圖9,其為運算節點之實例的示意圖,該運算節點可為雲端運算節點10。雲端運算節點10僅為合適的雲端運算節點之一個實例且並不意欲暗示關於本文中所描述之本發明之實施例的使用或功能性之範疇的任何限制。無論如何,雲端運算節點10能夠被實施及/或執行上文所闡述之功能性中之任一者。在本發明之實施例中,安全客體250(圖2)、安全介面控制件265(例如,安全介面控制件)(圖2)及/或超管理器240(圖2)可各自理解為在雲端運算節點10(圖9)執行,且若並非雲端運算節點10,則為包括雲端運算節點10之態樣的一或多個通用運算節點。
在雲端運算節點10中,存在電腦系統/伺服器12,其可與眾多其他通用或專用運算系統環境或組態一起操作。可能適合與電腦系統/伺服器12一起使用之熟知運算系統、環境及/或組態之實例包括但不限於:個人電腦系統、伺服器電腦系統、精簡型用戶端、複雜型用戶端、手持型或膝上型電腦裝置、多處理器系統、基於微處理器之系統、機上盒、可程式化消費型電子裝置、網路PC、小型電腦系統、大型電腦系統及包括以上系統或裝置中之任一者的分散式雲端運算環境,以及其類似者。
可在由電腦系統執行之電腦系統可執行指令(諸如,程式模組)之一般內容脈絡下描述電腦系統/伺服器12。一般而言,程式模組可包括執行特定任務或實施特定抽象資料類型之常式、程式、物件、組件、邏輯、資料結構等。可在分散式雲端運算環境中實踐電腦系統/伺服器12,在該等環境中,任務由經由通信網路而鏈接之遠端處置裝置執行。在分散式雲端運算環境中,程式模組可位於包括記憶體儲存裝置之本端及遠端電
腦系統儲存媒體兩者中。
如圖9中所展示,以通用運算裝置之形式展示可用作雲端運算節點10之電腦系統/伺服器12。電腦系統/伺服器12之組件可包括但不限於一或多個處理器或處理單元16、系統記憶體28及匯流排18,該匯流排將包括系統記憶體28之各種系統組件耦接至處理器16。
匯流排18表示任何幾種類型之匯流排結構中之一或多者,包括記憶體匯流排或記憶體控制器、周邊匯流排、加速圖形埠及處理器或使用多種匯流排架構中之任一者的區域匯流排。作為實例而非限制,此類架構包括工業標準架構(ISA)匯流排、微通道架構(MCA)匯流排、增強型ISA(EISA)匯流排、視訊電子標準協會(VESA)區域匯流排及周邊組件互連(PCI)匯流排。
電腦系統/伺服器12通常包括多種電腦系統可讀媒體。此類媒體可為可由電腦系統/伺服器12存取之任何可用媒體,且其包括揮發性及非揮發性媒體兩者、抽取式及非抽取式媒體兩者。
系統記憶體28可包括呈揮發性記憶體之形式的電腦系統可讀媒體,諸如隨機存取記憶體(RAM)30及/或快取記憶體32。電腦系統/伺服器12可進一步包括其他抽取式/非抽取式、揮發性/非揮發性電腦系統儲存媒體。僅作為實例,可提供儲存系統34以用於自非抽取式、非揮發性磁性媒體(圖中未展示且通常被稱為「硬碟機」)讀取及寫入至非抽取式、非揮發性磁性媒體。儘管未展示,但可提供用於自抽取式、非揮發性磁碟(例如,「軟碟」)讀取及寫入至抽取式、非揮發性磁碟之磁碟機,及用於自抽取式、非揮發性光碟(諸如,CD-ROM、DVD-ROM或其他光學媒體)讀取及寫入至抽取式、非揮發性光碟之光碟機。在此等情況下,每一者可
藉由一或多個資料媒體介面連接至匯流排18。如下文將進一步描繪及描述,記憶體28可包括具有經組態以進行本發明之實施例之功能的一組(例如,至少一個)程式模組的至少一個程式產品。
作為實例而非限制,具有一組(至少一個)程式模組42之程式/公用程式40以及作業系統、一或多個應用程式、其他程式模組及程式資料可儲存於記憶體28中。作業系統、一或多個應用程式、其他程式模組及程式資料或其某一組合中之每一者可包括網路連接環境之實施。程式模組42通常進行如本文中所描述之本發明之實施例的功能及/或方法。
電腦系統/伺服器12亦可與以下各者通信:一或多個外部裝置14,諸如鍵盤、指標裝置、顯示器24等;使得使用者能夠與電腦系統/伺服器12互動之一或多個裝置;及/或使得電腦系統/伺服器12能夠與一或多個其他運算裝置通信之任何裝置(例如,網路卡、數據機等)。此通信可經由輸入/輸出(I/O)介面22發生。又另外,電腦系統/伺服器12可經由網路配接器20與諸如區域網路(LAN)、通用廣域網路(WAN)及/或公用網路(例如,網際網路)之一或多個網路通信。如所描繪,網路配接器20經由匯流排18與電腦系統/伺服器12之其他組件通信。應理解,儘管未展示,但可結合電腦系統/伺服器12使用其他硬體及/或軟體組件。實例包括但不限於:微碼、裝置驅動程式、冗餘處理單元、外部磁碟機陣列、RAID系統、磁帶機及資料存檔儲存系統等。
應理解,儘管本發明包括關於雲端運算之詳細描述,但本文中所敍述之教示的實施不限於雲端運算環境。更確切而言,本發明之實施例能夠結合現在已知或稍後開發之任何其他類型之運算環境來實施。
雲端運算為用於使得能夠對可組態運算資源(例如,網路、
網路頻寬、伺服器、處理、記憶體、儲存器、應用程式、虛擬機器及服務)之共用集區進行便利之按需網路存取的服務遞送之模型,可組態運算資源可藉由最少的管理工作或與服務提供者之互動而快速地佈建及釋放。此雲端模型可包括至少五個特性、至少三個服務模型及至少四個部署模型。
特性如下:
隨選自助服務:雲端客戶可視需要自動地單向佈建運算能力(諸如,伺服器時間及網路儲存器),而無需與服務提供者之人為互動。
寬頻網路存取:可經由網路獲得能力及經由標準機制存取能力,該等標準機制藉由異質精簡型或複雜型用戶端平台(例如,行動電話、膝上型電腦及PDA)促進使用。資源集用:提供者之運算資源經集用以使用多租戶模型為多個客戶服務,其中根據需要動態指派及重新指派不同實體及虛擬資源。位置獨立性之意義在於,客戶通常不具有對所提供資源之確切位置的控制或瞭解,但可能能夠按較高抽象等級(例如,國家、州或資料中央)指定位置。快速彈性:可快速且彈性地佈建能力(在一些狀況下,自動地)以迅速地向外延展,且可快速地釋放能力以迅速地向內延展。在客戶看來,可用於佈建之能力常常看起來為無限的且可在任何時間以任何量來購買。
所度量服務:雲端系統藉由在適於服務類型(例如,儲存、處理、頻寬及作用中使用者帳戶)之某一抽象等級下充分利用計量能力而自動控制及最佳化資源使用。可監視、控制及報告資源使用狀況,從而為所利用服務之提供者及客戶兩者提供透明度。
服務模型如下:
軟體即服務(SaaS):提供給客戶之能力係使用在雲端基礎架構上執行之提供者之應用程式。可經由諸如網頁瀏覽器(例如,基於網路之電子郵件)之精簡型用戶端介面自各種用戶端裝置存取應用程式。客戶並不管理或控制包括網路、伺服器、作業系統、儲存器或甚至個別應用程式能力之基礎雲端基礎架構,其中可能的例外狀況為有限的使用者特定應用程式組態設置。
平台即服務(PaaS):提供給客戶之能力係將使用由提供者所支援之程式設計語言及工具建立的客戶建立或獲取之應用程式部署至雲端基礎架構上。客戶並不管理或控制包括網路、伺服器、作業系統或儲存器之基礎雲端基礎架構,但控制所部署之應用程式及可能的代管環境組態之應用程式。
基礎架構即服務(IaaS):提供給客戶之能力係佈建處理、儲存、網絡及其他基礎運算資源,其中客戶能夠部署及執行可包括作業系統及應用程式之任意軟體。客戶並不管理或控制基礎雲端基礎架構,但控制作業系統、儲存器、所部署應用程式,及可能有限地控制選擇網路連接組件(例如,主機防火牆)。
部署模型如下:
私用雲端:僅為組織操作雲端基礎架構。私用雲端可由組織或第三方來管理且可存在內部部署或外部部署。
社群雲端:雲端基礎架構由若干組織共用且支援分擔問題(例如,任務、安全要求、策略及順應性考量)的特定社群。社群雲端可由組織或第三方來管理且可存在內部部署或外部部署。
公開雲端:該雲端基礎架構可用於公眾或大型工業集團且
為出售雲端服務之組織所擁有。
混合雲端:該雲端基礎架構為兩個或多於兩個雲端(私用、社群或公開)之組合物,其保持獨特實體但藉由實現資料及應用程式攜帶性(例如,用於在雲端之間實現負載平衡之雲端叢發)之標準化或專屬技術繫結在一起。
藉由集中於無國界、低耦合、模組化及語義互操作性對雲端運算環境進行服務定向。雲端運算之關鍵為包括互連節點之網路的基礎架構。
現參看圖10,描繪說明性雲端運算環境50。如所展示,雲端運算環境50包括一或多個雲端運算節點10,雲端客戶所使用之諸如個人數位助理(PDA)或蜂巢式電話54A、桌上型電腦54B、膝上型電腦54C及/或汽車電腦系統54N的本端運算裝置可與該一或多個雲端運算節點通信。節點10可彼此通信。可在一或多個網路(諸如,如上文所描述之私用、社群、公開或混合雲端或其組合)中將該等節點實體地或虛擬地分組(未展示)。此允許雲端運算環境50供應基礎架構、平台及/或軟體作為服務,針對該等服務,雲端客戶不需要在本端運算裝置上維持資源。應理解,圖10中所展示之運算裝置54A至54N之類型意欲僅為說明性的,且運算節點10及雲端運算環境50可經由任何類型之網路及/或網路可定址連接(例如,使用網頁瀏覽器)與任何類型之電腦化裝置通信。
現參看圖11,展示藉由雲端運算環境50(圖10)所提供之功能抽象層之集合。事先應理解,圖11中所展示之組件、層及功能意欲僅為說明性的且本發明之實施例不限於此。如所描繪,提供以下層及對應功能:
硬體及軟體層60包括硬體及軟體組件。硬體組件之實例包括:大型電腦61;基於精簡指令集電腦(RISC)架構之伺服器62;伺服器63;刀鋒伺服器64;儲存裝置65;以及網路及網路連接組件66。在一些實施例中,軟體組件包括網路應用程式伺服器軟體67及資料庫軟體68。
虛擬化層70提供抽象層,可自該抽象層提供虛擬實體之以下實例:虛擬伺服器71;虛擬儲存器72;虛擬網路73,包括虛擬私用網路;虛擬應用程式及作業系統74;以及虛擬用戶端75。
在一個實例中,管理層80可提供下文所描述之功能。資源佈建81提供運算資源及用以執行雲端運算環境內之任務之其他資源的動態採購。當在雲端運算環境內利用資源時,計量及定價82提供成本追蹤,及對此等資源之消耗之帳務處理及發票開立。在一個實例中,此等資源可包括應用程式軟體授權。安全性提供針對雲端客戶及任務之身分識別驗證,以及對資料及其他資源之保護。使用者入口網站83為客戶及系統管理器提供對雲端運算環境之存取。服務等級管理84提供雲端運算資源分配及管理使得滿足所需服務等級。服務等級協議(SLA)規劃及實現85提供雲端運算資源之預先配置及採購,針對雲端運算資源之未來要求係根據SLA來預期。
工作負載層90提供功能性之實例,可針對該功能性利用雲端運算環境。可自此層提供之工作負載及功能的實例包括:地圖測繪及導航91;軟體開發及生命週期管理92;虛擬教室教育遞送93;資料分析處理94;異動處理95;及將安全金鑰繫結至安全客體96。
本發明可為在任何可能之技術細節整合層級處的系統、方法及/或電腦程式產品。該電腦程式產品可包括一(或多個)電腦可讀儲存媒
體,其上具有電腦可讀程式指令以使處理器進行本發明之態樣。
電腦可讀儲存媒體可為有形裝置,其可存留及儲存指令以供指令執行裝置使用。電腦可讀儲存媒體可為例如但不限於電子儲存裝置、磁性儲存裝置、光學儲存裝置、電磁儲存裝置、半導體儲存裝置或前述各者之任何合適組合。電腦可讀儲存媒體之更特定實例的非窮盡性清單包括以下各者:攜帶型電腦磁片、硬碟、隨機存取記憶體(RAM)、唯讀記憶體(ROM)、可抹除可程式化唯讀記憶體(EPROM或快閃記憶體)、靜態隨機存取記憶體(SRAM)、攜帶型光碟唯讀記憶體(CD-ROM)、數位多功能光碟(DVD)、記憶棒、軟碟、機械編碼裝置(諸如,上面記錄有指令之凹槽中之打孔卡片或凸起結構)及前述各者之任何合適組合。如本文中所使用,不應將電腦可讀儲存媒體本身解釋為暫時性信號,諸如無線電波或其他自由傳播之電磁波、經由波導或其他傳輸媒體傳播之電磁波(例如,經由光纖纜線傳遞之光脈衝),或經由導線傳輸之電信號。
本文中所描述之電腦可讀程式指令可自電腦可讀儲存媒體下載至各別運算/處理裝置或經由網路(例如,網際網路、區域網路、廣域網路及/或無線網路)下載至外部電腦或外部儲存裝置。網路可包含銅傳輸纜線、光學傳輸光纖、無線傳輸、路由器、防火牆、交換器、閘道器電腦及/或邊緣伺服器。每一運算/處理裝置中之網路配接卡或網路介面自網路接收電腦可讀程式指令且轉遞電腦可讀程式指令以用於儲存於各別運算/處理裝置內之電腦可讀儲存媒體中。
用於進行本發明之操作之電腦可讀程式指令可為以一或多種程式設計語言之任何組合編寫之組譯器指令、指令集架構(ISA)指令、機器指令、機器相關指令、微碼、韌體指令、狀態設置資料、用於積體電
路系統之組態資料,或原始程式碼或目標程式碼,該一或多種程式設計語言包括諸如Smalltalk、C++或其類似者之物件導向式程式設計語言,及程序性程式設計語言,諸如「C」程式設計語言或類似程式設計語言。電腦可讀程式指令可完全在使用者電腦上執行,作為單獨套裝軟體部分地在使用者之電腦上執行,部分地在使用者之電腦上及部分地在遠端電腦上執行或完全在遠端電腦或伺服器上執行。在後一情形中,遠端電腦可經由任何類型之網路(包括區域網路(LAN)或廣域網路(WAN))連接至使用者之電腦,或可連接至外部電腦(例如,使用網際網路服務提供者經由網際網路)。在一些實施例中,電子電路系統(包括例如可程式化邏輯電路系統、場可程式化閘陣列(FPGA)或可程式化邏輯陣列(PLA))可藉由利用電腦可讀程式指令之狀態資訊來個人化電子電路系統而執行電腦可讀程式指令,以便執行本發明之態樣。
本文參考根據本發明之實施例之方法、設備(系統)及電腦程式產品之流程圖說明及/或方塊圖來描述本發明之態樣。應理解,可藉由電腦可讀程式指令實施流程圖說明及/或方塊圖中之每一區塊,及流程圖說明及/或方塊圖中的區塊之組合。
可將此等電腦可讀程式指令提供至通用電腦、專用電腦或其他可程式化資料處理設備之處理器以產生機器,使得經由該電腦或其他可程式化資料處理設備之處理器執行之指令建立用於實施該一或多個流程圖及/或方塊圖區塊中所指定之功能/動作之構件。亦可將此等電腦可讀程式指令儲存於電腦可讀儲存媒體中,該等指令可指導電腦、可程式化資料處理設備及/或其他裝置以特定方式起作用,使得儲存有指令之電腦可讀儲存媒體包含製品,該製品包括實施在該一或多個流程圖及/或方塊圖區
塊中指定之功能/動作之態樣的指令。
電腦可讀程式指令亦可載入至電腦、其他可程式化資料處理設備或其他裝置上,以使一系列操作步驟在該電腦、其他可程式化設備或其他裝置上執行以產生電腦實施之程序,使得在該電腦、其他可程式化設備或其他裝置上執行之指令實施在該一或多個流程圖及/或方塊圖區塊中所指定之功能/動作。
諸圖中之流程圖及方塊圖說明根據本發明之各種實施例的系統、方法及電腦程式產品之可能實施之架構、功能性及操作。就此而言,流程圖或方塊圖中之每一區塊可表示指令之模組、區段或部分,其包含用於實施指定邏輯功能之一或多個可執行指令。在一些替代實施中,區塊中所提及之功能可不按諸圖中所提及之次序發生。舉例而言,以連續方式展示的兩個區塊實際上可實質上同時執行,或該等區塊有時可以相反次序執行,此取決於所涉及的功能性。亦應注意,可由執行指定功能或動作或進行專用硬體及電腦指令之組合的基於專用硬體之系統實施方塊圖及/或流程圖說明之每一區塊及方塊圖及/或流程圖說明中之區塊的組合。
本文中所使用之術語僅出於描述特定實施例之目的,且並不意欲為限制性的。如本文中所使用,除非上下文另外明確地指示,否則單數形式「一(a、an)」及「該」意欲亦包括複數形式。應進一步理解,術語「包含(comprises及/或comprising)」在用於本說明書中時指定所陳述特徵、整體、步驟、操作、元件及/或組件之存在,但不排除一或多個其他特徵、整體、步驟、操作、元件、組件及/或其群組之存在或添加。
以下申請專利範圍中之所有構件或步驟加功能元件之對應結構、材料、動作及等效物(若存在)意欲包括用於結合如特定主張之其他
所主張元件來執行功能的任何結構、材料或動作。已出於說明及描述之目的呈現一或多個實施例之描述,但其不意欲為窮盡性的或限於所揭示之形式。許多修改及變化對於一般熟習此項技術者將為顯而易見的。實施例經選擇及描述以便最佳地解釋各種態樣及實際應用,且使得一般熟習此項技術者能夠理解具有如適於所涵蓋之特定用途之各種修改的各種實施例。
300:工作流程
Claims (18)
- 一種電腦實施方法,其包含:藉由通信耦接至一超管理器及一硬體安全模組之一安全介面控制件組態該硬體安全模組以供由該超管理器管理之一安全客體獨佔地使用,該組態包含:藉由該安全介面控制件經由該超管理器自藉由該超管理器管理之一或多個客體中之一給定客體獲得組態該硬體安全模組之一組態請求;藉由該安全介面控制件判定該硬體安全模組是否已組態至該一或多個客體中之一特定客體,其中該特定客體及該給定客體包含該一或多個客體中之不同客體;基於判定該硬體安全模組未組態至該特定客體,藉由該安全介面控制件而藉由評估該給定客體之後設資料來判定該給定客體包含該安全客體;基於判定該給定客體包含一安全客體,藉由該安全介面控制件而藉由將客體對該硬體安全模組之存取獨佔地限於該一或多個客體中之該給定客體來阻止建立該硬體安全模組之一組態;藉由該安全介面控制件使該給定客體登入該硬體安全模組,其中該登入該硬體安全模組包含利用該給定客體之一秘密,其中該後設資料包含該秘密;基於該登入該硬體安全模組,藉由該安全介面控制件自該硬體安全模組獲得一工作階段碼;及 藉由該安全介面控制件存留該工作階段碼,其中該存留包含將該工作階段碼與一NULL工作階段碼之一關聯儲存於該安全介面控制件中之一關聯表中。
- 如請求項1之電腦實施方法,其中該客體之該後設資料為完整度受保護的,且該秘密由使用由該安全介面控制件擁有之一私用金鑰導出的一金鑰加密。
- 如請求項2之電腦實施方法,其中該私用金鑰包含該給定客體之一開機映像的一密碼編譯度量。
- 如請求項1之電腦實施方法,其進一步包含:基於該組態,藉由該安全介面控制件將一新工作階段碼提供至該給定客體,以供該給定客體在對該硬體安全模組之請求中利用。
- 如請求項4之電腦實施方法,其中該提供包含:藉由該安全介面控制件攔截來自該給定客體之一硬體安全模組登入請求,其中該硬體安全模組登入請求包含來自該給定客體之登入資料;藉由該安全介面控制件基於該給定客體之該秘密而產生新登入資料;藉由該安全介面控制件向該硬體安全模組發出來自該給定客體之一新硬體安全模組登入請求,其中該新硬體安全模組登入請求包含該新登入資料; 藉由該安全介面控制件自該硬體安全模組獲得一工作階段碼;基於自該硬體安全模組獲得該工作階段碼,藉由該安全介面控制件產生該新工作階段碼;藉由該安全介面控制件將來自該硬體安全模組之該工作階段碼與該新工作階段碼之間的一關聯儲存於該表中;及回應於該登入請求,藉由該安全介面控制件將該新工作階段碼傳輸至該給定客體。
- 如請求項4之電腦實施方法,其進一步包含:藉由該安全介面控制件攔截自該給定客體至該硬體安全模組之一請求,其中該請求包含該新工作階段碼;藉由該安全介面控制件自該表獲得與該新工作階段碼相關聯之來自該硬體安全模組的該工作階段碼;藉由該安全介面控制件更新來自該給定客體之該請求以包含一新請求,其中該新請求包含來自該硬體安全模組之該工作階段碼而非該新工作階段碼;及藉由該安全介面控制件向該硬體安全模組發出該新請求。
- 如請求項6之電腦實施方法,其進一步包含:藉由該安全介面控制件自該硬體安全模組獲得該請求之實現;及藉由該安全介面控制件向該給定客體發出該請求之該實現。
- 如請求項7之電腦實施方法,其中該請求係選自由以下各者組成之群 組:一硬體安全模組安全金鑰產生請求,及一硬體安全模組登出請求。
- 如請求項5之電腦實施方法,其進一步包含:藉由該安全介面控制件自該超管理器獲得該給定客體已停止之一指示;藉由安全介面組件在該表中識別來自該硬體安全模組之該工作階段碼與該新工作階段碼之間的該關聯;藉由該安全介面組件基於該表利用來自該硬體安全模組之該工作階段碼而產生一或多個工作階段之一清單;及藉由該安全介面組件使該給定客體自該一或多個工作階段登出。
- 如請求項1之電腦實施方法,其進一步包含:藉由該安全介面控制件自該超管理器獲得該給定客體已停止之一指示;藉由該安全介面控制件移除該組態。
- 如請求項5之電腦實施方法,其進一步包含:藉由該安全介面控制件自該超管理器獲得該給定客體已停止之一指示;藉由該安全介面組件識別存留於該硬體安全模組中之對該給定客體的參考;及藉由該安全介面組件移除該等參考。
- 如請求項1之電腦實施方法,其中該安全介面組件係選自由以下各者組成之群組:韌體、硬體及軟體。
- 如請求項1之電腦實施方法,其中藉由評估該給定客體之後設資料來判定該給定客體包含該安全客體包含驗證該後設資料之一現況資訊或一類型中之一者。
- 如請求項1之電腦實施方法,其中利用該給定客體之該秘密包含藉由該安全介面控制件對該秘密解密。
- 如請求項14之電腦實施方法,其中該解密包含利用由該安全介面控制件獨佔地運算之一金鑰。
- 一種電腦程式產品,其包含:一電腦可讀儲存媒體,其可由一或多個處理器讀取且儲存指令,該等指令由該一或多個處理器執行以用於執行一方法,該方法包含:藉由通信耦接至一超管理器及一硬體安全模組之該一或多個處理器組態該硬體安全模組,該硬體安全模組用於由受該超管理器管理之一安全客體獨佔地使用,該組態包含:藉由該一或多個處理器經由該超管理器自藉由該超管理器管理之一或多個客體中之一給定客體獲得組態該硬體安全模組之一組態請求;藉由該一或多個處理器判定該硬體安全模組是否已組態至該一 或多個客體中之一特定客體,其中該特定客體及該給定客體包含該一或多個客體中之不同客體;基於判定該硬體安全模組未組態至該特定客體,藉由安全介面控制件而藉由評估該給定客體之後設資料來判定該給定客體包含該安全客體;基於判定該給定客體包含一安全客體,藉由該一或多個處理器而藉由將客體對該硬體安全模組之存取獨佔地限於該一或多個客體中之該給定客體來阻止建立該硬體安全模組之一組態;藉由該一或多個處理器使該給定客體登入該硬體安全模組,其中該登入該硬體安全模組包含利用該給定客體之一秘密,其中該後設資料包含該秘密;基於該登入該硬體安全模組,藉由該一或多個處理器自該硬體安全模組獲得一工作階段碼;及藉由該一或多個處理器存留該工作階段碼,其中該存留包含將該工作階段碼與一NULL工作階段碼之一關聯儲存於可由該一或多個處理器存取之一表中。
- 如請求項16之電腦程式產品,其中該客體之該後設資料為完整度受保護的,且該秘密由使用由該安全介面控制件擁有之一私用金鑰導出的一金鑰加密。
- 一種電腦系統,其包含:一記憶體; 一或多個處理器,其與該記憶體通信;程式指令,其可由該一或多個處理器經由該記憶體執行以執行一方法,該方法包含:藉由通信耦接至一超管理器及一硬體安全模組之該一或多個處理器組態該硬體安全模組,該硬體安全模組用於由受該超管理器管理之一安全客體獨佔地使用,該組態包含:藉由該一或多個處理器經由該超管理器自藉由該超管理器管理之一或多個客體中之一給定客體獲得組態該硬體安全模組之一組態請求;藉由該一或多個處理器判定該硬體安全模組是否已組態至該一或多個客體中之一特定客體,其中該特定客體及該給定客體包含該一或多個客體中之不同客體;基於判定該硬體安全模組未組態至該特定客體,藉由安全介面控制件而藉由評估該給定客體之後設資料來判定該給定客體包含該安全客體;基於判定該給定客體包含一安全客體,藉由該一或多個處理器而藉由將客體對該硬體安全模組之存取獨佔地限於該一或多個客體中之該給定客體來阻止建立該硬體安全模組之一組態;藉由該一或多個處理器使該給定客體登入該硬體安全模組,其中該登入該硬體安全模組包含利用該給定客體之一秘密,其中該後設資料包含該秘密;基於該登入該硬體安全模組,藉由該一或多個處理器自該硬體安全模組獲得一工作階段碼;及 藉由該一或多個處理器存留該工作階段碼,其中該存留包含將該工作階段碼與一NULL工作階段碼之一關聯儲存於可由該一或多個處理器存取之一表中。
Applications Claiming Priority (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US16/296,411 US11500988B2 (en) | 2019-03-08 | 2019-03-08 | Binding secure keys of secure guests to a hardware security module |
US16/296,411 | 2019-03-08 |
Publications (2)
Publication Number | Publication Date |
---|---|
TW202038114A TW202038114A (zh) | 2020-10-16 |
TWI744797B true TWI744797B (zh) | 2021-11-01 |
Family
ID=69723942
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW109104545A TWI744797B (zh) | 2019-03-08 | 2020-02-13 | 用於將安全客體之安全金鑰繫結至硬體安全模組之電腦實施方法、系統及電腦程式產品 |
Country Status (14)
Country | Link |
---|---|
US (2) | US11500988B2 (zh) |
EP (1) | EP3935535A1 (zh) |
JP (1) | JP7388803B2 (zh) |
KR (1) | KR102539777B1 (zh) |
CN (1) | CN113557509A (zh) |
AU (1) | AU2020234675B2 (zh) |
BR (1) | BR112021017439A2 (zh) |
CA (1) | CA3132747A1 (zh) |
IL (1) | IL285112B2 (zh) |
MX (1) | MX2021010588A (zh) |
SG (1) | SG11202105613PA (zh) |
TW (1) | TWI744797B (zh) |
WO (1) | WO2020182483A1 (zh) |
ZA (1) | ZA202106316B (zh) |
Families Citing this family (13)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11500988B2 (en) | 2019-03-08 | 2022-11-15 | International Business Machines Corporation | Binding secure keys of secure guests to a hardware security module |
US11475167B2 (en) | 2020-01-29 | 2022-10-18 | International Business Machines Corporation | Reserving one or more security modules for a secure guest |
US11829495B2 (en) | 2021-08-05 | 2023-11-28 | International Business Machines Corporation | Confidential data provided to a secure guest via metadata |
US11809607B2 (en) | 2021-08-05 | 2023-11-07 | International Business Machines Corporation | Customization of multi-part metadata of a secure guest |
US20230040577A1 (en) * | 2021-08-05 | 2023-02-09 | International Business Machines Corporation | Secure guest image and metadata update |
US12095917B2 (en) * | 2021-09-10 | 2024-09-17 | International Business Machines Corporation | Securely transporting a root key using a privately/public key pair for user-controlled authentication of nodes in a hardware security module cluster |
KR102686966B1 (ko) * | 2021-09-30 | 2024-07-19 | 네이버클라우드 주식회사 | 클라우드 서버 내 가상 머신과 hsm 사이의 연결설정 방법 및 이를 이용하는 중계서버 |
US20240086550A1 (en) * | 2022-09-13 | 2024-03-14 | Synamedia Limited | Zero-Trust Cloud Development |
GB2624693A (en) * | 2022-11-28 | 2024-05-29 | Ibm | Updating secure guest metadata of a specific guest instance |
WO2024115150A1 (en) * | 2022-11-29 | 2024-06-06 | International Business Machines Corporation | Extending secure guest metadata to bind the secure guest to an hsm |
WO2024115147A1 (en) * | 2022-11-29 | 2024-06-06 | International Business Machines Corporation | Selecting an hsm for association to a secure guest |
GB2624862A (en) * | 2022-11-29 | 2024-06-05 | Ibm | Extending secure guest metadata to bind the secure guest to an HSM |
GB2624868A (en) * | 2022-11-29 | 2024-06-05 | Ibm | Updating secure guest metadata of a specific guest instance |
Citations (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160149877A1 (en) * | 2014-06-05 | 2016-05-26 | Cavium, Inc. | Systems and methods for cloud-based web service security management basedon hardware security module |
US20160241393A1 (en) * | 2015-02-13 | 2016-08-18 | International Business Machines Corporation | Content based hardware security module assignment to virtual machines |
TWM540310U (zh) * | 2016-08-17 | 2017-04-21 | 兆豐國際商業銀行股份有限公司 | 加密驗證系統 |
Family Cites Families (25)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
EP2280502B1 (en) | 1998-06-03 | 2018-05-02 | Cryptography Research, Inc. | Using unpredictable information to Resist Discovery of Secrets by External Monitoring |
US6363480B1 (en) | 1999-09-14 | 2002-03-26 | Sun Microsystems, Inc. | Ephemeral decryptability |
US20030217258A1 (en) | 2002-05-16 | 2003-11-20 | International Business Machines Corporation | Apparatus and method of using ephemeral asymmetric keys to exchange security data between hardware security modules |
US7587595B2 (en) | 2005-05-13 | 2009-09-08 | Intel Corporation | Method and apparatus for providing software-based security coprocessors |
US8205248B2 (en) * | 2007-09-30 | 2012-06-19 | Lenovo (Singapore) Pte. Ltd. | Local verification of trusted display based on remote server verification |
US8539551B2 (en) * | 2007-12-20 | 2013-09-17 | Fujitsu Limited | Trusted virtual machine as a client |
US8045863B2 (en) * | 2007-12-26 | 2011-10-25 | Ciena Corporation | Byte-interleaving systems and methods for 100G optical transport enabling multi-level optical transmission |
US8032942B2 (en) * | 2007-12-31 | 2011-10-04 | Intel Corporation | Configuration of virtual trusted platform module |
US8856504B2 (en) * | 2010-06-07 | 2014-10-07 | Cisco Technology, Inc. | Secure virtual machine bootstrap in untrusted cloud infrastructures |
US8891868B1 (en) | 2011-08-04 | 2014-11-18 | Amazon Technologies, Inc. | Recognizing gestures captured by video |
US9037511B2 (en) | 2011-09-29 | 2015-05-19 | Amazon Technologies, Inc. | Implementation of secure communications in a support system |
KR101907486B1 (ko) * | 2012-09-14 | 2018-10-12 | 한국전자통신연구원 | 보안성이 우수한 실행환경을 제공하는 이동 컴퓨팅 시스템 |
US9037854B2 (en) * | 2013-01-22 | 2015-05-19 | Amazon Technologies, Inc. | Privileged cryptographic services in a virtualized environment |
FR3011654B1 (fr) | 2013-10-08 | 2016-12-23 | Commissariat Energie Atomique | Procede et dispositif d'authentification et d'execution securisee de programmes |
US9158909B2 (en) * | 2014-03-04 | 2015-10-13 | Amazon Technologies, Inc. | Authentication of virtual machine images using digital certificates |
US9734355B2 (en) | 2014-04-11 | 2017-08-15 | Rubicon Labs, Inc. | System and method for an efficient authentication and key exchange protocol |
US9928080B2 (en) * | 2014-09-30 | 2018-03-27 | International Business Machines Corporation | Hardware security module access management in a cloud computing environment |
US10425234B2 (en) * | 2015-08-27 | 2019-09-24 | Cavium, Llc | Systems and methods for perfect forward secrecy (PFS) traffic monitoring via a hardware security module |
EP3516573A1 (en) | 2016-09-22 | 2019-07-31 | Telefonaktiebolaget LM Ericsson (PUBL) | Version control for trusted computing |
US10461943B1 (en) * | 2016-11-14 | 2019-10-29 | Amazon Technologies, Inc. | Transparently scalable virtual hardware security module |
US10387687B2 (en) | 2017-04-07 | 2019-08-20 | Nxp B.V. | Method for symbolic execution on constrained devices |
US11374754B2 (en) * | 2017-09-07 | 2022-06-28 | Visa International Service Association | System and method for generating trust tokens |
US10601590B1 (en) * | 2017-11-09 | 2020-03-24 | Amazon Technologies, Inc. | Secure secrets in hardware security module for use by protected function in trusted execution environment |
US10922185B2 (en) * | 2019-02-19 | 2021-02-16 | Google Llc | I/O to unpinned memory supporting memory overcommit and live migration of virtual machines |
US11500988B2 (en) | 2019-03-08 | 2022-11-15 | International Business Machines Corporation | Binding secure keys of secure guests to a hardware security module |
-
2019
- 2019-03-08 US US16/296,411 patent/US11500988B2/en active Active
-
2020
- 2020-02-13 TW TW109104545A patent/TWI744797B/zh active
- 2020-02-27 BR BR112021017439A patent/BR112021017439A2/pt unknown
- 2020-02-27 IL IL285112A patent/IL285112B2/en unknown
- 2020-02-27 KR KR1020217027783A patent/KR102539777B1/ko active IP Right Grant
- 2020-02-27 CN CN202080019851.4A patent/CN113557509A/zh active Pending
- 2020-02-27 AU AU2020234675A patent/AU2020234675B2/en active Active
- 2020-02-27 EP EP20707625.8A patent/EP3935535A1/en active Pending
- 2020-02-27 WO PCT/EP2020/055160 patent/WO2020182483A1/en active Application Filing
- 2020-02-27 SG SG11202105613PA patent/SG11202105613PA/en unknown
- 2020-02-27 CA CA3132747A patent/CA3132747A1/en active Pending
- 2020-02-27 MX MX2021010588A patent/MX2021010588A/es unknown
- 2020-02-27 JP JP2021547766A patent/JP7388803B2/ja active Active
-
2021
- 2021-08-30 ZA ZA2021/06316A patent/ZA202106316B/en unknown
-
2022
- 2022-10-07 US US17/938,892 patent/US12105805B2/en active Active
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160149877A1 (en) * | 2014-06-05 | 2016-05-26 | Cavium, Inc. | Systems and methods for cloud-based web service security management basedon hardware security module |
TW201635185A (zh) * | 2014-06-05 | 2016-10-01 | 凱為公司 | 雲端式網路服務硬體安全模組之安全金鑰管理系統與方法 |
US20160241393A1 (en) * | 2015-02-13 | 2016-08-18 | International Business Machines Corporation | Content based hardware security module assignment to virtual machines |
TWM540310U (zh) * | 2016-08-17 | 2017-04-21 | 兆豐國際商業銀行股份有限公司 | 加密驗證系統 |
Also Published As
Publication number | Publication date |
---|---|
MX2021010588A (es) | 2021-10-13 |
TW202038114A (zh) | 2020-10-16 |
JP7388803B2 (ja) | 2023-11-29 |
KR20210122288A (ko) | 2021-10-08 |
AU2020234675A1 (en) | 2021-06-10 |
CA3132747A1 (en) | 2020-09-17 |
IL285112A (en) | 2021-09-30 |
IL285112B1 (en) | 2023-12-01 |
WO2020182483A1 (en) | 2020-09-17 |
US20230031297A1 (en) | 2023-02-02 |
US11500988B2 (en) | 2022-11-15 |
KR102539777B1 (ko) | 2023-06-05 |
IL285112B2 (en) | 2024-04-01 |
CN113557509A (zh) | 2021-10-26 |
SG11202105613PA (en) | 2021-06-29 |
AU2020234675B2 (en) | 2022-11-24 |
US12105805B2 (en) | 2024-10-01 |
ZA202106316B (en) | 2023-03-29 |
BR112021017439A2 (pt) | 2021-11-16 |
EP3935535A1 (en) | 2022-01-12 |
US20200285746A1 (en) | 2020-09-10 |
JP2022522645A (ja) | 2022-04-20 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI744797B (zh) | 用於將安全客體之安全金鑰繫結至硬體安全模組之電腦實施方法、系統及電腦程式產品 | |
US10547595B2 (en) | Restricting guest instances in a shared environment | |
US20200076585A1 (en) | Storage device key management for encrypted host data | |
JP7397557B2 (ja) | セキュア実行ゲスト所有者環境制御 | |
JP7546675B2 (ja) | セキュア・ゲストへのセキュリティ・モジュールのセキュア・オブジェクトのバインディング | |
JP7445358B2 (ja) | セキュア・インタフェース・コントロールのためのセキュア実行ゲスト所有者コントロール | |
TWI737172B (zh) | 用於安全作業系統映像之增量解密及完整度驗證之電腦系統、電腦程式產品及電腦實施方法 | |
US11755721B2 (en) | Trusted workload execution | |
JP2023551527A (ja) | 準同型暗号化を使用したセキュアなコンピューティング・リソース配置 | |
US20200004969A1 (en) | Secure operations on encrypted data | |
JP2024527003A (ja) | 機密データ暗号化 | |
TW202307712A (zh) | 一安全客體之認證 | |
Johnson et al. | Confidential Container Groups: Implementing confidential computing on Azure container instances | |
US11645092B1 (en) | Building and deploying an application | |
Yang et al. | Enhancing Security of IaaS Cloud with Fraternal Security Cooperation Between Cloud Platform and Virtual Platform |