Cloud를 사용하여 비대칭 EC 키 페어 생성HSM CLI - AWS CloudHSM

기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.

Cloud를 사용하여 비대칭 EC 키 페어 생성HSM CLI

클라우드HSM의 key asymmetric-pair ec 명령을 사용하여 AWS CloudHSM 클러스터에서 비대칭 타원 곡선(EC) 키 페어를 CLI 생성합니다.

사용자 유형

다음 사용자 유형이 이 명령을 실행할 수 있습니다.

  • Crypto 사용자(CUs)

요구 사항

이 명령을 실행하려면 CU로 로그인해야 합니다.

구문

aws-cloudhsm > help key generate-asymmetric-pair ec Generate an Elliptic-Curve Cryptography (ECC) key pair Usage: key generate-asymmetric-pair ec [OPTIONS] --public-label <PUBLIC_LABEL> --private-label <PRIVATE_LABEL> --curve <CURVE> Options: --cluster-id <CLUSTER_ID> Unique Id to choose which of the clusters in the config file to run the operation against. If not provided, will fall back to the value provided when interactive mode was started, or error --public-label <PUBLIC_LABEL> Label for the public key --private-label <PRIVATE_LABEL> Label for the private key --session Creates a session key pair that exists only in the current session. The key cannot be recovered after the session ends --curve <CURVE> Elliptic curve used to generate the key pair [possible values: prime256v1, secp256r1, secp224r1, secp384r1, secp256k1, secp521r1] --public-attributes [<PUBLIC_KEY_ATTRIBUTES>...] Space separated list of key attributes to set for the generated EC public key in the form of KEY_ATTRIBUTE_NAME=KEY_ATTRIBUTE_VALUE --private-attributes [<PRIVATE_KEY_ATTRIBUTES>...] Space separated list of key attributes to set for the generated EC private key in the form of KEY_ATTRIBUTE_NAME=KEY_ATTRIBUTE_VALUE --share-crypto-users [<SHARE_CRYPTO_USERS>...] Space separated list of Crypto User usernames to share the EC private key with --manage-private-key-quorum-value <MANAGE_PRIVATE_KEY_QUORUM_VALUE> The quorum value for key management operations for the private key --use-private-key-quorum-value <USE_PRIVATE_KEY_QUORUM_VALUE> The quorum value for key usage operations for the private key -h, --help Print help

예시

이 예에서는 key generate-asymmetric-pair ec 명령을 사용하여 EC 키 페어를 생성하는 방법을 보여줍니다.

