KR20230110287A - 하드웨어 보안 모듈들의 원격 관리 - Google Patents

하드웨어 보안 모듈들의 원격 관리 Download PDF

Info

Publication number
KR20230110287A
KR20230110287A KR1020237019419A KR20237019419A KR20230110287A KR 20230110287 A KR20230110287 A KR 20230110287A KR 1020237019419 A KR1020237019419 A KR 1020237019419A KR 20237019419 A KR20237019419 A KR 20237019419A KR 20230110287 A KR20230110287 A KR 20230110287A
Authority
KR
South Korea
Prior art keywords
key
encrypted
mobile device
hsm
decrypted
Prior art date
Application number
KR1020237019419A
Other languages
English (en)
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 KR20230110287A publication Critical patent/KR20230110287A/ko

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/04Key management, e.g. using generic bootstrapping architecture [GBA]
    • H04W12/047Key management, e.g. using generic bootstrapping architecture [GBA] without using a trusted network node as an anchor
    • H04W12/0471Key exchange
    • 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/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/085Secret sharing or secret splitting, e.g. threshold schemes
    • 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/0894Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage
    • H04L9/0897Escrow, recovery or storing of secret information, e.g. secret key escrow or cryptographic key storage involving additional devices, e.g. trusted platform module [TPM], smartcard or USB
    • 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/321Cryptographic 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 a third party or a trusted authority
    • 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/3247Cryptographic 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 digital signatures
    • 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/3263Cryptographic 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 certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements
    • H04L9/3268Cryptographic 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 certificates, e.g. public key certificate [PKC] or attribute certificate [AC]; Public key infrastructure [PKI] arrangements using certificate validation, registration, distribution or revocation, e.g. certificate revocation list [CRL]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/10Integrity
    • H04W12/108Source integrity

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Mobile Radio Communication Systems (AREA)
  • Storage Device Security (AREA)
  • Communication Control (AREA)
  • Selective Calling Equipment (AREA)

Abstract

하드웨어 보안 모듈들의 원격 관리(REMOTE MANAGEMENT OF HARDWARE SECURITY MODULES)
하드웨어 보안 모듈들(HSM들)의 원격 관리를 위한 컴퓨터-구현 방법은 모바일 디바이스로부터 명령 요청을 수신하는 단계를 포함한다. 상기 명령 요청은 암호화된 키 부분과 암호화된 서명 키를 포함한다. 상기 HSM은 상기 모바일 디바이스의 보안 영역과 연관된 키를 사용하여 상기 명령 요청을 해독한다. 상기 HSM은 상기 암호화된 키 부분과 상기 암호화된 서명 키를 해독한다. 상기 암호화된 키 부분과 상기 암호화된 서명 키를 해독하는 단계는 상기 모바일 디바이스의 보안 영역과 연관된 키 및 상기 모바일 디바이스와 연관된 원격 관리자와 연관된 키를 사용하는 단계를 포함한다. 타겟 HSM이 있는 도메인에 대한 명령이 생성된다. 상기 명령은 상기 해독된 키 부분과 상기 해독된 서명 키를 사용하여 생성된다. 상기 명령은 상기 타겟 HSM에 의한 실행을 위해 상기 도메인으로 전송된다. 다양한 다른 방법들, 시스템들, 및 컴퓨터-판독 가능 매체들도 또한 개시된다.

Description

