AWS Payment Cryptography 를 사용한 데이터 플레인 예제 AWS CLI - AWS Command Line Interface

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

AWS Payment Cryptography 를 사용한 데이터 플레인 예제 AWS CLI

다음 코드 예제에서는 AWS Payment Cryptography 데이터 플레인과 AWS Command Line Interface 함께 를 사용하여 작업을 수행하고 일반적인 시나리오를 구현하는 방법을 보여줍니다.

작업은 대규모 프로그램에서 발췌한 코드이며 컨텍스트에 맞춰 실행해야 합니다. 작업은 개별 서비스 함수를 직접적으로 호출하는 방법을 보여주며 관련 시나리오의 컨텍스트에 맞는 작업을 볼 수 있습니다.

각 예제에는 컨텍스트에서 코드를 설정하고 실행하는 방법에 대한 지침을 찾을 수 있는 전체 소스 코드에 대한 링크가 포함되어 있습니다.

주제

작업

다음 코드 예시에서는 decrypt-data을 사용하는 방법을 보여 줍니다.

AWS CLI

암호 텍스트를 복호화하려면

다음 decrypt-data 예제에서는 대칭 키를 사용하여 암호 텍스트 데이터를 복호화합니다. 이 작업을 수행하려면 키가 로 KeyModesOfUse 설정되어 Decrypt 있고 로 KeyUsage 설정되어 있어야 합니다TR31_D0_SYMMETRIC_DATA_ENCRYPTION_KEY.

aws payment-cryptography-data decrypt-data \ --key-identifier arn:aws:payment-cryptography:us-east-2:123456789012:key/kwapwa6qaifllw2h \ --cipher-text 33612AB9D6929C3A828EB6030082B2BD \ --decryption-attributes 'Symmetric={Mode=CBC}'

출력:

{ "KeyArn": "arn:aws:payment-cryptography:us-east-2:123456789012:key/kwapwa6qaifllw2h", "KeyCheckValue": "71D7AE", "PlainText": "31323334313233343132333431323334" }

자세한 내용은 AWS Payment Cryptography 사용 설명서데이터 복호화를 참조하세요.

  • 자세한 API 내용은 명령 참조DecryptData의 섹션을 참조하세요. AWS CLI

다음 코드 예시에서는 encrypt-data을 사용하는 방법을 보여 줍니다.

AWS CLI

데이터를 암호화하려면

다음 encrypt-data 예제에서는 대칭 키를 사용하여 일반 텍스트 데이터를 암호화합니다. 이 작업을 수행하려면 키가 로 KeyModesOfUse 설정되어 Encrypt 있고 로 KeyUsage 설정되어 있어야 합니다TR31_D0_SYMMETRIC_DATA_ENCRYPTION_KEY.

aws payment-cryptography-data encrypt-data \ --key-identifier arn:aws:payment-cryptography:us-east-2:123456789012:key/kwapwa6qaifllw2h \ --plain-text 31323334313233343132333431323334 \ --encryption-attributes 'Symmetric={Mode=CBC}'

출력:

{ "KeyArn": "arn:aws:payment-cryptography:us-east-2:123456789012:key/kwapwa6qaifllw2h", "KeyCheckValue": "71D7AE", "CipherText": "33612AB9D6929C3A828EB6030082B2BD" }

자세한 내용은 AWS Payment Cryptography 사용 설명서데이터 암호화를 참조하세요.

  • 자세한 API 내용은 명령 참조EncryptData의 섹션을 참조하세요. AWS CLI

다음 코드 예시에서는 generate-card-validation-data을 사용하는 방법을 보여 줍니다.

AWS CLI

를 생성하려면 CVV

다음 generate-card-validation-data 예제에서는 CVV/를 생성합니다CVV2.

aws payment-cryptography-data generate-card-validation-data \ --key-identifier arn:aws:payment-cryptography:us-east-2:123456789012:key/kwapwa6qaifllw2h \ --primary-account-number=171234567890123 \ --generation-attributes CardVerificationValue2={CardExpiryDate=0123}

출력:

{ "KeyArn": "arn:aws:payment-cryptography:us-east-2:123456789012:key/kwapwa6qaifllw2h", "KeyCheckValue": "CADDA1", "ValidationData": "801" }

자세한 내용은 AWS Payment Cryptography 사용 설명서카드 데이터 생성을 참조하세요.

다음 코드 예시에서는 generate-mac을 사용하는 방법을 보여 줍니다.

AWS CLI

를 생성하려면 MAC

다음 generate-card-validation-data 예제에서는 알고리즘 HMAC_SHA256 및 HMAC 암호화 키를 사용하여 카드 데이터 인증을 위한 해시 기반 메시지 인증 코드(HMAC)를 생성합니다. 키는 TR31_M7_HMAC_KEY 로, KeyModesOfUseKeyUsage 설정되어 있어야 합니다Generate.

aws payment-cryptography-data generate-mac \ --key-identifier arn:aws:payment-cryptography:us-east-2:123456789012:key/kwapwa6qaifllw2h \ --message-data "3b313038383439303031303733393431353d32343038323236303030373030303f33" \ --generation-attributes Algorithm=HMAC_SHA256

