기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
BYOCA(Bring Your Own Certificate Authority)
기본적으로 서비스 내에서 생성된 비대칭(RSA,ECC) 키에 퍼블릭 키 인증서가 필요한 경우 이러한 인증서는 AWS Payment Cryptography 및 계정 고유 인증 기관(CA)에서 발급합니다. 이렇게 하면 CA를 식별 또는 설정하거나 인증서 서명 요청(CSR)을 관리할 필요 없이 X.509를 간단하게 사용할 수 있습니다.
AWS Payment Cryptography는 정책 또는 규정 준수 이유로 필요한 경우 자체 CA를 사용할 수 있는 기능도 제공합니다.
개요
BYOCA를 사용하면 TR-34 가져오기/내보내기, RSA 언래핑 및 ECDH 키 전송에 자체 CA를 사용할 수 있습니다. 조직 전체에서 일관된 인증서 체인이 필요하거나 파트너에게 특정 CA 인증서가 필요한 경우 BYOCA를 사용합니다. 다음 예제에서는 TR-34 키 내보내기 및 TR-34 키 가져오기를 위한 BYOCA 워크플로를 보여줍니다.
표준 TR-34 흐름과는 세 가지 주요 차이점이 있습니다.
-
CreateKey를 사용하여 RSA 키를 생성합니다. 또는에서 이전에
GetParametersForExportGetParametersForImport생성했습니다. -
GetCertificateSigningRequest API는 CSR을 생성합니다. 그러면 외부 CA가 서명할 수 있습니다.
중요 고려 사항
-
이 예제에서는 RSA-2048 키를 사용하고 TDES-2KEY 키를 래핑합니다. AES-128을 내보낼 때 모든 키가 RSA-3072 또는 RSA-4096인지 확인합니다.
-
가장 일반적인 오류는
SigningKeyIdentifier및 로 표시되는 키가 일치하지 않는다는SigningKeyCertificate것입니다.
BYOCA 내보내기 워크플로
다음 단계에서는 TR-34 내보내기를 위한 전체 BYOCA 워크플로를 보여줍니다.
단계(Steps)
1단계: RSA 키 생성
먼저 궁극적으로 KDH 서명 인증서가 될 RSA 키 페어를 생성합니다. 태그를 추가하여 키의 목적을 식별할 수 있습니다.
예서명을 위한 RSA 키 생성
$aws payment-cryptography create-key --exportable \ --key-attributes KeyAlgorithm=RSA_2048,KeyUsage=TR31_S0_ASYMMETRIC_KEY_FOR_DIGITAL_SIGNATURE,KeyClass=ASYMMETRIC_KEY_PAIR,KeyModesOfUse='{Sign=True}'
{ "Key": { "KeyArn": "arn:aws:payment-cryptography:us-east-1:111122223333:key/xgmq6fs6uow736uc", "KeyAttributes": { "KeyUsage": "TR31_S0_ASYMMETRIC_KEY_FOR_DIGITAL_SIGNATURE", "KeyClass": "ASYMMETRIC_KEY_PAIR", "KeyAlgorithm": "RSA_2048", "KeyModesOfUse": { "Sign": true } }, "KeyCheckValue": "41E3723C", "KeyCheckValueAlgorithm": "SHA_1", "Enabled": true, "Exportable": true, "KeyState": "CREATE_COMPLETE", "KeyOrigin": "AWS_PAYMENT_CRYPTOGRAPHY" } }
다음 단계에서 KeyArn 필요하므로를 기록해 둡니다.
2단계: 인증서 서명 요청 생성
GetCertificateSigningRequest API를 사용하여 외부 CA가 서명할 인증서 서명 요청(CSR)을 생성합니다. 출력은 base64로 인코딩된 PEM 파일입니다. 콘텐츠를 base64로 디코딩하고 저장하는 경우 PEM 형식의 유효한 CSR이 있습니다.
예 CSR 생성
$aws payment-cryptography-data get-certificate-signing-request \ --key-identifier arn:aws:payment-cryptography:us-east-1:111122223333:key/xgmq6fs6uow736uc \ --signing-algorithm SHA512 \ --certificate-subject '{ "CommonName": "MyCertificateAWSUSEAST", "Organization": "Amazon", "OrganizationUnit": "PaymentCryptography", "Country": "US", "StateOrProvince": "Virginia", "City": "Arlington" }'
{ "CertificateSigningRequest": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURSBSRVFVRVNULS0tLS0..." }
CertificateSigningRequest 필드에는 base64로 인코딩된 전체 PEM 파일이 포함되어 있습니다. PEM 파일에는 -----BEGIN CERTIFICATE REQUEST----- 및 -----END CERTIFICATE REQUEST----- 마커가 포함되어 있습니다. 서명을 위해이 값을 CA로 보냅니다.
3단계: CSR 검토(선택 사항)
선택적으로 OpenSSL을 사용하여 CSR 콘텐츠를 검토하고 예상대로 유효한지 확인할 수 있습니다.
예 OpenSSL을 사용하여 CSR 검토
$echo "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURSBSRVFVRVNULS0tLS0..." | base64 -d | openssl req -text
4단계: 인증 기관을 통해 CSR 서명
CSR을 생성한 후에는 인증 기관(CA)의 서명을 받아야 합니다. 프로덕션 환경에서는 일반적으로 AWS Private CA 또는 조직의 설정된 CA 인프라를 사용합니다. 테스트 목적으로 OpenSSL을 사용하여 자체 서명된 인증서를 생성할 수 있습니다.
사용 AWS Private CA
를 사용하여 CSR에 서명하려면 AWS Private CA먼저 base64로 인코딩된 CSR을 디코딩하고 파일에 저장한 다음 IssueCertificate API를 사용합니다.
예를 사용하여 CSR 서명 AWS Private CA
$echo "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURSBSRVFVRVNULS0tLS0..." | base64 -d > csr.pem$aws acm-pca issue-certificate \ --certificate-authority-arn arn:aws:acm-pca:us-east-1:111122223333:certificate-authority/12345678-1234-1234-1234-123456789012 \ --csr fileb://csr.pem \ --signing-algorithm SHA256WITHRSA \ --validity Value=365,Type=DAYS
{ "CertificateArn": "arn:aws:acm-pca:us-east-1:111122223333:certificate-authority/12345678-1234-1234-1234-123456789012/certificate/abcdef1234567890" }
그런 다음 서명된 인증서를 검색합니다.
예서명된 인증서 검색
$aws acm-pca get-certificate \ --certificate-authority-arn arn:aws:acm-pca:us-east-1:111122223333:certificate-authority/12345678-1234-1234-1234-123456789012 \ --certificate-arn arn:aws:acm-pca:us-east-1:111122223333:certificate-authority/12345678-1234-1234-1234-123456789012/certificate/abcdef1234567890
{ "Certificate": "-----BEGIN CERTIFICATE-----\nMIID...\n-----END CERTIFICATE-----", "CertificateChain": "-----BEGIN CERTIFICATE-----\nMIID...\n-----END CERTIFICATE-----" }
내보내기 단계에서 사용할 인증서 콘텐츠를 저장합니다. ExportKey API에 제공할 때 base64 인코딩이 필요합니다.
테스트에 OpenSSL 사용
테스트 목적으로 OpenSSL을 사용하여 자체 서명된 CA를 생성하고 CSR에 서명할 수 있습니다. 먼저 CA 프라이빗 키와 자체 서명된 인증서를 생성합니다.
예 OpenSSL을 사용하여 테스트 CA 생성
$# Generate CA private key openssl genrsa -out ca-key.pem 4096$# Create self-signed CA certificate openssl req -new -x509 -days 3650 -key ca-key.pem -out ca-cert.pem \ -subj "/C=US/ST=Virginia/L=Arlington/O=TestOrg/CN=Test CA"
그런 다음 이전 단계에서 CSR을 디코딩하고 테스트 CA로 서명합니다.
예 OpenSSL을 사용하여 CSR 서명
$# Decode the base64-encoded CSR echo "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURSBSRVFVRVNULS0tLS0..." | base64 -d > csr.pem$# Sign the CSR with the CA openssl x509 -req -in csr.pem -CA ca-cert.pem -CAkey ca-key.pem \ -CAcreateserial -out signed-cert.pem -days 365 -sha512
Certificate request self-signature ok subject=C=US, ST=Virginia, L=Arlington, O=Amazon, OU=PaymentCryptography, CN=MyCertificateAWSUSEAST
이제 서명된 인증서가에 있습니다signed-cert.pem. ExportKey API에 인증서를 제공할 때이 인증서를 base64로 인코딩해야 합니다.
예 Base64 서명된 인증서 인코딩
$cat signed-cert.pem | base64 -w 0
5단계: CA 인증서 가져오기
임의의 인증서가 사용되지 않도록 하려면 사용 중인 모든 CA를 먼저 신뢰해야 합니다. ImportKey API를 사용하여 외부 CA의 루트 인증서를 가져옵니다. 중간 CA를 사용하는 경우를 import-key 다시 호출하되 TrustedPublicKey 대신를 지정RootCertificatePublicKey하고 루트 CA ARN을 지정합니다.
예루트 CA 인증서 가져오기
$aws payment-cryptography import-key --key-material='{ "RootCertificatePublicKey": { "KeyAttributes": { "KeyAlgorithm": "RSA_4096", "KeyClass": "PUBLIC_KEY", "KeyModesOfUse": { "Verify": true }, "KeyUsage": "TR31_S0_ASYMMETRIC_KEY_FOR_DIGITAL_SIGNATURE" }, "PublicKeyCertificate": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0t..." } }'
{ "Key": { "KeyArn": "arn:aws:payment-cryptography:us-east-1:111122223333:key/xivpaqy7qbbm7cdw", "KeyAttributes": { "KeyUsage": "TR31_S0_ASYMMETRIC_KEY_FOR_DIGITAL_SIGNATURE", "KeyClass": "PUBLIC_KEY", "KeyAlgorithm": "RSA_4096", "KeyModesOfUse": { "Verify": true } }, "Enabled": true, "KeyState": "CREATE_COMPLETE", "KeyOrigin": "EXTERNAL" } }
내보내기 단계에서 KeyArn 사용할 CA를 기록해 둡니다.
6단계: KRD 암호화 인증서 가져오기
이 예제에서는 AWS Payment Cryptography로 다시 가져오므로 GetParametersForImport API를 사용하여 KRD 퍼블릭 키 인증서를 수신하도록 서비스를 호출합니다. 실제 시나리오에서는 HSM, ATM, 결제 터미널 또는 결제 터미널 관리 시스템과 같은 다른 시스템에서 이를 제공합니다.
예가져오기를 위한 파라미터 가져오기
$aws payment-cryptography-data get-parameters-for-import \ --key-material-type "TR34_KEY_BLOCK" \ --wrapping-key-algorithm RSA_2048
{ "WrappingKeyCertificate": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0t...", "WrappingKeyCertificateChain": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0t...", "WrappingKeyAlgorithm": "RSA_2048", "ImportToken": "import-token-v2rxpl6drxeptn7w", "ParametersValidUntilTimestamp": "2025-11-01T18:45:31.271000-07:00" }
7단계: BYOCA를 사용하여 키 내보내기
마지막으로 ExportKey API를 사용하여 자체 CA 서명 인증서와 함께 TR-34를 사용하여 키를 내보냅니다. ExportKey 외부 CA에서 서명한 서명 인증서를 제공합니다.
예 BYOCA를 사용하여 TR-34 내보내기
$aws payment-cryptography-data export-key \ --export-key-identifier arn:aws:payment-cryptography:us-east-1:111122223333:key/iox73p5f4c4yjiod \ --key-material '{ "Tr34KeyBlock": { "CertificateAuthorityPublicKeyIdentifier": "arn:aws:payment-cryptography:us-east-1:111122223333:key/j625deyfqlwctu57", "SigningKeyIdentifier": "arn:aws:payment-cryptography:us-east-1:111122223333:key/xgmq6fs6uow736uc", "SigningKeyCertificate": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0t...", "KeyBlockFormat": "X9_TR34_2012", "WrappingKeyCertificate": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0t..." } }'
{ "WrappedKey": { "WrappedKeyMaterialFormat": "TR34_KEY_BLOCK", "KeyMaterial": "3082055A06092A864886F70D010702A082054B30820547...", "KeyCheckValue": "3DCA31", "KeyCheckValueAlgorithm": "ANSI_X9_24" } }
이제 수신 시스템에서 표준 TR-34 가져오기 프로세스를 사용하여 내보낸 키 블록을 가져올 수 있습니다.
BYOCA 가져오기 워크플로
다음 단계에서는 TR-34 키 가져오기를 위한 BYOCA 워크플로를 안내합니다. 이 워크플로를 사용하여 자체 CA 서명 KRD(키 수신 디바이스) 암호화 인증서로 AWS Payment Cryptography에 키를 수신합니다. BYOCA 가져오기를 사용하면 이미 관리하는 CA를 사용하여 신뢰 체인을 제어할 수 있습니다.
단계(Steps)
1단계: RSA 키 생성
KRD 암호화 키로 사용할 RSA 키 페어를 생성합니다. 이 키는 TR-34 가져오기 중에 수신 키를 언래핑하고 복호화합니다. 키는 서비스 내에서 수신 키로 유지되므로 내보낼 수 없습니다.
예 KRD 암호화 키 생성
$aws payment-cryptography create-key \ --key-attributes KeyAlgorithm=RSA_2048,KeyUsage=TR31_K2_TR34_ASYMMETRIC_KEY,KeyClass=ASYMMETRIC_KEY_PAIR,KeyModesOfUse='{Unwrap=True,Decrypt=True}'
{ "Key": { "KeyArn": "arn:aws:payment-cryptography:us-east-1:111122223333:key/bm7t4qv8hzk24jce", "KeyAttributes": { "KeyUsage": "TR31_K2_TR34_ASYMMETRIC_KEY", "KeyClass": "ASYMMETRIC_KEY_PAIR", "KeyAlgorithm": "RSA_2048", "KeyModesOfUse": { "Unwrap": true, "Decrypt": true } }, "KeyCheckValue": "7FA29C1E", "KeyCheckValueAlgorithm": "SHA_1", "Enabled": true, "Exportable": false, "KeyState": "CREATE_COMPLETE", "KeyOrigin": "AWS_PAYMENT_CRYPTOGRAPHY" } }
KeyArn 값을 기록해 둡니다. 이 정보는 다음 단계에서 필요합니다.
2단계: 인증서 서명 요청 생성
GetCertificateSigningRequest API를 사용하여 KRD 암호화 키에 대한 인증서 서명 요청(CSR)을 생성합니다. 출력은 base64로 인코딩된 PEM 파일입니다. 콘텐츠를 base64로 디코딩하고 저장하는 경우 PEM 형식의 유효한 CSR이 있습니다.
예 KRD 키에 대한 CSR 생성
$aws payment-cryptography-data get-certificate-signing-request \ --key-identifier arn:aws:payment-cryptography:us-east-1:111122223333:key/bm7t4qv8hzk24jce \ --signing-algorithm SHA512 \ --certificate-subject '{ "CommonName": "MyImportKRDCertAWSUSEAST", "Organization": "Amazon", "OrganizationUnit": "PaymentCryptography", "Country": "US", "StateOrProvince": "Virginia", "City": "Arlington" }'
{ "CertificateSigningRequest": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURSBSRVFVRVNULS0tLS0..." }
CertificateSigningRequest 필드에는 base64로 인코딩된 전체 PEM 파일이 포함되어 있습니다. PEM 파일에는 -----BEGIN CERTIFICATE REQUEST----- 및 -----END CERTIFICATE REQUEST----- 마커가 포함됩니다. 서명을 위해이 값을 CA로 보냅니다.
3단계: CSR 검토(선택 사항)
선택적으로 OpenSSL을 사용하여 CSR 콘텐츠를 검토하고 예상대로 유효한지 확인할 수 있습니다.
예 OpenSSL을 사용하여 CSR 검토
$echo "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURSBSRVFVRVNULS0tLS0..." | base64 -d | openssl req -text
4단계: 인증 기관을 통해 CSR 서명
CSR을 생성한 후 인증 기관(CA)의 서명을 받습니다. 프로덕션 환경에서는 일반적으로 AWS Private CA 또는 조직의 설정된 CA 인프라를 사용합니다. 테스트 목적으로 OpenSSL을 사용하여 자체 서명된 인증서를 생성할 수 있습니다.
사용 AWS Private CA
를 사용하여 CSR에 서명하려면 AWS Private CA먼저 base64로 인코딩된 CSR을 디코딩하고 파일에 저장한 다음 IssueCertificate API를 사용합니다.
예를 사용하여 CSR 서명 AWS Private CA
$echo "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURSBSRVFVRVNULS0tLS0..." | base64 -d > krd-csr.pem$aws acm-pca issue-certificate \ --certificate-authority-arn arn:aws:acm-pca:us-east-1:111122223333:certificate-authority/12345678-1234-1234-1234-123456789012 \ --csr fileb://krd-csr.pem \ --signing-algorithm SHA256WITHRSA \ --validity Value=365,Type=DAYS
{ "CertificateArn": "arn:aws:acm-pca:us-east-1:111122223333:certificate-authority/12345678-1234-1234-1234-123456789012/certificate/fedcba0987654321" }
그런 다음 서명된 인증서를 검색합니다.
예서명된 인증서 검색
$aws acm-pca get-certificate \ --certificate-authority-arn arn:aws:acm-pca:us-east-1:111122223333:certificate-authority/12345678-1234-1234-1234-123456789012 \ --certificate-arn arn:aws:acm-pca:us-east-1:111122223333:certificate-authority/12345678-1234-1234-1234-123456789012/certificate/fedcba0987654321
{ "Certificate": "-----BEGIN CERTIFICATE-----\nMIID...\n-----END CERTIFICATE-----", "CertificateChain": "-----BEGIN CERTIFICATE-----\nMIID...\n-----END CERTIFICATE-----" }
가져오기 단계에서 사용할 인증서 콘텐츠를 저장합니다. ImportKey API에 제공하기 전에 인증서를 Base64-encode합니다.
테스트에 OpenSSL 사용
테스트 목적으로 OpenSSL을 사용하여 자체 서명된 CA를 생성하고 CSR에 서명할 수 있습니다. 먼저 CA 프라이빗 키와 자체 서명된 인증서를 생성합니다.
예 OpenSSL을 사용하여 테스트 CA 생성
$# Generate CA private key openssl genrsa -out ca-key.pem 4096$# Create self-signed CA certificate openssl req -new -x509 -days 3650 -key ca-key.pem -out ca-cert.pem \ -subj "/C=US/ST=Virginia/L=Arlington/O=TestOrg/CN=Test CA"
그런 다음 이전 단계에서 CSR을 디코딩하고 테스트 CA로 서명합니다.
예 OpenSSL을 사용하여 CSR 서명
$# Decode the base64-encoded CSR echo "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURSBSRVFVRVNULS0tLS0..." | base64 -d > krd-csr.pem$# Sign the CSR with the CA openssl x509 -req -in krd-csr.pem -CA ca-cert.pem -CAkey ca-key.pem \ -CAcreateserial -out krd-signed-cert.pem -days 365 -sha512
Certificate request self-signature ok subject=C=US, ST=Virginia, L=Arlington, O=Amazon, OU=PaymentCryptography, CN=MyImportKRDCertAWSUSEAST
이제 서명된 인증서가에 있습니다krd-signed-cert.pem. ImportKey API에 제공하기 전에이 인증서를 Base64-encode합니다.
예 Base64 서명된 인증서 인코딩
$cat krd-signed-cert.pem | base64 -w 0
5단계: CA 인증서 가져오기
CA를 사용하기 전에 먼저 CA를 신뢰해야 합니다. ImportKey API를 사용하여 외부 CA의 루트 인증서를 가져옵니다. 중간 CA를 사용하는 경우를 import-key 다시 호출하되 TrustedPublicKey 대신를 지정RootCertificatePublicKey하고 루트 CA ARN을 지정합니다.
예루트 CA 인증서 가져오기
$aws payment-cryptography import-key --key-material='{ "RootCertificatePublicKey": { "KeyAttributes": { "KeyAlgorithm": "RSA_4096", "KeyClass": "PUBLIC_KEY", "KeyModesOfUse": { "Verify": true }, "KeyUsage": "TR31_S0_ASYMMETRIC_KEY_FOR_DIGITAL_SIGNATURE" }, "PublicKeyCertificate": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0t..." } }'
{ "Key": { "KeyArn": "arn:aws:payment-cryptography:us-east-1:111122223333:key/nqr3c5v2wp6yl8az", "KeyAttributes": { "KeyUsage": "TR31_S0_ASYMMETRIC_KEY_FOR_DIGITAL_SIGNATURE", "KeyClass": "PUBLIC_KEY", "KeyAlgorithm": "RSA_4096", "KeyModesOfUse": { "Verify": true } }, "Enabled": true, "KeyState": "CREATE_COMPLETE", "KeyOrigin": "EXTERNAL" } }
가져오기 단계에서 KeyArn 사용할 CA를 기록해 둡니다.
6단계: 전송 시스템에서 KDH 서명 인증서 가져오기
TR-34 키 교환에서 전송 측(키 배포 호스트 또는 KDH)은 서명을 위해 퍼블릭 키 인증서를 제공합니다. 이 인증서는 가져오기 중에 래핑된 키 블록의 서명을 확인하여 키 구성 요소가 신뢰할 수 있는 발신자로부터 왔는지 확인하는 데 사용됩니다. 프로덕션 환경에서이 인증서는 일반적으로 자체 인증서 배포 프로세스를 통해 HSM, 결제 터미널 또는 키 관리 시스템과 같은 전송 시스템에서 가져옵니다.
이 예제에서는 AWS Payment Cryptography를 발신자와 수신자 모두로 사용하여 단계를 짧게 유지합니다. GetParametersForExport를 호출하여 일반적으로 전송 시스템에서 제공하는 KDH 서명 인증서를 가져옵니다.
예내보내기를 위한 파라미터 가져오기
$aws payment-cryptography-data get-parameters-for-export \ --key-material-type "TR34_KEY_BLOCK" \ --signing-key-algorithm RSA_2048
{ "ExportToken": "export-token-k8sfhe2w9rjy4bx6", "SigningKeyCertificate": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0t...", "SigningKeyCertificateChain": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0t...", "SigningKeyAlgorithm": "RSA_2048", "ParametersValidUntilTimestamp": "2025-11-01T18:45:31.271000-07:00" }
가져오기 단계에서 사용할 수 SigningKeyCertificate 있도록 ExportToken 및를 기록해 둡니다.
7단계: BYOCA로 키 가져오기
마지막으로 ImportKey API를 사용하여 자체 CA 서명 인증서와 함께 TR-34를 사용하여 키를 가져옵니다. 외부 CA에서 서명한 KRD 암호화 인증서를 제공합니다.
RandomNonce 파라미터는 2-pass TR-34를 사용할 때 필요합니다. 서비스는 넌스를 생성하지 않습니다. 이는 사용자가 생성하는 임의의 16진수 값이며 전송 및 수신 측 모두에서 동일해야 합니다. 1-pass TR-34(nonce 대신 타임스탬프에 의존)를 사용하는 경우 타임스탬프가 미래가 아니어야 합니다. 서비스는 특정 신선도를 검증하지 않지만(예: 특정 시간 이내) 필요한 경우 사용자 측에서 신선도 검사를 적용할 수 있습니다.
예 BYOCA를 사용하여 TR-34 가져오기
$aws payment-cryptography import-key --key-material='{ "Tr34KeyBlock": { "CertificateAuthorityPublicKeyIdentifier": "arn:aws:payment-cryptography:us-east-1:111122223333:key/nqr3c5v2wp6yl8az", "KeyBlockFormat": "X9_TR34_2012", "RandomNonce": "4997FBB4587D571F", "SigningKeyCertificate": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0t...", "WrappingKeyCertificate": "LS0tLS1CRUdJTiBDRVJUSUZJQ0FURS0tLS0t...", "WrappingKeyIdentifier": "arn:aws:payment-cryptography:us-east-1:111122223333:key/bm7t4qv8hzk24jce", "WrappedKeyBlock": "D0112B0AX00E0000B82679114F470F540165EDFBF407..." } }'
{ "Key": { "KeyArn": "arn:aws:payment-cryptography:us-east-1:111122223333:key/gwz7u3rfxd4o52sb", "KeyAttributes": { "KeyUsage": "TR31_K0_KEY_ENCRYPTION_KEY", "KeyClass": "SYMMETRIC_KEY", "KeyAlgorithm": "TDES_2KEY", "KeyModesOfUse": { "Encrypt": true, "Decrypt": true } }, "KeyCheckValue": "3DCA31", "KeyCheckValueAlgorithm": "ANSI_X9_24", "Enabled": true, "Exportable": true, "KeyState": "CREATE_COMPLETE", "KeyOrigin": "EXTERNAL" } }
이제 키를 AWS Payment Cryptography로 가져와 사용할 준비가 되었습니다. KeyOrigin 필드는 서비스 외부에서 키가 왔EXTERNAL음을 나타냅니다.
추가 참고 사항:
-
이 예제는 AWS CLI를 사용하여 표시됩니다. Java, Python, Go, Rust를 포함한 모든 AWS SDKs에서 동일한 기능을 사용할 수 있습니다.
-
자체 서명된 CA로 테스트하는 경우 OpenSSL을 사용하여 테스트 CA를 생성하고 CSR에 서명할 수 있습니다. 프로덕션 환경에서는 조직의 설정된 CA 인프라를 사용합니다.