하드웨어 보안 모듈들의 원격 관리
[0001] 본 발명은 일반적으로 암호화(cryptography)에 관한 것으로, 특히 하드웨어 보안 모듈들의 원격 관리(remote management of hardware security modules)에 관한 것이다.
[0002] 컴퓨팅 시스템들은 다양한 데이터 보안 조치들을 이용하여 무단 액세스(unauthorized access)로부터 데이터를 보호할 수 있다. 예를 들어, 하드웨어 보안 모듈(HSM)은, 디지털 서명들을 위한 암호화 및 해독 기능들, 강력한 인증(strong authentication), 및 기타 암호화 기능들을 포함하는, 암호화 키들을 보호하고 관리하기 위한 암호화 기능들을 제공하는 컴퓨팅 디바이스 및 관련 소프트웨어이다. HSM은 물리적 플러그-인 카드들(physical plug-in cards) 또는 보안 컴퓨팅 디바이스들 또는 네트워크 서버에 직접 연결되거나 부착된 외부 컴퓨팅 디바이스들의 형태일 수 있다.
[0003] HSM 관리 솔루션들에 대한 기존 기술들은 데이터 보호를 보장하기 위해 이중 제어 및 기타 보안 기술들을 이용한다. 예를 들어, HSM 관리 솔루션들은 물리적 보안 공간에서 HSM이 동시에 조립할 수 있도록 마스터 키의 키 부분들(key parts)을 포함하는 스마트 카드들을 보유하고 HSM들을 구성하기 위해 그들 각각의 키 부분들을 포함하는 스마트 카드들을 시스템에 제공하는 여러 관리자들을 요구할 수 있다. 그러나, 관리자들이 동일한 물리적 보안 공간에 동시에 모일 수 없는 상황에서, HSM 관리는 비실용적이며 필요한 프로세스들을 방해할 수 있다. 예를 들어, 한 명 혹은 그 이상의 관리자들이 각각의 키 부분이 포함된 스마트 카드를 제시하기 위해 동일 물리적 공간에 있을 수 없는 경우, 마스터 키를 형성하는 데 필요한 모든 키 부분들이 없기 때문에 HSM을 구성할 수 없다. 모든 사람이 집에서 일해야 하거나, 한 명 혹은 그 이상의 관리자들이 물리적으로 보안 공간으로 이동할 수 없거나, 필요한 모든 관리자들이 물리적으로 보안 공간에 있는 것을 방해하는 기타 유사한 장애물이 있는 경우 이러한 상황이 발생할 수 있다.
[0004] HSM들을 원격으로 관리하는 기존 기술은 원격 관리자들에게 필요한 공유 암호들과 적법한 원격 관리자로부터의 요청에 대한 신뢰성을 둘러싼 보안에 대한 우려를 불러일으켰다. 공유 암호들은, 보안 통신에서, 관련된 당사자들에게만 알려진 데이터 조각이다. 시스템의 원격 관리자들은 보안 환경 외부에서 HSM을 관리하기 위해 공유 암호들을 이용해야 한다. HSM 관리를 위한 기존 기술들에서 비롯된 한 가지 보안 문제는 어떻게 원격 관리자로부터 공유 암호들을 안전하게 전송받고 전송할 것인가 하는 문제이다. 일부 예들에서, 모바일 디바이스와 서버 간의 연결이 손상될 수 있고 권한 없는 사용자들이 공유 암호들을 가로채서, 공유 암호의 보안을 손상시킬 수 있다.
[0005] 일부 기존 HSM 관리 솔루션들은 보안 환경 외부에서 공유 암호(a shared secret)가 생성되게 할 수 있다. 일부 경우들에서, HSM 관리 시스템은 최종-사용자들 또는 원격 관리자들이 자신의 ID 또는 모바일 디바이스에 관한 정보를 사용하여 자신의 공유 암호들을 생성하도록 허용한다. 원격 관리자에 의해 보안 환경 외부에서 생성된 공유 암호는 만일 공격자가 공유 암호(예: 사용자 ID, 모바일 디바이스 정보, 등)을 생성하는데 이용된 정보를 액세스하여 암호해독 할 수 있거나 공유 암호를 획득할 수 있다면 악용에 취약할 수 있다. 그러한 시스템들은 만일 공격자가 사용자에 관한 충분한 정보를 수집했거나 사용자의 디바이스에 대한 액세스할 수 있다면 위험에 처할 수 있고, 이로 인해 시스템이 공격에 취약해질 수 있다.
[0006] 일부 기존 HSM 관리 솔루션들에서, 공유 암호들은 원격 관리자에 의해 유지될 때 보안 환경 외부에서 충분히 보호되지 않을 수 있다. 예를 들어, 공유 암호는 모바일 디바이스에 의해 암호화되지 않을 수 있고 그리고 암호화되지 않은 상태로 모바일 디바이스에 저장될 수 있다. 만일 권한이 없는 사용자가 모바일 디바이스에 액세스하면, 보호되지 않은 공유 암호를 획득할 수 있고, 따라서, 시스템이 권한이 없는 사용자의 액세스에 취약해질 수 있다.
[0007] 일부 기존 HSM 관리 솔루션들에서, 원격 관리자로부터 수신된 관리 요청들이 유효하지 않거나 인증되지 않을 수 있다. 공격자는 원격 관리자 모르게 원격 관리자에 의해 제어되는 디바이스를 복제(clone)하거나 디바이스에 액세스하여 시스템에 액세스를 시도할 수 있다. 그러한 요청들은 유효하거나 인증된 것처럼 보일 수 있으며 권한이 없는 사용자에게 시스템에 대한 액세스 권한을 제공할 수 있다.
[0008] 본 발명의 실시예들은 하드웨어 보안 모듈들(HSMs)을 원격으로 관리하는 것에 관한 것이다. 본 발명의 일 실시예에 따르면, 컴퓨터 구현 방법이 제공되며, 상기 컴퓨터-구현 방법은 모바일 디바이스로부터 명령 요청을, 컴퓨팅 디바이스의 프로세서에 의해, 수신하는 단계를 포함하고, 상기 명령 요청은 암호화된 키 부분 및 암호화된 서명 키를 포함한다. HSM은 상기 모바일 디바이스의 보안 영역(a security zone)과 관련된 키를 사용하여 상기 명령 요청을 해독한다, 상기 HSM은 해독된 키 부분 및 해독된 서명 키를 생성하기 위해 상기 암호화된 키 부분 및 상기 암호화된 서명 키를 해독한다. 상기 암호화된 키 부분 및 상기 암호화된 서명 키를 해독하는 단계는 상기 모바일 디바이스의 보안 영역과 연관된 키 및 상기 모바일 디바이스와 연관된 원격 관리자와 연관된 키를 사용하는 단계를 포함한다. 명령이 타겟 HSM이 있는 도메인(a domain)에 대해 그리고 상기 명령 요청에 기초하여 생성된다. 상기 명령이 상기 해독된 키 부분과 상기 해독된 서명 키를 사용하여 생성된다. 상기 명령은 상기 타겟 HSM에 의한 실행을 위해 상기 도메인으로 전송된다.
[0009] 본 발명의 다른 실시예에 따르면, HSM들을 원격으로 관리하는 시스템이 제공된다. 상기 시스템의 비제한적인 예는 컴퓨터 판독 가능 명령들을 포함하는 메모리를 포함하고 상기 컴퓨터 판독 가능 명령들을 실행하기 위한 하나 혹은 그 이상의 프로세서들을 포함한다. 상기 컴퓨터 판독 가능 명령들은 상기 방법을 구현한다.
[0010] 본 발명의 또 다른 실시예에 따르면, HSM들을 원격으로 관리하는 컴퓨터 프로그램 제품이 제공되며, 상기 컴퓨터 프로그램 제품은 프로그램 명령들이 구현된 컴퓨터-판독가능 스토리지 매체를 포함한다. 상기 프로그램 명령들은 프로세서에 의해 실행 가능하며, 상기 프로세서가 상기 방법을 수행하게 한다.
[0011] 따라서, 유리하게도, 본 발명의 하나 또는 그 이상의 실시예들은 HSM들을 원격으로 관리하는 데 사용되는 공유 비밀들을 안전하게 관리한다. 이를 통해 원격 관리자는 공유 비밀을 보호하면서 한 위치에 모일 필요 없이 HSM 관리를 수행할 수 있다.
[0012] 바람직하게도, 본 발명은 방법을 제공하며, 상기 명령 요청은 상기 원격 관리자와 연관된 암호화된 로그온 키(an encrypted logon key)를 더 포함하고, 상기 컴퓨터-구현 방법은 해독된 로그온 키를 생성하기 위해 상기 암호화된 로그온 키를 상기 HSM에 의해 해독하는 단계를 더 포함할 수 있다. 상기 암호화된 로그온 키를 해독하는 단계는 상기 모바일 디바이스의 보안 영역과 연관된 키 및 상기 모바일 디바이스와 연관된 원격 관리자와 연관된 키를 사용하는 단계를 포함한다. 상기 해독된 로그온 키를 상기 명령과 함께 상기 도메인으로 전송될 수 있다. 따라서, 유리하게도 상기 로그온 키는 상기 명령과 함께 상기 도메인으로 전송될 수 있다.
[0013] 바람직하게도, 본 발명은 방법을 제공하며, 제2 모바일 디바이스로부터 제2 명령 요청이 수신될 수 있다. 상기 제2 명령 요청은 제2 암호화된 키 부분 및 제2 암호화된 서명 키를 포함할 수 있다. 상기 HSM은 상기 모바일 디바이스의 보안 영역과 연관된 키를 사용하여 상기 제2 명령 요청을 해독한다. 상기 HSM은 제2 해독된 키 부분 및 제2 해독된 서명 키를 생성하기 위해 상기 제2 암호화 키 부분 및 상기 제2 암호화 서명 키를 해독한다. 상기 제2 암호화된 키 부분 및 상기 제2 암호화된 서명 키를 해독하는 단계는 상기 보안 영역과 연관된 키 및 상기 제2 모바일 디바이스와 연관된 다른 원격 관리자와 연관된 다른 키를 사용하는 단계를 포함한다. 제2 명령은 상기 제2 해독된 키 부분 및 상기 제2 해독된 서명 키를 사용하여 상기 타겟 HSM이 있는 도메인에 대해 생성될 수 있다. 상기 제2 명령을 상기 도메인에 전송될 수 있다. 따라서, 바람직하게도 서로 다른 키 부분들을 가진 여러 원격 관리자들이 한 위치에 모일 필요 없이 HSM을 원격으로 관리하면서 공유 비밀을 보호할 수 있다.
[0014] 바람직하게도, 본 발명은 방법을 제공하며, 상기 해독된 키 부분 및 상기 제2 해독된 키 부분은 상기 도메인의 상기 타겟 HSM과 연관된 마스터 키의 일부이다. 따라서, 유리하게도 HSM들은 HSM에 대한 마스터 키의 일부인 다른 키 부분들을 사용하는 다른 관리자들에 의한 이중 제어들을 사용하여 관리될 수 있다.
[0015] 바람직하게도, 본 발명은 방법을 제공하며, 상기 모바일 디바이스는 상기 보안 영역에 상기 모바일 디바이스를 등록함으로써 그리고 상기 모바일 디바이스를 상기 원격 관리자와 연관시킴으로써 제공될 수 있다(provisioned). 따라서, 유리하게도 HSM들을 원격으로 관리하는 데 사용되는 상기 모바일 디바이스는 상기 시스템에 의해서 사용되는 공유 비밀들의 보호를 보장하도록 구성된다.
[0016] 바람직하게도, 본 발명은 방법을 제공하며, 상기 타겟 HSM에 의한 실행을 위해 상기 명령을 상기 도메인에 전송하기 전에 상기 해독된 서명 키를 사용하여 상기 명령이 서명될 수 있다. 따라서, 유리하게도 HSM을 원격으로 관리하는 상기 명령은 상기 도메인으로 전송하는 동안 보안의 추가 계층에 의해 보호된다.
[0017] 바람직하게도, 본 발명은 방법을 제공하며, 상기 도메인으로부터 수신된 결과들에 기초하여 상기 모바일 디바이스에 메시지가 전송될 수 있다. 따라서, 유익하게도, 상기 원격 관리자는 상기 도메인으로부터 수신된 명령의 결과들로 업데이트된다.
[0018] 본 발명의 또 다른 실시예에 따르면, 컴퓨터 구현 방법이 제공되며, 상기 컴퓨터-구현 방법은 원격으로 HSM들을 관리하는 것에 관한 것이다. 상기 컴퓨터-구현 방법의 비-제한적인 예는 암호화된 키 부분 및 암호화된 서명 키를 포함하는 로드 키 요청(a load key request)을, 원격 관리자와 연관된 모바일 디바이스로부터, 컴퓨팅 디바이스의 프로세서에 의해, 수신하는 단계를 포함한다. 상기 모바일 디바이스로부터 상기 로드 키 요청이 검증될 수 있다(validated). 해독된 키 부분 및 해독된 서명 키를 생성하기 위해 상기 암호화된 키 부분 및 상기 암호화된 서명 키가 해독될 수 있다. 상기 암호화된 키 부분 및 상기 암호화된 서명 키를 해독하는 단계는 보안 영역(a security zone)에 대한 인증 기관(CA) 인증서(a certificate authority (CA) certificate)의 공개 키(a public key)에 대응하는 개인 키(a private key)와 상기 원격 관리자 프로파일의 CA 인증서의 공개 키에 대응하는 개인 키를 사용하는 단계를 포함할 수 있다. 상기 로드 키 요청에 의해 지정된 도메인에 대한 로드 키 명령이 구축될 수 있다(built). 상기 로드 키 명령은 상기 해독된 키 부분을 포함할 수 있고 상기 해독된 서명 키를 사용하여 서명된다. 상기 도메인의 타겟 하드웨어 보안 모듈(HSM)에 의한 실행을 위해 상기 로드 키 명령이 상기 도메인으로 전송될 수 있다.
[0019] 따라서, 유리하게도, 본 발명의 하나 또는 그 이상의 실시예들은 HSM들을 원격으로 관리하는 데 사용되는 공유 비밀들을 안전하게 관리한다. 이를 통해 원격 관리자는 공유 비밀을 보호하면서 한 위치에 모일 필요 없이 HSM 관리를 수행할 수 있다.
[0020] 바람직하게도, 본 발명은 컴퓨터-구현 방법을 제공하며, 상기 로드 키 요청은 상기 보안 영역에 대한 CA 인증서의 공개 키를 사용하여 암호화되고 상기 로드 키 요청을 검증하는 단계는 상기 보안 영역에 대한 CA 인증서의 공개 키에 대응하는 개인 키를 사용하여 상기 로드 키 요청을 해독하는 단계를 포함한다. 따라서, 바람직하게도 상기 로드 키 요청은 상기 요청을 시스템으로 전송하는 동안 공유 비밀이 보호되는 것을 보장하기 위해 상기 모바일 디바이스에 의해 암호화된다.
[0021] 본 발명의 또 다른 실시예에 따르면, 컴퓨터 구현 방법이 제공되며, 상기 컴퓨터-구현 방법은 원격으로 HSM들을 관리하는 것에 관한 것이다. 상기 컴퓨터-구현 방법의 비-제한적인 예는 암호화된 키 부분 및 암호화된 서명 키를 포함하는 암호화된 하드웨어 보안 모듈(HSM) 명령 요청을, 원격 관리자와 연관된 모바일 디바이스로부터 보안 컴퓨팅 디바이스의 프로세서에 의해, 수신하는 단계를 포함할 수 있다. 상기 모바일 디바이스로부터 상기 암호화된 HSM 명령 요청은 해독될 수 있다. 상기 보안 컴퓨팅 디바이스의 HSM은 해독된 키 부분 및 해독된 서명 키를 생성하기 위해 상기 암호화된 키 부분 및 상기 암호화된 서명 키를 해독한다. 지정된 도메인(a domain)에 대해 상기 암호화된 HSM 명령 요청에 대응하는 HSM 명령이 상기 해독된 키 부분과 상기 해독된 서명 키에 적어도 부분적으로 기초하여 생성될 수 있다. 상기 HSM 명령은 상기 지정된 도메인의 타겟 HSM에 의한 실행을 위해 상기 지정된 도메인으로 전송될 수 있다.
[0022] 따라서, 유리하게도, 본 발명의 하나 또는 그 이상의 실시예들은 HSM들을 원격으로 관리하는 데 사용되는 공유 비밀들을 안전하게 관리한다. 이를 통해 원격 관리자는 공유 비밀을 보호하면서 한 위치에 모일 필요 없이 HSM 관리를 수행할 수 있다.
[0023] 바람직하게도, 본 발명은 컴퓨터-구현 방법을 제공하며, 상기 로드 키 요청은 상기 보안 영역에 대한 CA 인증서의 공개 키를 사용하여 암호화되고 상기 로드 키 요청을 검증하는 단계는 상기 보안 영역에 대한 CA 인증서의 공개 키에 대응하는 개인 키를 사용하여 상기 로드 키 요청을 해독하는 단계를 포함한다. 따라서, 바람직하게도 상기 로드 키 요청은 상기 요청을 시스템으로 전송하는 동안 공유 비밀이 보호되는 것을 보장하기 위해 상기 모바일 디바이스에 의해 암호화된다.
[0024] 바람직하게도, 본 발명은 컴퓨터-구현 방법을 제공하며, 상기 지정된 도메인으로부터 수신된 결과들에 기초하여 상기 모바일 디바이스로 메시지가 전송될 수 있다. 따라서, 유익하게도, 상기 원격 관리자는 상기 도메인으로부터 수신된 명령의 결과들로 업데이트된다.
[0025] 추가적인 기술적 특징들 및 이점들은 본 발명의 기술들을 통해 실현된다. 본 발명의 실시예들 및 특징들은 본 명세서에서 상세히 설명되며 청구항의 일부로 간주된다. 이해를 돕기 위해, 상세한 설명과 도면들을 참고한다.
[0026] 본 명세서에 기술된 배타적 권리들의 세부사항들은 명세서의 끝 부분에 있는 청구항들에서 특별히 지적되고 명백하게 주장된다. 본 발명의 실시예들의 앞서 언급한 것 및 기타 특징들 및 장점들은 첨부된 도면들과 함께 취해진 다음의 상세한 설명으로부터 명백하다:
[0027] 도 1은 하나 혹은 그 이상의 예시적인 실시예들에 따른, 하드웨어 보안 모듈들의 원격 관리를 위한 모바일 디바이스 제공을 도시하는 개략도이다.
[0028] 도 2는 하나 혹은 그 이상의 예시적인 실시예들에 따른 하드웨어 보안 모듈들의 원격 관리를 나타내는 개략도이다.
[0029] 도 3은 하나 혹은 그 이상의 예시적인 실시예들에 따라 하드웨어 보안 모듈의 원격 관리를 위해 모바일 디바이스들을 제공하기 위한 예시적인 방법의 프로세스 플로 다이어그램이다.
[0030] 도 4는 하나 혹은 그 이상의 예시적인 실시예들에 따라 모바일 디바이스에 의한 하드웨어 보안 모듈들의 원격 관리를 위한 예시적인 방법의 프로세스 플로 다이어그램이다.
[0031] 도 5는 하나 혹은 그 이상의 예시적인 실시예들에 따른 보안 서버에 의한 하드웨어 보안 모듈들의 원격 관리를 위한 예시적인 방법의 프로세스 플로 다이어그램이다.
[0032] 도 6은 본 발명의 하나 혹은 그 이상의 실시예들에 따른 컴퓨터 시스템이다.
[0033] 여기에 묘사된 다이어그램들은 예시이다. 본 발명의 범위를 벗어나지 않고 도면에 설명된 동작들 또는 다이어그램들에 많은 변형들이 있을 수 있다. 예를 들어, 작업들을 다른 순서로 수행하거나 작업들을 추가, 삭제 또는 수정할 수 있다. 또한, "결합된"이라는 용어 및 그 변형은 2개의 요소들 사이에 통신 경로를 갖는 것을 설명하며 엘리멘트들 사이에 중간 엘리멘트들/연결이 없는 엘리멘트들 사이의 직접 연결을 의미하지 않는다. 이러한 모든 변형들은 사양의 일부로 간주된다.
[0034] 본 발명의 예시적인 실시예들은, 무엇보다도, 하드웨어 보안 모듈들(HSM들)의 원격 관리를 위한 시스템들, 방법들, 컴퓨터-판독 가능 매체, 기술들, 및 방법론들에 관한 것이다. HSM들을 원격으로 관리하기 위한 기존의 접근 방식들은 원격 관리자들이 필요로 하는 공유 암호들의 보안과 원격 관리자의 요청에 대한 신뢰성에 대한 우려를 제기한다. HSM들 관리를 위한 기존 기술들은 일반적으로 관리자들이 동일한 물리적 공간에 동시에 모여 HSM들을 준수-수준 관리 기술들(compliant-level management techniques)을 사용하여 관리해야 하는 표준들 및 규정들을 준수하도록 요구한다. 그러나, 그러한 기술들은 관리자들이 물리적으로 단일 위치에 모일 수 없는 상황들에서는 비실용적이다.
[0035] 본 발명의 하나 혹은 그 이상의 실시예들은 원격 HSM들 관리에 관한 것으로, 원격 HSM들 관리에서 HSM들을 위한 마스터 키들은 키 부분들(key parts)로 분리되어, 보호된 스토리지에 저장되며, 보호된 환경에서 안전하게 다른 원격 관리자들에게 배포된다. 관리자들은 동일한 물리적 보안 공간에서 물리적으로 조립하지 않고도 이중 제어 요구사항들을 준수하면서 원격으로 HSM들을 관리할 수 있다. 공유 암호들은 인증된 관리자들로부터 요청들이 유입되고 모바일 디바이스들이 손상되지 않았는지 않았음을 보장하도록 시스템으로부터 관리자들에 의해 수신된 요청들이 인증되는 것을 보장하면서 안전하게 배포된다.
[0036] 일부 실시예들에서, 보안 서버와 같은, 보안 디바이스는, 보안 환경에 위치한다. 보안 환경은, 원격 HSM 관리를 지원하는 데 사용되는 보안 디바이스가 있는, 액세스가 제한된 건물의 안전한 방이나 플로와 같은, 안전한 위치이다. 보안 디바이스는, 웹 애플리케이션과 같은, 애플리케이션을 실행하여 원격 HSM 관리를 위해 보안 환경 외부에 있는 원격 모바일 디바이스들과 통신한다. 스마트폰들과 같은, 모바일 디바이스들은, 안전한 환경에서 제공된다(provisioned). 모바일 디바이스들은 보안 영역(a security zone)에 등록되고 원격 관리자에게 할당된다. HSM 관리에 사용되는 공유 암호들은 보안 환경에 있는 동안 제공된 모바일 디바이스에 로드된다. 공유 암호들에는 지정된 HSM에서 사용하는 마스터 키의 컴포넌트인 키 부분들이 포함될 수 있다. 공유 암호들은 모바일 디바이스로 전송되기 전에 보안 환경에서 암호화될 수 있으며, 이는 모바일 디바이스의 보안이 구성된 경우 모바일 디바이스의 공유 암호들이 안전하고 디바이스의 사용자나 다른 사람이 암호를 해독할 수 없다는 것을 보장한다.
[0037] 원격 관리자들은 원격 HSM 관리를 위해 보안 환경 외부에서 모바일 디바이스들을 사용할 수 있다. 예를 들어, 보안 환경 외부에 있는 동안, 원격 관리자는 모바일 디바이스에서 애플리케이션을 열고, 다단계-인증(multi-factor authentication)을 사용하는 등의 방법으로, 자신을 인증할 수 있다. 원격 관리자는 구성할 HSM들 목록에서 HSM을 선택하고 지정된 도메인(a designated domain)의 타겟 HSM에서 실행할 명령을 선택한다. 원격 관리자는, 이전에 보안 환경에서 암호화된, 키 부분 및/또는 서명 키와 같은, 필요한 공유 암호들(예: 제공(provisioning) 동안 모바일 디바이스에 로드됨)을 선택한다. 애플리케이션은 원격 관리자의 선택들을 사용하여 요청을 작성하고 원격 관리자의 인증 기관(CA) 인증서(certificate authority (CA) certificate)에 있는 공개 키로 요청을 암호화한다. 암호화된 요청은 보안 환경의 보안 디바이스로 전송된다.
[0038] 보안 디바이스는 원격 관리자들의 모바일 디바이스에서 암호화된 요청들을 수신한다. 보안 디바이스는 원격 관리자의 모바일 디바이스들로부터 수신된 각각의 요청들의 정보를 사용하여 상기 요청들의 유효성을 검증하고 HSM 명령들을 구축한다. 각 HSM 명령은 각 요청으로부터 획득된 서명 키를 사용하여 서명되고 상기 각 요청에 의해 지정된 도메인으로 전송된다. 상기 명령은 상기 지정된 도메인의 타겟 HSM에 의해 실행된다. 상기 타겟 HSM은 지정된 모든 원격 관리자들로부터 요청들을 수신하고 수집된 키 부분들을 사용하여 마스터 키가 형성될 때까지 각 원격 관리자들로부터의 키 부분들을 조립할 수 있다(assemble). 상기 HSM 명령은 상기 마스터 키 완료 시 타겟 HSM에 의해 실행된다. 타겟 HSM에 의해서 실행된 명령의 결과들은 보안 디바이스로 다시 전송된다. 보안 디바이스는 상기 도메인으로부터 수신된 결과들을 나타내는 메시지를 생성하여 모바일 디바이스로 전송할 수 있다. 여기에 설명된 시스템들 및 방법들은 이중 제어와 같은 준수-수준 관리 기술들을 사용하여 다양한 표준들 및 규정들을 준수하면서 원격으로 HSM들을 관리하는 기능을 제공한다.
[0039] HSM 관리를 위한 기존 기술들에서 비롯된 보안 문제는 어떻게 원격 관리자와 공유 암호들을 안전하게 전송하고 전송받을 수 있는가 하는 문제이다. 일부 예들에서, 모바일 디바이스와 서버 간의 연결이 손상될 수 있고 의도하지 않은 수신자들이 공유 암호를 가로채서, 공유 암호들의 보안을 손상시킬 수 있다. 본 발명의 하나 혹은 그 이상의 실시예들은 보안 환경에 위치한 보안 디바이스의 HSM에 의한 공유 암호들의 생성을 용이하게 한다. 공유 암호는 이중으로 암호화될 수 있다. 예를 들어, 키 부분과 같은, 공유 암호는, 모바일 디바이스의 보안 영역을 위한 공유 암호를 사용하여 암호화될 수 있고 특정 원격 관리자와 연관된 공유 암호를 사용하여 암호화될 수 있다. 이중으로 암호화된 공유 암호는 HSM들의 원격 관리를 위해 원격 관리자에 의해 사용되는 제공된 모바일 디바이스에 로드될 수 있다. 보안 환경에서 HSM에 의해 생성된 이중으로 암호화된 공유 암호는 보안 환경 외부에 있는 동안은 절대 해독되지 않는다. 원격 관리자가 HSM을 원격으로 관리할 때, 그들은 이중으로 암호화된 공유 암호를 선택하여 보안 디바이스로 전송되는 명령 요청에 포함할 수 있다. 따라서, 이중으로 암호화된 공유 암호가 가로채이더라도, 그 것을 전송한 모바일 디바이스가 보안 위치에서의 보안 디바이스에 의해 적절하게 검증되지 않는 한 HSM들을 원격으로 관리하기 위해 권한이 없는 사용자에 의해 그 것이 암호 해독되거나 사용될 수 없다.
[0040] 일부 기존 HSM 관리 솔루션들은 보안 환경 외부에서 공유 암호가 생성되게 할 수 있다. HSM 관리 시스템들은 최종-사용자들이 자신의 ID 또는 모바일 디바이스에 대한 정보를 사용하여 공유 암호들을 생성하도록 할 수 있다. 원격 관리자에 의해 보안 환경 외부에서 생성된 공유 암호는 공격자가 공유 암호를 생성하고 해독하기 위해 사용된 정보에 액세스하거나 공유 암호를 획득할 수 있는 경우 악용에 취약할 수 있다. 본 발명의 하나 혹은 그 이상의 실시예들은 보안 디바이스 및 연관된 HSM에 의해 보안 환경에서 생성되고 암호화되는 이중 암호화된 공유 암호들의 사용을 용이하게 한다. 공유 암호들은 보안 환경 외부에서 해독되지 않으며 모바일 디바이스에 해독된 상태로 저장되지 않는다. 따라서, 보안 디바이스의 HSM에 의해 생성된 공유 암호는 이중으로 암호화되고 모바일 디바이스에 로드될 때 보안 환경 외부에서 보호되며 HSM 원격 관리를 위한 HSM들 명령 요청의 일부로 모바일 디바이스에서 보안 디바이스로 다시 전송될 때 추가로 암호화되므로, 그 결과 기존 HSM 관리 솔루션들의 취약점을 제거한다.
[0041] 다음은, 도 1 및 2를 참조하여, HSM들의 원격 관리를 위한 예시 시스템들에 대한 자세한 설명을 제공한다. 대응하는 컴퓨터-구현 방법들에 대한 자세한 설명들은 도 3-5와 관련하여 제공된다. 또한, 여기에 설명된 하나 혹은 그 이상의 실시예들을 구현하기 위한 예시적인 컴퓨팅 시스템 및 네트워크 아키텍처의 상세한 설명은 도 6과 관련하여 제공될 것이다.
[0042] 도 1은 HSM들을 원격으로 관리하기 위한 모바일 디바이스 제공을 위한 예시적인 시스템(100)의 블록도이다. 이 도면에 도시된 바와 같이, 예시적인 시스템(100)은 하나 혹은 그 이상의 작업들을 수행하기 위한 하나 혹은 그 이상의 모듈들을 포함할 수 있다. 아래에서 더 자세히 설명되는 바와 같이, 모듈들은 보안 서버(130)의 HSM 관리 모듈(135) 및/또는 각각의 모바일 디바이스들(110A, 110B, 110C)의 애플리케이션(115A, 115B, 115C)을 포함할 수 있다. 분리된 엘리멘트들로 예시되어 있지만, 도 1의 하나 혹은 그 이상의 모듈들은 단일 모듈 또는 애플리케이션의 일부들을 나타낼 수 있다.
[0043] 이제 도 1을 참조하면, 본 발명의 예시적인 실시예들에 따라 구성된 시스템(100)은 보안 환경(105)을 포함한다. 보안 서버(130)는 보안 환경(105)에 위치할 수 있다. 보안 환경(105)은, 조직 또는 주체의 건물 내 보안실 또는 층과 같은, 보안 위치일 수 있다. 보안 환경(105)은 제한된 또는 제한된 액세스를 가질 수 있다. 도 1의 실시예에 도시된 바와 같이, 보안 서버(130)는 HSM 관리 모듈(135) 및 HSM(140)을 포함한다. 본 발명의 하나 혹은 그 이상의 다른 실시예들에서, HSM(140)은 보안 서버(130)에 연결되거나 부착된다.
[0044] 일부 실시예들에서, 보안 서버(130)를 설정 또는 구성하는 단계는 하나 혹은 그 이상의 타겟 HSM들에 대한 경로들을 생성하는 HSM 관리 모듈(135)을 포함할 수 있다. HSM 관리 모듈(135)은, 웹 애플리케이션과 같은, 애플리케이션을 실행 및/또는 관리할 수 있고, 이 애플리케이션은 하나 혹은 그 이상의 타겟 HSM들을 원격으로 관리하기 위해 보안 환경(105) 외부로부터 제공되고 사용되는 모바일 디바이스들(예를 들어, 110A, 110B, 110C)과 통신하는 데 사용된다. 또한, 보안 서버(130)는 보안 영역(a security zone)에 등록될 수 있다. 보안 영역은 인증 기관(CA)에 의해서 지정되며 인증서를 발급 및/또는 관리하는 주체 또는 조직을 나타낼 수 있다. 일부 실시예들에서 CA 스마트 카드, CA 인증서, 등은 보안 영역을 정의할 수 있다. CA 인증서들은 디바이스들(예를 들어, 모바일 디바이스들 110A, 110B, 110C, 보안 서버 130, 등)을 암호화 방식으로 연결할 수 있다.
[0045] 일부 실시예들에서, HSM 관리 모듈(135)은 공유 암호들(120A, 120B, 120C, 120D)의 생성 및 관리를 용이하게 할 수 있다. HSM 관리 모듈(135)은 HSM(140)에 의한 공유 암호들(120A, 120B, 120C, 120D)의 생성 및 관리를 용이하게 할 수 있다. 공유 암호들(120A, 120B, 120C, 120D)의 예들은 원격 관리자 프로파일 로그온 키들(remote administrator profile logon keys), CCA 정상 모드 서명 키들(CCA normal mode signing keys), CCA PCI 모드 서명 키들, EP11 서명 키들, 및/또는 키 부분들을 포함할 수 있다. CCA 정상 모드 서명 키들은 PCI(결제 카드 산업) 제약조건들(payment card industry (PCI) constraints)에 종속되지 않는 비대칭 키들일 수 있다. CCA PCI 모드 서명 키들은 PCI 규칙을 준수하는 비대칭 키들일 수 있다. EP11 서명 키들은 암호화 토큰들에 대한 PKCS#11 공개 키 암호화 API 인터페이스를 준수하는 비대칭 키들일 수 있다. HSM 관리 모듈(135)은 타겟 HSM의 마스터 키를 다양한 키 부분들로 분할하기(splitting), 나누기(dividing), 또는 다른 방식으로 쪼개기(breaking down)하여 다양한 부분들을 다른 원격 관리자들에게 할당하는 것을 용이하게 할 수 있다.각각의 모바일 디바이스(110A, 110B, 110C)는 보안 영역을 정의하는 CA 인증서의 공개 키로 암호화될 수 있는 서로 다른 공유 암호들(120A, 120B, 120C)(예를 들어, 키 부품, 서명 키 등) 및 각각의 원격 관리자와 연관된 각각의 원격 관리자 프로파일의 각각의 공개 키를 갖는다. HSM 관리 모듈(135)은 HSM을 원격으로 관리하기 위해 모바일 디바이스들(110A, 110B, 110C)에 배포되는 암호화된 공유 암호들(120D)을 생성하고 저장할 수 있다.
[0046] 보안 서버(130)의 HSM 관리 모듈(135)은 공유 암호들(120D)을 준비할 수 있고 공유 암호들(120D)은 특정 원격 관리자에게 제공되고 할당된 후에 모바일 디바이스(110A, 110B, 110C)에 로드될 수 있다. HSM 관리 모듈(135)은 보안 영역을 정의하는 CA 인증서의 공개 키로 공유 암호들(120D)(예를 들어, 키 부분, 서명 키, 원격 관리자 로그온 키 등)을 암호화할 수 있다. HSM 관리 모듈(135)은 원격 관리자 프로파일의 인증서의 공개 키로 공유 암호들을 암호화할 수 있다. 일부 실시예들에서, HSM 관리 모듈(135)은 최대 다운로드 카운트를 설정할 수 있는데, 이는 일정 시간 기간 내에 모바일 디바이스(110A, 110B, 110C)에 대해 공유 암호들(120D)이 다운로드될 수 있는 횟수를 제한하기 위해서이다.
[0047] 모바일 디바이스들(110A, 110B, 110C)이 보안 환경(105)에 제공된다. 일부 실시예들에서, 각각의 모바일 디바이스는 보안 서버(130)에 직접 연결된다. 예를 들어, 모바일 디바이스(110A)는, 범용 직렬 버스(USB) 연결과 같은, 직접 연결(150)을 통해 보안 서버(130)에 연결될 수 있다. 일부 실시예들에서, 모바일 디바이스(110A)는 필요한 데이터가 있는 메모리 카드를 모바일 디바이스(110A)에 설치함으로써, 블루투스TM 또는 근거리 무선 통신(NFC) 또는 이와 유사한 기술과 같은, 단거리 무선 기술을 사용하여, 모바일 디바이스(110A)에 의해 QR 코드를 스캐닝함으로써, 제공될 수 있다.
[0048] 일부 실시예들에서, 모바일 디바이스(110A)는 보안 영역에 등록된다. 모바일 디바이스(110A)는 보안 영역을 정의하는 CA 인증서를 다운로드함으로써 보안 영역에 등록될 수 있다. 보안 영역은 CA 인증서들을 관리 및/또는 발급하는 주체 또는 조직과 디바이스의 제휴(an affiliation of a device)를 나타낸다. 모바일 디바이스(110A)는 원격 관리자에게 할당될 수 있다. 일부 실시예들에서, 모바일 디바이스(110A)가 원격 관리자에게 할당되는데, 보안 서버(130)의 HSM(140)에 저장된 원격 관리자 프로필 인증서의 공개 키일 수 있는, 원격 관리자 프로필 로그온 키 공유 암호를 모바일 디바이스(110A)에 로드함으로써 할당된다.
[0049] 일부 실시예들에서, 제공된 모바일 디바이스(110A, 110B, 110C)에 설치하기 위한 애플리케이션(115A, 115B, 115C)은 보안 서버(130)에 저장되고 제공(provisioning) 동안 모바일 디바이스(110A, 110B, 110C)로 전송될 수 있다. 일부 실시예들에서, 애플리케이션(115A, 115B, 115C)은, 앱 스토어 또는 앱 마켓플레이스와 같은, 애플리케이션 배포 플랫폼으로부터 다운로드가 가능할 수 있다. 애플리케이션(115A, 115B, 115C)은 보안 서버(130)에 대한 보안 연결을 설정하도록 모바일 디바이스(110A, 110B, 110C)에 의해 사용될 수 있으며, 이는 하나 혹은 그 이상의 HSM들을 원격으로 관리하기 위해 보안 서버(130)와 통신하기 위해서이다. 모바일 디바이스(110A, 110B, 110C)가 애플리케이션 배포 플랫폼으로부터 애플리케이션(115A, 115B, 115C)을 다운로드하면, 모바일 디바이스(110A, 110B, 110C) 제공은 보안 환경(105)에서 별도의 단계로 수행될 수 있다. 모바일 디바이스(110A, 110B, 110C) 상의 애플리케이션(115A, 115B, 115C)은 애플리케이션이 처음 실행될 때 원격 관리자에 의해 설정된 PIN에 의해 PIN 보호될 수 있다. 또한, 제공된 모바일 디바이스(110A, 110B, 110C)는 원격 관리자에 의해 설정된 다른 PIN에 의해 보호될 수 있다. 모바일 디바이스 PIN은 시스템(100)의 관리자에 의해 결정된 하나 혹은 그 이상의 보안 정책들을 따르도록 요구될 수 있다. 일부 실시예들에서, 애플리케이션(115A, 115B, 115C)은, 제공 동안, HSM(140)에 의해 생성 및 암호화되고 각각의 모바일 디바이스들(110A, 110B, 110C)로 전송되는 공유 암호들(120A, 120B, 120C)을 저장할 수 있다. 일부 실시예들에서, 공유 암호들(120A, 120B, 120C)은 각각의 모바일 디바이스들(110A, 110B, 110C)에 할당된 상이한 키 부분들을 포함할 수 있으며, 이들은 HSM에 액세스하고 관리하기 위해 마스터 키를 형성하도록 결합된다. 일부 실시예들에서, 공유 암호들(120A, 120B, 120C)은 모바일 디바이스들(110A, 110B, 110C)에 제공 동안 로딩될 수 있으며, 보안 환경(105)에 있는 동안 로딩될 수 있다. 공유 암호들(120D)은 모바일 디바이스들이 보안 환경(105)에 있는 동안 제공되고 난 후 모바일 디바이스들(110A, 110B, 110C)로 안전하게 전송될 수 있고, 그 후에 보안 환경(105) 외부로 전송될 수 있다.
[0050] 일부 실시예들에서, 모바일 디바이스들(110A, 110B, 110C)이 보안 환경(105)에서 제공되고 보안 환경(105) 외부의 원격 관리자에게 전송될 수 있고 및/또는 보안 환경(105) 밖으로 이송되어 각각의 원격 관리자들에게 물리적으로 전달될 수 있다.
[0051] 도 1의 시스템(100)과 관련하여 본 명세서에 설명된 실시예는 모든 적절한 로직으로 구현될 수 있으며, 여기서 본 명세서에서 언급된 로직은 모든 적합한 하드웨어(예를 들어, 프로세서, 임베디드 컨트롤러, 또는 애플리케이션 특정 집적 회로, 등), 소프트웨어(예를 들어, 애플리케이션), 펌웨어, 또는 다양한 실시예들에서 하드웨어, 소프트웨어 및 펌웨어의 모든 적절한 조합일 수 있다.
[0052] 도 2는 HSM들을 원격으로 관리하기 위한 예시적인 시스템(200)의 블록도이다. 이 도면에 도시된 바와 같이, 예시적인 시스템(200)은 하나 혹은 그 이상의 작업들을 수행하기 위한 하나 혹은 그 이상의 모듈들을 포함할 수 있다. 아래에서 더 자세히 설명되는 바와 같이, 모듈들은 보안 서버(130)의 HSM 관리 모듈(135) 및/또는 각각의 모바일 디바이스들(110A, 110B, 110C)에서 실행되는 애플리케이션(115A, 115B, 115C)을 포함할 수 있다. 분리된 엘리멘트들로 설명되어 있지만 도 1의 하나 혹은 그 이상의 모듈들은 단일 모듈 또는 애플리케이션의 일부들을 나타낼 수 있다.
[0053] 모바일 디바이스들(110A, 110B, 110C)이 제공된 후, 도 1에 기술되고 도 3에 더 상세히 설명되는 바와 같이, 그들은 보안 환경(105)으로부터 원격에 위치될 수 있고 HSM들을 원격으로 관리하기 위해 보안 환경(105) 외부로부터 할당된 원격 관리자들에 의해 사용될 수 있다. 각각의 모바일 디바이스들(110A, 110B, 110C)에 로드된 애플리케이션들(115A, 115B, 115C)은 제공 동안 또는 제공이 완료된 후에 각각의 디바이스들에 로드된 각각의 공유 암호들(120A, 120B, 120C)을 안전하게 저장하는 데 사용될 수 있다. 일부 예들에서, 모바일 디바이스들(110A, 110B, 110C)의 원격 관리자들은 보안 환경(105)에 위치한 보안 서버(130)와 네트워크(210)를 통해 보안 연결을 설정하기 위해 그들 각각의 애플리케이션들(115A, 115B, 115C)을 실행할 수 있다. 예를 들어, 모바일 디바이스(110A)의 원격 관리자는 애플리케이션(115A)을 사용하여 파라미터들(예를 들어, 구성할 도메인, 공유 암호 120A의 선택, 명령의 선택 등)을 선택하여 지정된 도메인의 HSM에서 실행하기 위한 HSM 명령 요청을 생성할 수 있다. 애플리케이션(115A)은 HSM 명령 요청을 암호화하고 명령 요청을 보안 서버(130)의 HSM 관리 모듈(135)로 안전하게 전송할 수 있다.
[0054] HSM 관리 모듈(135)은 모바일 디바이스들(110A, 110B, 110C)로부터 하나 혹은 그 이상의 HSM 명령 요청들을 수신하고 이들을 처리할 수 있다. 일부 실시예들에서, HSM 관리 모듈(135)은 모바일 디바이스(110A, 110B, 110C)로부터 수신된 HSM 명령 요청을 검증할 수 있다. 일부 예들에서, HSM 관리 모듈(135)은 모바일 디바이스들(110A, 110B, 110C)로부터 수신된 암호화된 요청을 해독 및/또는 공유 암호들(120A, 120B, 120C)을 해독하도록 HSM(140)에 지시할 수 있다. HSM(140)은 HSM(140)에 저장된 대응하는 공유 암호(120D)을 사용하여 암호화된 요청들을 해독하고 및/또는 공유 암호들(120A, 120B, 120C)을 해독할 수 있다. HSM 관리 모듈(135)은, 수신된 HSM 명령 요청에 기초하여, HSM 명령을 구축하고 HSM 명령 요청에 지정된 바와 같이 타겟 HSM에 의한 실행을 위해 지정된 도메인으로 명령을 전송할 수 있다.
[0055] 지정된 도메인(미도시)은 HSM 관리 모듈(135)로부터 명령들을 수신할 수 있다. HSM 관리 모듈(135)은 각각의 모바일 디바이스들(110A, 110B, 110C)로부터 다수의 명령들을 전송할 수 있다. 지정된 도메인의 타겟 HSM은 HSM 관리 모듈(135)로부터 수신된 다양한 명령들로부터 공유 암호들(120A, 120B, 120C)을 획득할 수 있고 공유 암호들(120A, 120B, 120C)을 마스터 키가 생성될 때까지 타겟 HSM 내부의 레지스터에 추가할 수 있다. 일부 예들에서, 마스터 키를 생성하기 위해 HSM 관리 모듈(135)로부터 수신된 상이한 명령들로부터 수신된 공유 암호들(120A, 120B, 120C)(예를 들어, 키 부분들)을 조립하기 위해, 타겟 HSM은 논리 연산(예: XOR) 또는 데이터를 결합하는 다른 수단들을 수행할 수 있고, 이는 HSM 관리 모듈(135)로부터 수신된 명령을 실행하는 데 사용될 수 있다. 지정된 도메인의 타겟 HSM에 의한 명령 실행이 완료되면, 그 결과들은 다시 HSM 관리 모듈(135)로 전송된다. HSM 관리 모듈(135)은 결과들을 수신하고 타겟 HSM에 의해 실행된 명령의 결과들을 나타내는 각각의 모바일 디바이스들(110A, 110B, 110C)에 대한 메시지를 생성할 수 있다.
[0056] 도 2의 시스템(200)과 관련하여 본 명세서에 설명된 실시예들은, 모든 적절한 로직으로 구현될 수 있으며, 여기서 언급된 로직은, 다양한 실시예들에서, 모든 적절한 하드웨어(예를 들어, 프로세서, 임베디드 컨트롤러 또는 애플리케이션 특정 집적 회로, 등), 소프트웨어(예를 들어, 애플리케이션), 펌웨어, 또는 하드웨어, 소프트웨어 및 펌웨어의 모든 적절한 조합을 포함할 수 있다.
[0057] 이제 도 3을 참조하면, 본 발명의 예시적인 실시예들에 따라 구성된, 시스템(100)은, 하나 혹은 그 이상의 모바일 디바이스들(110A, 110B, 110C)을 제공한다. 도 3을 참조하여 설명된 처리의 전부 또는 일부는 도 1의 보안 환경(105)에서 보안 서버(130)에 의해 수행되어 하나 혹은 그 이상의 모바일 디바이스들(110A, 110B, 110C)을 제공할 수 있다(provision). 모바일 디바이스들(110A, 110B, 110C)는, 보안 환경(105)에서, 한 번에 하나씩 제공된다. 모바일 디바이스들(110A, 110B, 110C)은, USB 연결 사용, QR 코드 스캔, NFC 기술 또는 BluetoothTM 사용 등과 같은, 직접 연결(150)을 사용하여 모바일 디바이스(110A, 110B, 110C)를 (일 회당 한 번) 보안 서버(130)와 연결함으로써 제공될 수 있다.
[0058] 블록(302)에서, 모바일 디바이스들을 제공하기 위한 방법(300)은 모바일 디바이스들(110A, 110B, 110C)을 보안 영역에 등록하는 단계를 포함한다. 일부 실시예들에서, 모바일 디바이스(110A)는 보안 영역을 정의하는 CA 인증서를 모바일 디바이스(110A)에 다운로드함으로써 보안 영역에 등록된다. CA 인증서는, 모바일 디바이스(110A)와 같은, 디바이스와, CA 인증서들을 관리 및/또는 발행하는 주체 또는 조직과의 제휴(an affiliation)를 나타낸다.
[0059] 블록(304)에서, 모바일 디바이스를 제공하는 방법(300)은 원격 관리자에게 모바일 디바이스(110A)를 할당하는 단계를 포함한다. 일부 실시예들에서, HSM 관리 모듈(135)은 사용자들을 정의 또는 식별하고 그들을 원격 관리 프로파일에 할당할 수 있다. 일부 실시예들에서, 원격 관리 프로파일들은 원격 관리자 프로파일 객체들 세트(a set of remote administrator profile objects)로 저장될 수 있다. 일부 실시예들에서, 원격 관리 프로파일 객체들은 보안 서버(130)의 HSM(140)에 저장되거나 포함될 수 있다. 원격 관리 프로필 객체들에는 원격 관리 프로필 인증서와 원격 관리자 프로필 인증서의 공개 키에 대응하는 개인 키가 포함될 수 있다. 일부 실시예들에서, 모바일 디바이스(110A)는 원격 관리자 프로파일 로그온 키 비밀을 로딩함으로써 원격 관리자에게 할당된다.
[0060] 블록(306)에서, 모바일 디바이스를 제공하는 방법(300)은 공유 암호들(120A)을 모바일 디바이스(110A)에 로딩하는 단계를 포함한다. 일부 실시예들에서, 공유 암호들(120A)은 제공 동안 모바일 디바이스(110A)에 로드된다. 일부 실시예들에서, 사용자는 모바일 디바이스(110A)에서 실행되는 애플리케이션(115A)을 통해 공유 암호들(120A)(예를 들어, 암호화된 키 부분들, 암호화된 서명 키 등)을 전송하도록 보안 서버(130)에 요청할 수 있다. 일부 실시예들에서, 모바일 디바이스(110A)는 모바일 디바이스(110A)에서 실행되는 애플리케이션(115A)을 통해 특정 원격 관리자에 대해 생성된 새로운 공유 암호들(120A)을 요청할 수 있다. 새로운 공유 암호들(120A)은 암호화되어 보안 서버(130)에 의해 모바일 디바이스(110A)로 전송될 수 있다. 이 방법은 각 모바일 디바이스에 대해 반복할 수 있다. 예를 들어, 블록들(302 내지 306)은 모바일 디바이스(110B)를 직접 연결(150)을 사용하여 보안 서버(130)에 연결하고, 모바일 디바이스(110B)를 제공하며, 애플리케이션(115B)을 다운로드하고, 모바일 디바이스(110B)에 대해 생성되고 암호화된 공유 암호들(120B)을 로딩함으로써 모바일 디바이스(110B)에서 반복될 수 있다. 블록들(302 내지 306)은 모바일 디바이스(110C)를 직접 연결(150)을 사용하여 보안 서버(130)에 연결하고, 모바일 디바이스(110C)를 제공하며, 애플리케이션(115C)을 다운로드하고, 모바일 디바이스(110C)에 대해 생성되고 암호화된 공유 암호들(120C)을 로딩함으로써 모바일 디바이스(110C)에서 반복될 수 있다. 각각의 모바일 디바이스(110A, 110B, 110C)는 자체적으로 제공되는데, 공유 암호들(120A, 120B, 120C)이 그들 각각의 모바일 디바이스들(110A, 110B, 110C)에 대응하기 때문이다.
[0061] 도 3의 프로세스 플로 다이어그램은 방법(300)의 동작들이 임의의 특정 순서로 실행되거나, 방법(300)의 모든 동작들이 모든 경우에 포함된다는 것을 나타내기 위한 것이 아니다. 또한, 방법(300)은 임의의 적절한 수의 추가 동작들을 포함할 수 있다.
[0062] 이제 도4를 참조하면, 방법(400)의 블록(402)에서, 본 발명의 예시적인 실시예들에 따라 구성된 시스템(200)은 보안 서버(130)와의 연결을 설정한다. 도 4를 참조하여 설명된 처리의 전부 또는 일부는, HSM들을 원격으로 관리하기 위해, 일반적으로 도 2의 보안 환경(105) 외부에 위치한 모바일 디바이스(110A, 110B, 110C)에 의해 수행될 수 있다. 일부 예들에서, 모바일 디바이스(110A)의 애플리케이션(115A)은 하나 혹은 그 이상의 네트워크들(210)을 통해 보안 서버(130)와의 연결을 설정한다. 원격 관리자는 모바일 디바이스(110A)에서 애플리케이션(115A)을 열 수 있다. 모바일 디바이스(110A) 상의 애플리케이션(115A)은 애플리케이션(115A)이 처음 열릴 때 원격 관리자에 의해 설정된 PIN에 의해 보호될 수 있다. 일부 실시예들에서, 원격 관리자는 보안 서버(130)에서 실행되는 웹 애플리케이션에 액세스하기 위해 웹 주소를 지정할 수 있다. 원격 관리자는, 다단계 인증 절차(multi-factor authentication challenge)를 통과하는 것과 같이, 모바일 디바이스(110A)에서 실행되는 애플리케이션(115A)에 대해 인증한다.
[0063] 방법(400)의 블록(404)에서, 모바일 디바이스(110A)에서 실행되는 애플리케이션(115A)의 컴퓨터 실행 가능 명령들은 도메인의 타겟 HSM에 대한 HSM 명령 요청을 생성한다. 애플리케이션(115A)은 원격 관리자에 의해 이용 가능한 HSM들 목록으로부터 구성될 타겟 HSM의 선택을 용이하게 한다. 원격 관리자는, LOADKEY 명령과 같은, 타겟 HSM에서 실행할 명령을 선택하고, 타겟 HSM에서 명령을 실행하는 데 필요한 공유 암호들(120A)을 선택할 수 있다. 모바일 디바이스(110A)의 공유 암호들(120A)은 암호화된 키 부분, 암호화된 서명 키, 및/또는 원격 관리자의 프로파일과 관련된 암호화된 로그온 키 암호(the encrypted logon key secret)를 포함할 수 있고, 모바일 디바이스(110A)의 제공 동안 및/또는 모바일 디바이스(110A)가 제공된 후에 로드 된다. 애플리케이션(115A)은 원격 관리자의 선택들을 사용하여 지정된 도메인의 타겟 HSM에 대한 HSM 명령 요청을 생성할 수 있다.
[0064] 방법(400)의 블록(406)에서, 모바일 디바이스(110A)에서 실행되는 애플리케이션(115A)의 컴퓨터-실행가능 명령들은 HSM 명령 요청을 암호화한다. 일부 실시예들에서, 애플리케이션(115A)은 보안 영역을 정의하는 CA 인증서의 공개 키로 HSM 명령 요청을 암호화한다. 애플리케이션(115A)은 보안 환경(105)에서 실행되는 보안 서버(130)에 암호화된 HSM 명령 요청을 전송한다. 일부 예들에서, 애플리케이션(115A)은 암호화된 HSM 명령 요청을 보안 서버(130)의 HSM 관리 모듈(135)로 전송한다.
[0065] 방법(400)의 블록(408)에서, 애플리케이션(115A)의 컴퓨터-실행가능 명령들은 보안 서버(130)로부터 메시지를 수신한다. 예를 들어, 상기 메시지에는 지정된 도메인의 타겟 HSM에서 실행된 HSM 명령의 결과들이 포함될 수 있다. 일부 예들에서, 상기 메시지는 지정된 도메인들의 타겟 HSM에서 실행된 HSM 명령 실행의 성공 또는 실패를 나타내는 양 또는 음의 표현(a positive or negative statement)을 표시할 수 있다.
[0066] 도 4의 프로세스 플로 다이어그램은 방법(400)의 동작이 임의의 특정 순서로 실행되거나, 방법(400)의 모든 동작들이 모든 경우에 포함된다는 것을 나타내기 위한 것이 아니다. 또한, 방법(400)은 임의의 적절한 수의 추가 동작들을 포함할 수 있다.
[0067] 이제 도 5를 참조하면, 방법(500)의 블록(502)에서, 본 발명의 예시적인 실시예들에 따라 구성된 시스템(200)은, 모바일 디바이스 (110A), (110B) 또는 (110C)와 같은, 모바일 디바이스로부터 수신된 HSM 명령 요청을 해독한다. 도 3에 기술된 바와 같이, HSM 관리 모듈(135)은 모바일 디바이스(110A, 110B, 110C)에서 실행하는 각각의 애플리케이션(115A, 115B, 115C)에 의해 설정된 연결을 통해 암호화된 HSM 명령 요청을 수신할 수 있다. HSM 관리 모듈(135)은 HSM(140)에 의해 모바일 디바이스(110A, 110B, 110C)로부터 수신된 요청을 해독하는 것을 용이하게 할 수 있다. 예를 들어, HSM(140)은 보안 영역을 정의하는 CA 인증서의 공개 키에 대응하는 개인 키를 사용하여 수신한 HSM 명령 요청을 해독할 수 있다. HSM 관리 모듈(135)은 해독된 요청에서 수신된 공유 암호들(120A, 120B, 120C)의 해독을 용이하게 할 수 있다. HSM(140)은, 예를 들어, 키 부분, 서명 키 및/또는 원격 관리자의 프로필과 관련된 로그온 키를 해독할 수 있고, 이들 각각은 서로 독립적으로 암호화될 수 있으며 보안 영역을 정의하는 CA 인증서의 공개 키와 원격 관리자 프로파일의 CA 인증서 공개 키를 사용하여 이중 암호화될 수 있다. HSM(140)은, 보안 영역을 정의하는 CA 인증서의 공개 키에 대응하는 개인 키와 같은, HSM에 저장된 해당 공유 암호(120D)을 사용하여 모바일 디바이스(110A, 110B, 110C)로부터 수신된 HSM 명령 요청의 공유 암호들(120A, 120B, 120C)을, HSM 관리 모듈(135)의 지시에 따라, 해독할 수 있다. HSM(140)은, 원격 관리자 프로필의 CA 인증서 공개 키에 해당하는 개인 키와 같은, 공유 암호(120D)을 사용하여 모바일 디바이스(110A, 110B, 110C)로부터 수신된 HSM 명령 요청의 공유 암호들(120A, 120B, 120C)을 해독할 수 있다.
[0068] 방법(500)의 블록(504)에서, 보안 서버(130)에서 실행되는 HSM 관리 모듈(135)의 컴퓨터-실행가능 명령들은 구성될 도메인에 대한 HSM 명령을 생성한다. HSM 명령은 모바일 디바이스(110A)로부터 수신된 HSM 명령 요청에 기초하여 생성된다. HSM 명령에는 HSM(140)에 의해 해독된 원격 관리자에게 할당된 키 부분이 포함된다. HSM 명령에는 HSM 명령 요청이 생성되었을 때 원격 관리자가 지정한 대로 구성할 도메인이 포함될 수 있다. 구성할 도메인의 타겟 HSM에서 실행하기 위해 HSM 명령을 생성할 수 있다.
[0069] 방법(500)의 블록(506)에서, 보안 서버(130)에서 실행되는, HSM 관리 모듈(135)의 컴퓨터-실행가능 명령들은, HSM 명령을 도메인으로 전송한다. 일부 실시예들에서, 원격 관리자에게 할당된 키 부분은 구성되는 타겟 HSM과 보안 서버(130) 간에 협상된 전송 키(a transport key negotiated)로 래핑될 수 있다(wrapped).
[0070] 방법(500)의 블록(508)에서, 보안 서버(130)에서 실행되는 HSM 관리 모듈(135)의 컴퓨터-실행가능 명령들은 HSM 명령 요청을 전송한 모바일 디바이스(110A, 110B, 110C)에 메시지를 전송한다. 일부 실시예들에서, 상기 메시지는 구성되는 도메인의 타겟 HSM에 의해 HSM 명령을 실행한 결과들을 수신하는 것에 응답하여 생성된다. 타겟 HSM의 결과들은 보안 서버(130)의 HSM 관리 모듈(135)로 전송되고 모바일 디바이스에 대한 메시지는 구성 중인 도메인의 타겟 HSM으로부터 수신된 결과들에 기초하여 양 또는 음의 표현(a positive or negative indication)을 포함한다.
[0071] 일부 실시예들에서, 보안 서버(130)는 각각의 할당된 원격 관리자들과 연관된 상이한 모바일 디바이스들(110A, 110B, 110C)로부터 암호화된 요청들을 수신한다. 보안 서버(130)의 HSM 관리 모듈(135)은 원격 관리자들의 모바일 디바이스들(110A, 110B, 110C)로부터 수신된 각각의 요청들로부터의 정보를 사용하여 상기 요청들을 검증하고 HSM 명령들을 구축한다. 각 HSM 명령은 각 요청으로부터 획득한 서명 키를 사용하여 서명되고 각 요청에 의해 지정된 도메인으로 전송된다. 상기 명령은 지정된 도메인의 타겟 HSM에 의해 실행된다. 타겟 HSM은 모든 지정된 원격 관리자들로부터 보안 서버(130)에 의해 수신된 HSM 명령 요청들에 기초하여 HSM 명령들을 수신할 것이다. 지정된 도메인의 타겟 HSM은 수집된 키 부분들을 사용하여 마스터 키가 형성될 때까지 원격 관리자들 각각의 키 부분들을 조립한다. 일부 예들에서, 타겟 HSM이 수신한 명령들 각각으로부터의 키 부분들은 타겟 HSM 내의 레지스터에 추가된다. 타겟 HSM의 레지스터에 저장된 키 부분들은 마스터 키를 생성하기 위해 데이터를 결합하는 논리 연산(예: XOR) 또는 다른 수단들을 사용하여 결합될 수 있다. HSM 명령은 마스터 키가 완료되거나 형성되면 타겟 HSM에 의해 실행된다. 타겟 HSM에 의해 실행된 명령의 결과들은 다시 HSM 관리 모듈(135)로 전송된다. HSM 관리 모듈(135)은 도메인으로부터 수신된 결과들을 나타내는 메시지를 생성하고 상기 메시지를 각각의 모바일 디바이스(110A, 110B, 110C)로 전송한다.
[0072] 일부 실시예들에서, 보안 서버(130)에서 실행되는 HSM 관리 모듈(135)은 원격 관리자의 모바일 디바이스에 의한 비정상적이거나 승인되지 않은 액세스를 검출한다. 예를 들어, HSM 관리 모듈(135)은 동일한 IP 주소로부터 다수의 유효하지 않은 요청들을 수신한다. HSM 관리 모듈(135)은 IP 주소와 연관된 모바일 디바이스(110A, 110B, 110C)를 식별하고 유효하지 않은 요청들의 수가 지정된 임계값을 초과하는지 결정한다. 모바일 디바이스(110A, 110B, 110C)는 제한 목록 또는 거부 목록에 추가될 수 있다. 일부 예들에서, 모바일 디바이스(110A, 110B, 110C)는 지정된 기간(예를 들어, 1시간) 동안 목록에 추가된다. 일부 실시예들에서, 모바일 디바이스(110A, 110B, 110C)는 관리자가 제한된 목록 또는 거부 목록으로부터 모바일 디바이스(110A, 110B, 110C)를 제거할 때까지 보안 서버(130)에 대한 액세스가 거부된다. 일부 실시예들에서, 모바일 디바이스(110A, 110B, 110C)가 제한 목록 또는 거부 목록에 있는 경우, 모바일 디바이스(110A, 110B, 110C)는 원격으로 삭제되거나 원격 관리자의 프로필 인증서가 취소될 수 있고, 이로써 보안 서버(130)에 대한 모바일 디바이스(110A, 110B, 110C)의 액세스를 제거한다. 일부 실시예들에서, 모바일 디바이스(110A, 110B, 110C)가 손상되거나 침투된 것으로 의심되는 경우, 모바일 디바이스(110A, 110B, 110C)는 하나 혹은 그 이상의 보안 정책에 기초한 HSM 관리 모듈(135)에 의해 또는 시스템의 관리자에 의해 원격으로 삭제되거나 원격 관리자의 프로필 인증서가 취소될 수 있다. 모바일 디바이스(110A, 110B, 110C)가 삭제되었거나 원격 관리자 프로파일의 인증서가 폐기된 경우, 모바일 디바이스(110A, 110B, 110C)를 다시 제공되기 위해 보안 환경(105)으로 다시 가져오거나 새로운 모바일 디바이스가 원격 관리자를 위해 보안 환경(105)에서 제공되어서 보안 서버(130)에 액세스하기 위해 원격 관리자에게 전달되어야 할 필요가 있다.
[0073] 도 5의 프로세스 플로 다이어그램은 방법(500)의 동작들이 임의의 특정 순서로 실행되거나, 방법(500)의 모든 동작들이 모든 경우에 포함된다는 것을 나타내기 위한 것이 아니다. 또한, 방법(500)은 임의의 적절한 수의 추가 동작들을 포함할 수 있다.
[0074] 이제 도 6을 참조하면, 본 발명의 일 실시예에 따른 컴퓨터 시스템(600)이 일반적으로 도시되어 있다. 컴퓨터 시스템(600)은 본 명세서에 기술된 바와 같이 다양한 통신 기술을 이용하는 컴퓨팅 디바이스들 및 네트워크들의 임의의 수 및 조합을 포함 및/또는 채용하는 전자적, 컴퓨터 프레임워크일 수 있다. 컴퓨터 시스템(600)은 다양한 서비스들로 변경하거나 일부 특징들을 다른 것과 독립적으로 재구성할 수 있는 능력으로 쉽게 스케일 가능하고, 확장 가능하며, 모듈식일 수 있다. 컴퓨터 시스템(600)은, 예를 들어, 서버, 데스크탑 컴퓨터, 랩탑 컴퓨터, 태블릿 컴퓨터 또는 스마트폰일 수 있다. 일부 예들에서, 컴퓨터 시스템(600)은 클라우드 컴퓨팅 노드일 수 있다. 컴퓨터 시스템(600)은 컴퓨터 시스템에 의해 실행되는 프로그램 모듈과 같은 컴퓨터 시스템 실행 가능 명령들의 일반적인 맥락에서 설명될 수 있다. 일반적으로 프로그램 모듈은 특정 작업을 수행하거나 특정 추상 데이터 유형을 구현하는 루틴, 프로그램, 개체, 컴포넌트, 논리, 데이터 구조 등을 포함할 수 있다. 컴퓨터 시스템(600)은 통신 네트워크를 통해 연결된 원격 처리 디바이스에 의해 작업이 수행되는 분산 클라우드 컴퓨팅 환경에서 실행될 수 있다. 분산 클라우드 컴퓨팅 환경에서 프로그램 모듈은 메모리 스토리지 디바이스를 포함하는 로컬 및 원격 컴퓨터 시스템 스토리지 매체 모두에 위치할 수 있다.
[0075] 도 6에 도시된 바와 같이, 컴퓨터 시스템(600)은 하나 또는 그 이상의 중앙 처리 유닛(CPU(들))(601a, 601b, 601c) 등(집합적으로 또는 총칭하여 프로세서(들)(601)이라고 함)을 갖는다. 프로세서(601)는 단일 코어 프로세서, 멀티-코어 프로세서, 컴퓨팅 클러스터, 또는 임의의 수의 다른 구성일 수 있다. 처리 회로라고도 하는 프로세서(601)는 시스템 버스(602)를 통해 시스템 메모리(603) 및 다양한 다른 컴포넌트에 연결된다. 시스템 메모리(603)는 읽기 전용 메모리(ROM)(604) 및 랜덤 액세스 메모리(RAM)(605)를 포함할 수 있다. ROM(604)은 시스템 버스(602)에 연결되고 기본 입/출력 시스템(BIOS)을 포함할 수 있으며, RAM은 프로세서(601)에 의한 사용을 위해 시스템 버스(602)에 연결된 읽기-쓰기 메모리이다. 시스템 메모리(603)는 동작 동안 상기 명령의 동작을 위한 임시 메모리 공간을 제공한다. 시스템 메모리(603)는 랜덤 액세스 메모리(RAM), 읽기 전용 메모리, 플래시 메모리, 또는 모든 다른 적절한 메모리 시스템을 포함할 수 있다.
[0076] 컴퓨터 시스템(600)은 시스템 버스(602)에 연결된 입력/출력(I/O) 어댑터(606) 및 통신 어댑터(607)를 포함한다. I/O 어댑터(606)는 디스크(608) 및/또는 임의의 다른 유사한 컴포넌트와 통신하는 SCSI(a small computer system interface)어댑터 일 수 있다. I/O 어댑터(606) 및 하드 디스크(608)는 본 명세서에서 집합적으로 대용량 스토리지(610)로 지칭된다.
[0077] 소프트웨어(611)는 대용량 스토리지(610)에 저장될 수 있다. 대용량 스토리지(610)는 프로세서(601)에 의해 판독 가능한 유형의 스토리지 매체의 예이며, 여기서 소프트웨어(611)는 프로세서(601)에 의한 실행을 위한 명령들로서 저장되고, 상기 명령들은, 다양한 도면들과 관련하여 이하에서 설명되는 바와 같이, 컴퓨터 시스템(600)이 동작하게 한다. 컴퓨터 프로그램 제품의 예와 그러한 명령의 실행은 여기에서 더 자세히 논의된다. 통신 어댑터(607)는 시스템 버스(602)를 외부 네트워크일 수 있는 네트워크(612)와 상호 연결하여 컴퓨터 시스템(600)이 다른 그러한 시스템들과 통신할 수 있게 한다. 일 실시예에서, 시스템 메모리(603) 및 대용량 스토리지(610)의 일부는 운영 체제를 집합적으로 저장하며, 이는, 도 6에 도시된 다양한 컴포넌트들의 기능들을 조정하기 위한, IBM Corporation의 z/OS 또는 AIX 운영 체제와 같은 모든 적절한 운영 체제일 수 있다.
[0078] 추가의 입력/출력 디바이스들이 디스플레이 어댑터(615) 및 인터페이스 어댑터(616)를 통해 시스템 버스(602)에 연결된 것으로 도시되어 있다. 일 실시예에서, 어댑터들(606, 607, 615, 616)는 중간 버스 브리지(미도시)를 통해 시스템 버스(602)에 연결된 하나 또는 그 이상의 I/O 버스들에 연결될 수 있다. 디스플레이(619)(예를 들어, 스크린 또는 디스플레이 모니터)는 디스플레이 어댑터 (615)에 의해 시스템 버스(602)에 연결되고, 디스플레이 어댑터는 그래픽 집약적 애플리케이션의 성능을 개선하기 위한 그래픽 컨트롤러 및 비디오 컨트롤러를 포함할 수 있다. 키보드(621), 마우스(622), 스피커(623) 등은 인터페이스 어댑터(616)를 통해 시스템 버스(602)에 상호 연결될 수 있으며, 이는, 예를 들어 다수의 디바이스 어댑터를 단일 집적 회로로 통합하는 슈퍼 I/O 칩을 포함할 수 있다. 하드 디스크 컨트롤러, 네트워크 어댑터 및 그래픽 어댑터와 같은 주변 장치를 연결하는 데 적합한 I/O 버스에는 일반적으로 PCI(Peripheral Component Interconnect)와 같은 공통 프로토콜이 포함된다. 따라서, 도 6에 구성된 바와 같이, 컴퓨터 시스템(600)은 프로세서(601) 형태의 처리 능력, 시스템 메모리(603) 및 대용량 스토리지(610)를 포함하는 저장 능력, 키보드(621) 및 마우스(622)와 같은 입력 수단 및 스피커(623) 및 디스플레이(619) 포함하는 출력 능력을 포함한다.
[0079] 일부 실시예들에서, 통신 어댑터(607)는 무엇보다도 인터넷 소형 컴퓨터 시스템 인터페이스와 같은 모든 적절한 인터페이스 또는 프로토콜을 사용하여 데이터를 전송할 수 있다. 네트워크(612)는 특히 셀룰러 네트워크, 무선 네트워크, WAN(Wide Area Network), LAN(Local Area Network), 또는 인터넷일 수 있다. 외부 컴퓨팅 디바이스는 네트워크(612)를 통해 컴퓨터 시스템(600)에 연결할 수 있다. 일부 예들에서, 외부 컴퓨팅 장치는 외부 웹서버 또는 클라우드 컴퓨팅 노드일 수 있다.
[0080] 도 6의 블록도가 컴퓨터 시스템(600)이 도 6에 도시된 모든 컴포넌트들을 포함해야 한다는 것을 나타내기 위한 것이 아님을 이해해야 한다. 오히려, 컴퓨터 시스템(600)은 도 6에 도시되지 않은 임의의 적절한 더 적은 컴포넌트들 또는 추가의 컴포넌트들을 포함할 수 있다(예: 추가 메모리 컴포넌트, 임베디드 컨트롤러, 모듈, 추가 네트워크 인터페이스 등). 또한, 컴퓨터 시스템(600)과 관련하여 본 명세서에 설명된 실시예들은 모든 적절한 로직으로 구현될 수 있으며, 여기서 본 명세서에서 언급되는 로직은 모든 적절한 하드웨어(예를 들어, 프로세서, 내장형 컨트롤러, 또는 애플리케이션 특정 집적 회로) 또는, 소프트웨어(예를 들어, 애플리케이션), 펌웨어, 또는 다양한 실시예들에서 하드웨어, 소프트웨어 및 펌웨어의 모든 적절한 조합을 포함할 수 있다.
[0081] 본 발명은 시스템, 방법, 장치 및/또는 컴퓨터 프로그램 제품일 수 있다. 컴퓨터 프로그램 제품은 컴퓨터 판독가능 스토리지 매체(또는 매체들)을 포함할 수 있고, 컴퓨터 판독가능 스토리지 매체(또는 매체들)는 컴퓨터 판독가능 프로그램 명령들을 가지며, 컴퓨터 판독가능 프로그램 명령들은 프로세서로 하여금 본 발명의 실시 예들(aspects)을 수행하도록 하기 위한 것이다.
[0082] 컴퓨터 판독가능 스토리지 매체는 명령 실행 디바이스에서 사용하기 위한 명령들을 보유 및 저장할 수 있는 유형적인(tangible) 디바이스일 수 있다. 컴퓨터 판독가능 스토리지 매체는, 예를 들어, 전자 스토리지 디바이스, 자기 스토리지 디바이스, 광학 스토리지 디바이스, 전자기 스토리지 디바이스, 반도체 스토리지 디바이스, 또는 앞서 언급한 것들의 어떤 적절한 조합일 수 있으나, 이러한 것들로 한정되는 것은 아니다. 컴퓨터 판독가능 스토리지 매체의 더 많은 구체적인 예들의 리스트(전체를 다 열거한 것은 아님)는 또한, 휴대용 컴퓨터 디스켓, 하드 디스크, 랜덤 억세스 메모리(random access memory, RAM), 읽기 전용 메모리(read-only memory, ROM), 소거가능 프로그램가능 읽기 전용 메모리(erasable programmable read-only memory, EPROM 또는 플래쉬 메모리), 스태틱 랜덤 억세스 메모리(static random access memory, SRAM), 휴대용 컴팩트 디스크 읽기 전용 메모리(portable compact disc read-only memory, CD-ROM), 디지털 다용도 디스크(digital versatile disk, DVD), 메모리 스틱, 플로피 디스크, 펀치-카드들 또는 기록된 명령들을 갖는 홈(groove)에서 볼록한 구조들과 같은 기계적으로 인코딩된 디바이스, 및 앞서 열거한 것들의 어떤 적절한 조합을 포함할 수 있다. 여기서 사용되는 것과 같이, 컴퓨터 판독가능 스토리지 매체는, 무선 전파(radio waves) 또는 다른 자유롭게 전파되는 전자기파, 도파관 또는 다른 전송 매질을 통해 전파되는 전자기파(예컨대, 광섬유 케이블을 통과하는 광 펄스), 또는 와이어를 통해 전송되는 전기적 신호와 같은 일시적인 신호들 그 자체로 구성되는 것은 아니다.
[0083] 여기에 설명되는 컴퓨터 판독가능 프로그램 명령들은, 예를 들어, 인터넷, 근거리 통신망, 광역 통신망 및/또는 무선 통신망과 같은 통신망을 통해 컴퓨터 판독가능 스토리지 매체로부터 각각의 컴퓨팅/처리 디바이스들로, 또는 내부 컴퓨터 또는 외부 스토리지 디바이스로 다운로드될 수 있다. 통신망은 동선 전송 케이블, 광 전송 섬유, 무선 전송, 라우터, 방화벽, 스위치, 게이트웨이 컴퓨터 및/또는 엣지 서버를 포함할 수 있다. 각각의 컴퓨팅/처리 디바이스에서 네트워크 어댑터 카드 또는 네트워크 인터페이스는, 각각의 컴퓨팅/처리 디바이스 내 컴퓨터 판독가능 스토리지 매체에 저장하기 위해 통신망으로부터 컴퓨터 판독가능 프로그램 명령들을 수신하고 컴퓨터 판독가능 프로그램 명령들을 전송한다.
[0084] 본 발명의 동작들을 수행하기 위한 컴퓨터 판독가능 프로그램 명령들은 어셈블러 명령(assembler instructions), 명령-세트-아키텍쳐(instruction-set-architecture, ISA) 명령, 머신 명령(machine instructions), 머신 종속 명령(machine dependent instructions), 마이크로코드, 펌웨어 명령(firmware instructions), 상태-세팅 데이터(state-setting data), 집적 회로망용 구성 데이터(configuration data for integrated circuitry), 또는 하나 또는 그 이상의 프로그래밍 언어들의 어떤 조합으로 작성된 소스 코드 또는 객체 코드(object code)일 수 있다. 상기 프로그래밍 언어들은 스몰토크(Smalltalk), C++ 등과 같은 객체 지향 프로그래밍 언어(object oriented programming language), 및 "C" 프로그래밍 언어 또는 유사 프로그래밍 언어들과 같은 절차형 프로그래밍 언어들을 포함한다. 컴퓨터 판독가능 프로그램 명령들은 독립형(stand-alone) 소프트웨어 패키지로서 사용자의 컴퓨터 상에서 전적으로, 사용자의 컴퓨터 상에서 부분적으로 실행될 수 있고, 사용자의 컴퓨터 상에서 부분적으로 그리고 원격 컴퓨터 상에서 부분적으로 실행될 수 있고, 또는 원격 컴퓨터 또는 서버 상에서 전적으로 실행될 수 있다. 후자의 시나리오에 있어서, 원격 컴퓨터는 근거리 통신망(LAN) 또는 광역 통신망(WAN)을 포함하는 어떤 유형의 통신망을 통해 사용자의 컴퓨터에 연결될 수 있고, 또는 그 연결은 외부 컴퓨터에 대해 이뤄질 수 있다(예컨대, 인터넷 서비스 공급자(Internet Service Provider)를 사용하여 인터넷을 통해서). 몇몇 실시예들에 있어서, 본 발명의 측면들을 수행하기 위해, 예를 들어, 프로그램가능 로직 회로망(programmable logic circuitry), 필드-프로그램가능 게이트 어레이(field-programmable gate arrays, FPGA), 또는 프로그램가능 로직 어레이(Programmable logic arrays, PLA)를 포함하는 전기 회로망(electronic circuitry)은 전기 회로망을 고객 맞춤 제작(customize)하기 위해 컴퓨터 판독가능 프로그램 명령들의 상태 정보를 이용함으로써 컴퓨터 판독가능 프로그램 명령들을 실행할 수 있다.
[0085] 본 발명의 실시 예들은 여기서 발명의 실시예들에 따른 방법들, 장치들(시스템들), 및 컴퓨터 프로그램 제품들의 플로우챠트 설명들 및/또는 블록 다이어그램들을 참조하여 설명된다. 플로우챠트 설명들 및/또는 블록 다이어그램들에서 플로우챠트 설명들 및/또는 블록 다이어그램들의 각각의 블록, 및 블록들의 조합들은 컴퓨터 판독가능 프로그램 명령들에 의해 구현될 수 있다는 것이 이해된다.
[0086] 이들 컴퓨터 판독가능 프로그램 명령들은 머신(machine)을 생성하기 위해 범용 컴퓨터(general purpose computer), 전용 컴퓨터(special purpose computer), 또는 다른 프로그램가능 데이터 처리 장치의 프로세서에게 제공될 수 있으며, 그리하여 컴퓨터 또는 다른 프로그램가능 데이터 처리 장치의 프로세서를 통해 실행될 때 그 명령들이 플로우챠트 및/또는 블록 다이어그램 블록 또는 블록들에 명시된 기능들/동작들을 구현하기 위한 수단을 생성하도록 한다. 이들 컴퓨터 판독가능 프로그램 명령들은 또한 컴퓨터 판독가능 스토리지에 저장될 수 있으며, 컴퓨터 판독가능 스토리지는 컴퓨터, 프로그램가능 데이터 처리 장치, 및/또는 다른 디바이스들이 특정 방식으로 기능하도록 지시할 수 있다. 그리하여, 내부에 저장된 명령들을 갖는 컴퓨터 판독가능 스토리지 매체가 플로우챠트 및/또는 블록 다이어그램의 블록 또는 블록들에 명시된 기능/동작의 측면들을 구현하는 명령들을 포함하는 제조 물품을 포함하도록 한다.
[0087] 컴퓨터 판독가능 프로그램 명령들은 또한 컴퓨터, 다른 프로그램가능 데이터 처리 장치, 또는 다른 다바이스 상으로 로딩되어 컴퓨터, 다른 프로그램가능 장치 또는 다른 디바이스 상에서 수행될 일련의 동작들(operational acts)로 하여금 컴퓨터로 구현된 프로세스를 생성하게 할 수 있다. 그리하여 컴퓨터, 다른 프로그램가능 장치, 또는 다른 디바이스 상에서 실행되는 명령들이 플로우챠트 및/또는 블록 다이어그램의 블록 또는 블록들에 명시된 기능들/동작들을 구현하도록 한다.
[0088] 도면들에서 플로우챠트 및 블록 다이어그램들은 본 발명의 다양한 실시예들에 따른 시스템들, 방법들, 및 컴퓨터 프로그램 제품들의 가능한 구현의 아키텍쳐, 기능성, 및 동작을 보여준다. 이 점에서, 플로우챠트 또는 블록 다이어그램들에서의 각각의 블록은 모듈, 세그먼트, 또는 명령들의 일부분을 나타낼 수 있으며, 이는 명시된 논리적 기능(들)을 구현하기 위한 하나 또는 그 이상의 실행가능한 명령들을 포함한다. 몇몇 다른 구현들에 있어서, 블록들에 기재되어 있는 기능들은 도면들에 기재되어 있는 순서를 벗어나서 발생할 수도 있다. 예를 들어, 연속해서 보여지는 두 개의 블록들은, 사실, 실질적으로 동시에 일어날 수 있고, 또는 블록들은 때로는 관련된 기능에 따라 역순으로 실행될 수도 있다. 또한, 블록 다이어그램들 및/또는 플로우챠트 그림의 각각의 블록, 및 블록 다이어그램들 및/또는 플로우챠트 그림에서의 블록들의 조합들은 명시된 기능들 또는 동작들(acts)을 수행하거나 전용 하드웨어와 컴퓨터 명령들의 조합들을 수행하는 전용 하드웨어 기반 시스템들에 의해 구현될 수 있다는 것이 주목될 수 있다.
[0089] 본 발명의 다양한 실시예들에 대한 설명들은 예시의 목적들로 제시되었지만, 개시된 실시예들이 전부라거나 또는 이들에 제한된다는 것을 의도하지는 않는다. 많은 수정들 및 변형들은 기술된 실시예들의 범위 및 정신에서 벗어나지 않고 당 업계의 통상적인 기술을 가진 사람들에게 분명할 것이다. 여기서 사용된 용어는 실시예들의 원리들, 시장에서 발견되는 기술들에 대한 실용적인 적용 또는 기술적 개선을 가장 잘 설명하기 위해, 또는 여기서 개시된 실시예들을 당 업계의 통상적인 기술을 가진 다른 사람들이 이해할 수 있도록 하기 위해 선택되었다
[0090] 본 발명의 다양한 실시예들은 관련 도면들을 참조하여 여기에서 설명된다. 본 발명의 대안적 실시예들은 본 발명의 범위를 벗어나지 않고 고안될 수 있다. 다양한 연결들 및 위치 관계들(예: 위, 아래, 인접 등)이 다음 설명 및 도면들에서 엘리멘트들 간에 설명된다. 이들 연결들 및/또는 위치 관계들은 달리 명시되지 않는 한 직접적이거나 간접적일 수 있으며, 본 발명은 이에 대해 제한하려는 의도가 없다. 따라서 주체들의 결합은 직접적 결합과 간접 결합을 의미할 수 있으며, 주체들 간의 위치적 관계는 직접적 또는 간접적 위치적 관계가 될 수 있다. 또한, 여기에 설명된 다양한 작업들 및 프로세스 단계들은 여기에 자세히 설명되지 않은 추가 단계들 또는 기능들을 갖는 보다 포괄적인 절차 또는 프로세스에 통합될 수 있다.
[0091] 다음 정의들 및 약어들은 청구범위 및 명세서의 해석을 위해 사용된다. 본 명세서에 사용된 바와 같이, 용어들 "포함하다", "포함하는", "가지다", "가지는", "함유하다" 또는 "함유하는" 또는 이들의 머든 다른 변형은들 비-배타적 포함을 커버하려고 의도된 것이다. 예를 들어, 엘리멘트들의 목록을 포함하는 조성, 혼합물, 프로세스, 방법, 물품 또는 장치는 이들 엘리멘트들로만 반드시 한정되지 않고 그러한 조성, 혼합물, 프로세스, 방법, 물품 또는 장치에 명시적으로 나열되지 않았거나 고유한 다른 엘리멘트들도 포함할 수 있다.
[0092] 또한, "예시적인"이라는 용어는 "예, 실례 또는 예시로서 기능하는 것"을 의미하는 것으로 본 명세서에서 사용된다. 본 명세서에서 "예시적인" 것으로 기술된 모든 실시예 또는 설계는 반드시 다른 실시예 또는 설계보다 바람직하거나 유리한 것으로 해석될 필요는 없다. 용어 "적어도 하나" 및 "하나 또는 그 이상"은 1보다 크거나 같은 모든 정수, 즉 1, 2, 3, 4 등을 포함하는 것으로 이해될 수 있다. 용어 "복수"는 2보다 크거나 같은 모든 정수, 즉 2, 3, 4, 5 등을 포함하는 것으로 이해될 수 있다. 용어 "연결"은 간접 "연결" 및 직접 "연결"을 모두 포함할 수 있다.
[0093] 용어들 "약", "실질적으로", "대략" 및 이들의 변형들은 출원 시 이용 가능한 장비에 기초한 특정 양의 측정과 관련된 오류 정도를 포함하도록 의도된다. 예를 들어, "약"은 주어진 값의 ±8% 또는 5% 또는 2%의 범위를 포함할 수 있다.
[0094] 간결함을 위해, 본 발명의 실시예들을 실시하고 사용하는 것과 관련된 종래 기술들은 여기에서 상세히 설명될 수도 있고 설명되지 않을 수도 있다. 특히, 본 명세서에 기술된 다양한 기술적 특징을 구현하기 위한 컴퓨팅 시스템들 및 특정 컴퓨터 프로그램들의 다양한 실시예들은 잘 알려져 있다. 따라서 간결함을 위해 많은 종래의 구현 세부 사항들은 여기에서 간략하게만 언급되거나 잘 알려진 시스템 및/또는 프로세스 세부 사항을 제공하지 않고 완전히 생략된다.

