TWI601405B - Method and apparatus for cloud-assisted cryptography - Google Patents

Method and apparatus for cloud-assisted cryptography Download PDF

Info

Publication number
TWI601405B
TWI601405B TW104104390A TW104104390A TWI601405B TW I601405 B TWI601405 B TW I601405B TW 104104390 A TW104104390 A TW 104104390A TW 104104390 A TW104104390 A TW 104104390A TW I601405 B TWI601405 B TW I601405B
Authority
TW
Taiwan
Prior art keywords
encrypted
key
consumer
symmetric key
ccs
Prior art date
Application number
TW104104390A
Other languages
Chinese (zh)
Other versions
TW201541923A (en
Inventor
亞歷克斯 奈蕭特
夏隆 奧馬爾 班
尼德M 史密斯
小愛德華V 吉米森
何慕德M 赫斯拉維
Original Assignee
英特爾公司
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority to US14/227,319 priority Critical patent/US9503433B2/en
Application filed by 英特爾公司 filed Critical 英特爾公司
Publication of TW201541923A publication Critical patent/TW201541923A/en
Application granted granted Critical
Publication of TWI601405B publication Critical patent/TWI601405B/en

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0428Network 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/045Network 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 wherein the sending and receiving network entities apply hybrid encryption, i.e. combination of symmetric and asymmetric encryption
    • GPHYSICS
    • G06COMPUTING; CALCULATING; COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/70Protecting specific internal or peripheral components, in which the protection of a component leads to protection of the entire computer
    • G06F21/71Protecting 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
    • G06F21/72Protecting 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 in cryptographic circuits
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/06Network architectures or network communication protocols for network security for supporting key management in a packet data network
    • H04L63/061Network architectures or network communication protocols for network security for supporting key management in a packet data network for key exchange, e.g. in peer-to-peer networks
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communication
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/0822Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using key encryption key
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communication
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0816Key establishment, i.e. cryptographic processes or cryptographic protocols whereby a shared secret becomes available to two or more parties, for subsequent use
    • H04L9/0819Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s)
    • H04L9/0825Key transport or distribution, i.e. key establishment techniques where one party creates or otherwise obtains a secret value, and securely transfers it to the other(s) using asymmetric-key encryption or public key infrastructure [PKI], e.g. key signature or public key certificates
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communication
    • H04L9/08Key distribution or management, e.g. generation, sharing or updating, of cryptographic keys or passwords
    • H04L9/0861Generation of secret information including derivation or calculation of cryptographic keys or passwords
    • H04L9/0877Generation 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]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L9/00Cryptographic mechanisms or cryptographic arrangements for secret or secure communication
    • H04L9/32Cryptographic mechanisms or cryptographic arrangements for secret or secure communication 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/3234Cryptographic mechanisms or cryptographic arrangements for secret or secure communication 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L2463/00Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00
    • H04L2463/062Additional details relating to network architectures or network communication protocols for network security covered by H04L63/00 applying encryption of the keys

Description

