

本文為英文版的機器翻譯版本，如內容有任何歧義或不一致之處，概以英文版為準。

# 取得和付款引導程式
<a name="use-cases-acquirers"></a>

收單機構、PSPs和 Payment Facilators 通常具有與發行者不同的一組密碼編譯要求。常用案例包括：

**資料解密**  <a name="use-cases-acquirers.decryptdata"></a>
資料 （特別是平移資料） 可能由付款終端機加密，且需要由後端解密。[Decrypt Data](https://docs.aws.amazon.com/payment-cryptography/latest/DataAPIReference/API_DecryptData.html) 和 Encrypt Data 支援各種方法，包括 TDES、AES 和 DUKPT 衍生技術。 AWS 付款密碼編譯服務本身也符合 PCI P2PE 規範，並已註冊為 PCI P2PE 解密元件。

**TranslatePin**  <a name="use-cases-acquirers.translatepin"></a>
為了維持 PCI PIN 合規，擷取系統在安全裝置上輸入後，不應讓持卡人接腳保持清晰。因此，若要將接腳從終端機傳遞到下游系統 （例如付款網路或發行者），需要使用與付款終端機使用的金鑰不同的金鑰來重新加密。[使用 servicebbb 安全地將加密的 PIN 從一個金鑰轉換為另一個金鑰，即可](https://docs.aws.amazon.com/payment-cryptography/latest/DataAPIReference/API_TranslatePinData.html)完成轉換 Pin。使用此命令，您可以在 TDES、AES 和 DUKPT 衍生等各種方案之間轉換接腳，以及 ISO-0, ISO-3 和 ISO-4 等接腳區塊格式。

**VerifyMac**  <a name="use-cases-acquirers.verifymac"></a>
來自付款終端機的資料可能是 MAC，以確保資料未在傳輸中修改。[驗證 Mac](https://docs.aws.amazon.com/payment-cryptography/latest/DataAPIReference/API_VerifyMac.html) 和 GenerateMac 是否支援各種技術，包括 TDES、AES 和 DUKPT 衍生技術，可與 ISO-9797-1 演算法 1、ISO-9797-1 演算法 3 （零售 MAC) 和 CMAC 技術搭配使用。

**Topics**
+ [使用動態金鑰](use-cases-acquirers-dynamickeys.md)

# 使用動態金鑰
<a name="use-cases-acquirers-dynamickeys"></a>

 動態金鑰允許一次性或有限使用金鑰用於密碼編譯操作，例如 `[EncryptData](https://docs.aws.amazon.com/payment-cryptography/latest/DataAPIReference/API_EncryptData.html)`。當金鑰材料頻繁輪換 （例如在每個卡片交易上），並且想要避免將金鑰材料匯入服務時，可以使用此流程。短期金鑰可用作 [softPOS/Mpoc](terminology.md#terms.mpoc) 或其他解決方案的一部分。

**注意**  
 這可用於代替使用 AWS 付款密碼編譯的典型流程，其中密碼編譯金鑰是建立或匯入服務，而金鑰是使用金鑰別名或金鑰 arn 指定。

下列操作支援動態金鑰：
+ EncryptData
+ DecryptData
+ ReEncryptData
+ TranslatePin

## 解密資料
<a name="use-case-acquirers-dynamickeys.examples.decryptdata"></a>

 下列範例顯示搭配解密命令使用動態金鑰。在此情況下，金鑰識別符是保護解密金鑰的包裝金鑰 (KEK) （以 TR-31 格式在包裝金鑰參數中提供）。包裝金鑰應為 D0 的關鍵用途，以搭配解密命令以及 B 或 D 的使用模式使用。

**Example**  

```
$ aws payment-cryptography-data decrypt-data --key-identifier arn:aws:payment-cryptography:us-east-2:111122223333:key/ov6icy4ryas4zcza --cipher-text 1234123412341234123412341234123A --decryption-attributes 'Symmetric={Mode=CBC,InitializationVector=1234123412341234}'   --wrapped-key WrappedKeyMaterial={"Tr31KeyBlock"="D0112D0TN00E0000B05A6E82D7FC68B95C84306634B0000DA4701BE9BCA318B3A30A400B059FD4A8DE19924A9D3EE459F24FDE680F8E4A40"}
```

```
{
   "KeyArn": "arn:aws:payment-cryptography:us-east-2:111122223333:key/ov6icy4ryas4zcza",
   "KeyCheckValue": "0A3674",
   "PlainText": "2E138A746A0032023BEF5B85BA5060BA"
}
```

## 翻譯 PIN 碼
<a name="use-case-acquirers-dynamickeys.examples.translatepin"></a>

 下列範例顯示使用動態金鑰和轉譯接腳命令，將動態金鑰轉譯為半靜態取得器工作金鑰 (AWK)。在這種情況下，傳入金鑰識別符是包裝金鑰 (KEK)，用於保護 TR-31 格式提供的動態 PIN 加密金鑰 (PEK)。包裝金鑰應該是 的金鑰用途，`P0`以及 B 或 D 的使用模式。傳出金鑰識別符是 類型的金鑰`TR31_P0_PIN_ENCRYPTION_KEY`和 Encrypt=true、Wrap=true 的使用模式 

**Example**  

```
$ aws payment-cryptography-data translate-pin-data --encrypted-pin-block "C7005A4C0FA23E02" --incoming-translation-attributes=IsoFormat0='{PrimaryAccountNumber=171234567890123}' --incoming-key-identifier alias/PARTNER1_KEK  --outgoing-key-identifier alias/ACQUIRER_AWK_PEK --outgoing-translation-attributes IsoFormat0="{PrimaryAccountNumber=171234567890123}"  --incoming-wrapped-key WrappedKeyMaterial={"Tr31KeyBlock"="D0112P0TB00S0000EB5D8E63076313162B04245C8CE351C956EA4A16CC32EB3FB61DE3FC75C751734B773F5B645943A854C65740738B8304"}
```

```
{
   "PinBlock": "2E66192BDA390C6F",
   "KeyArn": "arn:aws:payment-cryptography:us-east-2:111122223333:key/ov6icy4ryas4zcza",
   "KeyCheckValue": "0A3674"
}
```