Claims (25)

  1. 컴퓨터-구현 방법에 있어서, 상기 컴퓨터-구현 방법은:
    모바일 디바이스(110A)로부터 명령 요청을, 컴퓨팅 디바이스의 프로세서에 의해, 수신하는 단계 - 상기 명령 요청은 암호화된 키 부분 및 암호화된 서명 키를 포함함 -;
    상기 모바일 디바이스의 보안 영역(a security zone)과 관련된 키를 사용하여 상기 명령 요청을, 하드웨어 보안 모듈(HSM)(140)에 의해, 해독하는 단계;
    해독된 키 부분 및 해독된 서명 키를 생성하기 위해 상기 암호화된 키 부분 및 상기 암호화된 서명 키를, 상기 HSM에 의해, 해독하는 단계 - 상기 암호화된 키 부분 및 상기 암호화된 서명 키를 해독하는 단계는 상기 모바일 디바이스의 보안 영역과 연관된 키 및 상기 모바일 디바이스와 연관된 원격 관리자와 연관된 키를 사용하는 단계를 포함함 -;
    상기 해독된 키 부분과 상기 해독된 서명 키를 사용하여 명령을, 타겟 HSM이 있는 도메인(a domain)에 대해 그리고 상기 명령 요청에 기초하여, 생성하는 단계; 및
    상기 타겟 HSM에 의한 실행을 위해 상기 명령을 상기 도메인으로 전송하는 단계를 포함하는
    컴퓨터-구현 방법.
  2. 제1항에 있어서, 상기 명령 요청은 상기 원격 관리자와 연관된 암호화된 로그온 키(an encrypted logon key)를 더 포함하고, 상기 컴퓨터-구현 방법은:
    해독된 로그온 키를 생성하기 위해 상기 암호화된 로그온 키를, 상기 HSM(140)에 의해, 해독하는 단계 - 상기 암호화된 로그온 키를 해독하는 단계는 상기 모바일 디바이스의 보안 영역과 연관된 키 및 상기 모바일 디바이스와 연관된 원격 관리자와 연관된 키를 사용하는 단계를 포함함 -; 및
    상기 해독된 로그온 키를 상기 명령과 함께 상기 도메인으로 전송하는 단계를 더 포함하는
    컴퓨터-구현 방법.
  3. 제1항에 있어서, 상기 컴포터-구현 방법은:
    제2 모바일 디바이스(110B)로부터 제2 명령 요청을, 상기 컴퓨팅 디바이스의 프로세서에 의해, 수신하는 단계 - 상기 제2 명령 요청은 제2 암호화된 키 부분 및 제2 암호화된 서명 키를 포함함 -;
    상기 모바일 디바이스(110A)의 보안 영역과 연관된 키를 사용하여 상기 제2 명령 요청을, 상기 HSM(140)에 의해, 해독하는 단계;
    제2 해독된 키 부분 및 제2 해독된 서명 키를 생성하기 위해 상기 제2 암호화 키 부분 및 상기 제2 암호화 서명 키를, 상기 HSM에 의해, 해독하는 단계 - 상기 제2 암호화된 키 부분 및 상기 제2 암호화된 서명 키를 해독하는 단계는 상기 보안 영역과 연관된 키 및 상기 제2 모바일 디바이스와 연관된 다른 원격 관리자와 연관된 다른 키를 사용하는 단계를 포함함 -;
    상기 제2 해독화된 키 부분 및 상기 제2 해독된 서명 키를 사용하여 제2 명령을, 상기 타겟 HSM이 있는 도메인에 대해, 생성하는 단계; 및
    상기 제2 명령을 상기 도메인에 전송하는 단계를 더 포함하는
    컴퓨터-구현 방법.
  4. 제3항에 있어서, 상기 해독된 키 부분 및 상기 제2 해독된 키 부분은 상기 도메인의 상기 타겟 HSM과 연관된 마스터 키의 일부인
    컴퓨터-구현 방법.
  5. 제1항에 있어서, 상기 컴퓨터-구현 방법은 상기 모바일 디바이스(110A)를 상기 보안 영역에 등록함으로써 그리고 상기 모바일 디바이스를 상기 원격 관리자와 연관시킴으로써 상기 모바일 디바이스를 제공하는 단계(provisioning)를 더 포함하는
    컴퓨터-구현 방법.
  6. 제1항에 있어서, 상기 컴퓨터-구현 방법은 상기 타겟 HSM에 의한 실행을 위해 상기 명령을 상기 도메인에 전송하기 전에 상기 해독된 서명 키를 사용하여 상기 명령에 서명하는 단계를 더 포함하는
    컴퓨터-구현 방법.
  7. 제1항에 있어서, 상기 컴퓨터-구현 방법은 상기 도메인으로부터 수신된 결과들에 기초하여 상기 모바일 디바이스(110A)에 메시지를 전송하는 단계를 더 포함하는
    컴퓨터-구현 방법.
  8. 시스템에 있어서, 상기 시스템은:
    컴퓨터 판독 가능 명령들을 실행하기 위한 하나 혹은 그 이상의 프로세서들을 포함하고, 상기 컴퓨터 판독 가능 명령들은 상기 하나 혹은 그 이상의 프로세서들을 제어하여 동작들(operations)을 수행하게 하고, 상기 동작들은:
    모바일 디바이스(110A)로부터 명령 요청을 수신하는 단계 - 상기 명령 요청은 암호화된 키 부분 및 암호화된 서명 키를 포함함 -;
    상기 모바일 디바이스의 보안 영역(a security zone)과 관련된 키를 사용하여 상기 명령 요청을, 하드웨어 보안 모듈(HSM)(140)에 의해, 해독하는 단계;
    해독된 키 부분 및 해독된 서명 키를 생성하기 위해 상기 암호화된 키 부분 및 상기 암호화된 서명 키를, 상기 HSM에 의해, 해독하는 단계 - 상기 암호화된 키 부분 및 상기 암호화된 서명 키를 해독하는 단계는 상기 모바일 디바이스의 보안 영역과 연관된 키 및 상기 모바일 디바이스와 연관된 원격 관리자와 연관된 키를 사용하는 단계를 포함함 -;
    상기 해독된 키 부분과 상기 해독된 서명 키를 사용하여 명령을, 타겟 HSM이 있는 도메인(a domain)에 대해 그리고 상기 명령 요청에 기초하여, 생성하는 단계; 및
    상기 타겟 HSM에 의한 실행을 위해 상기 명령을 상기 도메인으로 전송하는 단계를 포함하는
    시스템.
  9. 제8항에 있어서, 상기 명령 요청은 상기 원격 관리자와 연관된 암호화된 로그온 키(an encrypted logon key)를 더 포함하고, 상기 동작들은:
    해독된 로그온 키를 생성하기 위해 상기 암호화된 로그온 키를, 상기 HSM(140)에 의해, 해독하는 단계 - 상기 암호화된 로그온 키를 해독하는 단계는 상기 모바일 디바이스의 보안 영역과 연관된 키 및 상기 모바일 디바이스와 연관된 원격 관리자와 연관된 키를 사용하는 단계를 포함함 -; 및
    상기 해독된 로그온 키를 상기 명령과 함께 상기 도메인으로 전송하는 단계를 더 포함하는
    시스템.
  10. 제8항에 있어서, 상기 동작들은:
    제2 모바일 디바이스(110B)로부터 제2 명령 요청을, 상기 컴퓨팅 디바이스의 프로세서에 의해, 수신하는 단계 - 상기 제2 명령 요청은 제2 암호화된 키 부분 및 제2 암호화된 서명 키를 포함함 -;
    상기 모바일 디바이스(110A)의 보안 영역과 연관된 키를 사용하여 상기 제2 명령 요청을, 상기 HSM(140)에 의해, 해독하는 단계;
    제2 해독된 키 부분 및 제2 해독된 서명 키를 생성하기 위해 상기 제2 암호화 키 부분 및 상기 제2 암호화 서명 키를, 상기 HSM에 의해, 해독하는 단계 - 상기 제2 암호화된 키 부분 및 상기 제2 암호화된 서명 키를 해독하는 단계는 상기 보안 영역과 연관된 키 및 상기 제2 모바일 디바이스와 연관된 다른 원격 관리자와 연관된 다른 키를 사용하는 단계를 포함함 -;
    상기 제2 해독화된 키 부분 및 상기 제2 해독된 서명 키를 사용하여 제2 명령을, 상기 타겟 HSM이 있는 도메인에 대해, 생성하는 단계; 및
    상기 제2 명령을 상기 도메인에 전송하는 단계를 더 포함하는
    시스템.
  11. 제10항에 있어서, 상기 해독된 키 부분 및 상기 제2 해독된 키 부분은 상기 도메인의 상기 타겟 HSM과 연관된 마스터 키의 일부인
    시스템.
  12. 제8항에 있어서, 상기 동작들은 상기 모바일 디바이스(110A)를 상기 보안 영역에 등록함으로써 그리고 상기 모바일 디바이스를 상기 원격 관리자와 연관시킴으로써 상기 모바일 디바이스를 제공하는 단계(provisioning)를 더 포함하는
    시스템.
  13. 제8항에 있어서, 상기 동작들은 상기 타겟 HSM에 의한 실행을 위해 상기 명령을 상기 도메인에 전송하기 전에 상기 해독된 서명 키를 사용하여 상기 명령에 서명하는 단계를 더 포함하는
    시스템.
  14. 제8항에 있어서, 상기 도메인으로부터 수신된 결과들에 기초하여 상기 모바일 디바이스(110A)에 메시지를 전송하는 단계를 더 포함하는
    시스템.
  15. 프로그램 명령들이 구현된 컴퓨터-판독가능 스토리지 매체를 포함하는 컴퓨터 프로그램 제품에 있어서, 상기 프로그램 명령들은 하나 혹은 그 이상의 프로세서들에 의해 실행 가능하며, 상기 하나 혹은 그 이상의 프로세서들이 동작들을 수행하게 하고, 상기 동작들은:
    모바일 디바이스(110A)로부터 명령 요청을 수신하는 단계 - 상기 명령 요청은 암호화된 키 부분 및 암호화된 서명 키를 포함함 -;
    상기 모바일 디바이스의 보안 영역(a security zone)과 관련된 키를 사용하여 상기 명령 요청을, 하드웨어 보안 모듈(HSM)(140)에 의해, 해독하는 단계;
    해독된 키 부분 및 해독된 서명 키를 생성하기 위해 상기 암호화된 키 부분 및 상기 암호화된 서명 키를, 상기 HSM에 의해, 해독하는 단계 - 상기 암호화된 키 부분 및 상기 암호화된 서명 키를 해독하는 단계는 상기 모바일 디바이스의 보안 영역과 연관된 키 및 상기 모바일 디바이스와 연관된 원격 관리자와 연관된 키를 사용하는 단계를 포함함 -;
    상기 해독된 키 부분과 상기 해독된 서명 키를 사용하여 명령을, 타겟 HSM이 있는 도메인(a domain)에 대해 그리고 상기 명령 요청에 기초하여, 생성하는 단계; 및
    상기 타겟 HSM에 의한 실행을 위해 상기 명령을 상기 도메인으로 전송하는 단계를 포함하는
    컴퓨터 프로그램 제품.
  16. 제15항에 있어서, 상기 명령 요청은 상기 원격 관리자와 연관된 암호화된 로그온 키(an encrypted logon key)를 더 포함하고, 상기 동작들은:
    해독된 로그온 키를 생성하기 위해 상기 암호화된 로그온 키를, 상기 HSM(140)에 의해, 해독하는 단계 - 상기 암호화된 로그온 키를 해독하는 단계는 상기 모바일 디바이스의 보안 영역과 연관된 키 및 상기 모바일 디바이스와 연관된 원격 관리자와 연관된 키를 사용하는 단계를 포함함 -; 및
    상기 해독된 로그온 키를 상기 명령과 함께 상기 도메인으로 전송하는 단계를 더 포함하는
    컴퓨터 프로그램 제품.
  17. 제15항에 있어서, 상기 동작들은:
    제2 모바일 디바이스(110B)로부터 제2 명령 요청을, 상기 컴퓨팅 디바이스의 프로세서에 의해, 수신하는 단계 - 상기 제2 명령 요청은 제2 암호화된 키 부분 및 제2 암호화된 서명 키를 포함함 -;
    상기 모바일 디바이스(110A)의 보안 영역과 연관된 키를 사용하여 상기 제2 명령 요청을, 상기 HSM(140)에 의해, 해독하는 단계;
    제2 해독된 키 부분 및 제2 해독된 서명 키를 생성하기 위해 상기 제2 암호화 키 부분 및 상기 제2 암호화 서명 키를, 상기 HSM에 의해, 해독하는 단계 - 상기 제2 암호화된 키 부분 및 상기 제2 암호화된 서명 키를 해독하는 단계는 상기 보안 영역과 연관된 키 및 상기 제2 모바일 디바이스와 연관된 다른 원격 관리자와 연관된 다른 키를 사용하는 단계를 포함함 -;
    상기 제2 해독화된 키 부분 및 상기 제2 해독된 서명 키를 사용하여 제2 명령을, 상기 타겟 HSM이 있는 도메인에 대해, 생성하는 단계; 및
    상기 제2 명령을 상기 도메인에 전송하는 단계를 더 포함하는
    컴퓨터 프로그램 제품.
  18. 제17항에 있어서, 상기 해독된 키 부분 및 상기 제2 해독된 키 부분은 상기 도메인의 상기 타겟 HSM과 연관된 마스터 키의 일부인
    컴퓨터 프로그램 제품.
  19. 제15항에 있어서, 상기 동작들은 상기 모바일 디바이스(110A)를 상기 보안 영역에 등록함으로써 그리고 상기 모바일 디바이스를 상기 원격 관리자와 연관시킴으로써 상기 모바일 디바이스를 제공하는 단계(provisioning)를 더 포함하는
    컴퓨터 프로그램 제품.
  20. 제15항에 있어서, 상기 동작들은 상기 타겟 HSM에 의한 실행을 위해 상기 명령을 상기 도메인에 전송하기 전에 상기 해독된 서명 키를 사용하여 상기 명령에 서명하는 단계를 더 포함하는
    컴퓨터 프로그램 제품.
  21. 제15항에 있어서, 상기 도메인으로부터 수신된 결과들에 기초하여 상기 모바일 디바이스(110A)에 메시지를 전송하는 단계를 더 포함하는
    컴퓨터 프로그램 제품.
  22. 컴퓨터-구현 방법에 있어서, 상기 컴퓨터-구현 방법은:
    암호화된 키 부분 및 암호화된 서명 키를 포함하는 로드 키 요청(a load key request)을, 원격 관리자와 연관된 모바일 디바이스(110A)로부터, 컴퓨팅 디바이스의 프로세서에 의해, 수신하는 단계;
    상기 모바일 디바이스로부터 상기 로드 키 요청을 검증하는 단계(validating);
    해독된 키 부분 및 해독된 서명 키를 생성하기 위해 상기 암호화된 키 부분 및 상기 암호화된 서명 키를 해독하는 단계 - 상기 암호화된 키 부분 및 상기 암호화된 서명 키를 해독하는 단계는 보안 영역(a security zone)에 대한 인증 기관(CA) 인증서(a certificate authority (CA) certificate)의 공개 키(a public key)에 대응하는 개인 키(a private key)와 상기 원격 관리자 프로파일의 CA 인증서의 공개 키에 대응하는 개인 키를 사용하는 단계를 포함함 -;
    상기 로드 키 요청에 의해 지정된 도메인에 대한 로드 키 명령을 구축하는 단계(building) - 상기 로드 키 명령은 상기 해독된 키 부분을 포함하고 상기 해독된 서명 키를 사용하여 서명됨 -; 및
    상기 도메인의 타겟 하드웨어 보안 모듈(HSM)에 의한 실행을 위해 상기 로드 키 명령을 상기 도메인으로 전송하는 단계를 포함하는
    컴퓨터-구현 방법.
  23. 제22항에 있어서, 상기 로드 키 요청은 상기 보안 영역에 대한 CA 인증서의 공개 키를 사용하여 암호화되고 상기 로드 키 요청을 검증하는 단계는 상기 보안 영역에 대한 CA 인증서의 공개 키에 대응하는 개인 키를 사용하여 상기 로드 키 요청을 해독하는 단계를 포함하는
    컴퓨터-구현 방법.
  24. 컴퓨터-구현 방법에 있어서, 상기 컴퓨터-구현 방법은:
    암호화된 키 부분 및 암호화된 서명 키를 포함하는 암호화된 하드웨어 보안 모듈(HSM) 명령 요청을, 원격 관리자와 연관된 모바일 디바이스(110A)로부터 보안 컴퓨팅 디바이스의 프로세서에 의해, 수신하는 단계;
    상기 모바일 디바이스로부터 상기 암호화된 HSM 명령 요청을 해독하는 단계;
    해독된 키 부분 및 해독된 서명 키를 생성하기 위해 상기 암호화된 키 부분 및 상기 암호화된 서명 키를, 상기 보안 컴퓨팅 디바이스의 HSM(140)에 의해, 해독하는 단계;
    상기 해독된 키 부분과 상기 해독된 서명 키에 적어도 부분적으로 기초하여, 지정된 도메인(a domain)에 대해 상기 암호화된 HSM 명령 요청에 대응하는 HSM 명령을 생성하는 단계; 및
    상기 HSM 명령을 상기 지정된 도메인의 타겟 HSM에 의한 실행을 위해 상기 지정된 도메인으로 전송하는 단계를 포함하는
    컴퓨터-구현 방법.
  25. 제24항에 있어서, 상기 컴퓨터-구현 방법은 상기 지정된 도메인으로부터 수신된 결과들에 기초하여 상기 모바일 디바이스(110A)로 메시지를 전송하는 단계를 더 포함하는
    컴퓨터-구현 방법.