예: EC 키 페어 생성
aws-cloudhsm > key generate-asymmetric-pair ec \ --curve secp224r1 \ --public-label ec-public-key-example \ --private-label ec-private-key-example { "error_code": 0, "data": { "public_key": { "key-reference": "0x000000000012000b", "key-info": { "key-owners": [ { "username": "cu1", "key-coverage": "full" } ], "shared-users": [], "key-quorum-values": { "manage-key-quorum-value": 0, "use-key-quorum-value": 0 }, "cluster-coverage": "full" }, "attributes": { "key-type": "ec", "label": "ec-public-key-example", "id": "", "check-value": "0xd7c1a7", "class": "public-key", "encrypt": false, "decrypt": false, "token": true, "always-sensitive": false, "derive": false, "destroyable": true, "extractable": true, "local": true, "modifiable": true, "never-extractable": false, "private": true, "sensitive": false, "sign": false, "trusted": false, "unwrap": false, "verify": false, "wrap": false, "wrap-with-trusted": false, "key-length-bytes": 57, "ec-point": "0x047096513df542250a6b228fd9cb67fd0c903abc93488467681974d6f371083fce1d79da8ad1e9ede745fb9f38ac8622a1b3ebe9270556000c", "curve": "secp224r1" } }, "private_key": { "key-reference": "0x000000000012000c", "key-info": { "key-owners": [ { "username": "cu1", "key-coverage": "full" } ], "shared-users": [], "key-quorum-values": { "manage-key-quorum-value": 0, "use-key-quorum-value": 0 }, "cluster-coverage": "full" }, "attributes": { "key-type": "ec", "label": "ec-private-key-example", "id": "", "check-value": "0xd7c1a7", "class": "private-key", "encrypt": false, "decrypt": false, "token": true, "always-sensitive": true, "derive": false, "destroyable": true, "extractable": true, "local": true, "modifiable": true, "never-extractable": false, "private": true, "sensitive": true, "sign": false, "trusted": false, "unwrap": false, "verify": false, "wrap": false, "wrap-with-trusted": false, "key-length-bytes": 122, "ec-point": "0x047096513df542250a6b228fd9cb67fd0c903abc93488467681974d6f371083fce1d79da8ad1e9ede745fb9f38ac8622a1b3ebe9270556000c", "curve": "secp224r1" } } } }
예: 선택적 속성을 사용하여 EC 키 페어 생성
aws-cloudhsm > key generate-asymmetric-pair ec \ --curve secp224r1 \ --public-label ec-public-key-example \ --private-label ec-private-key-example \ --public-attributes encrypt=true \ --private-attributes decrypt=true { "error_code": 0, "data": { "public_key": { "key-reference": "0x00000000002806eb", "key-info": { "key-owners": [ { "username": "cu1", "key-coverage": "full" } ], "shared-users": [], "key-quorum-values": { "manage-key-quorum-value": 0, "use-key-quorum-value": 0 }, "cluster-coverage": "full" }, "attributes": { "key-type": "ec", "label": "ec-public-key-example", "id": "", "check-value": "0xedef86", "class": "public-key", "encrypt": true, "decrypt": false, "token": true, "always-sensitive": false, "derive": false, "destroyable": true, "extractable": true, "local": true, "modifiable": true, "never-extractable": false, "private": true, "sensitive": false, "sign": false, "trusted": false, "unwrap": false, "verify": false, "wrap": false, "wrap-with-trusted": false, "key-length-bytes": 57, "ec-point": "0x0487af31882189ec29eddf17a48e8b9cebb075b7b5afc5522fe9c83a029a450cc68592889a1ebf45f32240da5140d58729ffd7b2d44262ddb8", "curve": "secp224r1" } }, "private_key": { "key-reference": "0x0000000000280c82", "key-info": { "key-owners": [ { "username": "cu1", "key-coverage": "full" } ], "shared-users": [], "key-quorum-values": { "manage-key-quorum-value": 0, "use-key-quorum-value": 0 }, "cluster-coverage": "full" }, "attributes": { "key-type": "ec", "label": "ec-private-key-example", "id": "", "check-value": "0xedef86", "class": "private-key", "encrypt": false, "decrypt": true, "token": true, "always-sensitive": true, "derive": false, "destroyable": true, "extractable": true, "local": true, "modifiable": true, "never-extractable": false, "private": true, "sensitive": true, "sign": false, "trusted": false, "unwrap": false, "verify": false, "wrap": false, "wrap-with-trusted": false, "key-length-bytes": 122, "ec-point": "0x0487af31882189ec29eddf17a48e8b9cebb075b7b5afc5522fe9c83a029a450cc68592889a1ebf45f32240da5140d58729ffd7b2d44262ddb8", "curve": "secp224r1" } } } }
예: 쿼럼 값을 사용하여 EC 키 페어 생성

쿼럼 제어로 키를 생성할 때 키는 가장 큰 키 쿼럼 값과 동일한 최소 사용자 수와 연결되어야 합니다. 연결된 사용자에는 키 소유자와 키가 공유되는 Crypto 사용자가 포함됩니다. 키를 공유할 최소 사용자 수를 결정하려면 키 사용량 쿼럼 값과 키 관리 쿼럼 값 사이에서 가장 큰 쿼럼 값을 구하고 1을 빼서 기본적으로 키와 연결된 키 소유자를 고려합니다. 키를 더 많은 사용자와 공유하려면 Cloud를 사용하여 키 공유HSM CLI 명령을 사용합니다.

aws-cloudhsm > key generate-asymmetric-pair ec \ --curve secp224r1 \ --public-label ec-public-key-example \ --private-label ec-private-key-example \ --public-attributes verify=true \ --private-attributes sign=true --share-crypto-users cu2 cu3 cu4 \ --manage-private-key-quorum-value 4 \ --use-private-key-quorum-value 2 { "error_code": 0, "data": { "public_key": { "key-reference": "0x00000000002806eb", "key-info": { "key-owners": [ { "username": "cu1", "key-coverage": "full" } ], "shared-users": [], "key-quorum-values": { "manage-key-quorum-value": 0, "use-key-quorum-value": 0 }, "cluster-coverage": "full" }, "attributes": { "key-type": "ec", "label": "ec-public-key-example", "id": "", "check-value": "0xedef86", "class": "public-key", "encrypt": false, "decrypt": false, "token": true, "always-sensitive": false, "derive": false, "destroyable": true, "extractable": true, "local": true, "modifiable": true, "never-extractable": false, "private": true, "sensitive": false, "sign": false, "trusted": false, "unwrap": false, "verify": true, "wrap": false, "wrap-with-trusted": false, "key-length-bytes": 57, "ec-point": "0x0487af31882189ec29eddf17a48e8b9cebb075b7b5afc5522fe9c83a029a450cc68592889a1ebf45f32240da5140d58729ffd7b2d44262ddb8", "curve": "secp224r1" } }, "private_key": { "key-reference": "0x0000000000280c82", "key-info": { "key-owners": [ { "username": "cu1", "key-coverage": "full" } ], "shared-users": [ { "username": "cu2", "key-coverage": "full" }, { "username": "cu3", "key-coverage": "full" }, { "username": "cu4", "key-coverage": "full" }, ], "key-quorum-values": { "manage-key-quorum-value": 4, "use-key-quorum-value": 2 }, "cluster-coverage": "full" }, "attributes": { "key-type": "ec", "label": "ec-private-key-example", "id": "", "check-value": "0xedef86", "class": "private-key", "encrypt": false, "decrypt": false, "token": true, "always-sensitive": true, "derive": false, "destroyable": true, "extractable": true, "local": true, "modifiable": true, "never-extractable": false, "private": true, "sensitive": true, "sign": true, "trusted": false, "unwrap": false, "verify": false, "wrap": false, "wrap-with-trusted": false, "key-length-bytes": 122, "ec-point": "0x0487af31882189ec29eddf17a48e8b9cebb075b7b5afc5522fe9c83a029a450cc68592889a1ebf45f32240da5140d58729ffd7b2d44262ddb8", "curve": "secp224r1" } } } }