출력:

{ "KeyArn": "arn:aws:payment-cryptography:us-east-2:123456789012:key/kwapwa6qaifllw2h, "KeyCheckValue": "2976E7", "Mac": "ED87F26E961C6D0DDB78DA5038AA2BDDEA0DCE03E5B5E96BDDD494F4A7AA470C" }

자세한 내용은 AWS Payment Cryptography 사용 설명서생성을 MAC 참조하세요.

  • 자세한 API 내용은 명령 참조GenerateMac의 섹션을 참조하세요. AWS CLI

다음 코드 예시에서는 generate-pin-data을 사용하는 방법을 보여 줍니다.

AWS CLI

를 생성하려면 PIN

다음 generate-card-validation-data 예제에서는 Visa PIN 체계를 PIN 사용하여 새 무작위를 생성합니다.

aws payment-cryptography-data generate-pin-data \ --generation-key-identifier arn:aws:payment-cryptography:us-east-2:111122223333:key/37y2tsl45p5zjbh2 \ --encryption-key-identifier arn:aws:payment-cryptography:us-east-2:111122223333:key/ivi5ksfsuplneuyt \ --primary-account-number 171234567890123 \ --pin-block-format ISO_FORMAT_0 \ --generation-attributes VisaPin={PinVerificationKeyIndex=1}

출력:

{ "GenerationKeyArn": "arn:aws:payment-cryptography:us-east-2:111122223333:key/37y2tsl45p5zjbh2", "GenerationKeyCheckValue": "7F2363", "EncryptionKeyArn": "arn:aws:payment-cryptography:us-east-2:111122223333:key/ivi5ksfsuplneuyt", "EncryptionKeyCheckValue": "7CC9E2", "EncryptedPinBlock": "AC17DC148BDA645E", "PinData": { "VerificationValue": "5507" } }

자세한 내용은 AWS Payment Cryptography 사용 설명서 PIN 데이터 생성을 참조하세요.

  • 자세한 API 내용은 명령 참조GeneratePinData의 섹션을 참조하세요. AWS CLI

다음 코드 예시에서는 re-encrypt-data을 사용하는 방법을 보여 줍니다.

AWS CLI

다른 키로 데이터를 다시 암호화하려면

다음 re-encrypt-data 예제에서는 AES 대칭 키를 사용하여 암호화된 암호 텍스트를 복호화하고 트랜잭션당 파생된 고유 키(DUKPT) 키를 사용하여 다시 암호화합니다.

aws payment-cryptography-data re-encrypt-data \ --incoming-key-identifier arn:aws:payment-cryptography:us-west-2:111122223333:key/hyvv7ymboitd4vfy \ --outgoing-key-identifier arn:aws:payment-cryptography:us-west-2:111122223333:key/jl6ythkcvzesbxen \ --cipher-text 4D2B0BDBA192D5AEFEAA5B3EC28E4A65383C313FFA25140101560F75FE1B99F27192A90980AB9334 \ --incoming-encryption-attributes "Dukpt={Mode=ECB,KeySerialNumber=0123456789111111}" \ --outgoing-encryption-attributes '{"Symmetric": {"Mode": "ECB"}}'

출력:

{ "CipherText": "F94959DA30EEFF0C035483C6067667CF6796E3C1AD28C2B61F9CFEB772A8DD41C0D6822931E0D3B1", "KeyArn": "arn:aws:payment-cryptography:us-west-2:111122223333:key/jl6ythkcvzesbxen", "KeyCheckValue": "2E8CD9" }

자세한 내용은 AWS Payment Cryptography 사용 설명서데이터 암호화 및 복호화를 참조하세요.

  • 자세한 API 내용은 명령 참조ReEncryptData의 섹션을 참조하세요. AWS CLI

다음 코드 예시에서는 translate-pin-data을 사용하는 방법을 보여 줍니다.

AWS CLI

PIN 데이터를 번역하려면

다음 translate-pin-data 예제에서는 를 ISO 0 PIN 블록을 사용하는 PEK TDES 암호화PIN에서 DUKPT 알고리즘을 사용하는 AES ISO 4 PIN 블록으로 변환합니다.

aws payment-cryptography-data translate-pin-data \ --encrypted-pin-block "AC17DC148BDA645E" \ --incoming-translation-attributes=IsoFormat0='{PrimaryAccountNumber=171234567890123}' \ --incoming-key-identifier arn:aws:payment-cryptography:us-east-2:111122223333:key/ivi5ksfsuplneuyt \ --outgoing-key-identifier arn:aws:payment-cryptography:us-east-2:111122223333:key/4pmyquwjs3yj4vwe \ --outgoing-translation-attributes IsoFormat4="{PrimaryAccountNumber=171234567890123}" \ --outgoing-dukpt-attributes KeySerialNumber="FFFF9876543210E00008"

출력:

{ "PinBlock": "1F4209C670E49F83E75CC72E81B787D9", "KeyArn": "arn:aws:payment-cryptography:us-east-2:111122223333:key/ivi5ksfsuplneuyt "KeyCheckValue": "7CC9E2" }

자세한 내용은 AWS Payment Cryptography 사용 설명서 PIN 데이터 번역을 참조하세요.

  • 자세한 API 내용은 명령 참조TranslatePinData의 섹션을 참조하세요. AWS CLI

다음 코드 예시에서는 verify-auth-request-cryptogram을 사용하는 방법을 보여 줍니다.

AWS CLI

인증 요청을 확인하려면

다음 verify-auth-request-cryptogram 예제에서는 권한 부여 요청 암호()를 확인합니다ARQC.

aws payment-cryptography-data verify-auth-request-cryptogram \ --auth-request-cryptogram F6E1BD1E6037FB3E \ --auth-response-attributes '{"ArpcMethod1": {"AuthResponseCode": "1111"}}' \ --key-identifier arn:aws:payment-cryptography:us-west-2:111122223333:key/pboipdfzd4mdklya \ --major-key-derivation-mode "EMV_OPTION_A" \ --session-key-derivation-attributes '{"EmvCommon": {"ApplicationTransactionCounter": "1234","PanSequenceNumber": "01","PrimaryAccountNumber": "471234567890123"}}' \ --transaction-data "123456789ABCDEF"

출력:

{ "AuthResponseValue": "D899B8C6FBF971AA", "KeyArn": "arn:aws:payment-cryptography:us-west-2:111122223333:key/pboipdfzd4mdklya", "KeyCheckValue": "985792" }

자세한 내용은 AWS Payment Cryptography 사용 설명서인증 요청 확인(ARQC) 암호를 참조하세요.

다음 코드 예시에서는 verify-card-validation-data을 사용하는 방법을 보여 줍니다.

AWS CLI

를 검증하려면 CVV

다음 verify-card-validation-data 예제에서는 에 대해 CVV/CVV2를 검증합니다PAN.

aws payment-cryptography-data verify-card-validation-data \ --key-identifier arn:aws:payment-cryptography:us-east-2:111122223333:key/tqv5yij6wtxx64pi \ --primary-account-number=171234567890123 \ --verification-attributes CardVerificationValue2={CardExpiryDate=0123} \ --validation-data 801

출력:

{ "KeyArn": "arn:aws:payment-cryptography:us-east-2:111122223333:key/tqv5yij6wtxx64pi", "KeyCheckValue": "CADDA1" }

자세한 내용은 AWS Payment Cryptography 사용 설명서카드 데이터 확인을 참조하세요.

다음 코드 예시에서는 verify-mac을 사용하는 방법을 보여 줍니다.

AWS CLI

를 확인하려면 MAC

다음 verify-mac 예제에서는 알고리즘 HMAC_SHA256 및 HMAC 암호화 키를 사용하여 카드 데이터 인증을 위한 해시 기반 메시지 인증 코드(HMAC)를 확인합니다.

aws payment-cryptography-data verify-mac \ --key-identifier arn:aws:payment-cryptography:us-east-2:111122223333:key/qnobl5lghrzunce6 \ --message-data "3b343038383439303031303733393431353d32343038323236303030373030303f33" \ --verification-attributes='Algorithm=HMAC_SHA256' \ --mac ED87F26E961C6D0DDB78DA5038AA2BDDEA0DCE03E5B5E96BDDD494F4A7AA470C

출력:

{ "KeyArn": "arn:aws:payment-cryptography:us-east-2:111122223333:key/qnobl5lghrzunce6, "KeyCheckValue": "2976E7", }

자세한 내용은 AWS Payment Cryptography 사용 설명서확인을 MAC 참조하세요.

  • 자세한 API 내용은 명령 참조VerifyMac의 섹션을 참조하세요. AWS CLI

다음 코드 예시에서는 verify-pin-data을 사용하는 방법을 보여 줍니다.

AWS CLI

를 확인하려면 PIN

다음 verify-pin-data 예제에서는 에 PIN 대한 를 검증합니다PAN.

aws payment-cryptography-data verify-pin-data \ --verification-key-identifier arn:aws:payment-cryptography:us-east-2:111122223333:key/37y2tsl45p5zjbh2 \ --encryption-key-identifier arn:aws:payment-cryptography:us-east-2:111122223333:key/ivi5ksfsuplneuyt \ --primary-account-number 171234567890123 \ --pin-block-format ISO_FORMAT_0 \ --verification-attributes VisaPin="{PinVerificationKeyIndex=1,VerificationValue=5507}" \ --encrypted-pin-block AC17DC148BDA645E

출력:

{ "VerificationKeyArn": "arn:aws:payment-cryptography:us-east-2:111122223333:key/37y2tsl45p5zjbh2", "VerificationKeyCheckValue": "7F2363", "EncryptionKeyArn": "arn:aws:payment-cryptography:us-east-2:111122223333:key/ivi5ksfsuplneuyt", "EncryptionKeyCheckValue": "7CC9E2", }

자세한 내용은 AWS Payment Cryptography 사용 설명서 PIN 데이터 확인을 참조하세요.

  • 자세한 API 내용은 명령 참조VerifyPinData의 섹션을 참조하세요. AWS CLI