用於雲端輔助式密碼術之方法及設備 Method and device for cloud assisted cryptography 發明領域 Field of invention
實施例係關於雲端輔助式密碼術。 The embodiment relates to cloud assisted cryptography.
發明背景 Background of the invention
歸因於對於金鑰在所有裝置上之安全分佈及安全儲存兩者的需要,在計算裝置之間安全地共享私密金鑰可呈現挑戰。一種解決方案係在例如如藉由受信任計算組織(TCG)定義之受信任平臺模組(TPM)之間的金鑰同步,但此解決方案通常係複雜、成本高的,且可能在所有端點上需要特定硬體。結果,不存在以下直接方式:在無特定硬體及金鑰同步方法之實施的情況下消耗藉由端點上之公開金鑰密碼術所保護之資訊。 The secure sharing of private keys between computing devices can present challenges due to the need for both secure distribution and secure storage of keys on all devices. One solution is key synchronization between trusted platform modules (TPMs), such as defined by the Trusted Computing Group (TCG), but this solution is often complex, costly, and possibly at all ends. A specific hardware is required at the point. As a result, there is no direct way to consume information protected by public key cryptography on the endpoint without the implementation of a particular hardware and key synchronization method.
現有的硬體安全性模組(HSM)可藉由伺服器平臺使用,來在亦可保護諸如加密及簽署之金鑰操作的安全容器中相遠隔地管理金鑰。HSM通常被期望以最高安全性層級來操作,此係因為其對於龐大的人群管理金鑰。因此,最安全使用狀況之安全性要求變為對於HSM之最小安全性要求,此情況可添加大成本及部署生命週期額外負擔。 Existing hardware security modules (HSMs) can be used by the server platform to manage keys remotely in a secure container that also protects key operations such as encryption and signing. HSM is generally expected to operate at the highest security level because it manages keys for large crowds. Therefore, the security requirements for the safest usage conditions become the minimum security requirements for HSM, which can add significant costs and additional burdens to the deployment lifecycle.
依據本發明之一實施例,係特地提出一種系統,其包含:一處理器,其包括:私密金鑰解密邏輯,其用以對自一消費裝置所接收之一經加密私密金鑰解密且用以產生一私密金鑰;及對稱金鑰解密邏輯,其用以自該私密金鑰解密邏輯接收該私密金鑰且用以對自該消費裝置所接收之一經加密對稱金鑰解密,其中該解密係使用該私密金鑰而被實行;以及一動態隨機存取記憶體(DRAM),其耦接至該處理器。 In accordance with an embodiment of the present invention, a system is specifically provided, comprising: a processor comprising: private key decryption logic for decrypting an encrypted private key received from a consumer device and for Generating a private key; and symmetric key decryption logic for receiving the private key from the private key decryption logic and for decrypting one of the encrypted symmetric keys received from the consumer device, wherein the decryption system Implemented using the private key; and a dynamic random access memory (DRAM) coupled to the processor.
100、200、800‧‧‧系統 100, 200, 800‧‧‧ systems
110‧‧‧(安全)端點裝置 110‧‧‧ (safe) endpoint device
120、204、304、402、502‧‧‧消費裝置 120, 204, 304, 402, 502‧‧‧ consumer devices
130‧‧‧產生裝置 130‧‧‧Generation device
140‧‧‧雲端計算伺服器(CCS) 140‧‧‧Cloud Computing Server (CCS)
202‧‧‧使用者裝置 202‧‧‧User device
203、210、324‧‧‧處理器 203, 210, 324‧‧ ‧ processors
205、216‧‧‧動態隨機存取記憶體(DRAM) 205, 216‧‧‧ Dynamic Random Access Memory (DRAM)
206‧‧‧雲端計算服務(CCS) 206‧‧‧Cloud Computing Service (CCS)
208‧‧‧暫時性節點 208‧‧‧temporary nodes
212‧‧‧私密金鑰解密邏輯 212‧‧‧Private Key Decryption Logic
214‧‧‧對稱金鑰解密邏輯 214‧‧‧symmetric key decryption logic
220‧‧‧認證邏輯 220‧‧‧Certification Logic
232‧‧‧安全會話邏輯 232‧‧‧secure session logic
234‧‧‧解密邏輯 234‧‧‧Decryption logic
302‧‧‧內容源/使用者 302‧‧‧Content source/user
306‧‧‧雲端密碼服務(CCS) 306‧‧‧Cloud Password Service (CCS)
308‧‧‧經加密內容檔案 308‧‧‧Encrypted content files
310、312‧‧‧請求 310, 312‧‧ request
314、606、608、610‧‧‧隱蔽的私密金鑰 314, 606, 608, 610‧‧‧ hidden private keys
316、604‧‧‧隱蔽的對稱金鑰 316, 604‧‧‧Concealed symmetric key
318、320‧‧‧損毀 318, 320‧‧ ‧ damaged
322‧‧‧對稱金鑰 322‧‧ symmetrical key
326‧‧‧經解密內容檔案 326‧‧‧Decrypted Content File
404、504‧‧‧CCS暫時性節點 404, 504‧‧‧CCS temporary nodes
406、506‧‧‧安全的指定位址空間 406, 506‧‧‧Safe designated address space
408、410、508、510、512、 514、522、524‧‧‧步驟 408, 410, 508, 510, 512, 514, 522, 524‧ ‧ steps
412、518‧‧‧解開請求 412, 518‧‧‧Unpacking request
414‧‧‧發送 414‧‧‧Send
416‧‧‧命令 416‧‧‧ Order
500‧‧‧流程圖 500‧‧‧flow chart
516‧‧‧核對 516‧‧‧Check
520‧‧‧步驟/對稱金鑰 520‧‧‧Step/Symmetric Key
600‧‧‧檔案二進位大型物件(「blob」) 600‧‧‧Files binary large objects ("blob")
602‧‧‧(經加密)密文 602‧‧‧ (encrypted) ciphertext
612‧‧‧資料安全性層級指示符 612‧‧‧Data security level indicator
614‧‧‧數位簽章/簽章金鑰 614‧‧‧ digital signature/signature key
700‧‧‧方法 700‧‧‧ method
705、710、720、730、740、750、760、770、780‧‧‧區塊 705, 710, 720, 730, 740, 750, 760, 770, 780‧‧‧ blocks
810‧‧‧應用程式處理器 810‧‧‧Application Processor
815‧‧‧儲存體 815‧‧‧ storage
820‧‧‧輸入/輸出系統 820‧‧‧Input/Output System
825‧‧‧可再充電電源供應器 825‧‧‧Rechargeable power supply
830‧‧‧基頻處理器 830‧‧‧Baseband processor
840‧‧‧收發器 840‧‧‧ transceiver
850‧‧‧天線 850‧‧‧Antenna
860‧‧‧整合式感測器集線器(ISH) 860‧‧‧Integrated Sensor Hub (ISH)
870‧‧‧感測器 870‧‧‧ sensor
圖1為根據本發明之一實施例的系統之方塊圖。 1 is a block diagram of a system in accordance with an embodiment of the present invention.
圖2為根據本發明之另一實施例的系統之方塊圖。 2 is a block diagram of a system in accordance with another embodiment of the present invention.
圖3為用於根據本發明之實施例之系統的流程圖。 3 is a flow chart of a system for use in accordance with an embodiment of the present invention.
圖4為根據本發明之一實施例的認證及金鑰解密之流程圖。 4 is a flow diagram of authentication and key decryption in accordance with an embodiment of the present invention.
圖5為根據本發明之另一實施例的認證及金鑰解密之流程圖。 Figure 5 is a flow diagram of authentication and key decryption in accordance with another embodiment of the present invention.
圖6為根據本發明之實施例的檔案二進位大型物件(blob)之方塊圖。 6 is a block diagram of a file binary large object (blob) in accordance with an embodiment of the present invention.
圖7為根據本發明之一實施例的用於進行雲端輔助式密碼術之方法的流程圖。 7 is a flow chart of a method for performing cloud assisted cryptography in accordance with an embodiment of the present invention.
圖8為根據本發明之另一實施例的系統之方塊 圖。 Figure 8 is a block diagram of a system in accordance with another embodiment of the present invention. Figure.
詳細說明 Detailed description
呈現了使用分佈式及雲端輔助式技術之方法及設備,該等技術用於在平臺之個人計算雲端(本文中為「個人雲端」或「雲端」)中允許虛擬類TPM性能,該等平臺藉由對每一操作之端點與個人雲端執行個體之間的協作代表另一端點在雲端中執行密碼功能。經由此等技術之使用,用戶端及雲端執行個體皆不可個別地執行密碼功能,且相關之私密金鑰並未以純文字儲存或儲存於端點抑或雲端執行個體上。雲端中之操作可在具有認證之受信任執行環境(TEE)中執行。認證可確保,對於特定密碼操作,私密金鑰並未暴露於個人雲端外部。 Presenting methods and devices using distributed and cloud-assisted technologies for allowing virtual class TPM performance in the personal computing cloud of the platform (herein "personal cloud" or "cloud"), which borrows The cryptographic function is performed in the cloud on behalf of the other endpoint by performing collaboration between the endpoints of each operation and the personal cloud. Through the use of such technologies, neither the client nor the cloud execution entity can perform the password function individually, and the related private key is not stored in plain text or stored in the endpoint or the cloud execution entity. Operations in the cloud can be performed in a Trusted Execution Enforcement Environment (TEE) with authentication. Authentication ensures that the private key is not exposed outside the personal cloud for a particular password operation.
三方演算法可實施於金鑰擁有者、請求使用金鑰之密碼操作的裝置,及執行密碼操作之雲端系統之間。 The tripartite algorithm can be implemented between the key owner, the device requesting the cryptographic operation using the key, and the cloud system performing the cryptographic operation.
實施例可在許多不同類型之系統中使用。舉例而言,在一實施例中,通訊裝置(例如,電話、平板電腦、膝上型電腦、其他計算裝置,等)可經配置以執行本文所述之各種方法及技術。注意,本發明之範疇不限於通訊裝置。其他實施例可針對用於處理指令之其他類型的設備。一或多個機器可讀媒體可包括指令,該等指令回應於執行於計算裝置上而使該裝置執行本文所述之方法及技術中的一或多者。 Embodiments can be used in many different types of systems. For example, in an embodiment, a communication device (eg, a phone, tablet, laptop, other computing device, etc.) can be configured to perform the various methods and techniques described herein. Note that the scope of the present invention is not limited to communication devices. Other embodiments may be directed to other types of devices for processing instructions. The one or more machine-readable media can include instructions that, in response to execution on a computing device, cause the device to perform one or more of the methods and techniques described herein.
在實施例中,私密金鑰係藉由雲端之公開金鑰保 護。私密金鑰可經加密(例如,以形成經加密私密金鑰),使得僅雲端伺服器可使用其。為了使用私密金鑰,端點可將經加密私密金鑰發送至雲端伺服器且並未將私密金鑰儲存於雲端伺服器上,該雲端伺服器可提取私密金鑰且在受信任執行環境中暫時地將所提取之私密金鑰用作端點的代理。私密金鑰之提取可以受信任執行環境(TEE)已滿足安全強化策略為條件,該安全強化策略可部分地使用伺服器之TEE的認證及使用者指定之強化要求來建立。 In an embodiment, the private key is secured by the public key of the cloud. Protection. The private key can be encrypted (eg, to form an encrypted private key) so that only the cloud server can use it. In order to use the private key, the endpoint can send the encrypted private key to the cloud server and the private key is not stored on the cloud server, the cloud server can extract the private key and in the trusted execution environment. The extracted private key is temporarily used as a proxy for the endpoint. The extraction of the private key may be conditional on the Trusted Execution Environment (TEE) having met the security enforcement policy, which may be partially established using the server's TEE authentication and user-specified enforcement requirements.
各種用戶端平臺可包括TEE成分以實施協定;因此,實施暫時性操作之『伺服器』(「消費裝置」)的作用可藉由多種平臺來執行,包括智慧型電話、平板電腦、輕量級筆記型電腦、桌上型電腦、伺服器、虛擬化伺服器及嵌入式系統。此靈活性在異質計算環境中可為有利的,在該等環境中,存在不具有TEE成分來實施協定且可具有各種程度之值得信任計算功能性的平臺。使用者可繼續使用「-較弱」裝置(例如,消費裝置)來存取強保護資料,只要其具有對某其他裝置(例如,雲端伺服器)之存取權即可,該某其他裝置具有TEE成分且可充當用於本機TEE性能的取代者。 Various client platforms may include TEE components to implement the agreement; therefore, the role of a "server" ("consumer device") that implements temporary operations can be performed by a variety of platforms, including smart phones, tablets, and lightweight devices. Notebooks, desktops, servers, virtualization servers and embedded systems. This flexibility may be advantageous in heterogeneous computing environments where there are platforms that do not have TEE components to implement the agreement and may have various levels of trustworthy computing functionality. The user can continue to use the "weaker" device (eg, a consumer device) to access the strong protected data as long as it has access to some other device (eg, a cloud server) that has The TEE component and can act as a replacement for native TEE performance.
本發明之實施例可包括對於包括個人雲端/裝置叢集節點之分佈式系統的值得信任代理器發現及計劃執行協定,該等節點可包括虛擬化環境。具備TEE功能之節點可維持資料保護及身份識別金鑰之冗餘複本,因此其保持高可利用的。具備較少功能之節點(例如,消費裝置)可用以 藉由存取具備TEE功能之節點中的一者以相遠隔地執行加密/解密操作來操縱敏感資料。 Embodiments of the invention may include trustworthy agent discovery and plan execution agreements for distributed systems including personal cloud/device cluster nodes, which may include virtualized environments. A node with TEE functionality maintains a redundant copy of the data protection and identification key, so it remains highly available. Nodes with less functionality (for example, consumer devices) can be used Sensitive data is manipulated by accessing one of the nodes having the TEE function to perform an encryption/decryption operation at a remote location.
在實施例中,值得信任代理器發現性能可識別可藉由值得信任度評級表徵之較不值得信任節點。根據值得信任度評級所組織之資料可與類似值得信任度評級之消費節點匹配。舉例而言,可使用正式信任評級系統,例如,Clarke-Wilson、Biba、Take-Gant、Bell-LaPadulla、Graham-Denning,及其他。 In an embodiment, the trustworthy agent discovery performance identifies a less trustworthy node that can be characterized by a trustworthiness rating. The information organized according to the trustworthiness rating can be matched to a consumer node with a similar trustworthiness rating. For example, a formal trust rating system can be used, for example, Clarke-Wilson, Biba, Take-Gant, Bell-LaPadulla, Graham-Denning, and others.
本發明之實施例可能不利用用於暫時性節點之HSM,其將另外添加成本及複雜性。藉由不在暫時性TEE節點上存留任何使用者控制之個人雲端秘密(例如,對稱金鑰、私密金鑰,等),「攻擊表面」(例如,系統之弱點)可減小。TEE認證性能可用以發現節點根據使用者控制之個人雲端或分佈式系統中之『產生』、『暫時性』或『消費』節點的類型起作用的合適性。金鑰提供可使用權力管理策略來執行,其中對將要提供之金鑰解密(「解開」)之權利可系結至可描述當前操作狀態的TEE平臺組態暫存器(PCR)。舉例而言,PCR可安全地呈現給雲端伺服器作為解開金鑰之權利的證據。 Embodiments of the present invention may not utilize HSM for transitory nodes, which would add additional cost and complexity. By not storing any user-controlled personal cloud secrets (eg, symmetric keys, private keys, etc.) on the temporary TEE node, the "attack surface" (eg, system weakness) can be reduced. TEE authentication capabilities can be used to discover the suitability of a node to function according to the type of "generating," "temporary," or "consuming" nodes in a personal cloud or distributed system controlled by the user. The key provision can be performed using a rights management policy in which the right to decrypt ("unwind") the key to be provided can be tied to a TEE platform configuration register (PCR) that can describe the current operational state. For example, PCR can be safely presented to the cloud server as evidence of the right to unlock the key.
節點型特定策略可伴隨隱蔽金鑰檔案「blob」,例如,二進位大型物件。 Node-specific policies can be accompanied by a hidden key file "blob", for example, a binary large object.
根據一策略,提供至暫時性節點之金鑰將在交易式金鑰操作完成之後得以刪除。 According to a policy, the key provided to the temporary node will be deleted after the transaction key operation is completed.
較不值得信任節點可在以下條件適用之個人雲 端/分佈式環境中無信任損失的情況下參與: Less trustworthy nodes can be applied to personal clouds under the following conditions Participation in the end/distributed environment without loss of trust:
- 消費節點可具有強化裝置識別性能,但不具有用於儲存/使用資料及使用者驗證金鑰之通用TEE。 - The consumer node may have enhanced device identification capabilities but does not have a generic TEE for storing/using data and user authentication keys.
- 消費節點可具有可用以提供臨時金鑰(例如,每天或每小時)之受信任可管理性子系統,該臨時金鑰接著用以對暫時性節點驗證。 - The consumer node may have a trusted manageability subsystem available to provide a temporary key (eg, daily or hourly), which is then used to authenticate the transient node.
實施例可包括以下組件: Embodiments may include the following components:
1. 公開金鑰基礎架構(PKI),其能夠產生私密/公開金鑰對。 1. A public key infrastructure (PKI) that is capable of generating private/public key pairs.
2. 具有合適之具備密碼功能之硬體的端點裝置,例如,身份識別保護技術(IPT)、受信任平臺模組(TPM)及/或HSM,其能夠保管其自己的私密金鑰且亦能夠藉由已知的公開金鑰執行密碼操作(例如,內容加密),該公開金鑰例如屬於另一電腦及/或使用者。 2. Endpoint devices with appropriate cryptographic hardware, such as Identity Protection Technology (IPT), Trusted Platform Module (TPM), and/or HSM, which can hold their own private keys and The cryptographic operation (e.g., content encryption) can be performed by a known public key, such as belonging to another computer and/or user.
3. 雲端環境,其能夠啟動TEE內之程式碼且能夠證實執行環境(雲端環境)及在雲端環境內執行之程式碼的完整性。此雲端環境亦能夠執行各種密碼操作。 3. A cloud environment that is capable of launching code within the TEE and verifying the integrity of the execution environment (the cloud environment) and the code executed within the cloud environment. This cloud environment is also capable of performing various password operations.
4. 其他裝置(例如,消費裝置),其想要將密碼操作委派給雲端且可在其所有物中具有相關的經加密私密金鑰。 4. Other devices (eg, consumer devices) that want to delegate password operations to the cloud and have associated encrypted private keys in their possessions.
5. 網路,其能夠在端點與雲端服務之間傳送資料及後設資料。 5. The network, which is capable of transferring data and post-data between the endpoint and the cloud service.
6. TEE,其能夠證實TEE當前組態及強化狀態。 6. TEE, which verifies the current configuration and enhancement status of the TEE.
7. 具有平臺組態暫存器(PCR)或虛擬記憶體功能指令(VM_Func)之TEE,其能夠記錄及報告TEE記憶體違反事 件。 7. A TEE with Platform Configuration Register (PCR) or Virtual Memory Function Command (VM_Func) capable of recording and reporting TEE memory violation events.
8. 協定,其用於發現及分類適於參與個人雲端模型之節點且用於根據該分類執行金鑰提供計劃。 8. An agreement for discovering and classifying nodes suitable for participating in a personal cloud model and for performing a key provisioning plan based on the classification.
PKI可對於端點產生金鑰。具有對於金鑰之安全儲存的每一端點可接收個別私密金鑰,而無安全儲存之每一端點可接收其已藉由雲端服務之公開金鑰加密的個別私密金鑰之複本。 The PKI can generate a key for the endpoint. Each endpoint having secure storage for the key can receive an individual private key, and each endpoint without secure storage can receive a copy of the individual private key that it has encrypted with the public key of the cloud service.
產生端點可產生內容且可藉由產生隨機對稱金鑰而保護內容。產生端點可接著藉由隨機對稱金鑰對內容加密。對稱金鑰可藉由個別私密金鑰加密,從而將經加密對稱金鑰與內容保持為後設資料。個別私密金鑰可藉由雲端服務之公開金鑰加密。 Generating an endpoint can generate content and can protect the content by generating a random symmetric key. The generating endpoint can then encrypt the content by a random symmetric key. The symmetric key can be encrypted by an individual private key to keep the encrypted symmetric key and content as post-set data. Individual private keys can be encrypted by the public key of the cloud service.
在一實施例中,想要使用經加密內容且具有其自己之私密金鑰的端點可將包括經加密對稱金鑰之後設資料的經加密內容以及其自己之經加密私密金鑰發送至雲端,使得雲端可代表端點對內容進行操作。雲端(例如,虛擬機(VM))可對經加密私密金鑰解密(例如,使用雲端之公開/私密金鑰密碼系統的解密金鑰)。藉由(未加密)私密金鑰,雲端可對對稱金鑰解密且接著可使用該對稱金鑰代表用戶端執行行動(例如,傳回金鑰,執行雲端中之檔案內容的編輯,在檔案內容係可執行內容之情況下執行該檔案內容,呈現檔案以供安全遠端檢視,等)。 In an embodiment, an endpoint that wants to use encrypted content and has its own private key may send the encrypted content including the encrypted symmetric key and its own encrypted private key to the cloud. So that the cloud can operate on the content on behalf of the endpoint. The cloud (eg, a virtual machine (VM)) can decrypt the encrypted private key (eg, using the decryption key of the cloud's public/private key cryptosystem). By (unencrypted) the private key, the cloud can decrypt the symmetric key and then use the symmetric key to perform actions on behalf of the client (eg, returning the key, performing editing of the file content in the cloud, in the archive content) The file content is executed in the case of executable content, the file is presented for secure remote viewing, etc.).
在另一實施例中,例如消費裝置之另一裝置可能希望存取已藉由對稱金鑰加密之經加密內容。消費裝置具 有對經加密對稱金鑰(藉由私密金鑰所加密)及經加密私密金鑰(藉由雲端計算服務公開金鑰(PKI)所加密之私密金鑰)的存取權。消費裝置可將經加密對稱金鑰及經加密私密金鑰發送至雲端計算服務(CCS)。CCS可對經加密私密金鑰解密(例如,使用CCS之PKI的解密金鑰)。藉由(未加密)私密金鑰,雲端可對經加密對稱金鑰解密且將(未加密)對稱金鑰傳回至消費裝置,該消費裝置可對經加密內容解密。因此,儘管消費裝置不能夠直接地對經加密對稱金鑰解密以便對經加密內容解密,但CCS可將(解開的)對稱金鑰提供至消費裝置。 In another embodiment, another device, such as a consumer device, may wish to access encrypted content that has been encrypted by a symmetric key. Consumer device There are access rights to the encrypted symmetric key (encrypted by the private key) and the encrypted private key (private key encrypted by the Cloud Computing Service Public Key (PKI)). The consumer device can send the encrypted symmetric key and the encrypted private key to the Cloud Computing Service (CCS). The CCS can decrypt the encrypted private key (eg, the decryption key of the PKI using CCS). With the (unencrypted) private key, the cloud can decrypt the encrypted symmetric key and pass the (unencrypted) symmetric key back to the consumer device, which can decrypt the encrypted content. Thus, although the consumer device is not capable of directly decrypting the encrypted symmetric key to decrypt the encrypted content, the CCS can provide the (unwrapped) symmetric key to the consumer device.
圖1為根據本發明之一實施例的系統100之方塊圖。系統100包括(安全)端點裝置110、消費裝置120(例如,蜂巢式電話或其他使用者互動式裝置、平板電腦智慧型電話、輕量級筆記型電腦、桌上型電腦、伺服器、虛擬化伺服器、嵌入式系統,等)、產生裝置130,及雲端計算伺服器(CCS)140。 1 is a block diagram of a system 100 in accordance with an embodiment of the present invention. System 100 includes (secure) endpoint device 110, consumer device 120 (eg, a cellular or other user interactive device, a tablet smart phone, a lightweight notebook, a desktop computer, a server, a virtual The server, the embedded system, and the like, the generating device 130, and the cloud computing server (CCS) 140.
在操作中,產生裝置130可產生一或多個金鑰。舉例而言,產生裝置130可產生可藉由能夠保管其自己之私密金鑰的端點裝置110請求的(隨機)對稱金鑰、私密金鑰、公開加密金鑰,等。 In operation, the generating device 130 can generate one or more keys. For example, the generating device 130 can generate a (random) symmetric key, a private key, a public encryption key, etc., which can be requested by the endpoint device 110 capable of holding its own private key.
消費裝置120可自端點裝置110接收已使用對稱金鑰加密之經加密檔案。端點裝置110亦可將已藉由自產生裝置130所接收之私密金鑰加密的經加密對稱金鑰(「隱蔽的對稱金鑰」)發送至消費裝置120(例如,作為經加密檔 案之後設資料)。消費裝置120亦可接收經加密私密金鑰(「隱蔽的私密金鑰」),該經加密私密金鑰係藉由可藉由CCA 140解密之PKI加密所加密(例如,經由公開金鑰)的私密金鑰。 The consumer device 120 can receive from the endpoint device 110 an encrypted file that has been encrypted using a symmetric key. Endpoint device 110 may also send an encrypted symmetric key ("hidden symmetric key") that has been encrypted by the private key received from generating device 130 to consumer device 120 (eg, as an encrypted file) After the case, set the information). The consumer device 120 can also receive an encrypted private key ("hidden private key") that is encrypted by PKI encryption that can be decrypted by the CCA 140 (eg, via a public key) Private key.
CCS 140可具有對與消費裝置120交換安全資訊而言被認為可接受的安全性層級。消費裝置120可將請求發送至CCS 140以對隱蔽的對稱金鑰解密。該請求可包括隱蔽的對稱金鑰及隱蔽的私密金鑰。CCS 140可具有對非對稱解密金鑰(例如,藉由產生裝置130所提供)之存取權,以對經PKI加密私密金鑰解密。CCS 140可經由例如儲存於CCS 140之金鑰保存庫中之非對稱PKI解密金鑰的使用而對隱蔽的私密金鑰解密。 The CCS 140 may have a level of security that is considered acceptable for exchanging security information with the consumer device 120. The consuming device 120 can send a request to the CCS 140 to decrypt the hidden symmetric key. The request may include a hidden symmetric key and a hidden private key. CCS 140 may have access to an asymmetric decryption key (e.g., provided by generation device 130) to decrypt the PKI encrypted private key. CCS 140 may decrypt the hidden private key via the use of an asymmetric PKI decryption key, such as stored in a keystore of CCS 140.
在解開隱蔽的私密金鑰之後,CCS 140可使用(解開的)私密金鑰來對隱蔽的對稱金鑰解密。在解開隱蔽的對稱金鑰之後,CCS 140可回應於請求而將(解開的)對稱金鑰發送至消費裝置120。消費裝置120可使用對稱金鑰對經加密資料檔案解密,以產生純文字檔案(例如,經解密檔案)。 After unlocking the covert private key, CCS 140 may use the (unwrapped) private key to decrypt the hidden symmetric key. After unlocking the hidden symmetric key, CCS 140 may send the (unwrapped) symmetric key to consumer device 120 in response to the request. The consumer device 120 can decrypt the encrypted data file using a symmetric key to generate a plain text file (eg, a decrypted file).
在一些實施例中,CCS 140在已將對稱金鑰發送至消費裝置120之後損毀駐留於CCS 140上之私密金鑰及對稱金鑰的任何複本。因此,消費裝置120可請求CCS 140對針對經加密資料檔案之解密所需的隱蔽的對稱金鑰解密,且消費裝置120可自CCS 140接收(經解密)對稱金鑰且對經加密資料檔案解密以存取經解密資料檔案(純文字檔案)。在對稱金鑰發送至消費裝置120之後,無私密金鑰 或對稱金鑰之複本保留於CCS 140處。 In some embodiments, CCS 140 corrupts any copies of the private key and symmetric key residing on CCS 140 after the symmetric key has been sent to consumer device 120. Accordingly, the consuming device 120 can request the CCS 140 to decrypt the hidden symmetric key required for decrypting the encrypted data archive, and the consuming device 120 can receive (decrypt) the symmetric key from the CCS 140 and decrypt the encrypted data archive. To access the decrypted data file (plain text file). After the symmetric key is sent to the consumer device 120, there is no private key Or a copy of the symmetric key remains at CCS 140.
圖2為根據本發明之一實施例的系統200之方塊圖。系統200包括消費裝置204及雲端計算服務(CCS)206。 2 is a block diagram of a system 200 in accordance with an embodiment of the present invention. System 200 includes a consumer device 204 and a cloud computing service (CCS) 206.
消費裝置204包括處理器203,處理器203包括安全會話邏輯232及解密邏輯234,且消費裝置204亦包括動態隨機存取記憶體(DRAM)205。安全會話邏輯232及解密邏輯234可以軟體、硬體、韌體或其組合來實施。 The consumer device 204 includes a processor 203 that includes secure session logic 232 and decryption logic 234, and the consumer device 204 also includes a dynamic random access memory (DRAM) 205. Secure session logic 232 and decryption logic 234 can be implemented in software, hardware, firmware, or a combination thereof.
CCS 206包括暫時性節點208,且可包括其他暫時性節點(未展示)。暫時性節點208包括處理器210,處理器210包括私密金鑰解密邏輯212、對稱金鑰解密邏輯214及認證邏輯220。私密金鑰解密邏輯212、對稱金鑰解密邏輯214及認證邏輯220可各自以軟體、硬體、韌體或其組合來實施。暫時性節點208亦包括耦接至處理器210之DRAM 216,以儲存可藉由處理器210存取的應用程式、資料等。 CCS 206 includes transitory node 208 and may include other transitory nodes (not shown). The transitory node 208 includes a processor 210 that includes private key decryption logic 212, symmetric key decryption logic 214, and authentication logic 220. Private key decryption logic 212, symmetric key decryption logic 214, and authentication logic 220 may each be implemented in software, hardware, firmware, or a combination thereof. The temporary node 208 also includes a DRAM 216 coupled to the processor 210 for storing applications, data, and the like accessible by the processor 210.
在操作中,使用者裝置202之安全會話邏輯232可將請求發送至消費裝置204以打開安全會話,且可包括認證請求例如以確認暫時性節點208之安全性層級。作為回應,消費裝置204可接收藉由處理器210之認證邏輯220所產生的認證。在認證藉由消費裝置204接收之後,安全會話邏輯232可建立對暫時性節點208之安全連接。認證可指示CCS 206之安全性層級。 In operation, the secure session logic 232 of the user device 202 can send a request to the consumer device 204 to open a secure session, and can include an authentication request, for example, to confirm the security level of the transient node 208. In response, the consumer device 204 can receive the authentication generated by the authentication logic 220 of the processor 210. After the authentication is received by the consumer device 204, the secure session logic 232 can establish a secure connection to the transitory node 208. The authentication may indicate the security level of the CCS 206.
在認證藉由消費裝置204接收後,安全會話邏輯232即可將請求發送至暫時性節點208以對經加密資料檔 案解密。安全會話邏輯232可將經加密資料檔案之後設資料發送至暫時性節點208,該後設資料例如經加密對稱金鑰(例如,藉由私密金鑰所加密之對稱金鑰)。安全會話邏輯232亦可將隱蔽的私密金鑰發送至暫時性節點208,該隱蔽的私密金鑰例如藉由CCS 206之公開金鑰所加密的私密金鑰。 After the authentication is received by the consumer device 204, the secure session logic 232 can send the request to the transitory node 208 for the encrypted data file. Declassification. The secure session logic 232 can send the encrypted data archive to the transitory node 208, such as an encrypted symmetric key (eg, a symmetric key encrypted by a private key). The secure session logic 232 can also send the covert private key to the transitory node 208, such as the private key encrypted by the public key of the CCS 206.
在暫時性節點208處,處理器210內之私密金鑰解密邏輯212可使用例如與CCS公開加密相關聯之非對稱解密金鑰對私密金鑰解密(例如,以對經PKI加密私密金鑰解密)。在一實施例中,非對稱解密金鑰可藉由處理器210自例如金鑰儲存體(未展示)擷取。 At the temporary node 208, the private key decryption logic 212 within the processor 210 can decrypt the private key using, for example, an asymmetric decryption key associated with CCS public encryption (eg, to decrypt the PKI encrypted private key) ). In an embodiment, the asymmetric decryption key may be retrieved by processor 210 from, for example, a key store (not shown).
在對經加密私密金鑰解密之後,(未加密)私密金鑰可藉由對稱金鑰解密邏輯214存取以對經加密對稱金鑰解密。在對稱金鑰經解密之後,處理器210可將對稱金鑰發送至消費裝置204。消費裝置204之處理器203內的解密邏輯234可使用對稱金鑰對經加密資料檔案解密,以產生純文字檔案。在將對稱金鑰發送至消費裝置204之後,暫時性節點208之處理器210可損毀駐留於暫時性節點208處之對稱金鑰及私密金鑰。在對稱金鑰發送至消費裝置204之後,安全會話可結束。 After decrypting the encrypted private key, the (unencrypted) private key can be accessed by symmetric key decryption logic 214 to decrypt the encrypted symmetric key. After the symmetric key is decrypted, the processor 210 can send the symmetric key to the consumer device 204. The decryption logic 234 within the processor 203 of the consumer device 204 can decrypt the encrypted data file using a symmetric key to produce a plain text file. After transmitting the symmetric key to the consumer device 204, the processor 210 of the temporary node 208 can corrupt the symmetric key and the private key residing at the temporary node 208. After the symmetric key is sent to the consumer device 204, the secure session can end.
圖3為用於根據本發明之實施例之系統的流程圖。內容源302可為安全端點(例如,支援安全金鑰儲存)。使用者302可藉由請求310將經加密內容檔案308發送310至消費裝置304,以對經加密檔案308解密。經加密檔案 308可包括後設資料,該後設資料包括已使用私密金鑰加密之經加密對稱金鑰。經加密私密金鑰亦可自可能不支援安全金鑰儲存之內容源302發送至消費裝置304,該經加密私密金鑰例如使用雲端密碼服務(CCS)306之公開金鑰所加密的私密金鑰。 3 is a flow chart of a system for use in accordance with an embodiment of the present invention. The content source 302 can be a secure endpoint (eg, supporting secure key storage). The user 302 can send 310 the encrypted content archive 308 to the consumer device 304 by request 310 to decrypt the encrypted archive 308. Encrypted file 308 can include post-data that includes an encrypted symmetric key that has been encrypted using a private key. The encrypted private key may also be sent to the consumer device 304 from a content source 302 that may not support secure key storage, such as a private key encrypted using the public key of the Cloud Cipher Service (CCS) 306. .
消費裝置304可將請求312發送至雲端密碼服務(CCS)306以對隱蔽的對稱金鑰解密。該請求可包括隱蔽的對稱金鑰及隱蔽的私密金鑰。CCS 306可使用PKI非對稱私密金鑰(可自儲存體(例如,金鑰保存庫,未展示)擷取)在CCS 306之安全的指定位址空間(secure enclave)處對隱蔽的私密金鑰314解密。在隱蔽的私密金鑰藉由CCS 306之解密之後,(解開的)私密金鑰可用以對隱蔽的對稱金鑰316解密。 The consuming device 304 can send the request 312 to the Cloud Cryptographic Service (CCS) 306 to decrypt the hidden symmetric key. The request may include a hidden symmetric key and a hidden private key. CCS 306 may use a PKI asymmetric private key (capable of being retrieved from a storage (eg, a keystore, not shown)) at a secure secure address of the CCS 306 (secure enclave) to the hidden private key. 314 decryption. After the covert private key is decrypted by CCS 306, the (unwrapped) private key can be used to decrypt the hidden symmetric key 316.
在隱蔽的對稱金鑰之解密之後,對稱金鑰322可傳回至消費裝置304。包括處理器324之消費裝置304可對經加密內容檔案308解密,以產生經解密內容檔案326(例如,純文字檔案)。在隱蔽的對稱金鑰得以解開之後,可損毀318保留於CCS 306之安全的指定位址空間處的私密金鑰之複本。在對稱金鑰322提供至消費裝置304之後,可損毀320保留於CCS 306之安全的指定位址空間處的對稱金鑰320之複本。 After decryption of the hidden symmetric key, the symmetric key 322 can be passed back to the consumer device 304. The consumer device 304, including the processor 324, can decrypt the encrypted content archive 308 to produce a decrypted content archive 326 (eg, a text-only archive). After the hidden symmetric key is unlocked, a copy of the private key retained at the secure designated address space of CCS 306 may be corrupted 318. After the symmetric key 322 is provided to the consumer device 304, the recoverable 320 remains in a copy of the symmetric key 320 at the secure designated address space of the CCS 306.
因此,經加密對稱金鑰在CCS 306之安全的指定位址空間處的解密使經加密資料檔案能夠在消費裝置304無需維持受信任金鑰(例如,私密金鑰或非對稱PKI金 鑰)之情況下在消費裝置304處解密。在對稱金鑰已發送至消費裝置304之後保留於CCS 306處之私密金鑰及對稱金鑰的複本被損毀。 Thus, decryption of the encrypted symmetric key at the secure designated address space of CCS 306 enables the encrypted data archive to be maintained at the consumer device 304 without the need to maintain a trusted key (eg, a private key or an asymmetric PKI gold). In the case of a key), it is decrypted at the consumer device 304. A copy of the private key and symmetric key retained at CCS 306 after the symmetric key has been sent to consumer device 304 is corrupted.
圖4為根據本發明之一實施例的認證及金鑰解密之流程圖。消費裝置402將設立與雲端密碼服務(CCS)之CCS暫時性節點404的安全會話。 4 is a flow diagram of authentication and key decryption in accordance with an embodiment of the present invention. The consumer device 402 will set up a secure session with the CCS transitory node 404 of the Cloud Cryptographic Service (CCS).
在408處,在消費裝置402與暫時性節點404之安全的指定位址空間406之間打開會話。在410處,將CCS之CCS暫時性節點404之安全的指定位址空間的安全性層級之認證傳回至消費裝置402。在藉由消費裝置402核對暫時性節點404經授權以接收用於對檔案解密之經加密對稱金鑰(例如,安全的指定位址空間之安全性層級滿足臨界層級)後,消費裝置402即將解開請求412發送至安全的指定位址空間以解開隱蔽的私密金鑰(例如,使用公開金鑰加密所隱蔽之私密金鑰)來產生私密金鑰,且解開經加密對稱金鑰(例如,藉由私密金鑰所加密之對稱金鑰)以產生對稱金鑰。在解密操作得以執行之後,將(解開的)對稱金鑰發送414至消費裝置402。在對稱金鑰之接收後,消費裝置402即將命令416發送至安全的指定位址空間406以關閉會話。 At 408, the session is opened between the consumer device 402 and the secure designated address space 406 of the transitory node 404. At 410, the security level authentication of the designated address space of the CCS temporary node 404 of the CCS is passed back to the consumer device 402. After the consumer device 402 authenticates that the temporary node 404 is authorized to receive the encrypted symmetric key for decrypting the file (eg, the security level of the designated address space of the security meets the critical level), the consumer device 402 is about to resolve The open request 412 is sent to a secure designated address space to unlock the hidden private key (eg, using the public key encrypted by the public key encryption) to generate the private key, and to unlock the encrypted symmetric key (eg, The symmetric key encrypted by the private key) to generate a symmetric key. After the decryption operation is performed, the (unwrapped) symmetric key is sent 414 to the consumer device 402. After receipt of the symmetric key, the consumer device 402 sends a command 416 to the secure designated address space 406 to close the session.
圖5為根據本發明之另一實施例的認證及金鑰解密之流程圖500。在508處,消費裝置502打開與暫時性節點504之安全的指定位址空間506的會話。在510處,將安全的指定位址空間之安全性層級的認證自安全的指定 位址空間506發送至消費裝置502。在512處,消費裝置502將消費裝置502之安全性層級的認證提供至暫時性節點504。在514處,安全的指定位址空間506基於所接收之認證將安全性層級指派給消費裝置。 FIG. 5 is a flow diagram 500 of authentication and key decryption in accordance with another embodiment of the present invention. At 508, the consumer device 502 opens a session with the secure designated address space 506 of the transitory node 504. At 510, the security level of the specified designated address space is authenticated from the security designation. The address space 506 is sent to the consumer device 502. At 512, the consumer device 502 provides authentication of the security level of the consumer device 502 to the transitory node 504. At 514, the secure designated address space 506 assigns a security level to the consumer based on the received authentication.
在安全性層級經指派且安全會話得以建立之後,消費裝置502核對516安全的指定位址空間506之安全性層級匹配隱蔽的對稱金鑰之安全性層級,且將解開請求518發送至安全的指定位址空間506以對隱蔽的對稱金鑰解密。解開請求518包括隱蔽的對稱金鑰及使用CCS暫時性節點504之公開加密所隱蔽的隱蔽的私密金鑰。在520處,使用PKI解密解開隱蔽的私密金鑰(例如,CCS暫時性節點504之非對稱私密金鑰),且使用(解開的)私密金鑰解開隱蔽的對稱金鑰。在522處,將對稱金鑰520發送至消費裝置502。在524處,消費裝置502關閉安全會話。 After the security level is assigned and the secure session is established, the consumer device 502 checks 516 the security level of the specified address space 506 to match the security level of the hidden symmetric key, and sends the unopen request 518 to the secure The address space 506 is designated to decrypt the hidden symmetric key. The undo request 518 includes a hidden symmetric key and a hidden private key concealed using the public encryption of the CCS transitory node 504. At 520, the hidden private key (e.g., the asymmetric private key of the CCS transitory node 504) is decrypted using PKI decryption, and the hidden symmetric key is unlocked using the (unwrapped) private key. At 522, symmetric key 520 is sent to consumer device 502. At 524, the consumer device 502 closes the secure session.
圖6為根據本發明之實施例的檔案二進位大型物件(「blob」)600之方塊圖。檔案blob 600包括(經加密)密文602、隱蔽的對稱金鑰604、隱蔽的私密金鑰606至610、資料安全性層級指示符612,及數位簽章614。 6 is a block diagram of a file binary large object ("blob") 600 in accordance with an embodiment of the present invention. The archive blob 600 includes (encrypted) ciphertext 602, a hidden symmetric key 604, a covert private key 606-610, a data security level indicator 612, and a digital signature 614.
密文602包括已使用對稱金鑰加密之資料檔案內容。對稱金鑰係使用來自產生裝置之私密金鑰(Pr)隱蔽,且儲存為隱蔽的對稱金鑰604。 The ciphertext 602 includes data archive content that has been encrypted using a symmetric key. The symmetric key is concealed using the private key (Pr) from the generating device and stored as a hidden symmetric key 604.
私密金鑰Pr可藉由多個公開金鑰中之每一者加密,每一公開金鑰與雲端服務提供者之不同暫時性節點相關聯。舉例而言,公開金鑰Tr-1,Tr-2,...Tr-n中之每一者可 與對應的暫時性節點相關聯,且每一公開金鑰可用以隱蔽Pr金鑰,以產生n個隱蔽金鑰{Pr}Tr-i(i=1,n)。隱蔽金鑰{Pr}Tr-i606至610中之每一者可儲存於檔案600中。具有隱蔽金鑰{Pr}Tr-i(i=1,n)之多個版本使多個暫時性節點中之任一者能夠用以對對稱金鑰解密。 The private key Pr can be encrypted by each of a plurality of public keys, each public key being associated with a different temporary node of the cloud service provider. For example, each of the public keys Tr-1, Tr-2, ... Tr-n can be Associated with the corresponding temporary node, and each public key can be used to conceal the Pr key to generate n hidden keys {Pr} Tr-i (i = 1, n). Each of the cover keys {Pr} Tr-i 606 through 610 can be stored in the archive 600. Multiple versions with a covert key {Pr} Tr-i (i = 1, n) enable any of a plurality of transitory nodes to be used to decrypt the symmetric key.
舉例而言,隱蔽金鑰{Pr}Tr-1已藉由與雲端密碼服務(CCS,未展示)之第一暫時性節點相關聯的第一公開金鑰Tr-1加密。第一暫時性節點具有對第一非對稱金鑰之存取權,第一非對稱金鑰准許{Pr}Tr-1之解密以產生可用以對隱蔽的對稱金鑰解密的私密金鑰{Pr}。一旦被解開,則(解開的)對稱金鑰可用以例如藉由將對稱金鑰發送至對經加密檔案解密之受信任消費裝置而對經加密資料檔案解密。 For example, the covert key {Pr}Tr-1 has been encrypted by the first public key Tr-1 associated with the first transient node of the Cloud Cipher Service (CCS, not shown). The first transitory node has access to the first asymmetric key, the first asymmetric key grants decryption of {Pr}Tr-1 to generate a private key that can be used to decrypt the hidden symmetric key {Pr }. Once unwrapped, the (unwrapped) symmetric key can be used to decrypt the encrypted data archive, for example, by sending a symmetric key to a trusted consumer that decrypts the encrypted file.
或者,第一暫時性節點可接收經加密資料檔案,且可使用(經解密)對稱金鑰對經加密資料檔案解密。另外,在各種實施例中,第一暫時性節點可能能夠更改(例如,編輯)未加密資料檔案中之內容,以執行未加密資料檔案之可執行內容,呈現對於安全遠端檢視所保全的檔案之內容的一部分,等。 Alternatively, the first transitory node can receive the encrypted data archive and can decrypt the encrypted data archive using the (decrypted) symmetric key. Additionally, in various embodiments, the first transitory node may be able to modify (eg, edit) the content in the unencrypted data archive to perform executable content of the unencrypted data archive, presenting a file secured for the secure remote view Part of the content, etc.
在另一實例中,隱蔽金鑰{Pr}Tr-2已藉由與CCS之第二暫時性節點相關聯的第二公開金鑰Tr-2加密。第二暫時性節點具有對第二非對稱金鑰之存取權,第二非對稱金鑰准許{Pr}Tr-2之解密以產生可用以對隱蔽的對稱金鑰解密的私密金鑰{Pr}。一旦被解開,則(解開的)對稱金鑰可用以例如藉由將對稱金鑰發送至對經加密檔案解密之受信 任消費裝置而對經加密資料檔案解密。 In another example, the covert key {Pr}Tr-2 has been encrypted by the second public key Tr-2 associated with the second temporary node of the CCS. The second transitory node has access to a second asymmetric key that permits decryption of {Pr}Tr-2 to produce a private key that can be used to decrypt the hidden symmetric key {Pr }. Once unwrapped, the (unwrapped) symmetric key can be used, for example, by sending a symmetric key to the decryption of the encrypted file. The encrypted data file is decrypted by the consumer device.
在又一實例中,作為隱蔽的對稱金鑰之多個複本的結果,分佈式執行計劃可用以排程對暫時性節點集區之解密操作。舉例而言,經加密私密金鑰{Pr}Tr-i(i=1,n)中之每一者可能能夠僅在對應的時間段期間在對應的暫時性節點處加密,例如,年代式排程可判定經加密私密金鑰606至610中之哪一者將發送至對應的暫時性節點來解密。 In yet another example, as a result of multiple copies of the hidden symmetric key, the distributed execution plan can be used to schedule decryption operations on temporary node pools. For example, each of the encrypted private keys {Pr}Tr-i (i=1, n) may be able to be encrypted at the corresponding temporary node only during the corresponding time period, eg, chronological row The process can determine which of the encrypted private keys 606 through 610 will be sent to the corresponding transitory node for decryption.
檔案blob 600可使用例如產生裝置之簽章金鑰614來簽署,使得資料安全性層級614可與經加密資料相關聯且因此blob結構可能不會藉由後建構來竄改。在操作中,在消費裝置與暫時性節點之間的會話打開後,檔案blob 600即可例如藉由建立匹配簽章614之安全性層級的消費裝置之安全性層級而藉由消費裝置存取。密文602可藉由消費裝置存取。消費裝置可擷取隱蔽的對稱金鑰604及隱蔽的私密金鑰606至610中之一者,且可請求隱蔽的對稱金鑰604藉由該等多個暫時性節點之所選擇暫時性節點解密。在對對稱金鑰解密且將對稱金鑰發送至消費裝置之後,保留於所選擇暫時性節點上之私密金鑰及對稱金鑰的複本可被損毀。在消費裝置處之經加密資料檔案使用對稱金鑰解密之後,(經解密)資料檔案可傳回至不安全的使用者。 The archive blob 600 can be signed using, for example, the signature key 614 of the production device such that the data security hierarchy 614 can be associated with the encrypted material and thus the blob structure may not be tampered with by post-construction. In operation, after the session between the consumer device and the transitory node is opened, the archive blob 600 can be accessed by the consumer device, for example, by establishing a security level of the security device that matches the security level of the signature 614. The ciphertext 602 can be accessed by the consumer device. The consumer device may retrieve one of the concealed symmetric key 604 and the concealed private key 606-610, and may request the concealed symmetric key 604 to be decrypted by the selected temporary node of the plurality of transitory nodes . After decrypting the symmetric key and transmitting the symmetric key to the consumer device, the copy of the private key and symmetric key remaining on the selected transitory node may be corrupted. After the encrypted data file at the consumer device is decrypted using the symmetric key, the (decrypted) data file can be passed back to the unsecured user.
圖7為根據本發明之一實施例的用於進行雲端輔助式密碼術之方法700的流程圖。在區塊705處,雲端密碼服務(CCS)自消費裝置接收邀請以開始安全通訊會 話。在區塊710處,回應於邀請,雲端密碼服務(CCS)提供CCS之安全性層級的認證。 FIG. 7 is a flow diagram of a method 700 for performing cloud assisted cryptography, in accordance with an embodiment of the present invention. At block 705, the Cloud Cryptographic Service (CCS) receives an invitation from the consumer device to begin a secure communication session. words. At block 710, in response to the invitation, the Cloud Cipher Service (CCS) provides security level authentication for the CCS.
任擇地,在區塊720處,CCS接收已起始安全會話之消費裝置的認證,且CCS將安全性層級指派給消費裝置。前進至區塊730,CCS之暫時性節點自消費裝置接收請求以解開隱蔽的對稱金鑰。藉由該請求,CCS暫時性節點接收已藉由私密金鑰加密之隱蔽的對稱金鑰。CCS暫時性節點亦接收已藉由與CCS共享之公開金鑰加密(例如,公開金鑰加密)之隱蔽的私密金鑰。 Optionally, at block 720, the CCS receives the authentication of the consumer device that initiated the secure session, and the CCS assigns the security level to the consumer device. Proceeding to block 730, the transit node of the CCS receives a request from the consumer device to unlock the hidden symmetric key. With this request, the CCS transitory node receives the concealed symmetric key that has been encrypted by the private key. The CCS transitory node also receives a covert private key that has been encrypted by public key (eg, public key encryption) shared with CCS.
進行至區塊740,CCS暫時性節點使用與公開金鑰加密相關聯之非對稱金鑰對隱蔽的私密金鑰解密。繼續至區塊750,CCS暫時性節點使用(解開的)私密金鑰對隱蔽的對稱金鑰解密。前進至區塊760,CCS暫時性節點將(經解密)對稱金鑰發送至消費裝置以對經加密資料檔案解密。(或者,CCS暫時性節點可對將傳回至消費裝置之經加密資料檔案解密。)進行至區塊770,CCS暫時性節點損毀保留於CCS處之私密金鑰的複本及對稱金鑰之複本。該方法在780處結束。 Proceeding to block 740, the CCS transitory node decrypts the concealed private key using the asymmetric key associated with public key encryption. Continuing to block 750, the CCS transitory node decrypts the hidden symmetric key using the (unwrapped) private key. Proceeding to block 760, the CCS transitory node sends (decrypted) the symmetric key to the consumer device to decrypt the encrypted data archive. (Alternatively, the CCS transitory node may decrypt the encrypted data file that is passed back to the consumer device.) To block 770, the CCS temporary node corrupts the copy of the private key and the copy of the symmetric key that is retained at CCS. . The method ends at 780.
實施例可併入至包括諸如蜂巢式電話、平板電腦等之行動裝置的其他類型之系統中。現參看圖8,展示了根據本發明之另一實施例的系統之方塊圖。如圖8中所示,系統800可為行動裝置且可包括各種組件。如圖8之高階視圖中所示,可為裝置之中央處理單元的應用程式處理器810與包括儲存體815之各種組件通訊。在各種實施例中, 儲存體815可包括程式及資料儲存部分兩者,且可經對映以提供安全儲存。 Embodiments may be incorporated into other types of systems including mobile devices such as cellular phones, tablets, and the like. Referring now to Figure 8, a block diagram of a system in accordance with another embodiment of the present invention is shown. As shown in FIG. 8, system 800 can be a mobile device and can include various components. As shown in the high level view of FIG. 8, the application processor 810, which may be the central processing unit of the device, communicates with various components including the storage 815. In various embodiments, The storage 815 can include both a program and a data storage portion and can be mapped to provide secure storage.
應用程式處理器810可進一步耦接至輸入/輸出系統820,輸入/輸出系統820在各種實施例中可包括顯示器及諸如觸控式小鍵盤之一或多個輸入裝置,該觸控式小鍵盤自身在被執行時可出現在顯示器上。系統800亦可包括整合式感測器集線器(ISH)860,整合式感測器集線器(ISH)860可自一或多個感測器870接收資料。 The application processor 810 can be further coupled to an input/output system 820, which in various embodiments can include a display and one or more input devices such as a touch keypad, the touch keypad It can appear on the display when it is being executed. System 800 can also include an integrated sensor hub (ISH) 860 that can receive data from one or more sensors 870.
應用程式處理器810亦可耦接至基頻處理器830,基頻處理器830可調節諸如語音及資料通訊之信號以供輸出,以及調節傳入電話及其他信號。如所見,基頻處理器830耦接至收發器840,收發器840可允許接收性能及發射性能兩者。又,收發器840可與天線850通訊,例如,能夠根據電氣電子工程師學會802.11標準經由一或多個通訊協定發射及接收語音及資料信號的任何類型之天線,經由一或多個通訊協定諸如經由無線廣域網路(例如,3G或4G網路)及/或無線區域網路,諸如BLUETOOTHTM或所謂的WI-FITM網路。如所見,系統800可進一步包括可再充電電源供應器825,電源供應器825具有可再充電蓄電池以允許在行動環境中之操作。 The application processor 810 can also be coupled to a baseband processor 830 that can adjust signals such as voice and data communications for output, as well as adjust incoming calls and other signals. As can be seen, the baseband processor 830 is coupled to the transceiver 840, which can allow both reception performance and transmission performance. Also, transceiver 840 can be in communication with antenna 850, for example, any type of antenna capable of transmitting and receiving voice and data signals via one or more communication protocols in accordance with the Institute of Electrical and Electronics Engineers 802.11 standard, via one or more communication protocols, such as via Wireless wide area networks (eg, 3G or 4G networks) and/or wireless local area networks, such as BLUETOOTH (TM) or so-called WI-FI (TM) networks. As can be seen, system 800 can further include a rechargeable power supply 825 having a rechargeable battery to allow operation in a mobile environment.
在一實例中,系統800可充當消費裝置,例如,圖1之系統100的消費裝置120。作為消費裝置,系統800可接收具有後設資料之經加密資料檔案,該後設資料包括經加密對稱金鑰(藉由私密金鑰所加密)。該系統亦可接收經 加密私密金鑰(例如,經由PKI加密之公開金鑰所加密)。系統800可例如經由認證建立與雲端密碼服務(CCS)之安全會話,且系統800可將請求發出至CCS之CCS暫時性節點(未展示)以對經加密對稱金鑰解密。根據本發明之實施例,系統800可將經加密對稱金鑰及經加密私密金鑰提供至CCS暫時性節點。CCS暫時性節點可使用公開金鑰加密之非對稱私密金鑰解開隱蔽的私密金鑰,且可使用(解開的)私密金鑰來對隱蔽的對稱金鑰解密以傳回至系統800。根據本發明之實施例,系統800可接收對稱金鑰,且可使用對稱金鑰對經加密資料檔案解密以產生純文字檔案。 In an example, system 800 can function as a consumer device, such as consumer device 120 of system 100 of FIG. As a consumer device, system 800 can receive an encrypted data file having post-data, the post-data including an encrypted symmetric key (encrypted by a private key). The system can also receive Encrypt the private key (for example, encrypted by the PKI encrypted public key). System 800 can establish a secure session with a Cloud Cryptographic Service (CCS), for example, via authentication, and system 800 can issue a request to a CCS transitory node (not shown) of the CCS to decrypt the encrypted symmetric key. In accordance with an embodiment of the present invention, system 800 can provide an encrypted symmetric key and an encrypted private key to a CCS transitory node. The CCS transitory node may use the asymmetric key encrypted by the public key to unlock the hidden private key, and the secret key may be decrypted for decryption to the system 800 using the (unwrapped) private key. In accordance with an embodiment of the present invention, system 800 can receive a symmetric key and can decrypt the encrypted data file using a symmetric key to produce a plain text file.
儘管在圖8之實施例中藉由此特定實行方案來展示,但本發明之範疇並未在此方面受到限制。 Although shown in this embodiment of FIG. 8 by this particular implementation, the scope of the invention is not limited in this respect.
下文描述其他實施例。 Other embodiments are described below.
在第一實例中,一種系統包括一雲端密碼伺服器(CCS),該雲端密碼伺服器(CCS)包括一處理器,該處理器包括私密金鑰解密邏輯以對自一消費裝置所接收之一經加密私密金鑰解密來產生一私密金鑰。該處理器亦包括對稱金鑰解密邏輯以自該私密金鑰解密邏輯接收該私密金鑰且對自該消費裝置所接收之一經加密對稱金鑰解密,其中該解密係使用該私密金鑰而執行。該處理器亦包括對稱金鑰解密邏輯以自該私密金鑰解密邏輯接收該私密金鑰且對自該消費裝置所接收之一經加密對稱金鑰解密,其中該解密係使用該私密金鑰而執行。該系統亦包括耦接至該處理器之一動態隨機存取記憶體(DRAM)。 In a first example, a system includes a cloud cryptographic server (CCS), the cloud cryptographic server (CCS) including a processor including private key decryption logic to receive one of the received from a consumer device The encrypted private key is decrypted to generate a private key. The processor also includes symmetric key decryption logic to receive the private key from the private key decryption logic and decrypt one of the encrypted symmetric keys received from the consumer device, wherein the decryption is performed using the private key . The processor also includes symmetric key decryption logic to receive the private key from the private key decryption logic and decrypt one of the encrypted symmetric keys received from the consumer device, wherein the decryption is performed using the private key . The system also includes a dynamic random access memory (DRAM) coupled to one of the processors.
在包括實例1之系統的第二實例中,該經加密私密金鑰係使用與該雲端密碼伺服器相關聯之一公開金鑰加密而加密。 In a second example of the system comprising Example 1, the encrypted private key is encrypted using one of the public key cryptography associated with the cloud cryptographic server.
在包括實例1之系統的第三實例中,該經加密私密金鑰及該經加密對稱金鑰回應於藉由該對稱金鑰所加密之一經加密檔案藉由該消費裝置接收而自該消費裝置接收。 In a third example comprising the system of example 1, the encrypted private key and the encrypted symmetric key are received from the consumer device in response to receipt by the consumer device via one of the encrypted files encrypted by the symmetric key receive.
在包括實例1之系統的第四實例中,在該經加密私密金鑰及該經加密對稱金鑰自該消費裝置接收之前,該系統將建立一受信任執行環境(TEE)。 In a fourth example of the system comprising Example 1, the system will establish a Trusted Execution Environment (TEE) before the encrypted private key and the encrypted symmetric key are received from the consumer device.
在包括實例4之系統的第五實例中,該TEE之建立包括回應於自該消費裝置所接收之一認證請求而提供一安全性層級之認證。 In a fifth example of the system comprising example 4, the establishing of the TEE includes providing a security level of authentication in response to receiving an authentication request from the consumer device.
在包括實例1之系統的第六實例中,在該經加密對稱金鑰自該消費裝置之接收之前,該處理器將提供一指示:該系統之一安全性層級與該經加密對稱金鑰的一安全性層級相容。 In a sixth example of the system comprising the example 1, the processor will provide an indication of the security level of the system and the encrypted symmetric key before the encrypted symmetric key is received from the consumer device. A security level is compatible.
在包括實例1之系統的第七實例中,在該經加密對稱金鑰之解密之後,該系統將會將該對稱金鑰提供至該消費裝置。 In a seventh example of the system comprising Example 1, after decryption of the encrypted symmetric key, the system will provide the symmetric key to the consumer device.
在包括實例7之系統的第八實例中,該系統在該對稱金鑰提供至該消費裝置之後將損毀駐留於該系統中之該私密金鑰的一複本。 In an eighth example of a system comprising instance 7, the system will corrupt a copy of the private key residing in the system after the symmetric key is provided to the consumer device.
在包括實例7之系統的第九實例中,該系統在該 對稱金鑰提供至該消費裝置之後將損毀駐留於該系統中之該對稱金鑰的一複本。 In a ninth example of the system comprising example 7, the system is Providing the symmetric key to the consumer device will corrupt a copy of the symmetric key residing in the system.
在包括實例1之系統的第十實例中,該系統將自該消費裝置接收一經加密檔案,使用該對稱金鑰對自該消費型裝置所接收之一經加密檔案解密以產生一未加密資料檔案,以及將該未加密資料檔案傳回至該消費裝置。 In a tenth example of the system comprising the example 1, the system will receive an encrypted file from the consumer device, using the symmetric key to decrypt an encrypted file received from the consumer device to generate an unencrypted data file, And transmitting the unencrypted data file to the consumer device.
在第十一實例中,一種方法包括:藉由包括至少一處理器之一雲端計算伺服器(CCS)接收對一經加密對稱金鑰解密的一請求;接收該經加密對稱金鑰及包含已經由一公開金鑰加密之一私密金鑰的一經加密私密金鑰;以及在對該第一經加密私密金鑰解密之後,使用該私密金鑰對該經加密對稱金鑰解密以產生一對稱金鑰。 In an eleventh example, a method includes receiving, by a cloud computing server (CCS) including at least one processor, a request to decrypt an encrypted symmetric key; receiving the encrypted symmetric key and including An encrypted private key of one of the public key encryption keys; and after decrypting the first encrypted private key, decrypting the encrypted symmetric key using the private key to generate a symmetric key .
在包括實例11之方法的第十二實例中,該方法包括將該對稱金鑰提供至一消費裝置。 In a twelfth example of the method comprising the method of example 11, the method includes providing the symmetric key to a consumer device.
在包括實例12之方法的第十三實例中,該方法包括在將該對稱金鑰提供至該消費裝置之後,藉由該CCS損毀存在於該CCS中之該對稱金鑰的一複本。 In a thirteenth example comprising the method of example 12, the method includes destroying, by the CCS, a copy of the symmetric key present in the CCS after the symmetric key is provided to the consumer device.
在包括實例12之方法的第十四實例中,該方法包括在將該對稱金鑰提供至該消費裝置之後,藉由該CCS損毀存在於該雲端伺服器中之該私密金鑰的一複本。 In a fourteenth example comprising the method of example 12, the method includes destroying, by the CCS, a copy of the private key present in the cloud server after the symmetric key is provided to the consumer device.
在包括實例11之方法的第十五實例中,該方法包括在接收該經加密對稱金鑰之前,自該消費裝置接收針對一安全性認證之一請求,且回應於該請求而提供該安全性認證。 In a fifteenth example comprising the method of example 11, the method includes receiving a request for a security authentication from the consumer device prior to receiving the encrypted symmetric key, and providing the security in response to the request Certification.
在包括實例11之方法的第十六實例中,該方法包括在提供該對稱金鑰之前,自該消費裝置接收一消費裝置安全性認證。 In a sixteenth example comprising the method of example 11, the method includes receiving a consumer device security certificate from the consumer device prior to providing the symmetric key.
在包括實例15之方法的第十七實例中,該經加密對稱金鑰僅在該CCS基於該安全性認證具有一安全性層級時自該消費裝置接收,該安全性層級滿足與該對稱金鑰相關聯之一對稱金鑰安全性層級。 In a seventeenth example comprising the method of example 15, the encrypted symmetric key is received from the consumer device only when the CCS has a security level based on the security authentication, the security level satisfies the symmetric key Associated with one of the symmetric key security levels.
第十八實例係一種設備,其包括執行實例11至17中之任一者之方法的構件。 The eighteenth example is an apparatus comprising the means for performing the method of any of Examples 11 to 17.
第十九實例係一種包括機器可讀指令之機器可讀儲存體,該等指令在被執行時實施實例11至17中之任一者的方法。 A nineteenth example is a machine readable storage body comprising machine readable instructions that, when executed, implement the method of any of embodiments 11-17.
第二十實例係一種包括一處理器之系統,該處理器包括安全會話邏輯以:起始與一雲端密碼服務(CCS)之一安全通訊會話;經由該安全通訊會話將對經由一私密金鑰所加密之一經加密對稱金鑰解密的一請求提供至該CCS;提供該經加密對稱金鑰及一經加密私密金鑰,該經加密私密金鑰係經由與該CCS相關聯的公開金鑰加密而加密;以及回應於對該經加密對稱金鑰解密之該請求而自該CCS接收該對稱金鑰。該系統亦包括一動態隨機存取記憶體(DRAM)。 A twentieth example is a system comprising a processor, the processor comprising secure session logic to initiate a secure communication session with a cloud cryptographic service (CCS); via the secure communication session, the pair is via a private key A request for decryption of one of the encrypted encrypted symmetric keys is provided to the CCS; the encrypted symmetric key and an encrypted private key are provided, the encrypted private key being encrypted via a public key associated with the CCS Encrypting; and receiving the symmetric key from the CCS in response to the request to decrypt the encrypted symmetric key. The system also includes a dynamic random access memory (DRAM).
第21實例包括實例20之系統,且該處理器進一步包括解密邏輯以使用該對稱金鑰對一經加密資料檔案解密來產生一未加密資料檔案。 The twenty-first example includes the system of example 20, and the processor further includes decryption logic to decrypt an encrypted data archive using the symmetric key to generate an unencrypted data archive.
第22實例包括實例20之系統,其中該安全會話邏輯將在該安全通訊會話之建立之前將一消費裝置安全性認證提供至該CCS。 The twenty-second example includes the system of example 20, wherein the secure session logic will provide a consumer device security authentication to the CCS prior to the establishment of the secure communication session.
第23實例包括實例20之系統,且其中該安全會話邏輯將在該安全通訊會話之建立之前自該CCS接收一CCS安全性認證。 The 23rd example includes the system of example 20, and wherein the secure session logic will receive a CCS security authentication from the CCS prior to the establishment of the secure communication session.
第24實例係方法,其包括藉由一消費裝置之一處理器起始與一雲端密碼服務(CCS)之一安全通訊會話。該方法包括藉由該消費型裝置經由該安全通訊會話將對一經加密對稱金鑰解密之一請求、包括經由與該CCS相關聯之公開金鑰加密所加密的一私密金鑰之一經加密私密金鑰,及包括經由該私密金鑰所加密之對稱金鑰的該經加密對稱金鑰提供至該CCS。該方法包括回應於對該經加密對稱金鑰解密之該請求而自該CCS接收該對稱金鑰。 A 24th method is the method comprising initiating a secure communication session with a cloud cryptographic service (CCS) by a processor of a consumer device. The method includes encrypting a privacy request by decrypting a request for decrypting a symmetric symmetric key via the secure communication session, including encrypting one of a private key encrypted via a public key associated with the CCS. The key, and the encrypted symmetric key including the symmetric key encrypted via the private key, are provided to the CCS. The method includes receiving the symmetric key from the CCS in response to the request to decrypt the encrypted symmetric key.
第25實例包括實例24之方法,進一步包括使用該對稱金鑰對一經加密資料檔案解密以產生一未加密資料檔案。 The twenty-fifth example includes the method of example 24, further comprising decrypting an encrypted data file using the symmetric key to generate an unencrypted data file.
第26實例包括實例24之方法,進一步包括在該安全通訊會話之建立之前自該CCS接收一CCS安全性認證。 The twenty-sixth example includes the method of example 24, further comprising receiving a CCS security authentication from the CCS prior to establishment of the secure communication session.
第27實例包括實例24之方法,進一步包括在該安全通訊會話之建立之前將一消費裝置安全性認證提供至該CCS。 The twenty-seventh example includes the method of example 24, further comprising providing a consumer device security authentication to the CCS prior to establishment of the secure communication session.
第28實例係一種設備,其包括用於執行實例24 至27之方法中之任一者的構件。 The 28th example is an apparatus including an execution example 24 A member of any of the methods up to 27.
第29實例係一種包括機器可讀指令之機器可讀儲存體,該等指令在被執行時實施實例24至27中之任一者的方法。 The 29th example is a machine readable storage body comprising machine readable instructions that, when executed, implement the method of any of embodiments 24-27.
第30實例係一種設備,其包括用於起始與一雲端密碼服務(CCS)之一安全通訊會話的起始構件。該設備亦包括請求構件,該請求構件用於經由該安全通訊會話將對一經加密對稱金鑰解密之一請求、包括經由與該CCS相關聯之公開金鑰加密所加密的一私密金鑰之一經加密私密金鑰,及包括經由該私密金鑰所加密之對稱金鑰的該經加密對稱金鑰提供至該CCS。該設備亦包括接收構件,該接收構件用於回應於對該經加密對稱金鑰解密之該請求而自該CCS接收該對稱金鑰。 The 30th example is an apparatus comprising a starting component for initiating a secure communication session with one of a Cloud Cryptographic Service (CCS). The device also includes a requesting component for requesting one of decrypting an encrypted symmetric key via the secure communication session, including encrypting one of the private keys encrypted via the public key associated with the CCS The encrypted private key, and the encrypted symmetric key including the symmetric key encrypted via the private key, are provided to the CCS. The apparatus also includes a receiving component for receiving the symmetric key from the CCS in response to the request to decrypt the encrypted symmetric key.
第31實例包括實例30之設備,且進一步包括用於使用該對稱金鑰對一經加密資料檔案解密來產生一未加密資料檔案之解密構件。 A thirty-first example includes the apparatus of example 30, and further comprising decryption means for decrypting an encrypted data archive using the symmetric key to generate an unencrypted data archive.
第32實例包括實例30之設備,該接收構件進一步用於在該安全通訊會話之建立之前自該CCS接收一CCS安全性認證。 The 32nd example includes the apparatus of example 30, the receiving means further for receiving a CCS security authentication from the CCS prior to establishment of the secure communication session.
第33實例包括實例30之設備,進一步包括用於在該安全通訊會話之建立之前將一消費裝置安全性認證提供至該CCS之認證構件。 The 33rd example includes the apparatus of example 30, further comprising an authentication component for providing a consumer device security authentication to the CCS prior to establishment of the secure communication session.
第34實例係一種設備,其包括用於自一消費裝置接收一請求以對一經加密對稱金鑰解密之接收構件。該 接收構件進一步用於接收該經加密對稱金鑰及包括已經由一公開金鑰加密之一私密金鑰的一經加密私密金鑰。該設備亦包括用於對該第一經加密私密金鑰解密以產生一私密金鑰之解密構件。該解密構件亦用於,在對該第一經加密私密金鑰解密之後,使用該私密金鑰對該經加密對稱金鑰解密以產生一對稱金鑰。 A 34th example is an apparatus comprising receiving means for receiving a request from a consumer device to decrypt an encrypted symmetric key. The The receiving component is further for receiving the encrypted symmetric key and an encrypted private key comprising a private key that has been encrypted by a public key. The device also includes a decryption component for decrypting the first encrypted private key to generate a private key. The decryption component is also operative to decrypt the encrypted symmetric key using the private key after decrypting the first encrypted private key to generate a symmetric key.
在包括實例34之設備的第35實例中,該設備進一步包括用於將該對稱金鑰提供至該消費裝置之輸出構件。 In a 35th example comprising the apparatus of example 34, the apparatus further comprises an output member for providing the symmetric key to the consumer device.
在包括實例35之設備的第36實例中,該設備進一步包括用於在將該對稱金鑰提供至該消費裝置之後損毀存在於該設備中之該對稱金鑰之一複本的構件。 In a thirty-fifth example of the apparatus comprising the example 35, the apparatus further comprises means for destroying a copy of the symmetric key present in the device after the symmetric key is provided to the consumer device.
在包括實例36之設備的第37實例中,該設備包括用於在將該對稱金鑰提供至該消費裝置之後損毀存在於該設備中之該私密金鑰之一複本的構件。 In a 37th example comprising the apparatus of example 36, the apparatus includes means for destroying a copy of the private key present in the device after the symmetric key is provided to the consumer device.
在包括實例34之設備的第38實例中,該接收構件進一步用於在接收該經加密對稱金鑰之前自該消費裝置接收針對一安全性認證之一請求,且該設備進一步包括用於回應於該請求而提供該安全性認證的認證構件。 In a 38th example comprising the apparatus of example 34, the receiving means is further for receiving a request for a security authentication from the consumer device prior to receiving the encrypted symmetric key, and the apparatus further comprising responding to The authentication component of the security authentication is provided by the request.
在包括實例34之設備的第39實例中,該接收構件進一步用於在接收該經加密對稱金鑰之前自該消費裝置接收一消費裝置安全性認證。 In a 39th example comprising the apparatus of example 34, the receiving component is further for receiving a consumer device security authentication from the consumer device prior to receiving the encrypted symmetric key.
在包括實例38之設備的第40實例中,該經加密對稱金鑰僅在該CCS基於該安全性認證具有一安全性層級 時自該消費裝置接收,該安全性層級滿足與該對稱金鑰相關聯之一對稱金鑰安全性層級。 In a 40th example comprising the apparatus of example 38, the encrypted symmetric key has a security level based on the security authentication only at the CCS Received from the consumer device, the security level satisfies one of the symmetric key security levels associated with the symmetric key.
實施例可以程式碼來實施且可儲存於非暫時性儲存媒體上,該非暫時性儲存媒體儲存有指令,該等指令可用以規劃系統以執行指令。儲存媒體可包括但不限於:任何類型之磁碟,包括軟碟、光碟、固態驅動機(SSD)、壓縮碟唯讀記憶體(CD-ROM)、可重寫壓縮碟(CD-RW)及磁光碟;半導體裝置,諸如唯讀記憶體(ROM)、隨機存取記憶體(RAM),諸如動態隨機存取記憶體(DRAM)、靜態隨機存取記憶體(SRAM)、可抹除可規劃唯讀記憶體(EPROM)、快閃記憶體、電氣可抹除可規劃唯讀記憶體(EEPROM);磁卡或光卡,或適於儲存電子指令之任何其他類型的媒體。 Embodiments may be implemented in code and may be stored on a non-transitory storage medium storing instructions that may be used to plan the system to execute the instructions. Storage media may include, but is not limited to, any type of disk, including floppy disks, compact discs, solid state drive (SSD), compact disc read only memory (CD-ROM), rewritable compact disc (CD-RW), and Magneto-optical disc; semiconductor devices such as read only memory (ROM), random access memory (RAM), such as dynamic random access memory (DRAM), static random access memory (SRAM), erasable and programmable Read-only memory (EPROM), flash memory, electrically erasable programmable read-only memory (EEPROM); magnetic or optical card, or any other type of media suitable for storing electronic instructions.
儘管已關於有限數目個實施例描述本發明,但熟習此項技術者將瞭解基於該等實施例之眾多修改及變化。預期所附申請專利範圍涵蓋如屬於本發明之真實精神及範疇之所有此等修改及變化。 Although the invention has been described in connection with a limited number of embodiments, those skilled in the art will recognize many modifications and variations based on the embodiments. It is intended that the appended claims be interpreted as covering all such modifications and
200‧‧‧系統 200‧‧‧ system
203、210‧‧‧處理器 203, 210‧‧‧ processor
204‧‧‧消費裝置 204‧‧‧ consumer devices
205、216‧‧‧動態隨機存取記憶體(DRAM) 205, 216‧‧‧ Dynamic Random Access Memory (DRAM)
206‧‧‧雲端計算服務(CCS) 206‧‧‧Cloud Computing Service (CCS)
208‧‧‧暫時性節點 208‧‧‧temporary nodes
212‧‧‧私密金鑰解密邏輯 212‧‧‧Private Key Decryption Logic
214‧‧‧對稱金鑰解密邏輯 214‧‧‧symmetric key decryption logic
220‧‧‧認證邏輯 220‧‧‧Certification Logic
232‧‧‧安全會話邏輯 232‧‧‧secure session logic
234‧‧‧解密邏輯 234‧‧‧Decryption logic

