

Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.

# Daten verschlüsseln, entschlüsseln und erneut verschlüsseln
<a name="crypto-ops.encryptdecrypt"></a>

Verschlüsselungs- und Entschlüsselungsmethoden können verwendet werden, um Daten mithilfe einer Vielzahl von symmetrischen und asymmetrischen Techniken wie TDES, AES und RSA zu verschlüsseln oder zu entschlüsseln. [[Diese Methoden unterstützen auch Schlüssel, die mit DUKPT- und EMV-Techniken abgeleitet wurden.](terminology.md#terms.emv)](terminology.md#terms.dukpt) Für Anwendungsfälle, in denen Sie Daten unter einem neuen Schlüssel sichern möchten, ohne die zugrunde liegenden Daten offenzulegen, kann der ReEncrypt Befehl auch verwendet werden.

**Anmerkung**  
 Bei der Verwendung der encrypt/decrypt Funktionen wird davon ausgegangen, dass alle Eingaben in HexBinary vorliegen. Beispielsweise wird ein Wert von 1 als 31 (Hex) eingegeben und ein kleingeschriebenes t wird als 74 (Hex) dargestellt. Alle Ausgaben sind ebenfalls in HexBinary. 

[Einzelheiten zu allen verfügbaren Optionen finden Sie im API-Leitfaden für [Encrypt, [Decrypt and Re-Encrypt](https://docs.aws.amazon.com/payment-cryptography/latest/DataAPIReference/API_DecryptData.html)](https://docs.aws.amazon.com/payment-cryptography/latest/DataAPIReference/API_EncryptData.html).](https://docs.aws.amazon.com/payment-cryptography/latest/DataAPIReference/API_ReEncryptData.html) 

**Topics**
+ [Daten verschlüsseln](encrypt-data.md)
+ [Daten entschlüsseln](decrypt-data.md)

# Daten verschlüsseln
<a name="encrypt-data"></a>

 [[Die `Encrypt Data` API wird verwendet, um Daten mit symmetrischen und asymmetrischen Datenverschlüsselungsschlüsseln sowie von DUKPT und EMV abgeleiteten Schlüsseln zu verschlüsseln.](terminology.md#terms.emv)](terminology.md#terms.dukpt) Verschiedene Algorithmen und Varianten werden unterstützt, darunter, und. `TDES` `RSA` `AES`

Die wichtigsten Eingaben sind der Verschlüsselungsschlüssel, der zur Verschlüsselung der Daten verwendet wird, die Klartextdaten im HexBinary-Format, die verschlüsselt werden sollen, und Verschlüsselungsattribute wie Initialisierungsvektor und Modus für Blockchiffren wie TDES. Die Klartextdaten müssen ein Vielfaches von 8 Byte für`TDES`, 16 Byte für `AES` und der Länge des Schlüssels im Fall von sein. `RSA` Symmetrische Tasteneingaben (TDES, AES, DUKPT, EMV) sollten aufgefüllt werden, falls die Eingabedaten diese Anforderungen nicht erfüllen. Die folgende Tabelle zeigt die maximale Klartext-Länge für jeden Schlüsseltyp und den Fülltyp, den Sie für RSA-Schlüssel definieren. `EncryptionAttributes`


| Füllungstyp | RSA\$12048 | RSA\$13072 | RSA\$14096 | 
| --- | --- | --- | --- | 
| OAEP SHA1 | 428 | 684 | 940 | 
| OAEP SHA256 | 380 | 636 | 892 | 
| OAEP SHA512 | 252 | 508 | 764 | 
| PKCS1 | 488 | 744 | 1000 | 
| None | 488 | 744 | 1000 | 

Die primären Ausgaben enthalten die verschlüsselten Daten als Chiffretext im HexBinary-Format und den Prüfsummenwert für den Verschlüsselungsschlüssel. [Einzelheiten zu allen verfügbaren Optionen finden Sie im API-Leitfaden für Encrypt.](https://docs.aws.amazon.com/payment-cryptography/latest/DataAPIReference/API_EncryptData.html) 

**Topics**
+ [Verschlüsseln Sie Daten mit einem symmetrischen AES-Schlüssel](#w2aac15c16c11c13)
+ [Verschlüsseln Sie Daten mit dem DUKPT-Schlüssel](#w2aac15c16c11c15)
+ [Verschlüsseln Sie Daten mit einem von EMV abgeleiteten symmetrischen Schlüssel](#w2aac15c16c11c17)
+ [Verschlüsseln Sie Daten mit einem RSA-Schlüssel](#crypto-ops.encrypt-rsa)

## Verschlüsseln Sie Daten mit einem symmetrischen AES-Schlüssel
<a name="w2aac15c16c11c13"></a>

**Anmerkung**  
 Alle Beispiele gehen davon aus, dass der entsprechende Schlüssel bereits existiert. Schlüssel können mithilfe der [CreateKey](create-keys.md)Operation erstellt oder mithilfe der [ImportKey](keys-import.md)Operation importiert werden. 

**Example**  
 In diesem Beispiel verschlüsseln wir Klartextdaten mit einem symmetrischen Schlüssel, der mithilfe der Operation erstellt oder mithilfe der [CreateKey](create-keys.md)Operation importiert wurde. [ImportKey](keys-import.md) Für diesen Vorgang muss der Schlüssel auf `Encrypt` und KeyUsage auf KeyModesOfUse gesetzt sein. `TR31_D0_SYMMETRIC_DATA_ENCRYPTION_KEY` Weitere Optionen finden Sie unter [Schlüssel für kryptografische Operationen](crypto-ops-validkeys-ops.md).   

```
$ 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"
}
```

## Verschlüsseln Sie Daten mit dem DUKPT-Schlüssel
<a name="w2aac15c16c11c15"></a>

**Example**  
 [In diesem Beispiel verschlüsseln wir Klartextdaten mit einem DUKPT-Schlüssel.](terminology.md#terms.dukpt) AWS Zahlungskryptografie unterstützt `TDES` und DUKPT-Schlüssel. `AES` Für diesen Vorgang muss der Schlüssel auf `DeriveKey` und KeyUsage auf KeyModesOfUse gesetzt sein. `TR31_B0_BASE_DERIVATION_KEY` Weitere Optionen finden Sie unter [Schlüssel für kryptografische Operationen](crypto-ops-validkeys-ops.md).   

```
$ 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"
}
```

## Verschlüsseln Sie Daten mit einem von EMV abgeleiteten symmetrischen Schlüssel
<a name="w2aac15c16c11c17"></a>

**Example**  
 In diesem Beispiel verschlüsseln wir Klartextdaten mit einem von EMV abgeleiteten symmetrischen Schlüssel, der bereits erstellt wurde. Sie könnten einen Befehl wie diesen verwenden, um Daten an eine EMV-Karte zu senden. Für diesen Vorgang muss KeyModesOfUse der Schlüssel auf `Derive` und auf `TR31_E1_EMV_MKEY_CONFIDENTIALITY` oder KeyUsage `TR31_E6_EMV_MKEY_OTHER` gesetzt sein. Weitere Informationen finden Sie unter [Schlüssel für kryptografische Operationen](crypto-ops-validkeys-ops.md).   

```
$ 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"
}
```

## Verschlüsseln Sie Daten mit einem RSA-Schlüssel
<a name="crypto-ops.encrypt-rsa"></a>

**Example**  
 In diesem Beispiel verschlüsseln wir Klartextdaten mit einem [öffentlichen RSA-Schlüssel, der mit der Operation](terminology.md#terms.publickey) importiert wurde. [ImportKey](keys-import.md) Für diesen Vorgang muss der Schlüssel auf `Encrypt` und KeyUsage auf KeyModesOfUse gesetzt sein. `TR31_D1_ASYMMETRIC_KEY_FOR_DATA_ENCRYPTION` Weitere Optionen finden Sie unter [Schlüssel für kryptografische Operationen](crypto-ops-validkeys-ops.md).   
 *Für PKCS \$17 oder andere Padding-Schemata, die derzeit nicht unterstützt werden, bewerben Sie sich bitte, bevor Sie den Service aufrufen, und wählen Sie kein Padding aus, indem Sie den Padding-Indikator 'Asymmetric= \$1\$1 'weglassen*   

```
$ aws payment-cryptography-data encrypt-data --key-identifier arn:aws:payment-cryptography:us-east-2:111122223333: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"
}
```

# Daten entschlüsseln
<a name="decrypt-data"></a>

 [[Die `Decrypt Data` API wird verwendet, um Daten mit symmetrischen und asymmetrischen Datenverschlüsselungsschlüsseln sowie von DUKPT und EMV abgeleiteten Schlüsseln zu entschlüsseln.](terminology.md#terms.emv)](terminology.md#terms.dukpt) Verschiedene Algorithmen und Varianten werden unterstützt, darunter, und. `TDES` `RSA` `AES`

 Die wichtigsten Eingaben sind der Entschlüsselungsschlüssel, der zum Entschlüsseln der Daten verwendet wird, die Chiffretextdaten im HexBinary-Format, die entschlüsselt werden sollen, und Entschlüsselungsattribute wie Initialisierungsvektor, Modus als Blockchiffren usw. Die primären Ausgaben umfassen die entschlüsselten Daten als Klartext im HexBinary-Format und den Prüfsummenwert für den Entschlüsselungsschlüssel. [Einzelheiten zu allen verfügbaren Optionen finden Sie im API-Leitfaden für Decrypt.](https://docs.aws.amazon.com/payment-cryptography/latest/DataAPIReference/API_DecryptData.html) 

**Topics**
+ [Entschlüsseln Sie Daten mit dem symmetrischen AES-Schlüssel](#w2aac15c16c13b9)
+ [Entschlüsseln Sie Daten mit dem DUKPT-Schlüssel](#w2aac15c16c13c11)
+ [Entschlüsseln Sie Daten mithilfe eines von EMV abgeleiteten symmetrischen Schlüssels](#w2aac15c16c13c13)
+ [Entschlüsseln Sie Daten mit einem RSA-Schlüssel](#crypto-ops.decrypt-rsa)

## Entschlüsseln Sie Daten mit dem symmetrischen AES-Schlüssel
<a name="w2aac15c16c13b9"></a>

**Example**  
 In diesem Beispiel werden wir Chiffretextdaten mit einem symmetrischen Schlüssel entschlüsseln. Dieses Beispiel zeigt einen `AES` Schlüssel, aber `TDES_2KEY` er wird auch unterstützt. `TDES_3KEY` Für diesen Vorgang muss der Schlüssel auf KeyModesOfUse gesetzt `Decrypt` und auf KeyUsage gesetzt sein`TR31_D0_SYMMETRIC_DATA_ENCRYPTION_KEY`. Weitere Optionen finden Sie unter [Schlüssel für kryptografische Operationen](crypto-ops-validkeys-ops.md).   

```
$ aws payment-cryptography-data decrypt-data --key-identifier arn:aws:payment-cryptography:us-east-2:111122223333:key/tqv5yij6wtxx64pi --cipher-text 33612AB9D6929C3A828EB6030082B2BD --decryption-attributes 'Symmetric={Mode=CBC}'
```

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

## Entschlüsseln Sie Daten mit dem DUKPT-Schlüssel
<a name="w2aac15c16c13c11"></a>

**Anmerkung**  
 Die Verwendung von Entschlüsselungsdaten mit DUKPT für P2PE-Transaktionen kann dazu führen, dass Kreditkarten-PAN und andere Karteninhaberdaten an Ihre Anwendung zurückgegeben werden, die bei der Bestimmung des PCI-DSS-Umfangs berücksichtigt werden müssen. 

**Example**  
 In diesem Beispiel werden wir Chiffretextdaten mithilfe eines [DUKPT-Schlüssels](terminology.md#terms.dukpt) entschlüsseln, der mit der Operation erstellt oder mit der Operation importiert wurde. [CreateKey[ImportKey](keys-import.md)](create-keys.md) Für diesen Vorgang muss der Schlüssel auf gesetzt und auf KeyModesOfUse gesetzt sein`DeriveKey`. KeyUsage `TR31_B0_BASE_DERIVATION_KEY` Weitere Optionen finden Sie unter [Schlüssel für kryptografische Operationen](crypto-ops-validkeys-ops.md). Wenn Sie für den `TDES` Algorithmus verwenden`DUKPT`, muss die Länge der Chiffretext-Daten ein Vielfaches von 16 Byte sein. Für `AES` Algorithmen muss die Länge der Chiffretext-Daten ein Vielfaches von 32 Byte sein.   

```
$ aws payment-cryptography-data decrypt-data --key-identifier arn:aws:payment-cryptography:us-east-2:111122223333:key/tqv5yij6wtxx64pi --cipher-text 33612AB9D6929C3A828EB6030082B2BD --decryption-attributes 'Dukpt={KeySerialNumber=FFFF9876543210E00001}'
```

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

## Entschlüsseln Sie Daten mithilfe eines von EMV abgeleiteten symmetrischen Schlüssels
<a name="w2aac15c16c13c13"></a>

**Example**  
 In diesem Beispiel werden wir Chiffretextdaten mit einem von EMV abgeleiteten symmetrischen Schlüssel entschlüsseln, der mit der Operation erstellt oder mit der Operation importiert wurde. [CreateKey[ImportKey](keys-import.md)](create-keys.md) Für diesen Vorgang muss der Schlüssel auf und auf oder KeyModesOfUse gesetzt sein. `Derive` KeyUsage `TR31_E1_EMV_MKEY_CONFIDENTIALITY` `TR31_E6_EMV_MKEY_OTHER` Weitere Informationen finden Sie unter [Schlüssel für kryptografische Operationen](crypto-ops-validkeys-ops.md).   

```
$ aws payment-cryptography-data decrypt-data --key-identifier arn:aws:payment-cryptography:us-east-2:111122223333:key/tqv5yij6wtxx64pi --cipher-text 33612AB9D6929C3A828EB6030082B2BD --decryption-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",
"PlainText": "31323334313233343132333431323334"
}
```

## Entschlüsseln Sie Daten mit einem RSA-Schlüssel
<a name="crypto-ops.decrypt-rsa"></a>

**Example**  
 In diesem Beispiel werden wir Chiffretextdaten mit einem [RSA-Schlüsselpaar](terminology.md#terms.privatekey) entschlüsseln, das mit der Operation erstellt wurde. [CreateKey](create-keys.md) Für diesen Vorgang muss der Schlüssel auf aktiviert `Decrypt` und auf KeyModesOfUse gesetzt sein. KeyUsage `TR31_D1_ASYMMETRIC_KEY_FOR_DATA_ENCRYPTION` Weitere Optionen finden Sie unter [Schlüssel für kryptografische Operationen](crypto-ops-validkeys-ops.md).   
 Für PKCS \$17 oder andere Padding-Schemata, die derzeit nicht unterstützt werden, wählen Sie bitte kein Padding aus, indem Sie den Padding-Indikator *'Asymmetric= \$1\$1* 'weglassen und das Padding nach dem Aufrufen des Dienstes entfernen.   

```
$ aws payment-cryptography-data decrypt-data \ 
        --key-identifier arn:aws:payment-cryptography:us-east-2:111122223333:key/5dza7xqd6soanjtb --cipher-text 8F4C1CAFE7A5DEF9A40BEDE7F2A264635C... \ 
        --decryption-attributes 'Asymmetric={PaddingType=OAEP_SHA256}'
```

```
{
    "KeyArn": "arn:aws:payment-cryptography:us-east-1:111122223333:key/5dza7xqd6soanjtb",
    "KeyCheckValue": "FF9DE9CE",
    "PlainText": "31323334313233343132333431323334"
}
```