Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Crittografare i dati
 L'Encrypt DataAPI viene utilizzata per crittografare i dati utilizzando chiavi di crittografia dei dati simmetriche e asimmetriche, nonché chiavi derivate da DUKPT ed EMV. Sono supportati vari algoritmi e varianti, tra cui, e. TDES RSA AES
Gli input principali sono la chiave di crittografia utilizzata per crittografare i dati, i dati in testo semplice in formato HexBinary da crittografare e gli attributi di crittografia come il vettore di inizializzazione e la modalità per i cifrari a blocchi come TDES. I dati in chiaro devono essere espressi in multipli di 8 byte per, 16 byte per TDES e della lunghezza della chiave nel caso di. AES RSA Gli input chiave simmetrici (TDES, AES, DUKPT, EMV) devono essere aggiunti nei casi in cui i dati di input non soddisfino questi requisiti. La tabella seguente mostra la lunghezza massima del testo in chiaro per ogni tipo di chiave e il tipo di padding definito per le chiavi RSA. EncryptionAttributes
| Tipo di imbottitura | RSA_2048 | RSA_3072 | RSA_4096 | 
|---|---|---|---|
OAEP SHA1 | 
                        428 | 684 | 940 | 
OAEP SHA256 | 
                        380 | 636 | 892 | 
OAEP SHA512 | 
                        252 | 508 | 764 | 
PKCS1 | 
                        488 | 744 | 1000 | 
None | 
                        488 | 744 | 1000 | 
Gli output primari includono i dati crittografati come testo cifrato in formato HexBinary e il valore di checksum per la chiave di crittografia. Per i dettagli su tutte le opzioni disponibili, consulta la Guida API per Encrypt.
Esempi
Crittografa i dati utilizzando la chiave simmetrica AES
Nota
 In questo esempio, crittograferemo i dati in chiaro utilizzando una chiave simmetrica che è stata creata utilizzando l'CreateKeyOperazione o importata utilizzando l'Operazione. ImportKey Per questa operazione, la chiave deve essere impostata su e  KeyModesOfUse  impostata su. Encrypt  KeyUsage  TR31_D0_SYMMETRIC_DATA_ENCRYPTION_KEY Per ulteriori opzioni, consulta la sezione Chiavi per le operazioni crittografiche. 
$aws payment-cryptography-data encrypt-data --key-identifier arn:aws:payment-cryptography:us-east-2:111122223333:key/tqv5yij6wtxx64pi --plain-text 31323334313233343132333431323334 --encryption-attributes 'Symmetric={Mode=CBC}'
{ "KeyArn": "arn:aws:payment-cryptography:us-east-2:111122223333:key/tqv5yij6wtxx64pi", "KeyCheckValue": "71D7AE", "CipherText": "33612AB9D6929C3A828EB6030082B2BD" }
Crittografa i dati utilizzando la chiave DUKPT
 In questo esempio, crittograferemo i dati in chiaro utilizzando una chiave DUKPT. AWS Supporti per la crittografia dei pagamenti e le chiavi DUKPT. TDES AES Per questa operazione, la chiave deve essere impostata DeriveKey e  KeyModesOfUse   KeyUsage  impostata su. TR31_B0_BASE_DERIVATION_KEY Per ulteriori opzioni, consulta la sezione Chiavi per le operazioni crittografiche. 
$aws payment-cryptography-data encrypt-data --key-identifier arn:aws:payment-cryptography:us-east-2:111122223333:key/tqv5yij6wtxx64pi --plain-text 31323334313233343132333431323334 --encryption-attributes 'Dukpt={KeySerialNumber=FFFF9876543210E00001}'
{ "KeyArn": "arn:aws:payment-cryptography:us-east-2:111122223333:key/tqv5yij6wtxx64pi", "KeyCheckValue": "71D7AE", "CipherText": "33612AB9D6929C3A828EB6030082B2BD" }
Crittografa i dati utilizzando una chiave simmetrica derivata da EMV
 In questo esempio, crittograferemo i dati di testo non crittografato utilizzando una chiave simmetrica derivata da EMV che è già stata creata. È possibile utilizzare un comando come questo per inviare dati a una scheda EMV. Per questa operazione, la chiave deve essere  KeyModesOfUse  impostata su Derive e  KeyUsage  impostata su TR31_E1_EMV_MKEY_CONFIDENTIALITY oTR31_E6_EMV_MKEY_OTHER. Per maggiori dettagli, consulta Keys for Cryptographic Operations. 
$aws payment-cryptography-data encrypt-data --key-identifier arn:aws:payment-cryptography:us-east-2:111122223333:key/tqv5yij6wtxx64pi --plain-text 33612AB9D6929C3A828EB6030082B2BD --encryption-attributes 'Emv={MajorKeyDerivationMode=EMV_OPTION_A,PanSequenceNumber=27,PrimaryAccountNumber=1000000000000432,SessionDerivationData=02BB000000000000, InitializationVector=1500000000000999,Mode=CBC}'
{ "KeyArn": "arn:aws:payment-cryptography:us-east-2:111122223333:key/tqv5yij6wtxx64pi", "KeyCheckValue": "71D7AE", "CipherText": "33612AB9D6929C3A828EB6030082B2BD" }
Crittografa i dati utilizzando una chiave RSA
 In questo esempio, crittograferemo i dati in chiaro utilizzando una chiave pubblica RSA che è stata importata utilizzando l'operazione. ImportKey Per questa operazione, la chiave deve essere impostata su e  KeyModesOfUse  impostata su. Encrypt  KeyUsage  TR31_D1_ASYMMETRIC_KEY_FOR_DATA_ENCRYPTION Per ulteriori opzioni, consulta la sezione Chiavi per le operazioni crittografiche. 
Per PKCS #7 o altri schemi di padding non attualmente supportati, richiedi prima di chiamare il servizio e seleziona no padding omettendo l'indicatore di padding 'Asymmetric= {} '
$aws payment-cryptography-data encrypt-data --key-identifier arn:aws:payment-cryptography:us-east-2::key/thfezpmsalcfwmsg --plain-text 31323334313233343132333431323334 --encryption-attributes 'Asymmetric={PaddingType=OAEP_SHA256}'
{ "CipherText": "12DF6A2F64CC566D124900D68E8AFEAA794CA819876E258564D525001D00AC93047A83FB13 \ E73F06329A100704FA484A15A49F06A7A2E55A241D276491AA91F6D2D8590C60CDE57A642BC64A897F4832A3930 \ 0FAEC7981102CA0F7370BFBF757F271EF0BB2516007AB111060A9633D1736A9158042D30C5AE11F8C5473EC70F067 \ 72590DEA1638E2B41FAE6FB1662258596072B13F8E2F62F5D9FAF92C12BB70F42F2ECDCF56AADF0E311D4118FE3591 \ FB672998CCE9D00FFFE05D2CD154E3120C5443C8CF9131C7A6A6C05F5723B8F5C07A4003A5A6173E1B425E2B5E42AD \ 7A2966734309387C9938B029AFB20828ACFC6D00CD1539234A4A8D9B94CDD4F23A", "KeyArn": "arn:aws:payment-cryptography:us-east-1:111122223333:key/5dza7xqd6soanjtb", "KeyCheckValue": "FF9DE9CE" }