KR101894232B1 - 클라우드-보조 암호화를 위한 방법 및 장치 - Google Patents

클라우드-보조 암호화를 위한 방법 및 장치 Download PDF

Info

Publication number
KR101894232B1
KR101894232B1 KR1020167023438A KR20167023438A KR101894232B1 KR 101894232 B1 KR101894232 B1 KR 101894232B1 KR 1020167023438 A KR1020167023438 A KR 1020167023438A KR 20167023438 A KR20167023438 A KR 20167023438A KR 101894232 B1 KR101894232 B1 KR 101894232B1
Authority
KR
South Korea
Prior art keywords
encrypted
key
symmetric key
private key
consuming device
Prior art date
Application number
KR1020167023438A
Other languages
English (en)
Other versions
KR20160113264A (ko
Inventor
알렉스 나이쉬터트
오메르 벤-샬롬
네드 엠 스미스
쥬니어 에드워드 브이 지미슨
호머즈드 엠 코스라비
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
Application filed by 인텔 코포레이션 filed Critical 인텔 코포레이션
Publication of KR20160113264A publication Critical patent/KR20160113264A/ko
Application granted granted Critical
Publication of KR101894232B1 publication Critical patent/KR101894232B1/ko

Links

Images

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 OR 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 communications; Network security protocols
    • 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 communications; Network security protocols
    • 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 communications; Network security protocols
    • 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 communications; Network security protocols
    • H04L9/32Cryptographic 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/3234Cryptographic 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
    • 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

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Computing Systems (AREA)
  • Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Mathematical Physics (AREA)
  • Software Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Storage Device Security (AREA)
  • Mobile Radio Communication Systems (AREA)

Abstract

일 실시형태에서, 시스템은, 개인 키를 생성하기 위해, 소비 장치로부터 수신되는 암호화된 개인 키를 복호화하는 개인 키 복호화 로직, 및 개인 키 복호화 로직으로부터 개인 키를 수신하고 소비 장치로부터 수신되는 암호화된 대칭 키를 개인 키를 사용하여 복호화하는 대칭 키 복호화 로직을 포함하는 프로세서를 포함한다. 시스템은 또한, 프로세서에 연결되는 동적 랜덤 액세스 메모리(DRAM)을 포함한다. 다른 실시형태가 설명되고 청구된다.

Description

클라우드-보조 암호화를 위한 방법 및 장치{METHOD AND APPARATUS FOR CLOUD-ASSISTED CRYPTOGRAPHY}
실시형태는 클라우드-보조 암호화(cloud-assisted cryptography)에 관한 것이다.
계산 장치 사이에서 개인 키(private key)를 보안적으로 공유하는 것은, 키를 보안적으로 배포하는 것과 모든 장치에서 보안적으로 저장하는 것이 모두 필요하기 때문에 문제가 발생할 수 있다. 한가지 해법은, 예를 들면, 신뢰 컴퓨팅 그룹(Trusted Computing Group; TCG)에 의해 정의되는 바와 같은 신뢰 플랫폼 모듈(trusted platform module; TPM) 사이에서 키를 동기화시키는 것이지만, 이 해법은 통상적으로 복잡하고, 고비용이며, 모든 엔드포인트 상에 특정 하드웨어를 필요로 할 수 있다. 결과적으로, 특정 하드웨어 및 키 동기화 방법의 구현 없이는, 엔드포인트 상에서 공개 키 암호화에 의해 보호되는 정보를 처리할 간단한 방식이 존재하지 않는다.
현존하는 하드웨어 보안 모듈(hardware security module; HSM)은, 서버 플랫폼이, 암호화 및 서명(signing)과 같은 키 동작을 보호할 수 있는 보안 컨테이너에 있는 키를 원격에서 관리하는 사용될 수 있다. HSM은, 이들이 큰 모집단에 대한 키를 관리하기 때문에, 통상적으로 최고 높은 보안 레벨에서 동작할 것으로 예상된다. 그러므로, 가장 안전한 사용의 경우에 필요한 보안 요건이 HSM에 있어서의 최소한의 보안 요건이 되고 있으며, 이로 인해 상당한 비용 및 배치 수명 오버헤드(deployment lifecycle overhead)가 더해질 수 있다.
도 1은 본 발명의 일 실시형태에 따른 시스템의 블록도이다.
도 2는 본 발명의 다른 실시형태에 따른 시스템의 블록도이다.
도 3은 본 발명의 실시형태에 따른 시스템의 흐름도이다.
도 4는 본 발명의 일 실시형태에 따른 증명서(attestation) 및 키 복호화(decryption)의 흐름도이다.
도 5는 본 발명의 다른 실시형태에 따른 증명서 및 키 복호화의 흐름도이다.
도 6은 본 발명의 실시형태에 따른 파일 바이너리 라지 오브젝트(binary large object;BLOB)의 블록도이다.
도 7은, 본 발명의 일 실시형태에 따른, 클라우드-보조 암호화를 수행하는 방법의 흐름도이다.
도 8은 본 발명의 다른 실시형태에 따른 시스템의 블록도이다.
상세한 설명
다른 엔드포인트를 위해 클라우드에서 암호 기능을 수행하는 플랫폼의 개인 계산 클라우드(personal computational cloud)(본 명세서에서 "개인 클라우드" 또는 "클라우드"라 함)에서, 각각의 동작에 대한 개인 클라우드 인스턴스와 엔드포인트 사이의 협력을 통해, 가상의 TPM형 성능을 가능하게 하기 위한 분산형 및 클라우드-보조형 기술을 사용하는 방법 및 장치가 제시된다. 이들 기술의 사용을 통해, 클라이언트나 클라우드 인스턴스는 암호 기능을 개별적으로 수행하는 것이 불가능하며, 관련 개인 키는 평문(clear text)으로 저장되지 않거나, 혹은 엔드포인트나 클라우드 인스턴스에 저장되지 않는다. 클라우드에서의 동작은 증명서를 통해서 신뢰 실행 환경(trusted execution environment; TEE)에서 실행될 수 있다. 증명서는, 특정 암호 동작 동안 개인 키가 개인 클라우드 외부로 노출되지 않는 것을 보장할 수 있다.
키 소유자, 키를 사용하여 암호 동작을 요청하는 장치, 및 암호 동작을 수행하는 클라우드 시스템 사이에서, 제 3 자 알고리즘이 구현될 수 있다.
본 실시형태는 많은 다양한 타입의 시스템에 사용될 수 있다. 예를 들면, 일 실시형태에서, 본원에서 설명되는 다양한 방법 및 기술을 수행하기 위해, 통신 장치(예를 들면, 전화기, 태블릿 컴퓨터, 랩탑 컴퓨터, 다른 계산 장치, 등등)가 배치될 수 있다. 본 발명의 범위는 통신 장치로 한정되지 않는다는 점에 유의한다. 다른 실시형태는 인스트럭션을 프로세싱하는 다른 타입의 장치에 관한 것이다. 하나 이상의 머신 판독 가능 매체는, 계산 장치 상에서 실행되는 것에 응답하여, 장치로 하여금 본원에서 설명되는 방법 및 기술 중 하나 이상을 실행하게 하는 인스트럭션을 포함할 수 있다.
실시형태에서, 개인 키는 클라우드의 공개 키에 의해 보호된다. 개인 키는, 클라우드 서버만이 개인 키를 사용할 수 있도록 암호화된다(예를 들면, 암호화된 개인 키를 형성한다). 개인 키를 사용하기 위해, 엔드포인트는 암호화된 개인 키를, 개인 키를 추출할 수 있고 엔드포인트에 대한 프록시(proxy)로서, 그리고 클라우드 서버 상에 개인 키를 저장하지 않고도, 추출된 개인 키를 신뢰 실행 환경에서 일시적으로 사용할 수 있는 클라우드 서버로 전송할 수 있다. 개인 키를 추출하는 것은, TEE가 서버의 신뢰 실행 환경(TEE)의 증명서를 사용하여 부분적으로 수립될 수 있는 보안 강화 정책(secure hardening policy) 및 유저 고유의 강화 요건(user-specified hardening requirement)을 만족하는 것을 조건으로 할 수 있다.
다양한 클라이언트 플랫폼은 프로토콜을 구현하기 위해 TEE 요소를 포함할 수 있으며, 그러므로, 일시적인 동작을 구현하는 '서버'("소비 장치")의 역할을, 스마트폰, 태블릿, 울트라북, 데스크탑, 서버, 가상화된 서버 및 내장형 시스템을 포함하는 다양한 플랫폼이 수행할 수 있다. 이러한 유연성은, 프로토콜을 구현하는 TEE 요소를 구비하지 않는 플랫폼이 존재하는 이종 컴퓨팅 환경에서 유익할 수 있고, 다양한 신뢰 가능도의 컴퓨팅 기능성을 구비할 수 있다. "취약한" 장치(예를 들면, 소비 장치)가, TEE 구성 요소를 갖고 있으며 원래의 TEE 성능의 대체의 역할을 할 수 있는 몇몇 다른 장치(예를 들면, 클라우드 서버)에 액세스할 수 있는 한, 유저는 강하게 보호된 데이터에 액세스하는데 이들 "취약한" 장치(예를 들면, 소비 장치)를 계속 활용할 수 있다.
본 발명의 실시형태는, 가상화된 환경을 포함할 수 있는 개인 클라우드/장치 클러스터를 포함하는 분산형 시스템(distributed system)에 대한 신뢰가능한 에이전트 검색 및 계획 실행 프로토콜(trustworthy agent discovery and plan execution protocol)을 포함할 수 있다. TEE 가능 노드(TEE-capable node)는 데이터 보호 및 신원 키의 여분의 사본을 유지할 수 있으며, 따라서 TEE 가능 노드는 고도로 이용가능하게 유지된다. TEE 가능 노드 중 하나에 액세스하여 암호화/복호화 동작을 원격으로 수행하는 것에 의해 민감한 데이터를 조작하기 위해, 저성능 노드(less capable node)(예를 들면, 소비 장치)가 사용될 수 있다.
실시형태에서, 신뢰 가능한 에이전트 검색 성능은, 신뢰성 등급에 의해 특징지어질 수 있는 신뢰 가능성이 낮은 노드를 식별할 수 있다. 신뢰성 등급에 따라 분류되는 데이터는 유사한 신뢰성 등급의 소비 노드와 매치할 수 있다. 예를 들면, 공식적인 신뢰도 평가 시스템, 예를 들면, Clarke-Wilson, Biba, Take-Gant, Bell-LaPadulla, Graham-Denning, 및 다른 것이 활용될 수 있다.
본 발명의 실시형태는, 일시적인 노드(transient node)에 대해서는 HSM을 활용하지 않을 수 있는데, 활용한다면 비용 및 복잡도를 추가할 것이다. 일시적인 TEE 노드 상에서 어떠한 유저 제어식 개인 클라우드 비밀(예를 들면, 대칭 키, 개인 키, 등등)도 지속시키지 않는 것에 의해, "공격면(attack surface)"(예를 들면, 시스템의 취약성)이 감소될 수 있다. TEE 증명서 기능은, 유저 제어식 개인 클라우드 또는 분산형 시스템에서의 '생성용', '일시적인', 또는 '소비' 노드의 타입에 따른 기능에 대한 노드의 적합성을 발견하기 위해 사용될 수 있다. 권한 관리식 정책(rights-managed policy)을 사용하여 키 프로비저닝(key provisioning)이 수행될 수 있는데, 이 경우 프로비져닝될 키를 복호화("언래핑(unwrap)")할 권한은, 현재의 동작 상태를 설명할 수 있는 TEE 플랫폼 구성 레지스터(platform configuration register; PCR)에 구속될 수 있다. 예를 들면, PCR은 키를 언래핑할 권한의 증거로서 클라우드 서버에 확실히 제공될 수 있다.
노드 타입 고유의 정책이 래핑된(wrapped) 키 파일 "BLOB"(예를 들면, 바이너리 라지 오브젝트(binary large object))을 수반할 수 있다.
하나의 정책에 따르면, 일시적 노드에 프로비저닝된 키는, 거래적 키 동작(transactional key operation)이 완료한 이후 제거될 것이다.
신뢰성이 낮은 노드는, 하기 조건이 적용되는 경우 개인 클라우드/분산형 환경에 신뢰의 손실 없이 참여할 수 있다.
소비 노드는 강화된 장치 식별 능력을 가질 수 있지만 데이터 및 유저 인증 키를 저장/사용하기 위한 범용 TEE는 갖지 않을 수 있다.
소비 노드는, 이후에 일시적 노드를 인증하는데 사용되는 일시 키(예를 들면, 하루 단위 또는 시간 단위)를 프로비저닝는데 사용될 수 있는 신뢰 관리 서브시스템을 구비할 수 있다.
실시형태는 다음의 컴포넌트를 포함할 수 있다:
1. 비밀/공개 키 쌍을 생성할 수 있는 공개 키 기반 구조(public key infrastructure; PKI).
2. 자신의 개인 키를 안전하게 지킬 수 있고 또한, 예를 들면, 다른 컴퓨터 및/또는 유저에게 속하는 공지의 공개 키를 가지고 암호 동작(예를 들면, 컨텐츠 암호화)을 수행할 수 있는, 적절한 암호 대응 하드웨어, 예를 들면, 신원 보호 기술(identity protection technology; IPT), 신뢰 플랫폼 모듈(TPM), 및/또는 HSM을 갖는 엔드포인트 장치.
3. TEE 내에서 코드를 론칭할 수 있고 실행 환경(클라우드 환경) 및 클라우드 환경 내에서 실행하는 코드의 무결성을 증명할 수 있는 클라우드 환경. 이 클라우드 환경은 다양한 암호 동작을 또한 수행할 수 있다.
4. 클라우드에게 암호 동작을 위임하기를 원하며 자기 소유의 관련 암호화된 개인 키를 가질 수 있는 다른 장치(예를 들면, 소비 장치).
5. 엔드포인트와 클라우드 서비스 사이에서 데이터 및 메타데이터를 전송할 수 있는 네트워크.
6. TEE 현재 구성 및 강화 상태를 증명할 수 있는 TEE.
7. TEE 메모리 침입(breach) 이벤트를 기록 및 보고할 수 있는 가상 메모리 기능 인스트럭션(VM_Func) 또는 플랫폼 구성 레지스터(PCR)을 갖는 TEE.
8. 개인 클라우드 모델에 참여하기에 적절한 노드를 검색하고 분류하기 위한 그리고 분류에 따라 키 프로비저닝 계획을 실행하기 위한 프로토콜.
PKI는 엔드포인트에 대한 키를 생성할 수 있다. 키에 대한 보안 저장 장치를 구비하는 각각의 엔드포인트는 각각의 개인 키를 수신할 수 있고, 한편 보안 저장 장치가 없는 각각의 엔드포인트는, 클라우드 서비스의 공개 키로 암호화된 자신의 각각의 개인 키의 사본을 수신할 수 있다.
생성용 엔드포인트는 컨텐츠를 작성할 수 있고 그 컨텐츠를 랜덤 대칭 키를 작성하는 것에 의해 보호할 수 있다. 그 다음, 생성용 엔드포인트는 그 컨텐츠를 랜덤 대칭 키로 암호화할 수 있다. 대칭 키는 각각의 개인 키에 의해 암호화될 수 있고, 암호화된 대칭 키를 컨텐츠와 함께 메타데이터로서 유지한다. 각각의 개인 키는 클라우드 서비스의 공개 키로 암호화될 수 있다.
일 실시형태에서, 암호화된 컨텐츠를 사용하기를 원하는 그리고 자기 자신의 개인 키를 갖는 엔드포인트는, 암호화된 대칭 키의 메타데이터뿐만 아니라 자기 자신의 암호화된 개인 키를 포함하는 암호화된 컨텐츠를 클라우드로 전송할 수 있고, 그 결과 클라우드는 엔드포인트를 위해 그 컨텐츠에 대한 동작할 수 있다. 클라우드(예를 들면, 가상 머신(VM))는 (예를 들면, 클라우드의 공개/개인 키 암호 시스템의 복호화용 키를 사용하여) 암호화된 개인 키를 복호화할 수 있다. (암호 해제된) 개인 키를 가지고, 클라우드는 대칭 키를 복호화할 수 있고 그 다음 그 대칭 키를 사용하여 클라이언트를 위한 액션(예를 들면, 키의 반환, 클라우드에서의 파일 컨텐츠의 편집의 수행, 파일 컨텐츠가 실행가능한 컨텐츠인 경우 파일 컨텐츠의 실행, 안전한 원격 뷰잉(viewing)을 위한 파일 렌더링, 등등)을 수행할 수 있다.
다른 실시형태에서, 다른 장치, 예를 들면, 소비 장치는, 대칭 키로 암호화되어 있는 암호화된 컨텐츠에 액세스하기를 소망할 수 있다. 소비 장치는 암호화된 대칭 키(개인 키로 암호화됨) 및 암호화된 개인 키(클라우드 계산 서비스 공개 키(PKI)로 암호화된 개인 키)에 액세스할 수 있다. 소비 장치는 암호화된 대칭 키 및 암호화된 개인 키를 클라우드 계산 서비스(cloud computing service; CCS)에 전송할 수 있다. CCS는 암호화된 개인 키를 복호화할 수 있다(예를 들면, CCS의 PKI의 복호화용 키를 사용하여). 개인 키(암호화 해제된)를 가지고, 클라우드는 암호화된 대칭 키를 복호화할 수 있고 그 대칭 키(복호화된)를, 암호화된 컨텐츠를 복호화할 수 있는 소비 장치로 반환할 수 있다. 따라서, 암호화된 컨텐츠를 복호화하기 위해 소비 장치가 암호화된 대칭 키를 직접적으로 복호화할 수는 없지만, CCS는 대칭 키(언래핑된)를 소비 장치에 제공할 수 있다.
도 1은, 본 발명의 일 실시형태에 따른, 시스템(100)의 블록도이다. 시스템(100)은 (보안) 엔드포인트 장치(110), 소비 장치(120)(예를 들면, 셀룰러 폰 또는 다른 유저 상호형 장치, 태블릿 컴퓨터 스마트폰, 울트라북, 데스크탑 컴퓨터, 서버, 가상화된 서버, 임베딩형 시스템 등등), 생성용 장치(130), 및 클라우드 계산 서버(CCS)(140)를 포함한다.
동작에서, 생성용 장치(130)는 하나 이상의 키를 생성할 수 있다. 예를 들면, 생성용 장치(130)는, 자기 자신의 개인 키를 안전하게 유지할 수 있는 엔드포인트 장치(110)에 의해 요청될 수 있는, (랜덤) 대칭 키, 개인 키, 공개 암호화 키, 등을 생성할 수 있다.
소비 장치(120)는 엔드포인트 장치(110)로부터, 대칭 키를 사용하여 암호화되어 있는 암호화된 파일을 수신할 수 있다. 엔드포인트 장치(110)는 또한, 소비 장치(120)로, 생성용 장치(130)로부터 수신되는 개인 키로 암호화되어 있는 암호화된 대칭 키("래핑된 대칭 키")를 (예를 들면, 암호화된 파일의 메타데이터로서) 전송할 수 있다. 소비 장치(120)는 또한, CCA(140)에 의해 복호화될 수 있는 PKI 암호화에 의해 (예를 들면, 공캐 키를 통해) 암호화되는 개인 키인 암호화된 개인 키("래핑된 개인 키")를 수신할 수 있다.
CCS(140)는, 소비 장치(120)와 보안 정보를 교환하기에 허용가능한 것으로 간주되는 보안 레벨을 가질 수 있다. 소비 장치(120)는, CCS(140)에게, 래핑된 대칭 키의 복호화 요청을 전송할 수 있다. 그 요청은 래핑된 대칭 키 및 래핑된 개인 키를 포함할 수 있다. CCS(140)는 PKI 암호화된 개인 키를 복호화하기 위해 비대칭 복호화용 키(예를 들면, 생성용 장치(130)에 의해 제공되는)에 액세스할 수 있다. CCS(140)는, 예를 들면, CCS(140) 키 저장소(vault)에 저장되는 비대칭 PKI 복호화용 키의 사용을 통해 래핑된 개인 키를 복호화할 수 있다.
래핑된 개인 키를 언래핑한 이후, CCS(140)는 래핑된 대칭 키를 복호화하기 위해 개인 키(언래핑된)를 사용할 수 있다. 래핑된 대칭 키를 언래핑한 이후, CCS(140)는 요청에 응답하여 소비 장치(120)로 대칭 키(언래핑된)를 전송할 수 있다. 소비 장치(120)는, 평문 파일(예를 들면, 복호화된 파일)을 생성하기 위해, 암호화된 데이터 파일을 대칭 키를 사용하여 복호화할 수 있다.
몇몇 실시형태에서, CCS(140)는, 대칭 키를 소비 장치(120)로 전송한 이후, CCS(140) 상에 있는 개인 키의 그리고 대칭 키의 임의의 사본을 파기한다. 따라서, 소비 장치(120)는 암호화된 데이터 파일의 복호화에 필요한 래핑된 대칭 키를 복호화할 것을 CCS(140)에게 요청할 수 있고, 소비 장치(120)는 CCS(140)로부터 (복호화된) 대칭 키를 수신할 수 있고 암호화된 데이터 파일을 복호화하여 복호화된 데이터 파일(평문 파일)에 액세스할 수 있다. 대칭 키가 소비 장치(120)로 전송된 이후, 개인 키의 또는 대칭 키의 어떠한 사본도 CCS(140)에 남지 않는다.
도 2는, 본 발명의 일 실시형태에 따른, 시스템(200)의 블록도이다. 시스템(200)은 소비 장치(204) 및 클라우드 계산 서비스(CCS)(206)를 포함한다.
소비 장치(204)는, 보안 세션 로직(232) 및 복호화 로직(234)을 포함하는 프로세서(203)을 포함하고, 소비 장치(204)는 또한 동적 랜덤 액세스 메모리(DRAM)(205)를 포함한다. 보안 세션 로직(232) 및 복호화 로직(234)은, 소프트웨어, 하드웨어, 펌웨어, 또는 이들의 조합으로 구현될 수 있다.
CCS(206)는 일시적 노드(208)를 포함하는데, 다른 일시적 노드(도시되지 않음)를 포함할 수도 있다. 일시적 노드(208)는, 개인 키 복호화 로직(212), 대칭 키 복호화 로직(214) 및 증명서 로직(220)을 포함하는 프로세서(210)를 포함한다. 개인 키 복호화 로직(212), 대칭 키 복호화 로직(214), 및 증명서 로직(220) 각각은, 소프트웨어, 하드웨어, 펌웨어, 또는 이들의 조합으로 구현될 수 있다. 일시적 노드(208)는 또한, 프로세서(210)가 액세스할 수 있는 애플리케이션, 데이터, 등등을 저장하기 위해, 프로세서(210)에 연결된 DRAM(216)을 포함한다.
동작에서, 유저 장치(202)의 보안 세션 로직(232)은, 보안 세션을 열기 위한 요청을 소비 장치(204)로 전송할 수 있고, 예를 들면, 일시적 노드(208)의 보안 레벨을 확인하기 위한 증명서 요청을 포함할 수 있다. 응답에서, 소비 장치(204)는, 프로세서(210)의 증명서 로직(220)에 의해 생성되는 증명서를 수신할 수 있다. 보안 세션 로직(232)은, 소비 장치(204)에 의해 증명서가 수신된 이후, 일시적 노드(208)에 대한 보안 연결을 수립할 수 있다. 증명서는 CCS(206)의 보안의 레벨을 나타낼 수 있다.
소비 장치(204)에 의한 증명서의 수신시, 보안 세션 로직(232)은 암호화된 데이터 파일의 복호화 요청을 일시적 노드(208)로 전송할 수 있다. 보안 세션 로직(232)은, 암호화된 데이터 파일의 메타데이터, 예를 들면, 암호화된 대칭 키(예를 들면, 개인 키로 암호화된 대칭 키)를 일시적 노드(208)로 전송할 수 있다. 보안 세션 로직(232)은 또한, 래핑된 개인 키, 예를 들면, CCS(206)의 공개 키로 암호화된 개인 키를, 일시적 노드(208)로 전송할 수 있다.
일시적 노드(208)에서, 프로세서(210) 내의 개인 키 복호화 로직(212)은, (예를 들면, PKI 암호화된 개인 키를 복호화하기 위해) 예를 들면, CCS 공개 암호화와 관련되는 비대칭 복호화 키를 사용하여 개인 키를 복호화할 수 있다. 일 실시형태에서, 비대칭 복호화 키는, 예를 들면, 키 저장 장치(도시되지 않음)로부터 프로세서(210)에 의해 취출될 수 있다.
암호화된 개인 키를 복호화한 이후, 개인 키(암호 해제된)는, 암호화된 대칭 키를 복호화하기 위해, 대칭 키 복호화 로직(214)에 의해 액세스될 수 있다. 대칭 키가 복호화된 이후, 프로세서(210)는 대칭 키를 소비 장치(204)로 전송할 수 있다. 소비 장치(204)의 프로세서(203) 내의 복호화 로직(234)은, 평문 파일을 생성하기 위해, 암호화된 데이터 파일을 대칭 키를 사용하여 복호화할 수 있다. 대칭 키를 소비 장치(204)로 송신한 이후, 일시적 노드(208)의 프로세서(210)는, 일시적 노드(208)에 있는 대칭 키 및 개인 키를 파기할 수 있다. 보안 세션은 대칭 키가 소비 장치(204)로 전송된 이후 종료될 수 있다.
도 3은 본 발명의 실시형태에 따른 시스템의 흐름도이다. 컨텐츠 소스(302)는 보안 엔드포인트(예를 들면, 보안 키 저장 장치를 지원하는)일 수 있다. 컨텐츠 소스(302)는 암호화된 컨텐츠 파일(308)을, 암호화된 파일(308)의 복호화 요청(310)과 함께, 소비 장치(304)로 전송할 수 있다(310). 암호화된 파일(308)은, 개인 키를 사용하여 암호화되어 있는 암호화된 대칭 키를 포함하는 메타데이터를 포함할 수 있다. 보안 키 저장 장치를 지원하지 않을 수 있는 컨텐츠 소스(302)로부터, 암호화된 개인 키, 예를 들면, 클라우드 암호 서비스(CCS)(306)의 공개 키를 사용하여 암호화된 개인 키가 소비 장치(304)로 또한 전송될 수 있다.
소비 장치(304)는, 래핑된 대칭 키의 복호화 요청(312)을 클라우드 암호 서비스(306)로 전송할 수 있다. 그 요청은 래핑된 대칭 키 및 래핑된 개인 키를 포함할 수 있다. 클라우드 암호 서비스(306)는, 저장 장치(예를 들면, 키 저장소, 도시되지 않음)로부터 취출될 수 있는 PKI 비대칭 개인 키를 사용하여 클라우드 암호 서비스(306)의 보안 엔클레이브(secure enclave)에서 래핑된 개인 키(314)를 복호화할 수 있다. 클라우드 암호 서비스(306)에 의한 래핑된 개인 키의 복호화 이후, (언래핑된) 개인 키는 래핑된 대칭 키(316)를 복호화하기 위해 사용할 수 있다.
래핑된 대칭 키의 복호화 이후, 대칭 키(322)는 소비 장치(304)로 반환될 수 있다. 프로세서(324)를 포함하는 소비 장치(304)는, 복호화된 컨텐츠 파일(326)(예를 들면, 평문 파일)을 생성하기 위해, 암호화된 컨텐츠 파일(308)을 복호화할 수 있다. 클라우드 암호 서비스(306)의 보안 엔클레이브에 남아 있는 개인 키의 사본은, 래핑된 대칭 키가 언래핑된 이후, 파기될 수 있다(318). 클라우드 암호 서비스(306)의 보안 엔클레이브에 남아 있는 대칭 키(320)의 사본은, 대칭 키(322)가 소비 장치(304)로 제공된 이후, 파기될 수 있다(320).
따라서, 클라우드 암호 서비스(306)의 보안 엔클레이브에서의 암호화된 대칭 키의 파기는, 소비 장치(304)가 신뢰 키(예를 들면, 개인 키 또는 비대칭 PKI 키)를 유지할 필요 없이, 암호화된 데이터 파일이 소비 장치(304)에서 복호화되는 것을 가능하게 한다. 대칭 키가 소비 장치(304)로 전송된 이후, 클라우드 암호 서비스(306)에 남아 있는 개인 키 및 대칭 키의 사본은 파기된다.
도 4는, 본 발명의 일 실시형태에 따른, 증명서 및 키 복호화의 흐름도이다. 소비 장치(402)는, 클라우드 암호 서비스(CCS)의 CCS 일시적 노드(404)와의 보안 세션을 수립할 것이다.
408에서, 일시적 노드(404)의 보안 엔클레이브(406)과 소비 장치(402) 사이에 세션이 열린다. 410에서, CCS의 CCS 일시적 노드(404)의 보안 엔클레이브의 보안 레벨의 증명서가 소비 장치(402)로 반환된다. 파일을 복호화하기 위한 암호화된 대칭 키를 수신하도록 일시적 노드(404)가 권한을 부여받는다는 것을(예를 들면, 보안 엔클레이브의 보안 레벨이 임계 레벨을 만족한다는 것을) 소비 장치(402)가 확인하면, 소비 장치(402)는, 래핑된 개인 키(예를 들면, 공개 키 암호화를 사용하여 래핑된 개인 키)를 언래핑하여 개인 키를 생성하기 위해 그리고 암호화된 대칭 키(예를 들면, 개인 키로 암호화된 대칭 키)를 언래핑하여 대칭 키를 생성하기 위해, 언래핑 요청(unwrap request; 412)을 보안 엔클레이브로 전송한다. 복호화 동작이 수행된 이후, 대칭 키(언래핑된)는 소비 장치(402)로 전송된다(414) 대칭 키의 수신시, 소비 장치(402)는 세션을 닫기 위한 커맨드(416)를 보안 엔클레이브(406)로 전송한다.
도 5는, 본 발명의 다른 실시형태에 따른, 증명서 및 키 복호화의 흐름도(500)이다. 508에서, 소비 장치(502)는 일시적 노드(504)의 보안 엔클레이브(506)와의 세션을 연다. 510에서, 보안 엔클레이브의 보안 레벨의 증명서가 보안 엔클레이브(506)로부터 소비 장치(502)로 전송된다. 512에서, 소비 장치(502)는 소비 장치(502)의 보안 레벨의 증명서를 일시적 노드(504)로 제공한다. 보안 엔클레이브(506)는, 514에서, 수신된 증명서에 기초하여, 소비 장치에게 보안 레벨을 할당한다.
보안 레벨이 할당되고 보안 세션이 수립된 이후, 소비 장치(502)는, 보안 엔클레이브(506)의 보안 레벨이, 래핑된 대칭 키의 보안 레벨과 매치한다는 것을 확인하고(516), 래핑된 대칭 키를 복호화하기 위한 언래핑 요청(518)을 보안 엔클레이브(506)으로 전송한다. 언래핑 요청(518)은, CCS 일시적 노드(504)의 공개 암호화를 사용하여 래핑되는 래핑된 개인 키 및 래핑된 대칭 키를 포함한다. 520에서, 래핑된 개인 키는 PKI 복호화(예를 들면, CCS 일시적 노드(504)의 비대칭 개인 키)를 사용하여 언래핑되고, 래핑된 대칭 키는 개인 키(언래핑된)를 사용하여 언래핑된다. 522에서, 대칭 키(520)는 소비 장치(502)로 전송된다. 소비 장치(502)는 524에서 보안 세션을 닫는다.
도 6은, 본 발명의 실시형태에 따른, 파일 바이너리 라지 오브젝트("BLOB")(600)의 블록도이다. 파일 BLOB(600)은 (암호화된) 암호문(ciphertext; 602), 래핑된 대칭 키(604), 래핑된 개인 키(606-610), 데이터 보안 레벨 표시기(612), 및 디지털 서명(614)을 포함한다.
암호문(602)은, 대칭 키를 사용하여 암호화된 데이터 파일 컨텐츠를 포함한다. 대칭 키는, 생성용 장치로부터의 개인 키(Pr)를 사용하여 래핑되고 래핑된 대칭 키(604)로서 저장된다.
개인 키(Pr)는 복수의 공개 키의 각각에 의해 암호화될 수 있는데, 각각의 공개 키는 클라우드 서비스 공급자의 상이한 일시적 노드와 관련된다. 예를 들면, 공개 키(Tr-1, Tr-2, …, Tr-n)의 각각은 대응하는 일시적 노드와 관련될 수 있고, 각각의 공개 키는, n 개의 래핑된 키({Pr}Tr-i)(i=1, n)를 생성하기 위해, Pr 키를 래핑하도록 사용될 수 있다. 래핑된 키({Pr}Tr-i)(606-610)의 각각은 파일(600)에 저장될 수 있다. 래핑된 키({Pr}Tr-i)(i=1, n)의 다수의 버전을 갖는 것은, 다수의 일시적 노드 중 임의의 하나가 대칭 키를 복호화하기 위해 사용되는 것을 가능하게 한다.
예를 들면, 래핑된 키({Pr}Tr-1)는, 클라우드 암호 서비스(CCS, 도시되지 않음)의 제1 일시적 노드와 관련되는 제1 공개 키(Tr-1)에 의해 암호화되었다. 제1 일시적 노드는, 래핑된 대칭 키를 복호화하기 위해 사용될 수 있는 개인 키({Pr})를 생성하기 위해, {Pr}Tr-1의 복호화를 허용하는 제1 비대칭 키에 액세스할 수 있다. 일단 언래핑되면, (언래핑된) 대칭 키는, 예를 들면, 암호화된 파일을 복호화하는 신뢰 소비 장치로 대칭 키를 전송하는 것에 의해, 암호화된 데이터 파일을 복호화하도록 사용될 수 있다.
대안적으로, 제1 일시적 노드는 암호화된 데이터 파일을 수신할 수 있고 암호화된 데이터 파일을, (복호화된) 대칭 키를 사용하여 복호화할 수 있다. 추가적으로, 다양일 실시형태에서, 제1 일시적 노드는, 암호 해제된 데이터 파일의 컨텐츠를 수정(예를 들면, 편집)할 수도 있고, 암호 해제된 데이터 파일의 실행가능 컨텐츠를 실행할 수도 있으며, 보안 원격 뷰잉을 위해 파일의 컨텐츠의 일부를 보안적이게 만들 수도 있다.
다른 예에서, 래핑된 키({Pr}Tr-2)는, CCS의 제2 일시적 노드와 관련되는 제2 공개 키(Tr-2)에 의해 암호화되었다. 제2 일시적 노드는, 래핑된 대칭 키를 복호화하기 위해 사용될 수 있는 개인 키({Pr})를 생성하기 위해, {Pr}Tr-2의 복호화를 허용하는 제2 비대칭 키에 액세스할 수 있다. 일단 언래핑되면, (언래핑된) 대칭 키는, 예를 들면, 암호화된 파일을 복호화하는 신뢰 소비 장치로 대칭 키를 전송하는 것에 의해, 암호화된 데이터 파일을 복호화하도록 사용될 수 있다.
또 다른 예에서, 래핑된 대칭 키의 다수의 사본의 결과로서, 일시적 노드의 풀(pool)에 걸쳐 복호화 동작을 스케줄링하기 위해, 분산형 실행 계획(distributed execution plan)이 사용될 수 있다. 예를 들면, 암호화된 개인 키({Pr}Tr-i)(i=1, n)의 각각은, 대응하는 시간 기간 동안에만 대응하는 일시적 노드에서 암호화될 수 있다, 예를 들면, 암호화된 개인 키(606-610) 중 어떤 것이 대응하는 일시적 노드로 전송되어 복호화될 것인지를, 연대기적 스케줄이 결정할 수 있다.
파일 BLOB(600)은, 예를 들면, 생성용 장치의 서명 키(614)를 사용하여 서명될 수 있고, 그 결과 데이터 보안 레벨(614)은 암호화된 데이터와 관련될 수 있고 따라서 블랍 구조는 구축 후에 훼손되지 않을 수 있다. 동작에서, 소비 장치와 일시적 노드 사이의 세션의 개방시, 파일 BLOB(600)은, 예를 들면, 서명(614)의 보안 레벨과 매치하는 소비 장치의 보안 레벨을 수립하는 것에 의해, 소비 장치에 의해 액세스될 수 있다. 암호문(602)은 소비 장치에 의해 액세스될 수 있다. 소비 장치는 래핑된 대칭 키(604) 및 래핑된 개인 키(606-610) 중 하나를 취출할 수 있고, 복수의 일시적 노드 중 선택된 일시적 노드에 의해 래핑된 대칭 키(604)가 복호화되어야 한다는 것을 요청할 수 있다. 대칭 키를 복호화하고 대칭 키를 소비 장치로 전송한 이후, 선택된 일시적 노드에 남아 있는 개인 키 및 대칭 키의 사본은 파기될 수 있다. 암호화된 데이터 파일을 대칭 키를 사용하여 소비 장치에서 복호화한 이후, (복호화된) 데이터 파일은 비보안 유저에게 반환될 수 있다.
도 7은, 본 발명의 일 실시형태에 따른, 클라우드-보조 암호화를 수행하는 방법(700)의 흐름도이다. 블록 705에서, 클라우드 암호 서비스(CCS)는 소비 장치로부터의 초청을 수신하여 보안 통신 세션을 시작한다. 블록 710에서, 클라우드 암호 서비스(CCS)는, 초청에 응답하여, CCS의 보안 레벨의 증명서를 제공한다.
옵션으로, 블록 720에서, CCS는 보안 세션을 개시한 소비 장치의 증명서를 수신하고, CCS는 소비 장치에게 보안 레벨을 할당한다. 블록 730으로 넘어가서, CCS의 일시적 노드는 래핑된 대칭 키의 언래핑 요청을 소비 장치로부터 수신한다. 요청에 의해, CCS 일시적 노드는, 개인 키에 의해 암호화된 래핑된 대칭 키를 수신한다. CCS 일시적 노드는 또한, CCS와 공유되는 공개 키에 의해 암호화된(예를 들면, 공개 키 암호화) 래핑된 개인 키를 수신한다.
블록 740으로 넘어가서, CCS 일시적 노드는, 래핑된 개인 키를 공개 키 암호화와 관련되는 비대칭 키를 사용하여 복호화한다. 블록 750으로 넘어가서, CCS 일시적 노드는 (언래핑된) 래핑된 대칭 키를 개인 키를 사용하여복호화한다. 블록 760으로 넘어가서, CCS 일시적 노드는, 암호화된 데이터 파일을 복호화하기 위해, (복호화된) 대칭 키를 소비 장치로 전송한다. (대안적으로, CCS 일시적 노드는, 소비 장치로 반환될 암호화된 데이터 파일을 복호화할 수 있다.) 블록 770으로 넘어가서, CCS 일시적 노드는, CCS에 남아 있는 개인 키의 사본 및 대칭 키의 사본을 파기한다. 방법은 780에서 종료한다.
실시형태는, 셀룰러 전화, 태블릿 컴퓨터, 등등과 같은 모바일 장치를 포함하는 다른 타입의 시스템으로 통합될 수 있다. 이제 도 8을 참조하면, 본 발명의 다른 실시형태에 따른 시스템의 블록도가 도시된다. 도 8에서 도시되는 바와 같이, 시스템(800)은 모바일 장치일 수 있고 다양한 컴포넌트를 포함할 수 있다. 도 8의 하이 레벨 뷰에서 도시되는 바와 같이, 장치의 중앙 프로세싱 유닛일 수 있는 애플리케이션 프로세서(810)는, 저장 장치(815)를 비롯하여 다양한 컴포넌트와 통신한다. 저장 장치(815)는, 다양일 실시형태에서, 프로그램 및 데이터 저장 장치 부분 둘 다를 포함할 수 있고 보안 저장 장치를 제공하도록 매핑될 수 있다.
애플리케이션 프로세서(810)는 또한, 다양일 실시형태에서 디스플레이 및 터치 키패드와 같은 하나 이상의 입력 장치를 포함할 수 있는 입/출력 시스템(820)에 연결될 수도 있고, 실행시에, 터치 키패드 자체가 디스플레이 상에 나타날 수도 있다. 시스템(800)은, 하나 이상의 센서(870)로부터 데이터를 수신할 수 있는 통합 센서 허브(integrated sensor hub; ISH)(860)를 포함할 수도 있다.
애플리케이션 프로세서(810)는 또한, 출력을 위해 보이스 및 데이터 통신과 같은 신호를 컨디셔닝할 수 있고, 또한 유입 전화 및 다른 신호를 컨디셔닝할 수 있는 베이스밴드 프로세서(830)에 연결될 수 있다. 알 수 있는 바와 같이, 베이스밴드 프로세서(830)는, 수신 및 송신 성능 둘 다를 가능하게 할 수 있는 송수신기(840)에 연결된다. 계속해서, 송수신기(840)는, 안테나(850), 예를 들면, 미국전기전자학회(Institute of Electrical and Electronics Engineers) 802.11 표준에 따른 하나 이상의 통신 프로토콜을 통해 예컨대 무선 광대역 네트워크(예를 들면, 3G 또는 4G 네트워크) 및/또는 무선 근거리 통신망, 예컨대 BLUETOOTH™ 또는 소위 WI-FI™ 네트워크를 통해 보이스 및 데이터 신호를 송신 및 수신할 수 있는 임의의 타입의 안테나와 통신할 수 있을 수 있다. 알 수 있는 바와 같이, 시스템(800)은, 모바일 환경에서의 동작을 가능하게 하기 위해, 충전가능한 배터리를 갖는 충전가능한 전원(825)을 더 포함할 수 있다.
일례로, 시스템(800)은 소비 장치, 예를 들면, 도 1의 시스템(100)의 소비 장치(120)로서 기능할 수 있다. 소비 장치로서, 시스템(800)은, 암호화된 대칭 키(개인 키로 암호화됨)를 포함하는 메타데이터를 갖는 암호화된 데이터 파일을 수신할 수 있다. 시스템은 또한 암호화된 개인 키(예를 들면, PKI 암호화의 공개 키를 통해 암호화됨)를 수신할 수 있다. 시스템(800)은, 예를 들면, 증명서를 통해, 클라우드 암호 서비스(CCS)와의 보안 세션을 수립할 수 있고, 시스템(800)은 CCS의 CCS 일시적 노드(도시되지 않음)에게 암호화된 대칭 키의 복호화 요청을 발행할 수 있다. 시스템(800)은, 본 발명의 실시형태에 따라, 암호화된 대칭 키 및 암호화된 개인 키를 CCS 일시적 노드로 제공할 수 있다. CCS 일시적 노드는 래핑된 개인 키를 공개 키 암호화의 비대칭 개인 키를 사용하여 언래핑할 수 있고, 시스템(800)으로 반환될 래핑된 대칭 키를 복호화하기 위해 (언래핑된) 개인 키를 사용할 수 있다. 시스템(800)은, 본 발명의 실시형태에 따라, 대칭 키를 수신할 수 있고, 평문 파일을 생성하기 위해, 암호화된 데이터 파일을 대칭 키를 사용하여 복호화할 수 있다.
도 8의 실시형태에서는 이러한 특정 구현예로 도시되지만, 본 발명의 범위는 이러한 사항에 제한되지 않는다.
다른 실시형태가 이하에서 설명된다.
제1 예에서, 시스템은, 소비 장치로부터 수신되는 암호화된 개인 키를 복호화해서 개인 키를 생성하는 개인 키 복호화 로직을 포함하는 프로세서를 포함하는 클라우드 암호 서버(cloud cryptographic server; CCS)를 포함한다. 프로세서는 또한, 개인 키 복호화 로직으로부터 개인 키를 수신하고 소비 장치로부터 수신되는 암호화된 대칭 키를 복호화하는 대칭 키 복호화 로직을 포함하는데, 이 경우 복호화는 개인 키를 사용하여 실행된다. 프로세서는 또한, 개인 키 복호화 로직으로부터 개인 키를 수신하고 소비 장치로부터 수신되는 암호화된 대칭 키를 복호화하는 대칭 키 복호화 로직을 포함하는데, 이 경우 복호화는 개인 키를 사용하여 실행된다. 시스템은 또한, 프로세서에 연결되는 동적 랜덤 액세스 메모리(DRAM)을 포함한다.
예1의 시스템을 포함하는 제2 예에서, 암호화된 개인 키는 클라우드 암호 서버와 관련되는 공개 키 암호화를 사용하여 암호화된다.
예1의 시스템을 포함하는 제3 예에서, 암호화된 개인 키 및 암호화된 대칭 키는, 대칭 키로 암호화되는 암호화된 파일을 소비 장치가 수신한 것에 응답하여 소비 장치로부터 수신된다.
예1의 시스템을 포함하는 제4 예에서, 소비 장치로부터 암호화된 개인 키 및 암호화된 대칭 키를 수신하기 이전에, 시스템은 신뢰 실행 환경(TEE)을 수립할 것이다.
예4의 시스템을 포함하는 제5 예에서, TEE의 수립은, 소비 장치로부터 증명서 요청을 수신한 것에 응답하여 보안의 레벨의 증명서를 제공하는 것을 포함한다.
예1의 시스템을 포함하는 제6 예에서, 소비 장치로부터 암호화된 대칭 키를 수신하기 이전에, 프로세서는, 시스템의 보안의 레벨이, 암호화된 대칭 키의 보안의 레벨과 호환될 수 있다는 표시를 제공할 것이다.
예1의 시스템을 포함하는 제7 예에서, 암호화된 대칭 키를 복호화한 이후에, 시스템은 대칭 키를 소비 장치에 제공할 것이다.
예7의 시스템을 포함하는 제8 예에서, 시스템은, 대칭 키가 소비 장치에 제공된 이후에, 시스템에 있는 개인 키의 사본을 파기할 것이다.
예7의 시스템을 포함하는 제9 예에서, 시스템은, 대칭 키가 소비 장치에 제공된 이후, 시스템에 있는 대칭 키의 사본을 파기할 것이다.
예1의 시스템을 포함하는 제10 예에서, 시스템은, 소비 장치로부터 암호화된 파일을 수신하고, 소비자 장치로부터 수신되는 암호화된 파일을 대칭 키를 사용하여 복호화해서 암호 해제된 데이터 파일을 생성하고, 암호 해제된 데이터 파일을 소비 장치로 반환할 것이다.
제11 예에서, 방법은, 적어도 하나의 프로세서를 포함하는 클라우드 계산 서버(CCS)가, 암호화된 대칭 키의 복호화 요청을 수신하는 것, 암호화된 대칭 키 및 공개 키를 통해 암호화된 개인 키를 포함하는 암호화된 개인 키를 수신하는 것, 및 제1 암호화된 개인 키를 복호화한 이후, 암호화된 대칭 키를 개인 키를 사용하여 복호화해서 대칭 키를 생성하는 것을 포함한다.
예11의 방법을 포함하는 제12 예에서, 방법은 대칭 키를 소비 장치에 제공하는 것을 포함한다.
예12의 방법을 포함하는 제13 예에서, 방법은, 대칭 키를 소비 장치에 제공한 이후, CCS가, CCS에 있는 대칭 키의 사본을 파기하는 것을 포함한다.
예12의 방법을 포함하는 제14 예에서, 방법은, 대칭 키를 소비 장치에 제공한 이후, CCS가, 클라우드 서버에 있는 개인 키의 사본을 파기하는 것을 포함한다.
예11의 방법을 포함하는 제15 예에서, 방법은, 암호화된 대칭 키를 수신하기 이전에, 소비 장치로부터 보안 증명서에 대한 요청을 수신하는 것, 및 요청에 응답하여 보안 증명서를 제공하는 것을 포함한다.
예11의 방법을 포함하는 제16 예에서, 방법은, 대칭 키를 제공하기 이전에, 소비 장치로부터 소비 장치 보안 증명서를 수신하는 것을 포함한다.
예15의 방법을 포함하는 제17 예에서, 암호화된 대칭 키는, 보안 증명서에 기초하여 CCS가 대칭 키와 관련되는 대칭 키 보안 레벨을 만족하는 보안 레벨을 갖고 있는 경우에만, 소비 장치로부터 수신된다.
제18 예는, 예11 내지 예17 중 어느 하나의 방법을 수행하는 수단을 포함하는 장치이다.
제19예는, 실행될 때, 예11 내지 예17 중 어느 하나의 방법을 실시하는 머신 판독 가능 인스트럭션을 포함하는 머신 판독 가능 저장 장치이다.
제20 예는, 클라우드 암호 서비스(CCS)와의 보안 통신 세션을 개시하고, 보안 통신 세션을 통해, 개인 키를 통해 암호화되는 암호화된 대칭 키의 복호화 요청, CCS와 관련되는 공개 키 암호화를 통해 암호화되는 암호화된 개인 키 및 암호화된 대칭 키를 CCS에 제공하며, 그리고, 암호화된 대칭 키의 복호화의 요청에 응답해서 대칭 키를 CCS로부터 수신하는 보안 세션 로직을 포함하는 프로세서를 포함하는 시스템이다. 시스템은 또한 동적 랜덤 액세스 메모리(DRAM)을 포함한다.
제21 예는, 예20의 시스템을 포함하며, 프로세서는, 암호화된 데이터 파일을 대칭 키를 사용하여 복호화해서 암호 해제된 데이터 파일을 생성하는 복호화 로직을 더 포함한다.
제22 예는, 예20의 시스템을 포함하는데, 이 경우, 보안 세션 로직은 보안 통신 세션의 수립 이전에 소비 장치 보안 증명서를 CCS에 제공할 것이다.
제23 예는, 예20의 시스템을 포함하는데, 이 경우, 보안 세션 로직은 보안 통신 세션의 수립 이전에 CCS 보안 증명서를 CCS로부터 수신할 것이다.
제24 예는, 소비 장치의 프로세서가, 클라우드 암호 서비스(CCS)와의 보안 통신 세션을 개시하는 단계를 포함하는 방법이다. 그 방법은, 소비자 장치가, 보안 통신 세션을 통해, 암호화된 대칭 키의 복호화 요청, CCS와 관련되는 공개 키 암호화를 통해 암호화되는 개인 키를 포함하는 암호화된 개인 키, 및 개인 키를 통해 암호화되는 대칭 키를 포함하는 암호화된 대칭 키를 CCS에 제공하는 단계를 포함한다. 이 방법은 CCS로부터, 암호화된 대칭 키의 복호화 요청에 응답해서 대칭 키를 수신하는 단계를 포함한다.
제25 예는 예 24의 방법을 포함하는데, 암호화된 데이터 파일을 대칭 키를 사용하여 복호화해서 암호 해제된 데이터 파일을 생성하는 단계를 더 포함한다.
제26예는, 예24의 방법을 포함하는데, 보안 통신 세션의 수립 이전에, CCS로부터 CCS 보안 증명서를 수신하는 것을 더 포함한다.
제27예는 예 24의 방법을 포함하는데, 보안 통신 세션의 수립 이전에, 소비 장치 보안 증명서를 CCS로 제공하는 것을 더 포함한다.
제28 예는, 예24 내지 예27의 방법 중 어느 하나를 수행하는 수단을 포함하는 장치이다.
제29예는, 실행시, 예24 내지 예27 중 어느 하나의 방법을 구현하는 머신 판독 가능 인스트럭션을 포함하는 머신 판독 가능 저장 장치이다.
제30예는, 클라우드 암호 서비스(CCS)와의 보안 통신 세션을 개시하는 초기화 수단을 포함하는 장치이다. 이 장치는 또한, 보안 통신 세션을 통해, 암호화된 대칭 키의 복호화 요청, CCS와 관련되는 공개 키 암호화를 통해 암호화되는 개인 키를 포함하는 암호화된 개인 키, 및 개인 키를 통해 암호화되는 대칭 키를 포함하는 암호화된 대칭 키를 CCS에 제공하는 요청 수단을 포함한다. 이 장치는 또한, 암호화된 대칭 키의 복호화 요청에 응답해서 CCS로부터 대칭 키를 수신하기 는 수신 수단을 포함한다.
제31 예는 예 30의 장치를 포함하는데, 암호 해제된 데이터 파일을 생성하기 위해, 암호화된 데이터 파일을 대칭 키를 사용하여 복호화하는 복호화 수단을 더 포함한다.
제32 예는, 예30의 장치를 포함하는데, 수신 수단은 또한, 보안 통신 세션의 수립 이전에, CCS로부터 CCS 보안 증명서를 수신한다.
제33 예는 예 30의 장치를 포함하는데, 보안 통신 세션의 수립 이전에, 소비 장치 보안 증명서를 CCS로 제공하는 증명서 수단을 더 포함한다.
제34 예는, 암호화된 대칭 키의 복호화 요청을 소비 장치로부터 수신하는 수신 수단을 포함하는 장치이다. 수신 수단은 또한, 공개 키를 통해 암호화된 개인 키를 포함하는 암호화된 개인 키 및 암호화된 대칭 키를 수신한다. 장치는 또한, 제1 암호화된 개인 키를 복호화해서 개인 키를 생성하는 복호화 수단을 포함한다. 복호화 수단은 또한, 제1 암호화된 개인 키를 복호화한 이후, 암호화된 대칭 키를 개인 키를 사용하여 복호화해서 대칭 키를 생성한다.
예 34의 장치를 포함하는 제35 예에서, 이 장치는 소비 장치에 대칭 키를 제공하는 출력 수단을 더 포함한다.
예 35의 장치를 포함하는 제36 예에서, 이 장치는, 소비 장치로 대칭 키를 제공한 이후, 장치에 있는 대칭 키의 사본을 파기하는 수단을 더 포함한다.
예 36의 장치를 포함하는 제37 예에서, 이 장치는, 소비 장치로 대칭 키를 제공한 이후, 장치에 있는 개인 키의 사본을 파기하는 수단을 포함한다.
예 34의 장치를 포함하는 제38 예에서, 수신 수단은 또한, 암호화된 대칭 키를 수신하기 이전에, 소비 장치로부터 보안 증명서에 대한 요청을 수신하고, 이 장치는 요청에 응답하여 보안 증명서를 제공하는 증명서 수단을 더 포함한다.
예 34의 장치를 포함하는 제39 예에서, 수신 수단은 또한, 암호화된 대칭 키를 수신하기 이전에, 소비 장치로부터 소비 장치 보안 증명서를 수신한다.
예38의 장치를 포함하는 제40 예에서, 암호화된 대칭 키는, CCS가, 대칭 키와 관련되는 대칭 키 보안 레벨을 만족하는 보안 레벨을 보안 증명서에 기초하여 갖는 경우에만, 소비 장치로부터 수신된다.
실시형태는 코드로 구현될 수 있고, 인스트럭션을 수행하도록 시스템을 프로그래밍하기 위해 사용될 수 있는 인스트럭션이 저장된 비일시적 저장 매체 상에 저장될 수 있다. 저장 매체는, 플로피 디스크, 광학 디스크, 솔리드 스테이트 드라이브(SSD), CD-ROM, CD-RW, 및 광자기 디스크를 포함하는 임의의 타입의 디스크, 반도체 장치 예컨대 ROM, RAM, 예컨대 DRAM, SRAM, EPROM, 플래시 메모리, EEPROM, 자기 또는 광학 카드, 또는 전자적 인스트럭션을 저장하는 데 적합한 임의의 타입이 미디어를 포함할 수 있지만, 이들로 제한되는 것은 아니다.
본 발명이 제한된 수의 실시형태와 함께 설명되었지만, 당업자는 그 실시형태의 다양한 수정예 및 변경예를 알 수 있을 것이다. 첨부된 청구범위는 본 발명의 진정한 취지와 범위 내에 있는 한, 이러한 모든 수정예 및 변경예를 포괄하도록 의도된다.

Claims (25)

  1. 시스템으로서,
    프로세서와,
    상기 프로세서에 연결되는 동적 랜덤 액세스 메모리(DRAM)와,
    클라우드 계산 서버(a cloud computational server, CCS)를 포함하고,
    상기 프로세서는,
    소비 장치(a consuming device)로부터 수신되는 암호화된 개인 키(an encrypted private key)를 복호화해서 개인 키를 생성하는 개인 키 복호화 로직과,
    상기 개인 키 복호화 로직으로부터 상기 개인 키를 수신하고, 상기 소비 장치로부터 수신되는 암호화된 대칭 키(an encrypted symmetric key)를 복호화하며, 상기 암호화된 대칭 키를 복호화한 이후에 상기 대칭 키를 상기 소비 장치에 제공하는 - 상기 복호화는 상기 개인 키를 사용하여 수행됨 - 대칭 키 복호화 로직
    을 포함하는
    시스템.
  2. 제1항에 있어서,
    상기 암호화된 개인 키는 공개키 암호화(public key encryption)를 사용하여 암호화된 것인
    시스템.
  3. 제1항에 있어서,
    상기 암호화된 개인 키 및 상기 암호화된 대칭 키는, 상기 대칭 키로 암호화되는 암호화된 파일을 상기 소비 장치가 수신한 것에 응답하여, 상기 소비 장치로부터 수신되는
    시스템.
  4. 제1항에 있어서,
    상기 소비 장치로부터 상기 암호화된 개인 키 및 상기 암호화된 대칭 키를 수신하기 이전에, 상기 시스템은 신뢰 실행 환경(trusted execution environment; TEE)을 수립하는
    시스템.
  5. 제4항에 있어서,
    상기 TEE의 수립은, 상기 소비 장치에 보안의 레벨의 증명서를 제공하는 것을 포함하는
    시스템.
  6. 제1항에 있어서,
    상기 소비 장치로부터 상기 암호화된 대칭 키를 수신하기 이전에, 상기 프로세서는, 상기 암호화된 대칭 키의 보안의 레벨과 호환될 수 있는 상기 시스템의 보안의 레벨의 표시를 제공하는
    시스템.
  7. 제1항에 있어서,
    상기 프로세서는 상기 소비 장치로부터 수신된 증명서 요청에 응답하여 - 상기 증명서 요청은 보안 세션 요청에 포함됨 - , 상기 시스템의 보안 레벨의 증명서를 생성하고, 상기 증명서를 상기 소비 장치로 전송하여 상기 시스템과 상기 소비 장치 사이에 보안 세션을 수립할 수 있도록 하는 증명서 로직을 더 포함하며,
    상기 암호화된 개인 키는 상기 시스템의 제 2 개인 키를 사용하여 복호화되고, 상기 암호화된 개인 키는 상기 시스템의 공개 키를 이용하여 콘텐츠 소스에 의하여 암호화된 것인
    시스템.
  8. 제1항에 있어서,
    상기 프로세서는, 상기 대칭 키가 상기 소비 장치에 제공된 이후에, 상기 시스템에 있는 상기 개인 키의 사본을 파기하는(destroy)
    시스템.
  9. 제1항에 있어서,
    상기 시스템은, 상기 대칭 키가 상기 소비 장치에 제공된 이후에, 상기 시스템에 있는 상기 대칭 키의 사본을 파기하는
    시스템.
  10. 제1항에 있어서,
    상기 프로세서는,
    상기 소비 장치로부터 암호화된 파일을 수신하고,
    상기 소비 장치로부터 수신되는 암호화된 파일을 상기 대칭 키를 사용하여 복호화해서 암호 해제된 데이터 파일을 생성하며,
    상기 암호 해제된 데이터 파일을 상기 소비 장치로 반환하는
    시스템.
  11. 방법으로서,
    적어도 하나의 프로세서를 포함하는 클라우드 계산 서버(a cloud computational server; CCS)가, 소비 장치로부터 암호화된 대칭 키의 복호화 요청을 수신하는 단계와,
    상기 암호화된 대칭 키, 및 공개 키를 통해 암호화된 개인 키를 포함하는 암호화된 개인 키를 수신하는 단계와,
    제1 암호화된 개인 키를 복호화해서 개인 키를 생성하는 단계와,
    상기 제1 암호화된 개인 키를 복호화한 이후에, 상기 암호화된 대칭 키를 상기 개인 키를 사용하여 복호화해서 대칭 키를 생성하는 단계와,
    상기 대칭 키를 상기 소비 장치에 제공하는 단계
    를 포함하는 방법.
  12. 제11항에 있어서,
    상기 제 1 암호화된 개인 키는 상기 CCS의 제 2 개인 키를 사용하여 복호화되며, 상기 개인 키는 상기 CCS의 상기 공개 키를 통하여 콘텐츠 소스에 의하여 암호화된 것인
    방법.
  13. 제11항에 있어서,
    상기 대칭 키를 상기 소비 장치에 제공한 이후에, 상기 CCS에 의해, 상기 CCS에 있는 상기 대칭 키의 사본을 파기하는 단계를 더 포함하는
    방법.
  14. 제11항에 있어서,
    상기 대칭 키를 상기 소비 장치에 제공한 이후에, 상기 CCS에 의해, 상기 CCS에 있는 상기 개인 키의 사본을 파기하는 단계를 더 포함하는
    방법.
  15. 제11항에 있어서,
    상기 암호화된 대칭 키를 수신하기 이전에, 상기 소비 장치로부터 보안 증명서에 대한 요청을 상기 CCS에 의하여 수신하는 단계, 및 상기 요청에 응답하여 상기 보안 증명서를 제공하는 단계를 더 포함하는
    방법.
  16. 제11항에 있어서,
    상기 암호화된 대칭 키를 수신하기 이전에, 상기 소비 장치로부터 소비 장치 보안 증명서를 수신하는 단계를 더 포함하는
    방법.
  17. 제15항에 있어서,
    상기 암호화된 대칭 키는, 상기 보안 증명서에 기초하여 상기 CCS가 상기 대칭 키와 관련되는 대칭 키 보안 레벨을 만족하는 보안 레벨을 갖고 있는 경우에만, 상기 소비 장치로부터 수신되는
    방법.
  18. 시스템으로서,
    프로세서와,
    동적 랜덤 액세스 메모리(DRAM)
    를 포함하고,
    상기 프로세서는 보안 세션 로직과 복호화 로직을 포함하며,
    상기 보안 세션 로직은,
    클라우드 암호 서비스(a cloud cryptographic service; CCS)와의 보안 통신 세션을 개시하고,
    상기 보안 통신 세션을 통해, 개인 키를 통해 암호화되는 암호화된 대칭 키의 복호화 요청, 상기 암호화된 대칭 키, 및 상기 CCS와 연관되는 공개 키 암호화를 통해 암호화되는 상기 개인 키를 포함하는 암호화된 개인 키를 상기 CCS에 제공하며,
    상기 암호화된 대칭 키의 상기 복호화 요청에 응답하여 상기 CCS로부터 상기 대칭 키를 수신하고,
    상기 복호화 로직은 암호화된 데이터 파일을 상기 대칭 키를 사용하여 복호화하여 암호 해제된 데이터 파일을 생성하는
    시스템.
  19. 제18항에 있어서,
    상기 암호화된 대칭 키는 콘텐츠 소스에 의하여 상기 개인 키를 이용하여 암호화된 것인
    시스템.
  20. 제18항에 있어서,
    상기 보안 세션 로직은, 상기 보안 통신 세션의 수립 이전에, 소비 장치 보안 증명서를 상기 CCS에 제공하는
    시스템.
  21. 삭제
  22. 삭제
  23. 삭제
  24. 삭제
  25. 삭제
KR1020167023438A 2014-03-27 2015-03-27 클라우드-보조 암호화를 위한 방법 및 장치 KR101894232B1 (ko)

Applications Claiming Priority (3)

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
US14/227,319 2014-03-27
PCT/US2015/022916 WO2015148884A1 (en) 2014-03-27 2015-03-27 Method and apparatus for cloud-assisted cryptography

Publications (2)

Publication Number Publication Date
KR20160113264A KR20160113264A (ko) 2016-09-28
KR101894232B1 true KR101894232B1 (ko) 2018-09-04

Family

ID=54191993

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020167023438A KR101894232B1 (ko) 2014-03-27 2015-03-27 클라우드-보조 암호화를 위한 방법 및 장치

Country Status (6)

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

Families Citing this family (25)

* 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
US10298555B2 (en) * 2014-04-04 2019-05-21 Zettaset, Inc. Securing files under the semi-trusted user threat model using per-file key encryption
US10043029B2 (en) * 2014-04-04 2018-08-07 Zettaset, Inc. Cloud storage encryption
US10873454B2 (en) * 2014-04-04 2020-12-22 Zettaset, Inc. Cloud storage encryption with variable block sizes
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
US10073791B2 (en) 2015-03-25 2018-09-11 Vera Securing files
US20170034214A1 (en) * 2015-07-30 2017-02-02 Northrop Grumman Systems Corporation Apparatus and method for cross enclave information control
US10411879B2 (en) 2016-03-25 2019-09-10 Synergex Group Methods, systems, and media for using dynamic public key infrastructure to send and receive encrypted messages
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
US11165565B2 (en) * 2016-12-09 2021-11-02 Microsoft Technology Licensing, Llc Secure distribution private keys for use by untrusted code
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
US11646890B2 (en) 2018-05-16 2023-05-09 Telefonaktiebolaget Lm Ericsson (Publ) Enclave population
US10771252B1 (en) * 2018-06-12 2020-09-08 Equinix, Inc. Data center security services
US11025614B2 (en) 2018-10-17 2021-06-01 Synergex Group Systems, methods, and media for managing user credentials
US11405198B2 (en) 2019-02-13 2022-08-02 TEEware Co., Ltd. System and method for storing and managing keys for signing transactions using key of cluster managed in trusted execution environment
US11290258B2 (en) * 2019-02-22 2022-03-29 Panasonic Avionics Corporation Hybrid cryptographic system and method for encrypting data for common fleet of vehicles
CN110071940A (zh) * 2019-05-06 2019-07-30 深圳市网心科技有限公司 软件包加解密方法、服务器、用户设备及存储介质
US11570155B2 (en) * 2019-07-25 2023-01-31 Everything Blockchain Technology Corp. Enhanced secure encryption and decryption system
US11343247B1 (en) 2019-08-30 2022-05-24 Equinix, Inc. Local delegation of remote key management service
US11611558B2 (en) * 2019-11-13 2023-03-21 Google Llc Integration of third-party encryption key managers with cloud services
CN114762290B (zh) * 2019-12-06 2024-04-19 三星电子株式会社 对数字密钥进行管理的方法和电子装置
CN112217838B (zh) * 2020-11-02 2021-08-31 福州大学 一种基于云模型理论的网络攻击面评估方法

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100888075B1 (ko) * 2008-04-28 2009-03-11 인하대학교 산학협력단 개인별 대칭키를 이용한 멀티캐스트를 위한 암호화 및복호화 시스템
US20140013106A1 (en) * 2012-07-03 2014-01-09 International Business Machines Corporation Issuing, presenting and challenging mobile device identification documents

Family Cites Families (20)

* 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
US8239917B2 (en) * 2002-10-16 2012-08-07 Enterprise Information Management, Inc. Systems and methods for enterprise security with collaborative peer to peer architecture
WO2004077782A1 (en) * 2003-02-28 2004-09-10 Research In Motion Limited System and method of protecting data on a communication device
US8074083B1 (en) * 2007-01-09 2011-12-06 Google Inc. Controlling download and playback of media content
US8213618B2 (en) * 2008-12-30 2012-07-03 Intel Corporation Protecting content on client platforms
US20110289310A1 (en) 2010-05-20 2011-11-24 Selgas Thomas D Cloud computing appliance
US8812871B2 (en) 2010-05-27 2014-08-19 Cisco Technology, Inc. Method and apparatus for trusted execution in infrastructure as a service cloud environments
KR20130021774A (ko) * 2011-08-23 2013-03-06 주식회사 스마트솔루션 전자인증서 기반 보안서비스 제공방법 및 시스템
CN102546181B (zh) * 2012-01-09 2014-12-17 西安电子科技大学 基于密钥池的云存储加解密方法
US20130191629A1 (en) * 2012-01-19 2013-07-25 Laconic Security, Llc Secure group-based data storage in the cloud
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
US9350536B2 (en) 2012-08-16 2016-05-24 Digicert, Inc. Cloud key management system
US20140082364A1 (en) 2012-09-18 2014-03-20 Tommaso Cucinotta Collaborative Uses of a Cloud Computing Confidential Domain of Execution
US9124433B2 (en) * 2012-12-28 2015-09-01 Vasco Data Security, Inc. 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
US9319835B2 (en) * 2013-09-19 2016-04-19 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 (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
KR100888075B1 (ko) * 2008-04-28 2009-03-11 인하대학교 산학협력단 개인별 대칭키를 이용한 멀티캐스트를 위한 암호화 및복호화 시스템
US20140013106A1 (en) * 2012-07-03 2014-01-09 International Business Machines Corporation Issuing, presenting and challenging mobile device identification documents

Also Published As

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

Similar Documents

Publication Publication Date Title
KR101894232B1 (ko) 클라우드-보조 암호화를 위한 방법 및 장치
US9674182B2 (en) Systems and methods for distributed trust computing and key management
CN109074449B (zh) 在安全飞地中灵活地供应证明密钥
CN110492990B (zh) 区块链场景下的私钥管理方法、装置及***
US10601590B1 (en) Secure secrets in hardware security module for use by protected function in trusted execution environment
US9118639B2 (en) Trusted data processing in the public cloud
US20170214664A1 (en) Secure connections for low power devices
US20160197894A1 (en) Method of generating a deniable encrypted communications via password entry
US10230697B2 (en) User terminals, and methods and computer-readable recording mediums storing computer programs for transmitting and receiving messages
WO2020042822A1 (zh) 密码运算、创建工作密钥的方法、密码服务平台及设备
EP3299990A1 (en) Electronic device server and method for communicating with server
Pradeep et al. An efficient framework for sharing a file in a secure manner using asymmetric key distribution management in cloud environment
US10887085B2 (en) System and method for controlling usage of cryptographic keys
US20160197895A1 (en) Method of deniable encrypted communications
TW202031010A (zh) 資料儲存方法、裝置及設備
KR102266654B1 (ko) Mqtt-sn 프로토콜의 보안을 위한 mqtt-sn 보안 관리 방법 및 시스템
EP3720042B1 (en) Method and device for determining trust state of tpm, and storage medium
US11290277B2 (en) Data processing system
EP3149883B1 (en) Management of cryptographic keys
KR101680536B1 (ko) 기업용 모바일 업무데이터 보안 서비스 방법 및 그 시스템
WO2014140922A2 (en) Secure key distribution for multi-application tokens
US11032708B2 (en) Securing public WLAN hotspot network access
Malik et al. Cloud computing security improvement using Diffie Hellman and AES
CN117879819B (zh) 密钥管理方法、装置、存储介质、设备及算力服务***
US20210143983A1 (en) Hybrid Content Protection Architecture

Legal Events

Date Code Title Description
A201 Request for examination
E902 Notification of reason for refusal
E701 Decision to grant or registration of patent right
GRNT Written decision to grant