KR1020237019419A 2020-12-11 2021-12-03 하드웨어 보안 모듈들의 원격 관리 KR20230110287A (ko)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US17/118,837 2020-12-11
US17/118,837 US20220191693A1 (en) 2020-12-11 2020-12-11 Remote management of hardware security modules
PCT/EP2021/084143 WO2022122578A1 (en) 2020-12-11 2021-12-03 Remote management of hardware security modules

Publications (1)

Publication Number Publication Date
KR20230110287A true KR20230110287A (ko) 2023-07-21

Family

ID=79024431

Family Applications (1)

Application Number Title Priority Date Filing Date
KR1020237019419A KR20230110287A (ko) 2020-12-11 2021-12-03 하드웨어 보안 모듈들의 원격 관리

Country Status (7)

Country Link
US (1) US20220191693A1 (ko)
EP (1) EP4260512A1 (ko)
JP (1) JP2023552421A (ko)
KR (1) KR20230110287A (ko)
CN (1) CN116671062A (ko)
AU (1) AU2021394573A1 (ko)
WO (1) WO2022122578A1 (ko)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
SG10201903114RA (en) * 2019-04-08 2020-11-27 Mastercard International Inc Methods and systems for facilitating microservices for cryptographic operations
US11915038B2 (en) 2021-04-23 2024-02-27 Dell Products L.P. Method and system for collectively-determining stackable system roles in an information handling system environment
US12008415B2 (en) 2021-04-23 2024-06-11 Dell Products L.P. Method and system for a semi-democratic determination of stackable system roles in an information handling system environment
US11736458B2 (en) * 2021-04-23 2023-08-22 Dell Products L.P. Method and system for securely applying a stackable system role to an information handling system
US11698796B2 (en) 2021-04-23 2023-07-11 Dell Products L.P. Method and system for a semi-dictatorial determination of stackable system roles in an information handling system