인수

<CLUSTER_ID>

이 작업을 실행할 클러스터의 ID입니다.

필수: 여러 클러스터가 구성된 경우.

<CURVE>

타원 곡선의 식별자를 지정합니다.

  • prime256v1

  • secp256r1

  • secp224r1

  • secp384r1

  • secp256k1

  • secp521r1

필수 여부: 예

<PUBLIC_KEY_ATTRIBUTES>

생성된 EC 퍼블릭 키에 대해 설정할 키 속성의 공백으로 구분된 목록을 KEY_ATTRIBUTE_NAME=KEY_ATTRIBUTE_VALUE(예: verify=true) 형식으로 지정합니다.

지원되는 키 속성 목록은 클라우드의 주요 속성HSM CLI 섹션을 참조하십시오.

필수 여부: 아니요

<PUBLIC_LABEL>

퍼블릭 키에 대해 사용자 정의 레이블을 지정합니다. 에 허용되는 최대 크기는 클라이언트 5.11 이상에 대해 SDK 127자label입니다. 클라이언트 SDK 5.10 이전 버전은 126자로 제한됩니다.

필수 여부: 예

<PRIVATE_KEY_ATTRIBUTES>

생성된 EC 프라이빗 키에 대해 설정할 키 속성의 공백으로 구분된 목록을 KEY_ATTRIBUTE_NAME=KEY_ATTRIBUTE_VALUE(예: sign=true) 형식으로 지정합니다.

지원되는 키 속성 목록은 클라우드의 주요 속성HSM CLI 섹션을 참조하십시오.

필수 여부: 아니요

<PRIVATE_LABEL>

프라이빗 키에 대해 사용자 정의 레이블을 지정합니다. 에 허용되는 최대 크기는 클라이언트 5.11 이상에 대해 SDK 127자label입니다. 클라이언트 SDK 5.10 이전 버전은 126자로 제한됩니다.

필수 여부: 예

<SESSION>

현재 세션에만 존재하는 키를 생성합니다. 세션이 종료된 후에는 키를 복구할 수 없습니다.

다른 키를 암호화한 후 다시 재빨리 암호를 해독하는 래핑 키와 같이 키가 일시적으로 필요한 경우 이 파라미터를 사용합니다. 세션 종료 후에 암호를 해독해야 할 수 있는 데이터를 암호화하는 데 세션 키를 사용해서는 안 됩니다.

기본적으로 생성되는 키는 영구(토큰) 키입니다. <SESSION>에서 전달하면이 인수로 생성된 키가 세션(임시) 키가 되도록이 값이 변경됩니다.

필수 여부: 아니요

<SHARE_CRYPTO_USERS>

EC 프라이빗 키를 공유할 Crypto 사용자 사용자 이름의 공백으로 구분된 목록을 지정합니다.

필수 여부: 아니요

<MANAGE_PRIVATE_KEY_QUORUM_VALUE>

프라이빗 키의 키 관리 작업에 대한 쿼럼 값입니다. 이 값은 키가 연결된 사용자 수보다 작거나 같아야 합니다. 여기에는 키가 공유되는 사용자와 키 소유자가 포함됩니다. 최대값은 8입니다.

필수 여부: 아니요

<USE_PRIVATE_KEY_QUORUM_VALUE>

프라이빗 키의 키 사용 작업에 대한 쿼럼 값입니다. 이 값은 키가 연결된 사용자 수보다 작거나 같아야 합니다. 여기에는 키가 공유되는 사용자와 키 소유자가 포함됩니다. 최대값은 8입니다.

필수 여부: 아니요

관련 주제