TW201635180A - 與網路服務主機通訊之安全硬體安全模組系統與方法 - Google Patents
與網路服務主機通訊之安全硬體安全模組系統與方法 Download PDFInfo
- Publication number
- TW201635180A TW201635180A TW104117752A TW104117752A TW201635180A TW 201635180 A TW201635180 A TW 201635180A TW 104117752 A TW104117752 A TW 104117752A TW 104117752 A TW104117752 A TW 104117752A TW 201635180 A TW201635180 A TW 201635180A
- Authority
- TW
- Taiwan
- Prior art keywords
- hsm
- secure communication
- network service
- partition
- host
- Prior art date
Links
- 230000006854 communication Effects 0.000 title claims abstract description 100
- 238000004891 communication Methods 0.000 title claims abstract description 99
- 238000000034 method Methods 0.000 title claims abstract description 39
- 238000005192 partition Methods 0.000 claims abstract description 112
- 230000001133 acceleration Effects 0.000 claims description 8
- 230000004044 response Effects 0.000 claims description 7
- 238000004519 manufacturing process Methods 0.000 claims description 3
- 238000005457 optimization Methods 0.000 claims description 3
- 230000002085 persistent effect Effects 0.000 claims description 3
- 238000003860 storage Methods 0.000 abstract description 11
- 238000013459 approach Methods 0.000 abstract description 2
- 238000007726 management method Methods 0.000 description 75
- 238000010586 diagram Methods 0.000 description 19
- 230000008569 process Effects 0.000 description 14
- 230000006870 function Effects 0.000 description 9
- 230000003068 static effect Effects 0.000 description 7
- 238000004590 computer program Methods 0.000 description 5
- 230000000670 limiting effect Effects 0.000 description 5
- 238000012545 processing Methods 0.000 description 4
- 238000013507 mapping Methods 0.000 description 3
- 230000010365 information processing Effects 0.000 description 2
- 230000003993 interaction Effects 0.000 description 2
- 230000007246 mechanism Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 230000002829 reductive effect Effects 0.000 description 2
- 238000012550 audit Methods 0.000 description 1
- 238000013475 authorization Methods 0.000 description 1
- 238000010367 cloning Methods 0.000 description 1
- 230000003247 decreasing effect Effects 0.000 description 1
- 238000012217 deletion Methods 0.000 description 1
- 230000037430 deletion Effects 0.000 description 1
- 210000003746 feather Anatomy 0.000 description 1
- 239000000463 material Substances 0.000 description 1
- 230000000116 mitigating effect Effects 0.000 description 1
- 238000010295 mobile communication Methods 0.000 description 1
- 238000004806 packaging method and process Methods 0.000 description 1
- RLBIQVVOMOPOHC-UHFFFAOYSA-N parathion-methyl Chemical compound COP(=S)(OC)OC1=CC=C([N+]([O-])=O)C=C1 RLBIQVVOMOPOHC-UHFFFAOYSA-N 0.000 description 1
- 230000002093 peripheral effect Effects 0.000 description 1
- 230000002441 reversible effect Effects 0.000 description 1
- 230000001360 synchronised effect Effects 0.000 description 1
- 238000012795 verification Methods 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/06—Network architectures or network communication protocols for network security for supporting key management in a packet data network
- H04L63/062—Network architectures or network communication protocols for network security for supporting key management in a packet data network for key distribution, e.g. centrally by trusted party
-
- 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
-
- 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/602—Providing cryptographic facilities or services
-
- 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
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/04—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
- H04L63/0428—Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the data content is protected, e.g. by encrypting or encapsulating the payload
- H04L63/0485—Networking architectures for enhanced packet encryption processing, e.g. offloading of IPsec packet processing or efficient security association look-up
-
- 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
-
- 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/32—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials
- H04L9/3234—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols including means for verifying the identity or authority of a user of the system or for message authentication, e.g. authorization, entity authentication, data integrity or data verification, non-repudiation, key authentication or verification of credentials involving additional secure or trusted devices, e.g. TPM, smartcard, USB or software token
-
- 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/21—Indexing scheme relating to G06F21/00 and subgroups addressing additional information or applications relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/2115—Third party
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L2209/00—Additional information or applications relating to cryptographic mechanisms or cryptographic arrangements for secret or secure communication H04L9/00
- H04L2209/12—Details relating to cryptographic hardware or logic circuitry
- H04L2209/127—Trusted platform modules [TPM]
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/16—Implementing security features at a particular protocol layer
- H04L63/168—Implementing security features at a particular protocol layer above the transport layer
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L67/00—Network arrangements or protocols for supporting network services or applications
- H04L67/01—Protocols
- H04L67/02—Protocols based on web technology, e.g. hypertext transfer protocol [HTTP]
Landscapes
- Engineering & Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- Theoretical Computer Science (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Software Systems (AREA)
- Computer Networks & Wireless Communication (AREA)
- Signal Processing (AREA)
- Physics & Mathematics (AREA)
- General Physics & Mathematics (AREA)
- Computing Systems (AREA)
- General Health & Medical Sciences (AREA)
- Bioethics (AREA)
- Health & Medical Sciences (AREA)
- Data Exchanges In Wide-Area Networks (AREA)
Abstract
提出了一種新方案,該方案考慮用以支援在硬體安全模組(HSM)和在雲端中託管的多個網路服務之間的安全通訊以向該HSM卸載它們的金鑰儲存、管理和密碼操作的系統和方法。多個HSM虛擬機器(VM)中的每個HSM-VM建立與網路服務主機/伺服器之間的安全通訊通道,以向專用於支援網路服務的HSM的HSM分區卸載其金鑰管理和密碼操作。管理VM的HSM還可以被部署為監控和管理HMS-VM的操作以支援多個網路服務主機。
Description
本申請案主張於2014年6月5日提交之名稱為「與網路服務主機通訊之安全性硬體安全模組系統與方法(Method And System For Cloud-Based Web Service Security Management Based On Hardware Security Modules(HSMs))」的美國臨時專利申請第62/008,112號的權利,該申請通過引用以其整體被併入於此。
本申請案與2014年6月9日提交之名稱為「與網路服務主機通訊之安全性硬體安全模組系統與方法(Systems and Methods for Cloud-Based Web Service Security Management Based On Hardware Security Modules)」的共同待審之美國專利申請案第14/299,739號相關,該申請通過引用以其整體被併入於此。
隨著服務提供者越來越多地在雲端中第三方資料中心處託管它們的網路服務(例如網站),例如亞馬遜網路服
務(AWS)和谷歌(Google)網站,在第三方資料中心處託管的這些網路服務的安全和金鑰管理已經變成重要的問題。例如RSA私密金鑰操作等之密碼操作、與這些網路服務的安全通訊所需的加密和解密操作消耗了在託管網路服務的伺服器處的大量的CPU週期和計算資源,並且較佳的是被卸載給專用於該目的的獨立模組。
硬體安全模組(HSM)是物理計算設備,該物理計算設備保護和管理用於強認證的金鑰並且提供密碼處理能力。傳統地,每個HSM都採用插入卡、或者直接附接至電腦或網路服務器以從伺服器卸載金鑰管理和密碼操作的外部設備之形式。然而,硬體卸載不是一直可用,尤其對於在第三方資料中心處託管的網路服務而言,因為資料中心處的大多數伺服器不具有硬體RSA加速器。此外,用於在伺服器上運行虛擬機器的一些管理程式產品(例如VMWare的vSphere和Microsoft的Hyper-V)並不支援非連網的單根I/O虛擬化(SR-IOV),這使得設備能夠在各種週邊構件互連(PCI)擴展(PCIe)硬體功能之間分離對其資源的存取,並且因此使得它們非常難以提供針對密碼操作的硬體卸載。因此,需要一種改進的系統和方法來經由HSM為在第三方資料中心處託管的雲端式網路服務提供安全金鑰管理。
相關技術的前述示例及其相關限制旨在作為說明性而非排他性。在閱讀了說明書並研究了附圖時,相關技術的其他限制將變得顯而易見。
圖式簡單說明
100‧‧‧系統
102‧‧‧硬體安全模組(HSM)
103‧‧‧計算單元/設備/主機
104‧‧‧HSM虛擬機器
(HSM-VM)
106‧‧‧虛擬機器(VM)
107‧‧‧HSM服務單元
108‧‧‧HSM分區
109‧‧‧金鑰儲存庫
110‧‧‧管理程式
111‧‧‧彈性HSM集合虛擬功能(VF)網路磁碟
116‧‧‧網路介面卡VF HSM驅動器安全通訊伺服器
122‧‧‧OS
124‧‧‧物理功能(PF)網路磁碟
126‧‧‧PF HSM驅動器
128‧‧‧受信任平台模組(TPM)
200‧‧‧硬體實施
202‧‧‧HSM配接器
204‧‧‧計算單元
206‧‧‧SR-IOV PCIe橋
208‧‧‧多核處理器
210‧‧‧安全處理器
212‧‧‧PCIe槽
300‧‧‧流程圖
302-308‧‧‧方塊
400‧‧‧流程圖
402-410‧‧‧方塊
當結合附圖閱讀時,從以下詳細說明即可最好地理解本發明的構想。應注意,根據業界的標準實務,各種特徵沒有按比例繪製。實際上,為了清楚說明,各種特徵的尺寸係可任意地增加或減小。
第一圖描繪了根據一些實施例之經由HSM支援雲端式網路服務的密碼操作卸載與加速之系統100的圖示實例。
第二圖描繪了根據一些實施例之在第一圖中描繪的用於經由HSM的雲端式網路服務安全管理的系統100的硬體實施200的示例。
第三圖描繪了根據一些實施例之支援雲端式網路服務的安全金鑰管理和密碼操作過程的示例的流程圖。
第四圖描繪了根據一些實施例之支援用於雲端式網路服務的密碼操作卸載與加速的安全通訊過程的示例的流程圖。
第五圖描繪了根據一些實施例之用於HSM從初始重置狀態移動至操作狀態的過程流程的示意圖。
第六圖描繪了根據一些實施例之在PF HSM驅動器和HSM之間的四次交握的示例示意圖。
第七圖描繪了根據一些實施例之在VF HSM驅動器和HSM分區之間的四次交握的示例示意圖。
本說明書以下揭露內容提供了用於實施標的主題的
不同特徵的許多不同實施例或示例。以下說明構件和配置的具體示例以簡化本說明書。當然,這些僅是示例而旨不在於限制。此外,本說明書可以在各種示例中重複元件符號及/或字母。這種重複是為了簡化和清楚的目的,而不用於表示所討論的各種實施例及/或配置之間的關係。
本發明提出了一種新方案,該方案考慮用以支援在硬體安全模組(HSM)和在雲端中託管的多個網路服務之間的安全通訊以向該HSM卸載它們的金鑰儲存、管理和密碼操作的系統和方法。每個HSM是用於網路服務的密碼加速的、高性能的、符合聯邦資訊處理標準(FIPS)140的安全解決方案。具體地,每個HSM可以是硬體/韌體多晶片嵌入的密碼模組/配接器,其提供包括但不限於金鑰管理、RSA私密金鑰操作、亂數產生以及散列處理的密碼功能,連同特定於協定的指令以支援各種安全協定。多個HSM虛擬機器(VM)中的每個HSM-VM建立與企業/網路(web)/雲端服務主機/伺服器的安全通訊通道,以向HSM的專用於支援網路服務的HSM分區卸載其金鑰管理和密碼操作。管理VM的HSM還可以被部署為監控和管理HMS-VM的操作以支援多個網路服務主機。
[17]所提出的方案使得在第三方資料中心處託管它們的網站的網路服務提供者能夠向一個或多個基於雲端的HMS卸載其金鑰管理和密碼操作,以節省網站的主機上的計算資源。重要地,每個企業/網路/雲端應用伺服器的金鑰和憑證被保存在HMS上的符合FIPS 140-2的安全環境中,符合
FIPS 140-2的安全環境僅由該企業/網路/雲端應用伺服器以及專用於服務企業/網路/雲端服務主機的對應HSM可存取。託管該企業/網路/雲端應用伺服器的第三方資料中心甚至不能夠存取其金鑰和憑證。這種方案啟用了網路服務提供者的金鑰管理和密碼操作的卸載,因此它們可以以高度安全的方式來完成。
第一圖說明了經由硬體安全模組(HSM)支援用於雲端式網路服務的金鑰操作卸載和加速的系統100的示圖的示例。儘管示圖將構件描繪為功能獨立的,但是這種描繪僅僅是為了說明的目的。應該理解,該圖中描繪的構件可以被任意組合或劃分為獨立的軟體、韌體及/或硬體構件。此外,還應該理解,不管這些構件如何被組合或劃分,它們可以在相同的主機或多個主機上執行,並且其中多個主機可以由一個或多個網路連接。
在第一圖的示例中,系統100至少包括硬體安全模組(HSM)102、多個HSM虛擬機器(HSM-VM)104、HSM管理VM 106以及受信任平台模組(TPM)128。在一些實施例中,HSM 102是多晶片嵌入的硬體/韌體密碼模組,其具有軟體、韌體、硬體或用於實現目的的另一構件。HSM-VM 104、HSM管理VM 106通常在網路可接入多租戶計算單元/設備/主機103上運行,計算單元/設備/主機103依照聯邦資訊處理標準(FIPS)被認證用於執行安全的密碼操作。計算單元/設備/主機103包括CPU或微處理器、例如RAM的記憶體(也稱為主記憶體)以及其中儲存有軟體指令用於實踐一個或多
個過程的例如非易失性記憶體的儲存單元(也稱為次要記憶體)。當軟體指令被執行時,至少軟體指令的子集被載入到記憶體中,並且計算單元變成用於實踐過程的專用計算單元。當在通用計算單元上實施時,電腦程式程式碼片段配置計算單元以產生具體的邏輯電路。過程可以備選地至少部分地體現在用於執行過程的、由專用積體電路(ASIC)形成的數位訊號處理器中。對於非限制示例來說,主機103可以是計算設備、通訊設備、儲存裝置或者任何電子設備,其中計算設備可以是但不限於:膝上型PC、桌上型PC、移動設備或例如x86伺服器的伺服器,並且通訊設備可以是但不限於行動電話。
在第一圖的示例中,HSM 102、HSM-VM 104和HSM管理VM 106中的每一個都具有通訊介面(如下所述),該通訊介面是使得構件能夠在遵循某些通訊協定(例如TCP/IP協定)的網路(未示出)上彼此通訊以及與其他設備/主機/伺服器通訊。這種網路可以是但不限於網際網路、內部網路、廣域網路(WAN)、區域網路(LAN)、無線網路、藍牙、WiFi、行動通訊網路或任何其他網路類型。網路的物理連接和通訊協定對於本領域技術人員來說是習知的。
第二圖描繪了在第一圖中描繪的用於經由HSM的雲端式網路服務安全管理的系統10 ㄖ 0的硬體實施200的示例。如在第二圖的示例中所示,用於HSM 102的FIPS認證的HSM設備200包括FIPS 140-2 2級和3級認證的計算單元204,計算單元204具有一個或多個CPU、RAM和儲存單元,並且
被配置為運行多個(例如,多達32個)虛擬機器,例如HSM-VM 104和HSM管理VM 106。HSM設備200進一步包括FIPS認證的具有SR-IOV能力的HSM配接器202。如在第二圖的示例中所示,HSM配接器202進一步包括SR-IOV PCIe橋206,SR-IOV PCIe橋206將HSM配接器202經由第一PCIe連接(例如,PCIe Gen2 x8)連接至計算單元204中的CPU,其中PCIe是被設計為支援硬體I/O虛擬化以啟用最大系統匯流排輸送量、低I/O引腳數以及用於匯流排設備的小物理封裝的高速串列電腦擴展匯流排標準。橋206被進一步配置為跨高速通訊介面(例如,10G XAUI介面)連接至HSM配接器202的多核處理器208(例如,例如OCTEON CN 6130的多核MIPS64處理器)。HSM配接器202進一步經由第二PCIe連接(例如,PCIe Gen 2*4)包括安全處理器210(例如,NITROX CNN3550),其中安全處理器210被配置為通過利用硬體加速器和實施安全演算法的嵌入式軟體執行密碼操作來啟用密碼加速。在一些實施例中,HSM設備200被提供並且被預先配置有預設網路和認證憑證,使得HSM設備200可以是用於密碼卸載以及金鑰和憑證儲存的FIPS設備。
在第一圖的示例中,經由HSM配接器202實施的HSM 102被配置為通過卸載網路服務主機的金鑰儲存和密碼操作來向多個網路服務提供者/主機提供FIPS 140-2總體的3級認證的安全解決方案。對於非限制示例來說,加密/解密金鑰管理是針對對稱(例如,AES)及/或非對稱(例如,RSA)金鑰,並且將被加速的密碼操作是針對被設計為在網際網路
上提供通訊安全的例如傳輸層安全性(TLS)及/或安全資料傳輸層(SSL)的密碼協定。由HSM102支援的附加的服務可以包括但不限於資料庫加密、認證機構(CA)、資料版權管理(DRM)等。如第二圖所示,HSM 102的HSM配接器202經由PCIe槽212被物理地連接至運行HSM-VM 104和HSM管理VM 106的計算單元204,以便於以安全方式與網路服務主機互動並且向網路服務主機提供高速密碼加速。由HSM 102提供的密碼功能包括但不限於RSA操作、亂數產生以及散列處理,連同特定於協定的指令,以經由嵌入到HSM配接器202中的安全處理器210支援例如TLS/SSL的各種安全協定。由HSM 102提供的這些密碼功能可以被系統100的其他構件經由由HSM 102限定和提供的應用程式設計介面(API)來存取。
在一些實施例中,HSM 102可以被進一步劃分為多個HSM分區108,其中每個HSM分區108都專用於支援金鑰和安全憑證管理並且在網路上經由具有預先配置的值的一個或多個密碼加速單元以及以下詳細討論的專用金鑰儲存庫109的其對應的HSM-VM 104執行從網路服務提供者/主機卸載的密碼操作。在一些實施例中,HSM分區108是由HSM管理VM 106利用HSM 102的韌體及其硬體實施(例如,HSM配接器202)產生的軟分區(以下詳細討論)。在一些實施例中,HSM 102在操作的活動狀態下可以支援多達某數量(例如,32)的HSM分區108,而HSM 102上的剩餘HSM分區108處於非活動狀態。一旦達到該數量,一個或多個HSM分
區108必須從活動狀態被移動到非活動狀態,以便於另一HSM分區108被移動到有效狀態以服務其使用者/網路服務主機。在一些實施例中,HSM分區108中的一個或多個HSM分區108可以被合併並且從一個HSM 102被移動到另一個HSM 102。
在第一圖的示例中,每個HSM-VM 104及其對應的HSM分區108形成HSM服務單元107,HSM服務單元107與特定的使用者/網路服務主機通訊,並且從特定的使用者/網路服務主機卸載安全金鑰管理和密碼操作。在此,每個HSM分區108與相同HSM服務單元107中的HSM-VM 104具有一對一之對應關係,其中HSM分區108與HSM服務單元107中的HSM-VM 104互動,並且僅允許來自HSM服務單元107中的HSM-VM 104的存取。在一些實施例中,在系統100及其驅動的初始化期間,唯一的靜態秘密(例如,12位元組長)被配置並指派給每個HSM-VM 104。然後,針對指派給特定HSM-VM 104的靜態秘密以及在HSM分區108和HSM-VM 104之間的互動過程期間即時提供的動態秘密(例如,8位元組長),檢查對於來自相同HSM服務單元107中的HSM-VM 104的HSM分區108的每個後續請求。
在一些實施例中,如由FIPS 140-2 3級所要求的,每個HSM服務單元107支援並請求用於由使用者/網路服務主機的集合操作的基於身份的認證。使用者中的每個使用者可以存取HSM服務單元107以管理HSM服務單元107及/或向HSM服務單元107卸載金鑰管理和電腦密集的密碼操作。如
以下詳細討論的,使用者中的其中一個使用者作為管理員來經由HSM管理VM 106利用一群組原則來產生並初始化HSM服務單元107。其他使用者包括至少一個網路服務主機,該至少一個網路服務主機經由HSM服務單元107的對應的HSM VM 104利用憑證登錄到HSM服務單元107。在一些實施例中,想要經由對應的HSM-VM 104登錄並存取HSM服務單元107以卸載其密碼操作的每個使用者/網路服務主機應該向HSM服務主機107提供有效憑證,以便於存取HSM服務主機,其中該憑證在請求產生HSM服務單元107期間由受信任認證機構(CA)130發佈。在一些實施例中,使用者/網路服務主機需要向HSM服務單元107提供CA憑證的完整鏈,這些CA憑證全部是有效的並且尚未被撤銷的。
在一些實施例中,每個HSM服務單元107允許針對不同的命令類型的API調用的不同集合,其中由HSM服務單元使其可用的命令類型基於登錄到HSM服務單元107中的使用者類型而變化,並且一些API調用不要求任何使用者認證或登錄。對於非限制示例來說,管理員經由HSM管理VM 106可以利用命令的集合來初始化和管理(例如,產生、刪除、備份、重新儲存)HSM服務單元107,同時網路服務主機可以利用不同集合的命令用於經由HSM服務單元107進行金鑰管理和密碼加速。
在一些實施例中,HSM服務單元107的每個HSM分區108包括金鑰儲存庫109,金鑰儲存庫109被配置為接受並儲存各種類型的物件用於對應網路服務主機的認證及/或密
碼操作。這裡,物件包括但不限於安全認證憑證、使用者生成/導入的金鑰、憑證以及用於由HSM分區108服務的對應HSM-VM 104的配置。這裡,儲存在金鑰儲存庫109中的所有金鑰、密碼及/或憑證被維護在隔離的和防篡改的環境中,例如HSM 102的FIPS 140-2 3級認證的硬體實施(例如,HSM配接器202),而沒有儲存在系統100中的任何其他地方(例如,HSM-VM 104的主機103)。在一些實施例中,物件在被儲存在金鑰儲存庫109之前經由加密金鑰被編碼和被加密,其中加密金鑰對於每個金鑰儲存庫109是唯一的。因此,除了網路服務提供者/主機之外,沒有實體(例如,其他網路服務主機)可以經由其對應的HSM-VM 104存取(例如,讀取/寫入)HSM分區108的金鑰儲存庫109的認證憑證。
在一些實施例中,每個HSM服務單元107都使用唯一的HSM ID來標識,該唯一的HSM ID是利用HSM配接器202的設備序號、主機103的網路介面卡116的MAC位址、網路服務主機的功能變數名稱(例如,在憑證中使用的名稱)以及任何使用者提供的字串中的一個或多個生成的字串。在一些實施例中,儲存在金鑰儲存庫109中的每個物件被標識並且可以利用唯一的金鑰處理器來存取,其中金鑰處理器連同HSM ID一起形成用於該物件的全域唯一識別碼。當網路服務主機使用其HSM ID存取對應的HSM服務單元107時,金鑰處理器足以唯一地標識HSM分區108的金鑰儲存庫109中的每個物件。在一些實施例中,從一個HSM分區108移動到另一個HSM分區108的物件可以不獲得相同的識別字,除
非兩個HSM分區都被配置為在相同的高可用性(HA)/備份域中。
在一些實施例中,每個HSM分區108的金鑰儲存庫109被配置為支援對象操作,物件操作包括但不限於金鑰儲存庫109中的物件的生成、刪除、查找、輸入、輸出以及產生。這裡。每個物件連同其屬性(包括但不限於時間戳記、擁有者、可輸出、使用等)一起被儲存在金鑰儲存庫109中。物件標誌也可以被採用以限定物件的用於包裝、輸出、簽名生成、驗證等的可用性。金鑰儲存庫109在使用用於密碼操作的物件之前基於儲存的屬性來檢查每個物件的有效性(例如,日期和時間)。針對憑證撤銷列表(CRL)或者使用者/應用承認的憑證白名單的集合驗證了憑證。在一些實施例中,當產生或輸入物件時,金鑰儲存庫109執行一致性檢查以避免在金鑰儲存庫109中儲存無效的物件/金鑰。在一些實施例中,金鑰儲存庫109支援金鑰儲存庫109中的金鑰的所選屬性的檢索和修改。
在一些實施例中,當HSM 102對HSM服務單元107的每個HSM分區108中的金鑰儲存庫109中的金鑰數量進行限制時(例如,大約50K個金鑰),HSM服務單元107的集合可以被連接在一起以形成所謂的「彈性」HSM集合111,該彈性HSM集合111通過將被存取的金鑰儲存庫109組合成一個彈性金鑰儲存庫來無縫地擴展它們的金鑰儲存庫109的大小。這裡,HSM服務單元107不需要位於同一HSM 100上,並且在不同HSM 100上運行的不同HSM服務單元107可以
邏輯地相互連接並形成彈性HSM集合111。利用id EK_SET_ID來標識彈性HSM集合111中的每個HSM服務單元107,其中彈性HSM集合111中的第一HSM服務單元107是基礎HSM服務單元,並且剩餘的HSM服務單元是擴展HSM服務單元。預設地,每個HSM服務單元107在其EK_SET_ID被設置為0的單一實例彈性HSM集合111中,其中該集合可以在需要時被擴展。
在操作期間,彈性HSM集合111中的所有HSM服務單元107都被提供給使用者/網路服務主機作為具有組合的金鑰儲存庫的單個邏輯HSM服務單元。在一些實施例中,彈性HSM集合111中的每個物件的金鑰處理器都被形成為映射表形式的本地金鑰儲存庫109中的EK_SET_ID ||金鑰記憶體。如此,通過在彈性HSM集合111中包括或去除一個或多個HSM服務單元107,用於彈性HSM集合111的組合的金鑰儲存庫的大小可以隨著所支援的最小大小而被動態地增加或減小。在一些實施例中,當一個HSM服務單元107的金鑰儲存庫109中的所有金鑰都可以被移動到集合中的不同HSM服務單元107時,用於彈性HSM集合111的金鑰儲存庫的大小可以通過合併HSM服務單元107而被減小。每個物件的金鑰處理器還需要在HSM服務單元107的合併期間被更新。經由以下討論的管理API,經由HSM管理VM 106來初始化和管理彈性HSM集合111中的HSM服務單元107,其中對於基礎HSM服務單元的任何操作還在對擴展HSM服務單元執行。
在一些實施例中,使得具有多個HSM服務單元107
的彈性HSM集合111的配置對於使用者/網路服務主機來說是透明的,其中只有彈性HSM集合111中的基礎HSM服務單元被暴露給使用者。在這種情況下,彈性HSM集合111中的擴展HSM服務單元將接受僅來自基礎HSM服務單元、而不直接來自使用者的連接。使用者/網路服務主機可以僅與基礎HSM服務單元通訊來用於請求金鑰管理和密碼操作,並且基礎HSM服務單元可以根據需要經由反向通道向擴展HSM服務單元卸載這種接收到的請求。
在一些實施例中,使用者知道具有多個HSM服務單元107的彈性HSM集合111的配置,並且為了可擴展性和性能,它可以與彈性HSM集合111中的擴展HSM服務單元通訊並且向彈性HSM集合111中的擴展HSM服務單元直接卸載其金鑰管理及/或密碼操作而不經過基礎HSM服務單元。在這種情況下,基礎HSM服務單元需要將使用者憑證克隆到彈性HSM集合111中的每個擴展HSM服務單元上,並且彈性HSM服務集合111中的每個物件的金鑰處理器的映射被提供給使用者以用於存取HSM服務單元的金鑰儲存庫。在一些實施例中,通過基礎HSM服務單元來集中管理金鑰管理操作。
第三圖描繪了支援雲端式網路服務的安全金鑰管理和密碼操作的過程的示例的流程圖。儘管該圖出於說明的目的以特定順序描繪了功能步驟,但是該處理不限於步驟的任何特定順序或配置。本領域技術人員將會理解,可以省略、重新安排、組合及/或以各種方式適配該圖中所示的各個步驟。
在第三圖的示例中,流程圖300開始於方塊302,其中在網路上建立了與網路服務主機的安全通訊通道以經由安全通訊通道卸載其金鑰管理和密碼操作。流程圖300繼續到方塊304,其中網路服務主機的金鑰和憑證被儲存在HSM配接器上的隔離的和防篡改的環境中的HSM分區的金鑰儲存庫中。流程圖300繼續到方塊306,其中由HSM分區使用所儲存的網路服務主機的金鑰和憑證來執行從網路服務主機卸載的密碼操作。流程圖300結束於方塊308,其中密碼操作的結果經由安全通訊通道被提供給網路服務主機。
在第一圖的示例中,HSM服務單元107的每個HSM-VM 104被配置為經由安全通訊通道與網路服務提供者/主機互動以使得網路服務提供者/主機能夠認證其自身,以便於向專用於HSM-VM 104的HSM 102的特定HSM分區108卸載其網路服務提供者/主機的金鑰管理和密碼操作。HSM-VM 104在管理程式110的頂部上運行,管理程式110在主機103上運行HSM-VM 104和HSM管理VM 106。管理程式向每個VM呈現虛擬操作平台並且管理主機103上的每個VM的執行。每個HSM-VM 104是執行程式以模擬例如作業系統(OS)的計算環境的軟體實施。HSM-VM 104和網路服務提供者/主機之間的通訊通道/會話的持續時間隨著網路服務提供者/主機的每次登錄試圖而改變,並且安全通訊通道可以僅跟隨網路服務提供者/主機與HSM-VM 104之間的成功安全交握而被建立。在一些實施例中,用於向HSM分區108認證HSM-VM 104的動態秘密也跟隨安全通訊通道的建立而
被生成。
在一些實施例中,每個HSM-VM 104包含以下軟體構件中的一個或多個:安全OS(例如,安全性增強型Linux或SE-Linux)、被配置為與主機103的物理網路介面卡/卡116互動以接收和傳輸專用於特定HSM-VM 104的通訊(例如,分組)的虛擬功能(VF)網路磁碟114、以及被配置為與專用於特定HSM-VM 104的HSM 102的HSM分區108互動並且在HSM-VM 104和HSM分區108之間建立請求/回應通訊路徑的VF HSM驅動器118。HSM-VM 104的VF HSM驅動器118和HSM 102的HSM分區108通過以上討論的SR-IOV PCIe橋相互通訊,並且每個通訊以符合FIPS的方式發生。如本文所提到的,VF驅動器是與網路介面卡(例如,網路介面卡116)上的PCIe物理功能(PF)相關聯的羽量級PCIe功能,該網路介面卡支援單根I/O虛擬化(SR-IOV)並且表示網路介面卡的虛擬化實例。每個VF與PF和其他VF共用網路介面卡上的一個或多個物理資源,例如外部網路埠。
在一些實施例中,在主機103的相同管理程式110上運行的HSM-VM 104相互隔離並且一個HSM-VM 104不能夠存取任何其他HSM-VM 104的資料/通訊。在通訊期間,由HSM-VM 104的VF網路磁碟114從物理網路介面卡116接收到的分組經由靜態目的地MAC位址被過濾,該靜態目的地MAC位址對於每個VF驅動器來說是唯一的並且不能被VF驅動器改變/配置。MAC位址基於SR-IOV映射被直接傳送至HSM-VM 104的VF網路磁碟114。當從HSM-VM 104傳輸分
組時,VF網路磁碟114直接將分組放入硬體佇列中,該硬體佇列被發送出物理網路介面卡116,分組無需由管理程式110或相同主機103上運行的任何其他HSM-VM 104接觸。
在一些實施例中,每個HSM-VM 104進一步包括被配置為經由提供的SSL/TLS功能通過網路在HSM-VM 104與網路服務提供者的伺服器/主機之間建立安全通訊通道的安全通訊伺服器120(例如,TurboSSL加速的薄式伺服器)以允許受保護的網路服務提供者存取HSM分區108。為了確保安全通訊,安全通訊伺服器120在HSM-VM 104和網路服務主機之間採用憑證式相互認證,並且使用具有最高安全性的受限的密碼集合。安全通訊通道由安全通訊伺服器120使用相互認證的SSL VPN來建立。在一些實施例中,基於RSA的憑證被用於相互認證。由安全通訊伺服器120支援的密碼集合提供前向保密性,並且防止通過安全通訊通道對區塊編碼器鏈的已知攻擊。
在其操作期間,HSM-VM 104的安全通訊伺服器120打開與相同HSM服務單元107中的其對應的HSM分區108的會話。安全通訊伺服器120監聽來自使用者/網路服務提供者的連接請求。對於從使用者/網路服務接收到的每個新的連接請求,安全通訊伺服器120建立與使用者/網路服務提供者的安全通訊通道,其中秘密頻道用於傳輸來自使用者/網路服務的所有請求。使用者需要向HSM-VM 104和HSM分區108提供認證其自身所需的登錄憑證(例如,功能變數名稱、憑證、使用者ID和密碼等),並且僅被允許發佈非特權請求(例
如,針對HSM分區108的資訊的請求)直到其登錄憑證由HSM-VM 104認證為止。在一些實施例中,如以下詳細討論的,通訊中的所有方將具有由經授權的、受信任的外部或本地認證機構(CA)所發佈的憑證。類似地,每個網路服務主機可以具有其自身的本地CA來支援多個使用者。安全通訊伺服器120驗證接收到的登錄憑證,包括使用者提供的用於域和角色正確性的憑證。一旦網路服務提供者被認證,然後安全通訊伺服器120將請求轉換為命令以從網路服務主機向對應的HSM分區108卸載金鑰管理和密碼(例如,RSA)操作,及/或經由HSM-VM 104將私密金鑰儲存在HSM分區108的金鑰儲存庫109中。在一些實施例中,HSM-VM 104為了性能優化向在HSM分區108上運行的x86高級加密標準(AES)引擎卸載密碼操作。在來自使用者的命令已經由HSM分區108處理之後,安全通訊伺服器120通過安全通訊通道通過網路將結果返回給使用者。在一些實施例中,使用者可以使用請求ID保持跟蹤其命令到HSM-VM 104,請求ID被傳輸至HSM-VM 104並且連同回應被發送回。在一些實施例中,HSM分區108和HSM-VM 104被配置為通過記錄誰已經登錄、什麼金鑰與命令的時間戳記一起被使用的日誌來支援審計日誌機制。
在一些實施例中,HSM-VM 104的安全通訊伺服器120被配置為產生隨著不同的使用者基於他們的類型具有不同安全強度的多個安全通訊通道。在一些實施例中,安全通訊伺服器120支援具有多個使用者的多個併發會話以通過網
路存取HSM-VM 104。針對非限制性示例:
●系統100的管理員被要求提供認證的金鑰對(以下被詳細討論)以便於建立安全通訊通道,該管理員通過該安
全通訊通道可以向HSM VM 104和HSM分區108發佈管理命令。
●使用者/網路服務主機被要求提供在產生HSM分區108和使用者域的憑證期間生成的金鑰對,以便於能夠向HSM分區108卸載密碼操作並且存取其金鑰儲存庫109。
在一些實施例中,安全通訊伺服器120被配置為在網路服務主機和智慧卡之間建立對安全通訊通道的安全強度具有限制(例如,多達192位元)的安全通訊通道,該智慧卡被配置為執行數個卸載的密碼操作(例如,最大2048位RSA操作)。在一些實施例中,安全通訊伺服器120以透明模式支援具有多個HSM服務單元107的彈性HSM集合111或者將HSM服務單元107暴露為多個單元以支援網路服務主機。
在一些實施例中,安全通訊伺服器120被配置為利用由HSM-VM 104提供的一個或多個庫來經由安全通訊通道將用於使用者/網路服務主機的金鑰管理和密碼操作的請求/回應卸載至其對應的HSM分區108,其中庫可以是遵循公開金鑰加密標準(PKCS)的外部引擎,例如,PKCS#11引擎,或者針對OpenSSL的補丁。在一些實施例中,通過安全通訊通道的所有請求和回應為非同步模式,所以使用者/網路服務
提供者可以在對應網路埠上阻塞/輪詢。在一些實施例中,來自多個使用者/網路服務主機的請求/回應可以通過隧道被傳輸至相同的HSM服務單元107。在一些實施例中,安全通訊伺服器120被配置為接受和應用安全通訊通道的組態檔案形式的組態參數,其中該參數包括但不限於分區主機名稱稱/IP位址、密碼組、SSL金鑰更新時間、到金鑰處理檔的路徑、預設重連時間、調度參數等。
在第一圖的示例中,在HSM 102/HSM配接器202上運行的TPM 128被配置為提供用於服務主機107的可靠性和完整性。TPM 128提供在HSM配接器202的生產期間認證和安裝的一對持久性金鑰(公開金鑰和私密金鑰),其中該金鑰對不能被任何其他方讀取、修改或歸零。TPM 128被配置為利用該金鑰對來開發本地認證機構(CA)130及其憑證以向包括HSM-VM 104和HSM分區108的HSM服務單元107擴展可靠性和完整性,從而減輕對系統的偽裝攻擊。在其操作期間,TPM 128僅由包括本地CA 130的內部管理模組可存取。在不具有這種不可存取的TPM 128的情況下,其手中具有憑證(具有嵌入其中的HSM設備200的序號)及/或私密金鑰的攻擊者可以假冒系統100並且在任意機器上運行克隆類型的安全協議以及以清楚的格式參看金鑰。
在第一圖的示例中,本地CA 130是HSM102的作業系統(例如,安全性增強的Linux或SE-Linux)的軟體模組,並且由TPM 128建立以將源可靠性和完整性特徵擴展到系統100的每個HSM服務單元107。在一些實施例中,本地CA 130
至少包括以下兩種類型的憑證:
●HSM憑證:該憑證包括用於特定HSM服務107的HSM ID。該憑證還指定使用者角色、功能變數名稱及其可使用的目的(例如,備份、使用者授權等)中的一個或多個。
●備份憑證:該憑證可用於備份/克隆的目的。可選地,不同的金鑰對和憑證可以被包括在備份憑證中以隔離任何安全性漏洞。
●這裡,本地CA 130中的憑證被驗證為值得信任。
在第一圖的示例中,HSM管理VM 106被配置為以管理員角色進行服務來管理(例如,產生、刪除、備份、重新儲存)包括HSM-VM 104及其對應的HSM分區108的多個HSM服務單元107以及由HSM-VM 104利用的各種設備。具體地,HSM管理VM 106確定HSM 102內的活動的HSM分區108的數量,載入用於與HSM分區108通訊的各種設備(例如,物理網路介面卡116和HSM 102)的驅動器,啟動並監控專用於HSM分區108的HSM-VM 104,以及處理用於各種設備的關鍵/管理更新。在一些實施例中,HSM管理VM 106運行安全OS(例如,安全性增強的Linux或SE-Linux)122。在一些實施例中,HSM管理VM 106包括物理功能(PF)網路磁碟124,物理功能(PF)網路磁碟124被配置為初始化由HSM-VM 104的VF網路磁碟114使用的物理網路介面卡/卡116,以與它們的相應的網路服務提供者通訊。如本文所提到的,RF驅動器是支援SR-IOV介面的網路介面卡(例如,網
路介面卡116)上的PCIe功能。RF驅動器被用於配置和管理網路介面卡的SR-IOV功能,例如啟用虛擬化和暴露PCIe VF。
在一些實施例中,HSM管理VM 106進一步包括PF HSM驅動器126,PF HSM驅動器126被配置為建立和初始化HSM 102用於利用HSM-VM 104的VF HSM驅動器118操作其HSM分區108。RF HSM驅動器126執行初始交握並建立與HSM 102的請求/回應通訊通道。PF HSM驅動器126標識HSM 102中的活動的HSM分區108的數量並將其傳輸至HSM管理VM 106。如果在HSM 102上存在活動的HSM分區108,則HSM管理VM 106檢查對應VM圖像的完整性,產生每個HSM-VM都專用於HSM分區108中的一個HSM分區的多個HSM-VM 104,以及使用可用於初始化HSM 102的命令並管理HSM 102的HSM分區108。如果在HSM 102中沒有可用的活動的HSM分區,則HSM管理VM 106不啟動HSM-VM 104。HSM管理VM 106隨後可以基於HSM 102中可用的HSM分區的數量及/或請求卸載金鑰管理和密碼操作的網路服務提供者的數量來產生及/或去除HSM-VM 104。
在一些實施例中,一旦產生了HSM服務單元107,HSM管理VM 106利用所請求的策略和使用者帳戶初始化HSM服務單元107的每個HSM分區108。當HSM服務單元107被產生時,其HSM分區108被初始化並綁定至網路服務主機的域。在一些實施例中,產生了預設使用者帳戶並且由TPM 128生成用於產生安全通訊通道的金鑰對連同其憑證。
這裡,預設使用者是HSM分區108的本地使用者,並且其憑證被維護在HSM分區108中並且永遠不會被發送出HSM配接器202的FIPS邊界。這些憑證僅被用於自動金鑰備份和內部密碼卸載,並且不會暴露給使用者/網路服務提供者,使得其不能夠利用這些憑證登錄。在操作期間,HSM-VM 104在登錄期間將其從網路服務主機接收到的憑證傳輸至其HSM分區108,其中HSM分區108將接收到的憑證與其儲存的值進行比較以確定是否允許使用者卸載其密碼及/或金鑰管理操作。
在其操作期間,HSM管理VM 106基於使用者的域憑證、性能要求和網路配置產生用於使用者/網路服務主機的HSM服務單元107。然後,HSM管理VM 106檢查所請求的性能配置(例如,金鑰儲存庫大小和每秒密碼操作)是否可用。如果可用,則HSM管理VM 106就利用所請求的儲存產生HSM服務單元107的HSM分區108,並且按照所請求的性能指派HSM分區108的密碼核。HSM管理VM 106生成並在HSM分區108的金鑰儲存庫109中保存用於HSM服務單元107的認證的所請求的永久性金鑰對和憑證、以及用於加密永久性金鑰的儲存加密金鑰。HSM管理VM 106還利用提供的網路接入細節(例如IP位址和主機名稱稱的一部分)產生HSM服務單元107的HSM VM 104。最後,當產生的HSM VM 104和HSM分區108兩者準備好時,HSM管理VM 106通過使HSM服務單元107可用於使用者/網路服務主機來啟動HSM服務單元107以卸載其金鑰管理和密碼操作。
當第一圖中描繪的系統100在操作中時,HSM管理VM 106與HSM 102進行通訊以標識HSM 120中可用的活動的HSM分區108的數量。然後,HSM管理VM 106產生多個HSM服務單元107,其中HSM服務單元107中的HSM-VM 104中的每個HSM-VM專用於HSM服務單元107中的對應HSM分區108並且與遵循適當認證的HSM服務單元107中的對應HSM分區108具有一對一對應的關係。HSM管理VM 106還初始化由HSM-VM 104使用的多個網路介面卡/卡116以與網路服務提供者通訊。在其操作期間,每個HSM-VM 104建立與網路服務主機的安全通訊通道,用於從網路服務主機接收請求和資料的分組以及向網路服務主機傳輸請求和資料的分組。當HSM-VM 104經由其網路介面卡116接收來自網路服務主機的請求時,HSM-VM 104將請求轉換為用於HSM 102的命令並將命令傳輸至專用於服務HSM-VM 104和網路服務主機的HSM分區108。專用HSM分區108在FIPS 140-2 3級認證的環境中維護加密/解密/認證金鑰以及用於網路服務主機的其他憑證。HSM分區108進一步執行密碼操作,密碼操作包括但不限於從網路服務主機卸載的金鑰生成和批量數量加密/解密操作。然後,HSM分區108經由網路介面卡116通過由HSM-VM 104建立的安全通訊通道提供金鑰及/或密碼操作的結果返回給網路服務主機。
第四圖描繪了支援用於雲端式網路服務的密碼操作卸載的安全通訊的過程的示例的流程圖。儘管該圖為了說明的目的以特定順序描繪了功能步驟,但該處理不限於步驟的
任何特定順序或配置。本領域技術人員將會理解,可以省略、重新安排、組合及/或以各種方式適配該圖中所示的各個步驟。
在第四圖的示例中,流程圖400開始於方塊402,其中在網路服務主機和在主機上產生的硬體安全模組(HSM)虛擬機器(VM)之間建立了安全通訊通道,其中該HSM-VM以一對一對應的關係專用於HSM配接器的HSM分區。流程圖400繼續到方塊404,其中基於由網路服務主機提供的憑證來認證網路服務主機。流程圖繼續到方塊406,其中一旦網路服務主機被認證,金鑰管理和密碼操作從網路服務主機被卸載。流程圖400繼續到方塊408,其中經由HSM分區執行從網路服務主機卸載的金鑰管理和密碼操作。流程圖400結束於方塊410,其中金鑰管理和密碼操作的結果經由安全通訊通道被提供給網路服務主機。
第五圖描繪了用於HSM 102從初始重置狀態移動到操作狀態的過程的示例流程圖。在電源啟動時,HSM 102在其變為由HSM-VM 104可存取以執行金鑰加密操作之前經過各個狀態。HSM 102在其第一次被啟動時處於安全出廠預設狀態。當HSM 102處於該狀態或者PF管理操作狀態時,其中HSM管理VM 106產生HSM分區108,HSM 102限定HSM管理VM 106的RF HSM驅動器126遵循以將HSM 102移動到安全操作狀態的安全協定並且RF HSM驅動器126和HSM 102之間的所有通訊均通過主機配置的緩衝器發生。第六圖描繪了在RF HSM驅動器126和HSM 102之間的四次交握的示
例的示圖。作為通訊的一部分,HSM分區108的數量被提供給HSM管理VM 106。RF HSM驅動器126接收HSM分區108的數量並且啟動與HSM分區108一對一對應的多個HSM-VM 104。同時作為通訊的一部分,RF HSM驅動器126將每個HSM分區108的一個靜態秘密傳輸至每個HSM-VM 104以被用於對HSM分區108認證。該靜態秘密被配置在用於特定HSM分區108的HSM 102上,並且其不能被另一HSM分區108讀取。一旦這種交換完成,HSM 102移動到安全操作狀態,其中HSM 102準備好執行密碼管理和密碼操作。
類似地,每個HSM-VM 104及其對應的HSM分區108還從初始重置狀態移動到操作狀態,其中分區108可以被其HSM-VM 104存取用於各種密碼操作。當HSM 102第一次由HSM管理VM 106初始化時,HSM-VM 104處於HSM分區預設狀態。當處於HSM分區預設狀態或者HSM分區操作狀態時,其中HSM-VM 104的VF HSM驅動器118有待初始化HSM分區108,HSM 102限定VF HSM驅動器118遵循以將HSM分區108移動到安全操作狀態的協定,並且VF HSM驅動器118和HSM分區108之間的所有交握通訊都通過VF配置緩衝器發生。第七圖描繪了VF HSM驅動器118和HSM分區108之間的四次交握的示例的示圖。作為該交握機制的一部分,靜態秘密的一部分被交換,該部分和與上面討論的RF HSM驅動器126交換的秘密聯合,形成不能被其他HSM分區108讀取的靜態秘密。一旦這種交換完成,HSM-VM 104移動到HSM分區安全操作狀態,其中HSM-VM 104與其對應的
HSM分區108一起工作來執行從網路服務主機卸載到HSM-VM 104的金鑰管理和密碼操作。
本文描述的方法和系統可以至少部分地以電腦實施的過程和用於實踐這些過程的裝置的形式來體現。所公開的方法還可以至少部分地以有形的、非瞬態機器可讀儲存介質(利用電腦程式代碼進行編碼)的形式來體現。例如,該介質可以包括RAM、ROM、CD-ROM、DVD-ROM、BD-ROM、硬碟驅動器、快閃記憶體或任何其他非瞬態機器可讀儲存介質,其中當電腦程式代碼被載入到電腦中並由電腦執行時,電腦變成用於實踐該方法的裝置。該方法還可以至少部分地以其中載入及/或執行電腦程式代碼的電腦形式來體現,使得電腦成為用於實踐該方法的專用電腦。當在通用處理器上實施時,電腦程式程式碼片段配置處理器以產生具體的邏輯電路。該方法可以備選地至少部分地體現在由用於執行該方法的專用積體電路形式的數位訊號處理器中。
為了說明和描述的目的已經提供了所要求保護的標的主題的各種實施例的前述描述。該描述不旨在是排他的或者將所要求保護的主題限制於所公開的精確形式。許多修改和變化對於本領域技術人員來說是顯而易見的。選擇並描述了實施例以便於最好地描述本發明的原理及其實際應用,從而使得相關領域技術人員能夠理解所要求保護的主題、各種實施例以及連同適合於預期的特定使用的各種修改。
300‧‧‧流程圖
302-308‧‧‧方塊
Claims (27)
- 一種用於雲端式網路服務的安全性硬體安全模組(HSM)通訊的系統,所述系統包括:多個HSM服務單元,其中所述HSM服務單元中的每個HSM服務單元進一步包括:於一主機上運行的一HSM虛擬機器(VM),所述HSM虛擬機器在操作時被配置以:在一網路上建立與一網路服務主機間之一安全通訊通道;基於所述網路服務主機所提供的憑證來認證所述網路服務主機;一旦所述網路服務主機被認證,從所述網路服務主機卸載金鑰管理與密碼操作至一HSM配接器的一HSM分區;經由所述安全通訊通道向所述網路服務主機提供所述金鑰管理和密碼操作的結果;所述HSM分區係於所述HSM配接器上運行,其中所述HSM分區被配置以執行從所述網路服務主機所卸載的所述金鑰管理和密碼操作。
- 如申請專利範圍第1項所述的系統,其中:所述HSM配接器是多晶片嵌入之符合聯邦資訊處理標準(FIPS)140-2 3級的一硬體/韌體密碼模組,所述硬體/韌體密碼模組包括一安全處理器,所述安全處理器被配置以藉由執行利用硬體加速器及實施安全演算法的嵌 入式軟體所執行之所述密碼操作和金鑰管理來實現密碼加速。
- 如申請專利範圍第1項所述的系統,其中:所述HSM-VM運行安全性增強型Linux。
- 如申請專利範圍第1項所述的系統,其中:所述HSM服務單元中的每個HSM服務單元中的所述HSM-VM與相同HSM服務單元中的所述HSM分區具有一對一之對應關係,其中所述HSM分區與所述HSM服務單元中的所述HSM-VM互動並且僅允許來自所述HSM服務單元中的所述HSM-VM的存取。
- 如申請專利範圍第1項所述的系統,其中:所述HSM-VM對在所述HSM分區上運行的一x86高級加密標準(AES)引擎卸載所述密碼操作以用於性能優化。
- 如申請專利範圍第1項所述的系統,其中:所述HSM-VM進一步包括一安全通訊伺服器,所述安全通訊伺服器被配置以經由所提供的傳輸層安全性(TLS)及/或安全資料傳輸層(SSL)功能在所述HSM-VM和所述網路服務主機之間建立所述安全通訊通道,以允許所述網路服務主機安全存取所述HSM分區。
- 如申請專利範圍第6項所述的系統,其中:所述安全通訊伺服器是一TurboSSL加速之薄式伺服器。
- 如申請專利範圍第6項所述的系統,其中: 所述安全通訊伺服器被配置以採用憑證式相互認證,以在所述HSM-VM和所述網路服務主機之間建立所述安全通訊通道。
- 如申請專利範圍第6項所述的系統,其中:所述安全通訊伺服器被配置以接受和認證所述網路服務主機所提供的所述憑證,並且僅允許所述網路服務主機發佈非特權請求,直到所述憑證被認證為止。
- 如申請專利範圍第9項所述的系統,其中:所述憑證包括在請求產生所述HSM服務單元期間由一受信任認證機構(CA)所發佈之憑證。
- 如申請專利範圍第6項所述的系統,其中:所述安全通訊伺服器被配置以產生多個安全通訊通道,所述多個安全通訊通道係依其類型而具有不同使用者之不同安全強度。
- 如申請專利範圍第6項所述的系統,其中:所述安全通訊伺服器被配置以在所述網路服務主機和一智慧卡之間建立一安全通訊通道,該智慧卡係配置以執行數個卸載的密碼操作,其對所述安全通訊通道的安全強度具有限制。
- 如申請專利範圍第6項所述的系統,其中:所述安全通訊伺服器被配置以利用所述HSM-VM所提供的一個或多個庫,以經由所述安全通訊通道對所述HSM分區卸載所述金鑰管理和密碼操作之請求和回應。
- 如申請專利範圍第6項所述的系統,其中: 所述安全通訊伺服器被配置為以組態檔案的形式接受和應用所述安全通訊通道的組態參數。
- 如申請專利範圍第1項所述的系統,進一步包括:一受信任平台模組(TPM),其係運行於所述HSM配接器上,其中所述TPM被配置以提供在所述HSM配接器的生產期間所認證並安裝的一對持久性金鑰,其中所述金鑰對不能由任何其他方讀取、修改或歸零。
- 如申請專利範圍第15項所述的系統,其中:所述TPM被配置以利用所述金鑰對來開發一本地認證機構(CA)及其憑證,以將可靠性和完整性擴展至包括所述HSM-VM和所述HSM分區兩者的所述HSM服務單元,以減輕對所述系統的偽裝攻擊。
- 一種用於雲端式網路服務之安全硬體安全模組(HSM)通訊之方法,包括:在一網路服務主機與一主機上產生的一硬體安全模組(HSM)虛擬機器(VM)之間建立一安全通訊通道,其中所述HSM-VM係以一對一之對應關係專用於一HSM配接器的一HSM分區;基於由所述網路服務主機提供的憑證來認證所述網路服務主機;一旦所述網路服務主機被認證,就從所述網路服務主機向所述HSM分區卸載金鑰管理和密碼操作;經由所述HSM分區執行從所述網路服務主機卸載的所述金鑰管理和密碼操作;以及 經由所述安全通訊通道向所述網路服務主機提供所述金鑰管理和密碼操作的結果。
- 如申請專利範圍第17項所述的方法,進一步包括:向在所述HSM分區上運行的一x86高級加密標準(AES)引擎卸載所述密碼操作以用於性能優化。
- 如申請專利範圍第17項所述的方法,進一步包括:經由所提供的傳輸層安全性(TLS)及/或安全資料傳輸層(SSL)功能建立與所述網路服務主機之間的所述安全通訊通道,以允許對所述HSM分區之所述網路服務主機安全存取。
- 如申請專利範圍第17項所述的方法,進一步包括:採用憑證式相互認證以建立與所述網路服務主機間的所述安全通訊通道。
- 如申請專利範圍第17項所述的方法,進一步包括:接受和認證由所述網路服務主機提供的所述憑證,並且僅允許所述網路服務主機發佈非特權請求,直到所述憑證被認證為止,其中所述憑證包括在請求產生所述HSM服務單元期間由一受信任認證機構(CA)所發佈之一憑證。
- 如申請專利範圍第17項所述的方法,進一步包括:產生多個安全通訊通道,所述多個安全通訊通道係依其類型而具有不同使用者之不同安全強度。
- 如申請專利範圍第17項所述的方法,進一步包括: 在所述網路服務主機和一智慧卡之間建立一安全通訊通道,該智慧卡係配置以執行數個卸載的密碼操作,其對所述安全通訊通道的安全強度具有限制。
- 如申請專利範圍第17項所述的方法,進一步包括:利用所述HSM-VM所提供的一個或多個庫,以經由所述安全通訊通道對所述HSM分區卸載所述金鑰管理和密碼操作之請求和回應。
- 如申請專利範圍第17項所述的方法,進一步包括:以組態檔案的形式接受和應用所述安全通訊通道的組態參數。
- 如申請專利範圍第17項所述的方法,進一步包括:提供在所述HSM配接器的生產期間所認證並安裝的一對持久性金鑰,其中所述金鑰對不能由任何其他方讀取、修改或歸零。
- 如申請專利範圍第26項所述的方法,進一步包括:利用所述金鑰對來開發一本地認證機構(CA)及其憑證,以將可靠性和完整性擴展至所述HSM分區,以減輕對所述系統的偽裝攻擊。
Applications Claiming Priority (3)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
US201462008112P | 2014-06-05 | 2014-06-05 | |
US14/299,739 US20160149877A1 (en) | 2014-06-05 | 2014-06-09 | Systems and methods for cloud-based web service security management basedon hardware security module |
US14/662,012 US20150358294A1 (en) | 2014-06-05 | 2015-03-18 | Systems and methods for secured hardware security module communication with web service hosts |
Publications (1)
Publication Number | Publication Date |
---|---|
TW201635180A true TW201635180A (zh) | 2016-10-01 |
Family
ID=56011378
Family Applications (2)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW104117752A TW201635180A (zh) | 2014-06-05 | 2015-06-02 | 與網路服務主機通訊之安全硬體安全模組系統與方法 |
TW104117916A TW201635185A (zh) | 2014-06-05 | 2015-06-03 | 雲端式網路服務硬體安全模組之安全金鑰管理系統與方法 |
Family Applications After (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
TW104117916A TW201635185A (zh) | 2014-06-05 | 2015-06-03 | 雲端式網路服務硬體安全模組之安全金鑰管理系統與方法 |
Country Status (2)
Country | Link |
---|---|
US (1) | US20160149877A1 (zh) |
TW (2) | TW201635180A (zh) |
Families Citing this family (32)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US11051160B2 (en) * | 2014-09-17 | 2021-06-29 | Simless, Inc. | Apparatuses, methods and systems for implementing a system-on-chip with integrated reprogrammable cellular network connectivity |
US11172352B2 (en) | 2014-09-17 | 2021-11-09 | Gigsky, Inc. | Apparatuses, methods, and systems for configuring a trusted java card virtual machine using biometric information |
US10516990B2 (en) | 2014-09-17 | 2019-12-24 | Simless, Inc. | Apparatuses, methods and systems for implementing a trusted subscription management platform |
EP3228104B1 (en) | 2014-09-17 | 2020-08-26 | Simless, Inc. | Apparatuses, methods and systems for implementing a trusted subscription management platform |
US11606685B2 (en) | 2014-09-17 | 2023-03-14 | Gigsky, Inc. | Apparatuses, methods and systems for implementing a trusted subscription management platform |
FR3029311B1 (fr) * | 2014-11-27 | 2017-01-06 | Thales Sa | Procede de gestion d'une architecture et architecture associee |
EP3032453B1 (en) * | 2014-12-08 | 2019-11-13 | eperi GmbH | Storing data in a server computer with deployable encryption/decryption infrastructure |
US9606854B2 (en) | 2015-08-13 | 2017-03-28 | At&T Intellectual Property I, L.P. | Insider attack resistant system and method for cloud services integrity checking |
US10893029B1 (en) * | 2015-09-08 | 2021-01-12 | Amazon Technologies, Inc. | Secure computing service environment |
US10310885B2 (en) | 2016-10-25 | 2019-06-04 | Microsoft Technology Licensing, Llc | Secure service hosted in a virtual security environment |
US10447668B1 (en) * | 2016-11-14 | 2019-10-15 | Amazon Technologies, Inc. | Virtual cryptographic module with load balancer and cryptographic module fleet |
US10461943B1 (en) | 2016-11-14 | 2019-10-29 | Amazon Technologies, Inc. | Transparently scalable virtual hardware security module |
CN110089070B (zh) * | 2016-12-30 | 2022-08-02 | 英特尔公司 | 用于秘钥交换以在网络功能虚拟化环境中建立安全连接的技术 |
CA3063572A1 (en) | 2017-05-31 | 2018-12-06 | Crypto4A Technologies Inc. | Integrated multi-level network appliance, platform and system, and remote management method and system therefor |
US11310198B2 (en) | 2017-05-31 | 2022-04-19 | Crypto4A Technologies Inc. | Integrated multi-level or cross-domain network security management appliance, platform and system, and remote management method and system therefor |
US11321493B2 (en) | 2017-05-31 | 2022-05-03 | Crypto4A Technologies Inc. | Hardware security module, and trusted hardware network interconnection device and resources |
US11036532B2 (en) * | 2017-11-29 | 2021-06-15 | Microsoft Technology Licensing, Llc | Fast join and leave virtual network |
US10909250B2 (en) * | 2018-05-02 | 2021-02-02 | Amazon Technologies, Inc. | Key management and hardware security integration |
GB2574598B (en) * | 2018-06-11 | 2021-07-28 | Advanced Risc Mach Ltd | Attestation using device-specific and application-specific attestation messages |
US10984115B2 (en) | 2018-12-04 | 2021-04-20 | Bank Of America Corporation | System for triple format preserving encryption |
US11139969B2 (en) * | 2018-12-04 | 2021-10-05 | Bank Of America Corporation | Centralized system for a hardware security module for access to encryption keys |
US10826693B2 (en) * | 2018-12-04 | 2020-11-03 | Bank Of America Corporation | Scalable hardware encryption |
US11500988B2 (en) * | 2019-03-08 | 2022-11-15 | International Business Machines Corporation | Binding secure keys of secure guests to a hardware security module |
SG10201903114RA (en) * | 2019-04-08 | 2020-11-27 | Mastercard International Inc | Methods and systems for facilitating microservices for cryptographic operations |
US11363021B1 (en) | 2019-09-30 | 2022-06-14 | Amazon Technologies, Inc. | Proxy service for two-factor authentication |
US11475167B2 (en) | 2020-01-29 | 2022-10-18 | International Business Machines Corporation | Reserving one or more security modules for a secure guest |
US11438171B2 (en) | 2020-03-05 | 2022-09-06 | Micron Technology, Inc. | Virtualized authentication device |
US11822964B2 (en) | 2020-06-03 | 2023-11-21 | Baidu Usa Llc | Data protection with static resource partition for data processing accelerators |
US11841985B2 (en) * | 2020-09-03 | 2023-12-12 | Pensando Systems Inc. | Method and system for implementing security operations in an input/output device |
US20230081068A1 (en) * | 2021-09-10 | 2023-03-16 | International Business Machines Corporation | Securely distributing a root key for a hardware security module |
CN113722104B (zh) * | 2021-09-10 | 2024-06-25 | 上海芯钛信息科技有限公司 | 车载域控制器芯片系统及提升车载域控制器安全性的方法 |
WO2024115150A1 (en) * | 2022-11-29 | 2024-06-06 | International Business Machines Corporation | Extending secure guest metadata to bind the secure guest to an hsm |
Family Cites Families (15)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US7467381B2 (en) * | 2003-12-16 | 2008-12-16 | Intel Corporation | Resource partitioning and direct access utilizing hardware support for virtualization |
US20080181399A1 (en) * | 2007-01-29 | 2008-07-31 | Sun Microsystems, Inc. | Composite cryptographic accelerator and hardware security module |
US9213566B2 (en) * | 2008-11-26 | 2015-12-15 | Red Hat, Inc. | Implementing security in process-based virtualization |
US20100162240A1 (en) * | 2008-12-23 | 2010-06-24 | Samsung Electronics Co., Ltd. | Consistent security enforcement for safer computing systems |
US8032660B2 (en) * | 2008-12-30 | 2011-10-04 | Intel Corporation | Apparatus and method for managing subscription requests for a network interface component |
US10579995B2 (en) * | 2010-03-30 | 2020-03-03 | Visa International Service Association | Event access with data field encryption for validation and access control |
US20130042238A1 (en) * | 2011-08-12 | 2013-02-14 | International Business Machines Corporation | Optimized Virtual Function Translation Entry Memory Caching |
EP2788871B1 (en) * | 2011-12-07 | 2021-08-04 | Citrix Systems, Inc. | Controlling a network interface using virtual switch proxying |
US9515999B2 (en) * | 2011-12-21 | 2016-12-06 | Ssh Communications Security Oyj | Automated access, key, certificate, and credential management |
US20130179676A1 (en) * | 2011-12-29 | 2013-07-11 | Imation Corp. | Cloud-based hardware security modules |
US20130219164A1 (en) * | 2011-12-29 | 2013-08-22 | Imation Corp. | Cloud-based hardware security modules |
US8694781B1 (en) * | 2012-03-30 | 2014-04-08 | Emc Corporation | Techniques for providing hardware security module operability |
US9426154B2 (en) * | 2013-03-14 | 2016-08-23 | Amazon Technologies, Inc. | Providing devices as a service |
US9720775B2 (en) * | 2013-06-12 | 2017-08-01 | International Business Machines Corporation | Implementing concurrent adapter firmware update for an SRIOV adapter in a virtualized system |
US20150134953A1 (en) * | 2013-11-08 | 2015-05-14 | Motorola Solutions, Inc | Method and apparatus for offering cloud-based hsm services |
-
2014
- 2014-06-09 US US14/299,739 patent/US20160149877A1/en not_active Abandoned
-
2015
- 2015-06-02 TW TW104117752A patent/TW201635180A/zh unknown
- 2015-06-03 TW TW104117916A patent/TW201635185A/zh unknown
Also Published As
Publication number | Publication date |
---|---|
US20160149877A1 (en) | 2016-05-26 |
TW201635185A (zh) | 2016-10-01 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
TWI632797B (zh) | 雲端式網路服務之硬體安全模組的安全備份系統與方法 | |
TW201635180A (zh) | 與網路服務主機通訊之安全硬體安全模組系統與方法 | |
US20150358313A1 (en) | Systems and methods for secured communication hardware security module and network-enabled devices | |
US10171432B2 (en) | Systems to implement security in computer systems | |
US11258780B2 (en) | Securing a data connection for communicating between two end-points | |
JP7416775B2 (ja) | 周辺デバイス | |
TWI554905B (zh) | 安全防護管理方法、電腦系統以及非暫態電腦可讀取存儲媒體 | |
JP6526181B2 (ja) | スマートカードによるログオンおよび連携されたフルドメインログオン | |
US9509692B2 (en) | Secured access to resources using a proxy | |
AU2014209472B2 (en) | Secure virtual machine migration | |
US9935937B1 (en) | Implementing network security policies using TPM-based credentials | |
US20130061293A1 (en) | Method and apparatus for securing the full lifecycle of a virtual machine | |
EP3874674A1 (en) | Authorization with a preloaded certificate | |
US11019033B1 (en) | Trust domain secure enclaves in cloud infrastructure | |
US11902271B2 (en) | Two-way secure channels between multiple services across service groups | |
CN112424777B (zh) | 工业个人计算机装置及其操作方法 | |
US11805109B1 (en) | Data transfer encryption offloading using session pairs | |
US20230297410A1 (en) | Device virtualization in a confidential computing environment | |
Kaur et al. | PARAMETRIC ANALYSIS TO ENHANCE SECURITY IN CLOUD COMPUTING TO PREVENT ATTACKS IN LIVE MIGRATION. | |
CN116614241A (zh) | 一种认证方法,计算装置和实例管理装置 |