

Terjemahan disediakan oleh mesin penerjemah. Jika konten terjemahan yang diberikan bertentangan dengan versi bahasa Inggris aslinya, utamakan versi bahasa Inggris.

# Kunci yang valid untuk operasi kriptografi
<a name="crypto-ops-validkeys-ops"></a>

Kunci tertentu hanya dapat digunakan untuk operasi tertentu. Selain itu, beberapa operasi dapat membatasi mode penggunaan kunci untuk kunci. Silakan lihat tabel berikut untuk kombinasi yang diizinkan. 

**catatan**  
Kombinasi tertentu, meskipun diizinkan, dapat menciptakan situasi yang tidak dapat digunakan seperti menghasilkan kode CVV `(generate)` tetapi kemudian tidak dapat memverifikasinya. `(verify)` 

**Topics**
+ [GenerateCardData](#w2aac15c31b9)
+ [VerifyCardData](#w2aac15c31c11)
+ [GeneratePinData (untuk VISA/ABA skema)](#w2aac15c31c15)
+ [GeneratePinData (untuk `IBM3624)`](#w2aac15c31c17)
+ [VerifyPinData (untuk VISA/ABA skema)](#w2aac15c31c21)
+ [VerifyPinData (untuk `IBM3624)`](#w2aac15c31c23)
+ [Dekripsi Data](#w2aac15c31c27)
+ [Enkripsi Data](#w2aac15c31c33)
+ [Terjemahkan Pin Data](#w2aac15c31c39)
+ [Generate/Verify MAC](#crypto-ops-validkeys.generatemac)
+ [GenerateMacEmvPinChange](#crypto-ops-validkeys.generatemacemvpinchange)
+ [VerifyAuthRequestCryptogram](#w2aac15c31c51)
+ [Import/Export Kunci](#crypto-ops-validkeys.importexport)
+ [Jenis kunci yang tidak digunakan](#w2aac15c31c57)

## GenerateCardData
<a name="w2aac15c31b9"></a>


| Titik Akhir API | Operasi atau Algoritma Kriptografi | Penggunaan Kunci yang Diizinkan | Algoritma Kunci yang Diizinkan | Kombinasi yang diizinkan dari mode penggunaan utama | 
| --- | --- | --- | --- | --- | 
| GenerateCardData |  +  AMEX\_CARD\_SECURITY\_CODE\_VERSION\_1 <br />+  AMEX\_CARD\_SECURITY\_CODE\_VERSION\_2   | TR31\_C0\_CARD\_VERIFICATION\_KEY |  +   TDES\_2KUNCI  <br />+   TDES\_3KUNCI    | {Hasilkan = benar}, {Hasilkan = benar, Verifikasi = benar} | 
| GenerateCardData |  +  CARD\_VERIFICATION\_VALUE\_1 <br />+  CARD\_VERIFICATION\_VALUE\_2   | TR31\_C0\_CARD\_VERIFICATION\_KEY |  +   TDES\_2KUNCI    | {Hasilkan = benar}, {Hasilkan = benar, Verifikasi = benar} | 
| GenerateCardData |  +  CARDHOLDER\_AUTHENTICATION\_VERIFICATION\_VALUE   | TR31\_E6\_EMV\_MKEY\_OTHER |  +   TDES\_2KUNCI    | { DeriveKey = benar} | 
| GenerateCardData |  +  DYNAMIC\_CARD\_VERIFICATION\_CODE   | TR31\_E4\_EMV\_MKEY\_DYNAMIC\_NUMBERS |  +   TDES\_2KUNCI    | { DeriveKey = benar} | 
| GenerateCardData |  +  DYNAMIC\_CARD\_VERIFICATION\_VALUE   | TR31\_E6\_EMV\_MKEY\_OTHER |  +   TDES\_2KUNCI    | { DeriveKey = benar} | 

## VerifyCardData
<a name="w2aac15c31c11"></a>


| Operasi atau Algoritma Kriptografi | Penggunaan Kunci yang Diizinkan | Algoritma Kunci yang Diizinkan | Kombinasi yang diizinkan dari mode penggunaan utama | 
| --- | --- | --- | --- | 
|  +  AMEX\_CARD\_SECURITY\_CODE\_VERSION\_1 <br />+  AMEX\_CARD\_SECURITY\_CODE\_VERSION\_2   | TR31\_C0\_CARD\_VERIFICATION\_KEY |  +   TDES\_2KUNCI  <br />+   TDES\_3KUNCI    | {Hasilkan = benar}, {Hasilkan = benar, Verifikasi = benar} | 
|  +  CARD\_VERIFICATION\_VALUE\_1 <br />+  CARD\_VERIFICATION\_VALUE\_2   | TR31\_C0\_CARD\_VERIFICATION\_KEY |  +   TDES\_2KUNCI    | {Hasilkan = benar}, {Hasilkan = benar, Verifikasi = benar} | 
|  +  CARDHOLDER\_AUTHENTICATION\_VERIFICATION\_VALUE   | TR31\_E6\_EMV\_MKEY\_OTHER |  +   TDES\_2KUNCI    | { DeriveKey = benar} | 
|  +  DYNAMIC\_CARD\_VERIFICATION\_CODE   | TR31\_E4\_EMV\_MKEY\_DYNAMIC\_NUMBERS |  +   TDES\_2KUNCI    | { DeriveKey = benar} | 
|  +  DYNAMIC\_CARD\_VERIFICATION\_VALUE   | TR31\_E6\_EMV\_MKEY\_OTHER |  +   TDES\_2KUNCI    | { DeriveKey = benar} | 

## GeneratePinData (untuk VISA/ABA skema)
<a name="w2aac15c31c15"></a>

`VISA_PIN or VISA_PIN_VERIFICATION_VALUE`


| Tipe Kunci | Penggunaan Kunci yang Diizinkan | Algoritma Kunci yang Diizinkan | Kombinasi yang diizinkan dari mode penggunaan utama | 
| --- | --- | --- | --- | 
| Kunci Enkripsi PIN | TR31\_P0\_PIN\_ENCRYPTION\_KEY |  +   TDES\_2KUNCI  <br />+   TDES\_3KUNCI    |  +  {Encrypt = true, Wrap = true} <br />+  {Encrypt = true, Decrypt = true, Wrap = true, Unwrap = true} <br />+  { NoRestrictions = benar}  | 
| Kunci Pembuatan PIN | TR31\_V2\_VISA\_PIN\_VERIFICATION\_KEY |  +   TDES\_2KUNCI  <br />+   TDES\_3KUNCI    |  +  {Menghasilkan = benar} <br />+  {Hasilkan = benar, Verifikasi = benar}  | 

## GeneratePinData (untuk `IBM3624)`
<a name="w2aac15c31c17"></a>

`IBM3624_PIN_OFFSET,IBM3624_NATURAL_PIN,IBM3624_RANDOM_PIN, IBM3624_PIN_FROM_OFFSET)`


| Tipe Kunci | Penggunaan Kunci yang Diizinkan | Algoritma Kunci yang Diizinkan | Kombinasi yang diizinkan dari mode penggunaan utama | 
| --- | --- | --- | --- | 
| Kunci Enkripsi PIN | TR31\_P0\_PIN\_ENCRYPTION\_KEY |  +   TDES\_2KUNCI  <br />+   TDES\_3KUNCI    | Untuk IBM3624\_NATURAL\_PIN, IBM3624\_RANDOM\_PIN, IBM3624\_PIN\_FROM\_OFFSET+  {Encrypt = true, Wrap = true} <br />+  {Encrypt = true, Decrypt = true, Wrap = true, Unwrap = true} <br />+  { NoRestrictions = benar} <br />Untuk IBM3624\_PIN\_OFFSET+  {Encrypt = true, Unwrap = true} <br />+  {Encrypt = true, Decrypt = true, Wrap = true, Unwrap = true} <br />+  { NoRestrictions = benar}  | 
| Kunci Pembuatan PIN | TR31\_V1\_IBM3624\_PIN\_VERIFICATION\_KEY |  +   TDES\_3KUNCI    |  +  {Menghasilkan = benar} <br />+  {Hasilkan = benar, Verifikasi = benar}  | 

## VerifyPinData (untuk VISA/ABA skema)
<a name="w2aac15c31c21"></a>

`VISA_PIN`


| Tipe Kunci | Penggunaan Kunci yang Diizinkan | Algoritma Kunci yang Diizinkan | Kombinasi yang diizinkan dari mode penggunaan utama | 
| --- | --- | --- | --- | 
| Kunci Enkripsi PIN | TR31\_P0\_PIN\_ENCRYPTION\_KEY |  +   TDES\_2KUNCI  <br />+   TDES\_3KUNCI    |  +  {Dekripsi = benar, Buka bungkus = benar} <br />+  {Encrypt = true, Decrypt = true, Wrap = true, Unwrap = true} <br />+  { NoRestrictions = benar}  | 
| Kunci Pembuatan PIN | TR31\_V2\_VISA\_PIN\_VERIFICATION\_KEY |  +   TDES\_2KUNCI  <br />+   TDES\_3KUNCI    |  +  {Verifikasi = benar} <br />+  {Hasilkan = benar, Verifikasi = benar}  | 

## VerifyPinData (untuk `IBM3624)`
<a name="w2aac15c31c23"></a>

`IBM3624_PIN_OFFSET,IBM3624_NATURAL_PIN,IBM3624_RANDOM_PIN, IBM3624_PIN_FROM_OFFSET)`


| Tipe Kunci | Penggunaan Kunci yang Diizinkan | Algoritma Kunci yang Diizinkan | Kombinasi yang diizinkan dari mode penggunaan utama | 
| --- | --- | --- | --- | 
| Kunci Enkripsi PIN | TR31\_P0\_PIN\_ENCRYPTION\_KEY |  +   TDES\_2KUNCI  <br />+   TDES\_3KUNCI    | Untuk IBM3624\_NATURAL\_PIN, IBM3624\_RANDOM\_PIN, IBM3624\_PIN\_FROM\_OFFSET+  {Dekripsi = benar, Buka bungkus = benar} <br />+  {Encrypt = true, Decrypt = true, Wrap = true, Unwrap = true} <br />+  { NoRestrictions = benar}  | 
| Kunci Verifikasi PIN | TR31\_V1\_IBM3624\_PIN\_VERIFICATION\_KEY |  +   TDES\_3KUNCI    |  +  {Verifikasi = benar} <br />+  {Hasilkan = benar, Verifikasi = benar}  | 

## Dekripsi Data
<a name="w2aac15c31c27"></a>


| Tipe Kunci | Penggunaan Kunci yang Diizinkan | Algoritma Kunci yang Diizinkan | Kombinasi yang diizinkan dari mode penggunaan utama | 
| --- | --- | --- | --- | 
| DUKPT | TR31\_B0\_BASE\_DERIVATION\_KEY |  +   TDES\_2KUNCI  <br />+   AES\_128  <br />+   AES\_192  <br />+   AES\_256    |  +  { DeriveKey = benar}  <br />+  { NoRestrictions = benar}  | 
| EMV | TR31\_E1\_EMV\_MKEY\_CONFIDENTIALITY<br />TR31\_E6\_EMV\_MKEY\_OTHER |  +   TDES\_2KUNCI    |  +  { DeriveKey = benar}    | 
| RSA | TR31\_D1\_ASYMMETRIC\_KEY\_FOR\_DATA\_ENCRYPTION |  +   RSA\_2048  <br />+   RSA\_3072  <br />+   RSA\_4096    |  +  {Dekripsi = benar, buka bungkus = Benar}  <br />+  {encrypt=True, wrap=True, Dekripsi = true, buka bungkus=Benar}  | 
| Tombol simetris | TR31\_D0\_SYMMETRIC\_DATA\_ENCRYPTION\_KEY |  +   TDES\_2KUNCI  <br />+   TDES\_3KUNCI  <br />+   AES\_128  <br />+   AES\_192  <br />+   AES\_256    |  +  {Dekripsi = benar, buka bungkus = Benar} <br />+  {encrypt=True, wrap=True, Dekripsi = true, buka bungkus=Benar} <br />+  { NoRestrictions = benar}  | 

## Enkripsi Data
<a name="w2aac15c31c33"></a>


| Tipe Kunci | Penggunaan Kunci yang Diizinkan | Algoritma Kunci yang Diizinkan | Kombinasi yang diizinkan dari mode penggunaan utama | 
| --- | --- | --- | --- | 
| DUKPT | TR31\_B0\_BASE\_DERIVATION\_KEY |  +   TDES\_2KUNCI  <br />+   AES\_128  <br />+   AES\_192  <br />+   AES\_256    |  +  { DeriveKey = benar} <br />+  { NoRestrictions = benar}  | 
| EMV | TR31\_E1\_EMV\_MKEY\_CONFIDENTIALITY<br />TR31\_E6\_EMV\_MKEY\_OTHER |  +   TDES\_2KUNCI    |  +  { DeriveKey = benar}    | 
| RSA | TR31\_D1\_ASYMMETRIC\_KEY\_FOR\_DATA\_ENCRYPTION |  +   RSA\_2048  <br />+   RSA\_3072  <br />+   RSA\_4096    |  +  {Enkripsi = benar, bungkus = benar}  <br />+  {encrypt=True, wrap=True, Dekripsi = true, buka bungkus=Benar}  | 
| Tombol simetris | TR31\_D0\_SYMMETRIC\_DATA\_ENCRYPTION\_KEY |  +   TDES\_2KUNCI  <br />+   TDES\_3KUNCI  <br />+   AES\_128  <br />+   AES\_192  <br />+   AES\_256    |  +  {Enkripsi = benar, bungkus = benar} <br />+  {encrypt=True, wrap=True, Dekripsi = true, buka bungkus=Benar} <br />+  { NoRestrictions = benar}  | 

## Terjemahkan Pin Data
<a name="w2aac15c31c39"></a>


| Arahan | Tipe Kunci | Penggunaan Kunci yang Diizinkan | Algoritma Kunci yang Diizinkan | Kombinasi yang diizinkan dari mode penggunaan utama | 
| --- | --- | --- | --- | --- | 
| Sumber Data Masuk | DUKPT | TR31\_B0\_BASE\_DERIVATION\_KEY |  +   TDES\_2KUNCI  <br />+   AES\_128  <br />+   AES\_192  <br />+   AES\_256    |  +  { DeriveKey = benar}  <br />+  { NoRestrictions = benar}  | 
| Sumber Data Masuk | Non-DUKPT (PEK, AWK, IWK, dll) | TR31\_P0\_PIN\_ENCRYPTION\_KEY |  +   TDES\_2KUNCI  <br />+   TDES\_3KUNCI  <br />+   AES\_128  <br />+   AES\_192  <br />+   AES\_256    |  +  {Dekripsi = benar, Buka bungkus = benar}  <br />+  {Encrypt = true, Decrypt = true, Wrap = true, Unwrap = true} <br />+  { NoRestrictions = benar}  | 
| Target Data Keluar | DUKPT | TR31\_B0\_BASE\_DERIVATION\_KEY |  +   TDES\_2KUNCI  <br />+   AES\_128  <br />+   AES\_192  <br />+   AES\_256    |  +  { DeriveKey = benar}  <br />+  { NoRestrictions = benar}  | 
| Target Data Keluar | Non-DUKPT (PEK, IWK, AWK, dll) | TR31\_P0\_PIN\_ENCRYPTION\_KEY |  +   TDES\_2KUNCI  <br />+   TDES\_3KUNCI  <br />+   AES\_128  <br />+   AES\_192  <br />+   AES\_256    |  +  {Encrypt = true, Wrap = true}  <br />+  {Encrypt = true, Decrypt = true, Wrap = true, Unwrap = true} <br />+  { NoRestrictions = benar}  | 

## Generate/Verify MAC
<a name="crypto-ops-validkeys.generatemac"></a>

 Kunci MAC digunakan untuk membuat hash kriptografi message/body dari data. Tidak disarankan untuk membuat kunci dengan mode penggunaan kunci terbatas karena Anda tidak akan dapat melakukan operasi pencocokan. Namun, Anda mungkin import/export kunci dengan hanya satu operasi jika sistem lain dimaksudkan untuk melakukan setengah lainnya dari pasangan operasi. 


| Penggunaan Kunci yang Diizinkan | Penggunaan Kunci yang Diizinkan | Algoritma Kunci yang Diizinkan | Kombinasi yang diizinkan dari mode penggunaan utama | 
| --- | --- | --- | --- | 
| Kunci MAC  | TR31\_M1\_ISO\_9797\_1\_MAC\_KEY |  +   TDES\_2KUNCI  <br />+   TDES\_3KUNCI    |  +  {Menghasilkan = benar}  <br />+  {Hasilkan = benar, Verifikasi = benar}  <br />+  {Verifikasi = benar}  <br />+  {Menghasilkan = benar}   | 
| Kunci MAC (MAC Ritel)  | TR31\_M1\_ISO\_9797\_3\_MAC\_KEY |  +   TDES\_2KUNCI  <br />+   TDES\_3KUNCI    |  +  {Menghasilkan = benar}  <br />+  {Hasilkan = benar, Verifikasi = benar}  <br />+  {Verifikasi = benar}  <br />+  {Menghasilkan = benar}   | 
| Kunci MAC (CMAC)  | TR31\_M6\_ISO\_9797\_5\_CMAC\_KEY |  +   TDES\_2KUNCI  <br />+   TDES\_3KUNCI  <br />+   AES\_128  <br />+   AES\_192  <br />+   AES\_256    |  +  {Menghasilkan = benar}  <br />+  {Hasilkan = benar, Verifikasi = benar}  <br />+  {Verifikasi = benar}  <br />+  {Menghasilkan = benar}   | 
| Kunci MAC (HMAC)  | TR31\_M7\_HMAC\_KEY |  +   TDES\_2KUNCI  <br />+   TDES\_3KUNCI  <br />+   AES\_128  <br />+   AES\_192  <br />+   AES\_256    |  +  {Menghasilkan = benar}  <br />+  {Hasilkan = benar, Verifikasi = benar}  <br />+  {Verifikasi = benar}   | 
| Kunci MAC (AS2805)  | TR31\_M0\_ISO\_16609\_MAC\_KEY |  +   TDES\_2KUNCI  <br />+   TDES\_3KUNCI    |  +  {Menghasilkan = benar}  <br />+  {Hasilkan = benar, Verifikasi = benar}  <br />+  {Verifikasi = benar}   | 

## GenerateMacEmvPinChange
<a name="crypto-ops-validkeys.generatemacemvpinchange"></a>

 GenerateMacEmvPinChange menggabungkan pembuatan MAC dan enkripsi PIN untuk operasi perubahan PIN offline EMV. Operasi ini memerlukan dua jenis kunci yang berbeda: kunci integritas untuk pembuatan MAC dan kunci kerahasiaan untuk enkripsi PIN. 


| Tipe Kunci | Penggunaan Kunci yang Diizinkan | Algoritma Kunci yang Diizinkan | Kombinasi yang diizinkan dari mode penggunaan utama | 
| --- | --- | --- | --- | 
| Kunci Integritas Pesan Aman  | TR31\_E2\_EMV\_MKEY\_INTEGRITY |  +   TDES\_2KUNCI    |  +  { NoRestrictions = benar}   | 
| Kunci Kerahasiaan Pesan Aman  | TR31\_E1\_EMV\_MKEY\_CONFIDENTIALITY |  +   TDES\_2KUNCI    |  +  { DeriveKey = benar}   | 
| PIN PEK saat ini (Kunci Enkripsi PIN)  | TR31\_P0\_PIN\_ENCRYPTION\_KEY |  +   TDES\_2KUNCI  <br />+   TDES\_3KUNCI  <br />+   AES\_128  <br />+   AES\_192  <br />+   AES\_256    |  +  {Dekripsi = benar, Buka bungkus = benar}  <br />+  {Encrypt = true, Decrypt = true, Wrap = true, Unwrap = true}  <br />+  { NoRestrictions = benar}   | 
| PIN PEK Baru (Kunci Enkripsi PIN)  | TR31\_P0\_PIN\_ENCRYPTION\_KEY |  +   TDES\_2KUNCI  <br />+   TDES\_3KUNCI  <br />+   AES\_128  <br />+   AES\_192  <br />+   AES\_256    |  +  {Dekripsi = benar, Buka bungkus = benar}  <br />+  {Encrypt = true, Decrypt = true, Wrap = true, Unwrap = true}  <br />+  { NoRestrictions = benar}   | 
| Kunci ARQC  Hanya berlaku untuk skema derivasi Visa dan Amex.  | TR31\_E0\_EMV\_MKEY\_APP\_CRYPTOGRAMS |  +   TDES\_2KUNCI    |  +  { DeriveKey = benar}   | 

## VerifyAuthRequestCryptogram
<a name="w2aac15c31c51"></a>


| Penggunaan Kunci yang Diizinkan | Opsi EMV | Algoritma Kunci yang Diizinkan | Kombinasi yang diizinkan dari mode penggunaan utama | 
| --- | --- | --- | --- | 
|  +   OPSI A  <br />+   OPSI B    | TR31\_E0\_EMV\_MKEY\_APP\_CRYPTOGRAMS |  +   TDES\_2KUNCI    |  +  { DeriveKey = benar}   | 

## Import/Export Kunci
<a name="crypto-ops-validkeys.importexport"></a>


| Tipe operasi | Penggunaan Kunci yang Diizinkan | Algoritma Kunci yang Diizinkan | Kombinasi yang diizinkan dari mode penggunaan utama | 
| --- | --- | --- | --- | 
| TR-31 Kunci Pembungkus | TR31\_K1\_KEY\_BLOCK\_PROTECTION\_KEY<br />TR31\_K0\_KEY\_ENCRYPTION\_KEY |  +   TDES\_2KUNCI  <br />+   TDES\_3KUNCI  <br />+   AES\_128  <br />+   AES\_192  <br />+   AES\_256    |  +  {Encrypt = true, Wrap = true} (hanya ekspor)  <br />+  {Decrypt = true, Unwrap = true} (hanya impor)  <br />+  {Encrypt = true, Decrypt = true, Wrap = true, Unwrap = true}  | 
| Impor CA tepercaya | TR31\_S0\_ASYMMETRIC\_KEY\_FOR\_DIGITAL\_SIGNATURE |  +   RSA\_2048  <br />+   RSA\_3072  <br />+   RSA\_4096    |  +  {Verifikasi = benar}   | 
| Impor sertifikat kunci publik untuk enkripsi asimetris | TR31\_D1\_ASYMMETRIC\_KEY\_FOR\_DATA\_ENCRYPTION |  +   RSA\_2048  <br />+   RSA\_3072  <br />+   RSA\_4096    |  +  {Encrypt=true, wrap=True}   | 
| Kunci yang digunakan untuk algoritma kesepakatan kunci seperti ECDH | TR31\_K3\_ASYMMETRIC\_KEY\_FOR\_KEY\_AGREEMENT |  +   ECC\_NIST\_P256  <br />+   ECC\_NIST\_P384  <br />+   ECC\_NIST\_P521    |  +  { DeriveKey = benar}   | 

## Jenis kunci yang tidak digunakan
<a name="w2aac15c31c57"></a>

Jenis kunci berikut saat ini tidak digunakan oleh Kriptografi AWS Pembayaran
+  TR31\_P1\_PIN\_GENERATION\_KEY 