

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

# Hasilkan dan verifikasi MAC
<a name="crypto-ops-mac"></a>

Kode Otentikasi Pesan (MAC) biasanya digunakan untuk mengautentikasi integritas pesan (apakah sudah dimodifikasi). Hash kriptografi seperti HMAC (Hash Based Message Authentication Code), CBC-MAC dan CMAC (Cipher-based Message Authentication Code) memberikan jaminan tambahan kepada pengirim MAC dengan memanfaatkan kriptografi. HMAC didasarkan pada fungsi hash sementara CMAC didasarkan pada blok cipher. Layanan ini juga mendukung ISO9797 Algoritma 1 dan 3 yang merupakan jenis CBC-. MACs 

Semua algoritma MAC dari layanan ini menggabungkan fungsi hash kriptografi dan kunci rahasia bersama. Mereka mengambil pesan dan kunci rahasia, seperti materi kunci dalam kunci, dan mengembalikan tag atau mac unik. Jika bahkan satu karakter pesan berubah, atau jika kunci rahasia berubah, tag yang dihasilkan sama sekali berbeda. Dengan membutuhkan kunci rahasia, kriptografi MACs juga memberikan keaslian; tidak mungkin untuk menghasilkan mac identik tanpa kunci rahasia. Kriptografi kadang-kadang MACs disebut tanda tangan simetris, karena mereka bekerja seperti tanda tangan digital, tetapi menggunakan satu kunci untuk penandatanganan dan verifikasi. 

AWS Kriptografi Pembayaran mendukung beberapa jenis MACs:

**ISO9797 ALGORITMA 1**  
Ditandai dengan `KeyUsage` dari \$1. ISO9797 ALGORITHM1 Jika bidang bukan kelipatan ukuran blok (8 byte/16 karakter hex untuk TDES, 16 byte/32 karakter untuk AES, Kriptografi Pembayaran secara otomatis menerapkan Metode Padding 1. AWS ISO9797 Jika metode padding lain diperlukan, Anda dapat menerapkannya sebelum menelepon layanan.

**ISO9797 ALGORITMA 3 (MAC Eceran)**  
Ditandai dengan `KeyUsage` dari \$1. ISO9797 ALGORITHM3 Aturan padding yang sama berlaku sebagai Algoritma 1

**ISO9797 ALGORITMA 5 (CMAC)**  
Ditandai dengan `KeyUsage` \$1M6\$1ISO\$19797\$15\$1CMAC\$1KEY TR31

**HMAC**  
Dilambangkan dengan `KeyUsage` TR31 \$1M7\$1HMAC\$1KEY termasuk HMAC\$1, HMAC\$1, HMAC\$1 dan HMAC\$1 SHA224 SHA256 SHA384 SHA512

**AS2805.4.1 MAC**  
Ditandai dengan `KeyUsage` TR31 \$1M0\$1ISO\$116609\$1MAC\$1KEY. Untuk detail lebih lanjut tentang AS2805, lihat [AS2805](advanced.regional.as2805.md)

**DUKPT MAC**  
DUKPT MAC biasanya digunakan untuk mengkonfirmasi sumber dan muatan terminal to/from pembayaran pesan. Ini memperoleh kunci menggunakan teknik derivasi DUKPT dan kemudian melakukan MAC. Kunci yang digunakan dengan opsi ini dilambangkan dengan `KeyUsage` TR31 \$1B0\$1BASE\$1DERIVATION\$1KEY. 

**EMV MAC**  
EMV MAC biasanya disebut sebagai kunci integritas dalam dokumentasi EMV. Ini memperoleh kunci menggunakan teknik derivasi EMV dan kemudian menggunakan ISO9797 \$1 secara internal. ALGORITHM3 Ini biasanya digunakan untuk mengirim skrip penerbit ke kartu chip untuk pemrograman ulang. Kunci yang digunakan dengan opsi ini dilambangkan dengan `KeyUsage` \$1E2\$1EMV\$1MKEY\$1INTEGRITY TR31. Jika Anda berdua mengirim skrip dan memperbarui pin offline, lihat [GenerateMacEmvPinChange](https://docs.aws.amazon.com/payment-cryptography/latest/DataAPIReference/API_GenerateMacEmvPinChange)yang melakukan kedua operasi ini. 

**Topics**
+ [Hasilkan MAC](generate-mac.md)
+ [Verifikasi MAC](verify-mac.md)