Family Cites Families (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8160244B2 (en) * 2004-10-01 2012-04-17 Broadcom Corporation Stateless hardware security module
US20120213370A1 (en) * 2011-02-18 2012-08-23 General Instrument Corporation Secure management and personalization of unique code signing keys
US9037865B1 (en) * 2013-03-04 2015-05-19 Ca, Inc. Method and system to securely send secrets to users
US11178124B2 (en) * 2014-09-02 2021-11-16 Apple Inc. Secure pairing of a processor and a secure element of an electronic device
EP3010264A1 (en) * 2014-10-16 2016-04-20 Gemalto Sa Method to manage subscriptions in a provisioning server
US10644885B2 (en) * 2015-07-14 2020-05-05 Fmr Llc Firmware extension for secure cryptocurrency key backup, restore, and transaction signing platform apparatuses, methods and systems
US9660970B1 (en) * 2015-12-03 2017-05-23 Amazon Technologies, Inc. Cryptographic key distribution
US10447486B2 (en) * 2017-07-19 2019-10-15 Spyrus, Inc. Remote attestation of a security module's assurance level
US10972445B2 (en) * 2017-11-01 2021-04-06 Citrix Systems, Inc. Dynamic crypto key management for mobility in a cloud environment
SG10201805967SA (en) * 2018-07-11 2020-02-27 Mastercard International Inc Methods and systems for encrypting data for a web application

Also Published As

Publication number Publication date
AU2021394573A1 (en) 2023-06-22
JP2023552421A (ja) 2023-12-15
CN116671062A (zh) 2023-08-29
US20220191693A1 (en) 2022-06-16
EP4260512A1 (en) 2023-10-18
WO2022122578A1 (en) 2022-06-16

Similar Documents

Publication Publication Date Title
US11258780B2 (en) Securing a data connection for communicating between two end-points
JP6987931B2 (ja) クライアントアプリケーションのためのセキュアなシングルサインオン及び条件付きアクセス
CN111052706B (zh) 将单点登录扩展到联合登录提供者的依赖方的方法
JP6222592B2 (ja) モバイルアプリケーション管理のためのモバイルアプリケーションのアイデンティティの検証
US12010248B2 (en) Systems and methods for providing authentication to a plurality of devices
US10129240B2 (en) Distributing security codes through a restricted communications channel
KR102036758B1 (ko) 빠른 스마트 카드 로그온 및 연합된 풀 도메인 로그온
JP6687641B2 (ja) サーバまたは他の装置からのエントロピーに基づくクライアント装置の認証
JP6121049B2 (ja) プロキシを使用したリソースへの安全なアクセス
US8918641B2 (en) Dynamic platform reconfiguration by multi-tenant service providers
US20220191693A1 (en) Remote management of hardware security modules
EP3674938B1 (en) Identifying computing processes on automation servers
US20160134423A1 (en) Off device storage of cryptographic key material
JP2024501752A (ja) 鍵付きハッシュメッセージ認証コードの鍵マテリアルとしての属性ベースの暗号化鍵ユーザ認証および認可

Legal Events

Date Code Title Description
A201 Request for examination