Doc AWS SDK 예제 GitHub 리포지토리에서 더 많은 SDK 예제를 사용할 수 있습니다. AWS
기계 번역으로 제공되는 번역입니다. 제공된 번역과 원본 영어의 내용이 상충하는 경우에는 영어 버전이 우선합니다.
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-identifierarn:aws:payment-cryptography:us-east-2:123456789012:key/kwapwa6qaifllw2h\ --cipher-text33612AB9D6929C3A828EB6030082B2BD\ --decryption-attributes 'Symmetric={Mode=CBC}'출력:
{ "KeyArn": "arn:aws:payment-cryptography:us-east-2:123456789012:key/kwapwa6qaifllw2h", "KeyCheckValue": "71D7AE", "PlainText": "31323334313233343132333431323334" }자세한 내용은 AWS Payment Cryptography 사용자 안내서의 데이터 복호화를 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 DecryptData
를 참조하세요.
-
다음 코드 예시에서는 encrypt-data의 사용 방법을 보여줍니다.
- AWS CLI
-
데이터 암호화
다음
encrypt-data예시에서는 대칭 키를 사용하여 일반 텍스트 데이터를 암호화합니다. 이 작업을 수행하려면 키의KeyModesOfUse을Encrypt로 설정하고KeyUsage를TR31_D0_SYMMETRIC_DATA_ENCRYPTION_KEY로 설정해야 합니다.aws payment-cryptography-data encrypt-data \ --key-identifierarn:aws:payment-cryptography:us-east-2:123456789012:key/kwapwa6qaifllw2h\ --plain-text31323334313233343132333431323334\ --encryption-attributes 'Symmetric={Mode=CBC}'출력:
{ "KeyArn": "arn:aws:payment-cryptography:us-east-2:123456789012:key/kwapwa6qaifllw2h", "KeyCheckValue": "71D7AE", "CipherText": "33612AB9D6929C3A828EB6030082B2BD" }자세한 내용은 AWS Payment Cryptography 사용자 안내서의 데이터 암호화를 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 EncryptData
를 참조하세요.
-
다음 코드 예시에서는 generate-card-validation-data의 사용 방법을 보여줍니다.
- AWS CLI
-
CVV 생성
다음
generate-card-validation-data예시에서는 CVV/CVV2를 생성합니다.aws payment-cryptography-data generate-card-validation-data \ --key-identifierarn:aws:payment-cryptography:us-east-2:123456789012:key/kwapwa6qaifllw2h\ --primary-account-number=171234567890123 \ --generation-attributesCardVerificationValue2={CardExpiryDate=0123}출력:
{ "KeyArn": "arn:aws:payment-cryptography:us-east-2:123456789012:key/kwapwa6qaifllw2h", "KeyCheckValue": "CADDA1", "ValidationData": "801" }자세한 내용은 AWS Payment Cryptography 사용자 안내서의 카드 데이터 생성을 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 GenerateCardValidationData
를 참조하세요.
-
다음 코드 예시에서는 generate-mac의 사용 방법을 보여줍니다.
- AWS CLI
-
MAC 생성
다음
generate-card-validation-data예시에서는 HMAC_SHA256 알고리즘과 HMAC 암호화 키를 사용하여 카드 데이터 인증을 위한 해시 기반 메시지 인증 코드(HMAC)를 생성합니다. 키의KeyModesOfUse을TR31_M7_HMAC_KEY로 설정하고KeyUsage를Generate로 설정해야 합니다.aws payment-cryptography-data generate-mac \ --key-identifierarn:aws:payment-cryptography:us-east-2:123456789012:key/kwapwa6qaifllw2h\ --message-data"3b313038383439303031303733393431353d32343038323236303030373030303f33"\ --generation-attributesAlgorithm=HMAC_SHA256출력:
{ "KeyArn": "arn:aws:payment-cryptography:us-east-2:123456789012:key/kwapwa6qaifllw2h, "KeyCheckValue": "2976E7", "Mac": "ED87F26E961C6D0DDB78DA5038AA2BDDEA0DCE03E5B5E96BDDD494F4A7AA470C" }자세한 내용은 AWS Payment Cryptography 사용자 안내서의 MAC 생성을 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 GenerateMac
을 참조하세요.
-
다음 코드 예시에서는 generate-pin-data의 사용 방법을 보여줍니다.
- AWS CLI
-
PIN 생성
다음
generate-card-validation-data예시에서는 Visa PIN 체계를 사용하여 새 무작위 PIN을 생성합니다.aws payment-cryptography-data generate-pin-data \ --generation-key-identifierarn:aws:payment-cryptography:us-east-2:111122223333:key/37y2tsl45p5zjbh2\ --encryption-key-identifierarn:aws:payment-cryptography:us-east-2:111122223333:key/ivi5ksfsuplneuyt\ --primary-account-number171234567890123\ --pin-block-formatISO_FORMAT_0\ --generation-attributesVisaPin={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 세부 정보는 AWS CLI 명령 참조의 GeneratePinData
를 참조하세요.
-
다음 코드 예시에서는 re-encrypt-data의 사용 방법을 보여줍니다.
- AWS CLI
-
다른 키로 데이터 다시 암호화
다음
re-encrypt-data예시에서는 AES 대칭 키를 사용하여 암호화된 사이퍼텍스트를 복호화하고 Derived Unique Key Per Transaction(DUKPT) 키를 사용하여 다시 암호화합니다.aws payment-cryptography-data re-encrypt-data \ --incoming-key-identifierarn:aws:payment-cryptography:us-west-2:111122223333:key/hyvv7ymboitd4vfy\ --outgoing-key-identifierarn:aws:payment-cryptography:us-west-2:111122223333:key/jl6ythkcvzesbxen\ --cipher-text4D2B0BDBA192D5AEFEAA5B3EC28E4A65383C313FFA25140101560F75FE1B99F27192A90980AB9334\ --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 세부 정보는 AWS CLI 명령 참조의 ReEncryptData
를 참조하세요.
-
다음 코드 예시에서는 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-identifierarn:aws:payment-cryptography:us-east-2:111122223333:key/ivi5ksfsuplneuyt\ --outgoing-key-identifierarn: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 세부 정보는 AWS CLI 명령 참조의 TranslatePinData
를 참조하세요.
-
다음 코드 예시에서는 verify-auth-request-cryptogram의 사용 방법을 보여줍니다.
- AWS CLI
-
승인 요청 확인
다음
verify-auth-request-cryptogram예시에서는 승인 요청 암호문(ARQC)을 확인합니다.aws payment-cryptography-data verify-auth-request-cryptogram \ --auth-request-cryptogramF6E1BD1E6037FB3E\ --auth-response-attributes '{"ArpcMethod1": {"AuthResponseCode": "1111"}}' \ --key-identifierarn: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) 확인을 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 VerifyAuthRequestCryptogram
을 참조하세요.
-
다음 코드 예시에서는 verify-card-validation-data의 사용 방법을 보여줍니다.
- AWS CLI
-
CVV 확인
다음
verify-card-validation-data예시에서는 PAN에 대한 CVV/CVV2를 확인합니다.aws payment-cryptography-data verify-card-validation-data \ --key-identifierarn:aws:payment-cryptography:us-east-2:111122223333:key/tqv5yij6wtxx64pi\ --primary-account-number=171234567890123 \ --verification-attributesCardVerificationValue2={CardExpiryDate=0123}\ --validation-data801출력:
{ "KeyArn": "arn:aws:payment-cryptography:us-east-2:111122223333:key/tqv5yij6wtxx64pi", "KeyCheckValue": "CADDA1" }자세한 내용은 AWS Payment Cryptography 사용자 안내서의 카드 데이터 확인을 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 VerifyCardValidationData
를 참조하세요.
-
다음 코드 예시에서는 verify-mac의 사용 방법을 보여줍니다.
- AWS CLI
-
MAC 확인
다음
verify-mac예시에서는 HMAC_SHA256 알고리즘과 HMAC 암호화 키를 사용하여 카드 데이터 인증을 위한 해시 기반 메시지 인증 코드(HMAC)를 확인합니다.aws payment-cryptography-data verify-mac \ --key-identifierarn:aws:payment-cryptography:us-east-2:111122223333:key/qnobl5lghrzunce6\ --message-data"3b343038383439303031303733393431353d32343038323236303030373030303f33"\ --verification-attributes='Algorithm=HMAC_SHA256' \ --macED87F26E961C6D0DDB78DA5038AA2BDDEA0DCE03E5B5E96BDDD494F4A7AA470C출력:
{ "KeyArn": "arn:aws:payment-cryptography:us-east-2:111122223333:key/qnobl5lghrzunce6, "KeyCheckValue": "2976E7", }자세한 내용은 AWS Payment Cryptography 사용자 안내서의 MAC 확인을 참조하세요.
-
API 세부 정보는 AWS CLI 명령 참조의 VerifyMac
을 참조하세요.
-
다음 코드 예시에서는 verify-pin-data의 사용 방법을 보여줍니다.
- AWS CLI
-
PIN 확인
다음
verify-pin-data예시에서는 PAN의 PIN을 확인합니다.aws payment-cryptography-data verify-pin-data \ --verification-key-identifierarn:aws:payment-cryptography:us-east-2:111122223333:key/37y2tsl45p5zjbh2\ --encryption-key-identifierarn:aws:payment-cryptography:us-east-2:111122223333:key/ivi5ksfsuplneuyt\ --primary-account-number171234567890123\ --pin-block-formatISO_FORMAT_0\ --verification-attributes VisaPin="{PinVerificationKeyIndex=1,VerificationValue=5507}" \ --encrypted-pin-blockAC17DC148BDA645E출력:
{ "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 세부 정보는 AWS CLI 명령 참조의 VerifyPinData
를 참조하세요.
-