클라우드에 암호화 키 가져오기 - 표준 플랜

암호화 키에는 키를 식별할 수 있도록 해주는 메타데이터 및 데이터를 암호화하고 복호화하기 위해 사용되는 키 자료와 같은 정보의 서브세트가 포함되어 있습니다.

IBM Cloud® Hyper Protect Crypto Services 를 사용하여 키를 작성하는 경우, 서비스는 Hyper Protect Crypto Services 인스턴스의 HSM (Hardware Security Module) 에 루트된 사용자 대신 암호화 키 자료를 생성합니다. 하지만 비즈니스 요구사항에 따라 내부 솔루션에서 키 자료를 생성한 다음, 키를 Hyper Protect Crypto Services로 가져와 온프레미스 키 관리 인프라를 클라우드로 확장해야 합니다.

표 1. 키 자료 가져오기의 이점에 대해 설명합니다.
이점 설명
KYOK(Keep Your Own Key) 내부 키 관리 인프라에서 대칭 키를 내보내도록 선택한 경우 Hyper Protect Crypto Services를 사용하여 대칭 키를 안전하게 클라우드로 가져올 수 있습니다. KYOK 기능은 사용자가 키 계층 구조의 루트 신뢰를 소유하고 자신을 제외한 다른 사용자가 암호화 키에 액세스할 수 없도록 해줍니다.
루트 키 자료의 보안 가져오기 키를 클라우드로 내보낼 때 이동하는 동안 키 자료가 보호되기를 원합니다. 루트 키 자료를 Hyper Protect Crypto Services 서비스 인스턴스로 안전하게 가져오기 위해 가져오기 토큰을 사용하여 중간자 공격에 대비하십시오.

키 자료를 가져오기 위한 계획

루트 키 자료를 서비스로 가져올 준비가 되면 다음 고려사항에 주의하십시오.

키 자료 작성을 위한 옵션 검토
보안 요구에 따라 256비트 대칭 암호화 키를 작성하는 옵션을 탐색하십시오. 예를 들어, FIPS로 유효성 검증된 온프레미스 HSM(Hardware Security Module)에서 지원하는 내부 키 관리 시스템을 사용하여, 키를 클라우드로 가져오기 전에 키 자료를 생성할 수 있습니다. 개념 증명을 빌드하는 경우 OpenSSL과 같은 암호화 툴킷을 사용하여 테스트 요구사항에 맞게 Hyper Protect Crypto Services(으)로 가져올 수 있는 키 자료를 생성할 수도 있습니다.
키 자료를 Hyper Protect Crypto Services로 가져오기 위한 옵션을 선택하십시오.
사용자 환경 또는 워크로드에 필요한 보안 레벨을 기반으로 루트 키를 가져오기 위한 두 가지 옵션 중에서 선택하십시오. 기본적으로 Hyper Protect Crypto Services는 TLS(Transport Layer Security) 1.2 프로토콜을 사용하여 이동 중인 키 자료를 암호화합니다. 개념 증명을 빌드하거나 처음으로 서비스를 시도하는 경우 이 기본 옵션을 사용하여 루트 키 자료를 Hyper Protect Crypto Services로 가져올 수 있습니다. 워크로드에 TLS를 능가하는 보안 메커니즘이 필요한 경우에도 가져오기 토큰을 사용하여 루트 키 자료를 암호화하고 서비스로 가져올 수 있습니다.
키 자료를 암호화하기 위한 계획
가져오기 토큰을 사용하여 키 자료를 암호화하도록 선택한 경우 키 자료에 대한 RSA 암호화를 실행하기 위한 방법을 결정하십시오. RSA 암호화를 위해 PKCS #1 v2.1 표준에서 지정한 대로 RSAES_OAEP_SHA_1 암호화 스킴을 사용해야 합니다. 내부 키 관리 시스템 또는 온프레미스 HSM의 기능을 검토하여 옵션을 결정하십시오.
난스(nonce)를 암호화하기 위한 계획
가져오기 토큰을 사용하여 키 자료를 암호화하도록 선택한 경우 Hyper Protect Crypto Services로 분배된 난스(nonce)에 대한 AES-GCM 암호화를 실행하기 위한 방법도 결정해야 합니다. 난스(nonce)는 악의적인 공격 및 권한 없는 호출로부터 보호하기 위해 요청의 원본을 확인하는 세션 토큰의 역할을 합니다. 내부 키 관리 시스템 또는 온프레미스 HSM의 기능을 검토하여 옵션을 결정하십시오.
가져온 키 자료의 라이프사이클 관리
키 자료를 서비스로 가져온 후에는 키의 전체 라이프사이클을 관리해야 합니다. Hyper Protect Crypto Services 키 관리 서비스 API를 사용하여 서비스에 업로드하도록 결정한 시점에 키의 만기 날짜를 설정할 수 있습니다. 하지만 가져온 루트 키를 순환하려면 새 키 자료를 생성하고 제공하여 기존 키를 폐기하고 바꿔야 합니다.