Claims (20)

  1. 一種運算系統,其包含:一處理器,其包括:私密金鑰解密邏輯,其用以對所接收來自一消費裝置之一經加密私密金鑰解密且用以產生一私密金鑰;及對稱金鑰解密邏輯,其用以接收來自該私密金鑰解密邏輯之該私密金鑰且用以對所接收來自該消費裝置之一經加密對稱金鑰解密,其中該解密係使用該私密金鑰而被實行;以及一動態隨機存取記憶體(DRAM),其耦接至該處理器。 An arithmetic system comprising: a processor comprising: private key decryption logic for decrypting an encrypted private key received from an consuming device for generating a private key; and a symmetric key Decryption logic for receiving the private key from the private key decryption logic and for decrypting the encrypted symmetric key received from one of the consumer devices, wherein the decryption is performed using the private key; And a dynamic random access memory (DRAM) coupled to the processor.
  2. 如請求項1之系統,其中該經加密私密金鑰係使用一公開金鑰加密而被加密。 A system as claimed in claim 1, wherein the encrypted private key is encrypted using a public key encryption.
  3. 如請求項1之系統,其中回應於由該消費裝置接收以該對稱金鑰所加密之一經加密檔案而接收來自該消費裝置之該經加密私密金鑰及該經加密對稱金鑰。 A system of claim 1, wherein the encrypted private key from the consumer device and the encrypted symmetric key are received in response to receiving, by the consumer device, one of the encrypted files encrypted with the symmetric key.
  4. 如請求項1之系統,其中在接收來自該消費裝置之該經加密私密金鑰及該經加密對稱金鑰之前,該系統要建立一受信任執行環境(TEE)。 The system of claim 1 wherein the system establishes a Trusted Execution Environment (TEE) prior to receiving the encrypted private key from the consumer device and the encrypted symmetric key.
  5. 如請求項4之系統,其中該TEE之建立包括將一安全性層級之認證提供至該消費裝置。 The system of claim 4, wherein the establishing of the TEE comprises providing a security level of authentication to the consumer device.
  6. 如請求項1之系統,其中在接收來自該消費裝置之該經 加密對稱金鑰之前,該處理器要提供與該經加密對稱金鑰之一安全性層級相容的該系統之一安全性層級的一指示。 The system of claim 1, wherein the receiving the device from the consumer device Prior to encrypting the symmetric key, the processor provides an indication of one of the security levels of the system that is compatible with one of the encrypted symmetric keys.
  7. 如請求項1之系統,其中在該經加密對稱金鑰之解密之後,該系統要提供該對稱金鑰至該消費裝置。 A system as claimed in claim 1, wherein after decryption of the encrypted symmetric key, the system provides the symmetric key to the consumer device.
  8. 如請求項7之系統,其中該處理器在該對稱金鑰被提供至該消費裝置之後將損毀駐留於該系統中之該私密金鑰的一複本。 The system of claim 7, wherein the processor corrupts a copy of the private key residing in the system after the symmetric key is provided to the consumer device.
  9. 如請求項7之系統,其中該系統在該對稱金鑰被提供至該消費裝置之後將損毀駐留於該系統中之該對稱金鑰的一複本。 A system of claim 7, wherein the system corrupts a copy of the symmetric key residing in the system after the symmetric key is provided to the consumer device.
  10. 如請求項1之系統,其中該處理器用以:接收來自該消費裝置之一經加密檔案;使用該對稱金鑰對所接收來自該消費者裝置之一經加密檔案解密以產生一未經加密資料檔案;以及將該未經加密資料檔案傳回至該消費裝置。 The system of claim 1, wherein the processor is configured to: receive an encrypted file from one of the consumer devices; use the symmetric key to decrypt an encrypted file received from the consumer device to generate an unencrypted data file; And returning the unencrypted data file to the consumer device.
  11. 一種用於雲端輔助式密碼術之方法,其包含:由包括至少一處理器之一雲端計算伺服器(CCS)接收來自一消費裝置對一經加密對稱金鑰解密的一請求;接收該經加密對稱金鑰及包含已經由一公開金鑰加密之一私密金鑰的一經加密私密金鑰;對該第一經加密私密金鑰解密以產生一私密金鑰;以及 在對該第一經加密私密金鑰解密之後,使用該私密金鑰對該經加密對稱金鑰解密以產生一對稱金鑰。 A method for cloud assisted cryptography, comprising: receiving, by a cloud computing server (CCS) comprising at least one processor, a request from a consumer device for decrypting an encrypted symmetric key; receiving the encrypted symmetric a key and an encrypted private key containing one of the private keys that have been encrypted by a public key; decrypting the first encrypted private key to generate a private key; After decrypting the first encrypted private key, the encrypted symmetric key is decrypted using the private key to generate a symmetric key.
  12. 如請求項11之方法,其進一步包含將該對稱金鑰提供至該消費裝置。 The method of claim 11, further comprising providing the symmetric key to the consumer device.
  13. 如請求項12之方法,其進一步包含在將該對稱金鑰提供至該消費裝置之後,由該CCS損毀存在於該CCS中之該對稱金鑰的一複本。 The method of claim 12, further comprising, after the symmetric key is provided to the consumer device, destroying, by the CCS, a copy of the symmetric key present in the CCS.
  14. 如請求項12之方法,其進一步包含在將該對稱金鑰提供至該消費裝置之後,由該CCS損毀存在於該雲端伺服器中之該私密金鑰的一複本。 The method of claim 12, further comprising, after the symmetric key is provided to the consumer device, destroying, by the CCS, a copy of the private key present in the cloud server.
  15. 如請求項11之方法,其進一步包含在接收該經加密對稱金鑰之前,接收來自該消費裝置針對一安全性認證之一請求,且回應於該請求而提供該安全性認證。 The method of claim 11, further comprising receiving a request from the consumer for a security authentication prior to receiving the encrypted symmetric key, and providing the security authentication in response to the request.
  16. 如請求項11之方法,其進一步包含在接收該經加密對稱金鑰之前,接收來自該消費裝置之一消費裝置安全性認證。 The method of claim 11, further comprising receiving a consumer device security certificate from the consumer device prior to receiving the encrypted symmetric key.
  17. 如請求項15之方法,其中僅在該CCS基於該安全性認證具有滿足與該對稱金鑰相關聯之一對稱金鑰安全性層級之一安全性層級時,接收來自該消費裝置之該經加密對稱金鑰。 The method of claim 15, wherein the encrypted from the consumer device is received only when the CCS has a security level that satisfies one of the symmetric key security levels associated with the symmetric key based on the security authentication Symmetric key.
  18. 一種運算系統,其包含:一處理器,其包括:安全會話(secure session)邏輯,其用以:起始與一雲端密碼服務(CCS)之一安全通 訊會話;經由該安全通訊會話將對經由一私密金鑰所加密之一經加密對稱金鑰解密的一請求、該經加密對稱金鑰及包括經由與該CCS相關聯之公開金鑰加密所加密的該私密金鑰之一經加密私密金鑰提供至該CCS;及回應對該經加密對稱金鑰解密之該請求而接收來自該CCS之該對稱金鑰;以及一動態隨機存取記憶體(DRAM)。 An arithmetic system, comprising: a processor, comprising: secure session logic, configured to: initiate a secure connection with a cloud cryptographic service (CCS) a session via which a request to decrypt an encrypted symmetric key encrypted via a private key, the encrypted symmetric key, and including encryption via a public key associated with the CCS is encrypted One of the private keys is provided to the CCS via an encrypted private key; and receives the symmetric key from the CCS in response to the request to decrypt the encrypted symmetric key; and a dynamic random access memory (DRAM) .
  19. 如請求項18之系統,其中該處理器進一步包含解密邏輯,其用以使用該對稱金鑰對一經加密資料檔案解密來產生一未經加密資料檔案。 The system of claim 18, wherein the processor further comprises decryption logic for decrypting an encrypted data file using the symmetric key to generate an unencrypted data file.
  20. 如請求項18之系統,其中該安全會話邏輯要在該安全通訊會話的建立之前將一消費裝置安全性認證提供至該CCS。 The system of claim 18, wherein the secure session logic is to provide a consumer device security authentication to the CCS prior to the establishment of the secure communication session.