가져오기 토큰 사용

Hyper Protect Crypto Services(으)로 가져오기 전에 키 자료를 암호화하려는 경우 Hyper Protect Crypto Services 키 관리 서비스 API를 사용하여 서비스 인스턴스에 대한 가져오기 토큰을 작성할 수 있습니다.

가져오기 토큰은 서비스 인스턴스로 키 자료의 보안 가져오기를 사용하도록 설정하는 Hyper Protect Crypto Services의 리소스 유형입니다. 가져오기 토큰의 컨텐츠로 전송 키로 온프레미스에서 키 자료를 암호화하여, 지정하는 정책에 따라 Hyper Protect Crypto Services로 이동 중인 루트 키를 보호합니다. 예를 들어 시간 및 사용량에 따라 사용을 제한하는 가져오기 토큰에 대한 정책을 설정할 수 있습니다.

작업 방식

서비스 인스턴스에 대한 가져오기 토큰을 작성하는 경우 Hyper Protect Crypto Services은(는) HSM으로부터 4096비트 RSA 키 쌍을 생성합니다. 가져오기 토큰을 검색하는 경우 서비스는 키를 암호화하고 Hyper Protect Crypto Services에 업로드하는 데 사용할 수 있는 정책 키를 제공합니다.

다음 목록은 가져오기 토큰 워크플로우에 대해 설명합니다.

  1. 가져오기 토큰을 작성하기 위한 요청을 전송합니다.
    1. Hyper Protect Crypto Services의 경우 암호화 장치(HSM)로부터 RSA키 쌍을 생성합니다.
    2. 공개 키는 작성 시 지정한 정책을 기반으로 한 검색에 사용될 수 있습니다.
    3. 개인 키는 추출할 수 없게 되고 암호화 단위를 벗어나지 않습니다.
  2. **가져오기 토큰을 검색하기 위한 요청을 전송합니다. **
    1. 다음을 포함한 가져오기 토큰 컨텐츠를 수신합니다.
      • 서비스에 가져올 암호화 키 자료에 대한 공개 키입니다.
      • 키 가져오기 요청을 확인하는 데 사용되는 난스 (nonce) 값입니다.
  3. **서비스에 가져올 키를 준비합니다. **
    1. 온프레미스 키 관리 메커니즘을 사용하여 키 자료를 생성합니다.
    2. 사용자 환경과 호환 가능한 AES-GCM 암호화 방법을 사용하여 키 자료와 함께 난스(nonce)를 암호화합니다.
    3. 사용자 환경과 호환 가능한 RSA 암호화 방법을 사용하여 공개 키와 함께 함께 난스(nonce)를 암호화합니다.
  4. 키를 가져오기 위한 요청을 전송합니다.
    1. AES-GCM 알고리즘으로 생성한 암호화된 키 자료, 암호화된 난스(nonce) 및 초기화 벡터(IV)를 제공합니다.
    2. Hyper Protect Crypto Services는 요청을 확인하고, 암호화된 패킷을 복호화하고, 서비스 인스턴스에 루트 키로 키 자료를 저장합니다.

서비스 인스턴스마다 한 번에 하나의 가져오기 토큰만 작성할 수 있습니다. 가져오기 토큰의 검색 한계에 대해 자세히 알아보려면 Hyper Protect Crypto Services 키 관리 서비스 API 참조 문서를 참조하십시오.

API 메소드

화면 뒤에서 Hyper Protect Crypto Services 키 관리 서비스 API가 가져오기 토큰 작성 프로세스를 구동합니다.

다음 표에는 서비스 인스턴스에 대한 가져오기 토큰을 설정하는 API 메소드가 나열되어 있습니다.

표 2. 키 관리 서비스 API 메소드에 대해 설명합니다.
메소드 설명
POST api/v2/import_token 가져오기 토큰 작성
GET api/v2/import_token 가져오기 토큰 검색

다음에 수행할 작업