TW104104390A 2014-03-27 2015-02-10 Method and apparatus for cloud-assisted cryptography TWI601405B (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
US14/227,319 US9503433B2 (en) 2014-03-27 2014-03-27 Method and apparatus for cloud-assisted cryptography

Publications (2)

Publication Number Publication Date
TW201541923A TW201541923A (en) 2015-11-01
TWI601405B true TWI601405B (en) 2017-10-01

Family

ID=54191993

Family Applications (1)

Application Number Title Priority Date Filing Date
TW104104390A TWI601405B (en) 2014-03-27 2015-02-10 Method and apparatus for cloud-assisted cryptography

Country Status (6)

Country Link
US (1) US9503433B2 (en)
EP (1) EP3123657B1 (en)
KR (1) KR101894232B1 (en)
CN (1) CN106063183B (en)
TW (1) TWI601405B (en)
WO (1) WO2015148884A1 (en)

Families Citing this family (15)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8949818B2 (en) * 2012-06-29 2015-02-03 Intel Corporation Mechanism for facilitating dynamic and trusted cloud-based extension upgrades for computing systems
US10873454B2 (en) * 2014-04-04 2020-12-22 Zettaset, Inc. Cloud storage encryption with variable block sizes
US10043029B2 (en) * 2014-04-04 2018-08-07 Zettaset, Inc. Cloud storage encryption
US10298555B2 (en) * 2014-04-04 2019-05-21 Zettaset, Inc. Securing files under the semi-trusted user threat model using per-file key encryption
US10303879B1 (en) * 2014-11-06 2019-05-28 Amazon Technologies, Inc. Multi-tenant trusted platform modules
EP3032453B1 (en) * 2014-12-08 2019-11-13 eperi GmbH Storing data in a server computer with deployable encryption/decryption infrastructure
US10387665B2 (en) 2015-03-25 2019-08-20 Vera Policy enforcement
US20170034214A1 (en) * 2015-07-30 2017-02-02 Northrop Grumman Systems Corporation Apparatus and method for cross enclave information control
US10826875B1 (en) * 2016-07-22 2020-11-03 Servicenow, Inc. System and method for securely communicating requests
US10594668B1 (en) 2016-12-01 2020-03-17 Thales Esecurity, Inc. Crypto Cloudlets
US10691837B1 (en) * 2017-06-02 2020-06-23 Apple Inc. Multi-user storage volume encryption via secure enclave
US10812276B2 (en) 2018-02-23 2020-10-20 International Business Machines Corporation Secure trust based distribution of digital certificates
EP3794478A1 (en) * 2018-05-16 2021-03-24 Telefonaktiebolaget Lm Ericsson (Publ) Enclave population
US10771252B1 (en) * 2018-06-12 2020-09-08 Equinix, Inc. Data center security services
CN110071940A (en) * 2019-05-06 2019-07-30 深圳市网心科技有限公司 Software package encipher-decipher method, server, user equipment and storage medium

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110289310A1 (en) * 2010-05-20 2011-11-24 Selgas Thomas D Cloud computing appliance
US20110296201A1 (en) * 2010-05-27 2011-12-01 Pere Monclus Method and apparatus for trusted execution in infrastructure as a service cloud environments
US8239917B2 (en) * 2002-10-16 2012-08-07 Enterprise Information Management, Inc. Systems and methods for enterprise security with collaborative peer to peer architecture
US20140050317A1 (en) * 2012-08-16 2014-02-20 Digicert, Inc. Cloud Key Management System

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
GB2318486B (en) * 1996-10-16 2001-03-28 Ibm Data communications system
US6098056A (en) * 1997-11-24 2000-08-01 International Business Machines Corporation System and method for controlling access rights to and security of digital content in a distributed information system, e.g., Internet
US7480806B2 (en) * 2002-02-22 2009-01-20 Intel Corporation Multi-token seal and unseal
AT346447T (en) * 2003-02-28 2006-12-15 Research In Motion Ltd SYSTEM AND METHOD FOR PROTECTING DATA IN A COMMUNICATION DEVICE
US8074083B1 (en) * 2007-01-09 2011-12-06 Google Inc. Controlling download and playback of media content
KR100888075B1 (en) * 2008-04-28 2009-03-11 인하대학교 산학협력단 An encryption and decryption system for multicast using a personal symmetric key
US8213618B2 (en) * 2008-12-30 2012-07-03 Intel Corporation Protecting content on client platforms
KR20130021774A (en) * 2011-08-23 2013-03-06 주식회사 스마트솔루션 Method for providing security service based on digital certificate and system for providing security service based on digital certificate
CN102546181B (en) * 2012-01-09 2014-12-17 西安电子科技大学 Cloud storage encrypting and deciphering method based on secret key pool
US20130191629A1 (en) * 2012-01-19 2013-07-25 Laconic Security, Llc Secure group-based data storage in the cloud
US9059972B2 (en) * 2012-07-03 2015-06-16 International Business Machines Corporation Issuing, presenting and challenging mobile device identification documents
US9436940B2 (en) * 2012-07-09 2016-09-06 Maxim Integrated Products, Inc. Embedded secure element for authentication, storage and transaction within a mobile terminal
US20140019753A1 (en) 2012-07-10 2014-01-16 John Houston Lowry Cloud key management
US20140082364A1 (en) 2012-09-18 2014-03-20 Tommaso Cucinotta Collaborative Uses of a Cloud Computing Confidential Domain of Execution
EP2939363A1 (en) * 2012-12-28 2015-11-04 Vasco Data Security International GmbH Remote authentication and transaction signatures
US9009469B2 (en) * 2013-01-15 2015-04-14 Sap Se Systems and methods for securing data in a cloud computing environment using in-memory techniques and secret key encryption
WO2015041654A1 (en) * 2013-09-19 2015-03-26 Intel Corporation Securely managed location-and-tracking service access
US9246676B2 (en) * 2013-11-22 2016-01-26 Cisco Technology, Inc. Secure access for encrypted data

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8239917B2 (en) * 2002-10-16 2012-08-07 Enterprise Information Management, Inc. Systems and methods for enterprise security with collaborative peer to peer architecture
US20110289310A1 (en) * 2010-05-20 2011-11-24 Selgas Thomas D Cloud computing appliance
US20110296201A1 (en) * 2010-05-27 2011-12-01 Pere Monclus Method and apparatus for trusted execution in infrastructure as a service cloud environments
US20140050317A1 (en) * 2012-08-16 2014-02-20 Digicert, Inc. Cloud Key Management System

Also Published As

Publication number Publication date
TW201541923A (en) 2015-11-01
EP3123657A4 (en) 2017-11-22
CN106063183A (en) 2016-10-26
US9503433B2 (en) 2016-11-22
CN106063183B (en) 2020-05-05
US20150281189A1 (en) 2015-10-01
EP3123657A1 (en) 2017-02-01
KR101894232B1 (en) 2018-09-04
EP3123657B1 (en) 2019-08-28
KR20160113264A (en) 2016-09-28
WO2015148884A1 (en) 2015-10-01

Similar Documents

Publication Publication Date Title
AU2017219140B2 (en) Methods and systems for distributing cryptographic data to authenticated recipients
US9680654B2 (en) Systems and methods for validated secure data access based on an endorsement provided by a trusted third party
US9912645B2 (en) Methods and apparatus to securely share data
US20170286699A1 (en) Methods and systems for enforcing, by a kernel driver, a usage restriction associated with encrypted data
US9465947B2 (en) System and method for encryption and key management in cloud storage
EP3195555B1 (en) Secure key management for roaming protected content
EP3140950B1 (en) Secure transport of encrypted virtual machines with continuous owner access
US9674182B2 (en) Systems and methods for distributed trust computing and key management
US9609024B2 (en) Method and system for policy based authentication
US20190089527A1 (en) System and method of enforcing a computer policy
US9258122B1 (en) Systems and methods for securing data at third-party storage services
US9246893B2 (en) Intra-computer protected communications between applications
CN107113286B (en) Cross-device roaming content erase operation
JP6121049B2 (en) Secure access to resources using proxies
US9514317B2 (en) Policy-based trusted inspection of rights managed content
US9363241B2 (en) Cryptographic enforcement based on mutual attestation for cloud services
US9166787B2 (en) Securing encrypted virtual hard disks
US9380037B2 (en) Methods and devices for trusted protocols for a non-secured, distributed environment with applications to virtualization and cloud-computing security and management
US10142107B2 (en) Token binding using trust module protected keys
JP5852265B2 (en) COMPUTER DEVICE, COMPUTER PROGRAM, AND ACCESS Permission Judgment Method
Chandramouli et al. Cryptographic key management issues and challenges in cloud services
US10469469B1 (en) Device-based PIN authentication process to protect encrypted data
US8639928B2 (en) System and method for mounting encrypted data based on availability of a key on a network
US9805210B2 (en) Encryption-based data access management
EP2831803B1 (en) Systems and methods for secure third-party data storage