Generator HMAC — SHA-256, SHA-512 & SHA-1

Hitung tanda tangan HMAC berkunci untuk request API dan webhook, lalu cek apakah signature yang kamu terima itu valid — menggunakan Web Crypto API di browser kamu.

Diperbarui
Algoritma

🔒 Berjalan secara lokal dengan Web Crypto API di browser kamu — tidak ada yang kamu ketik yang dikirim ke server.

Data kamu tidak pernah meninggalkan komputer kamu. Semua proses berjalan 100% secara lokal di browser kamu.

Apakah alat ini membantu?0.0 0 penilaian
Buat hash MD5, SHA-1SHA-256, SHA-384 dan SHA-512 dari teks atau file secara online.Generator Hash →

Cara menggunakan Generator HMAC

  1. Tempel pesan persis seperti saat ditandatangani — untuk webhook, gunakan raw body request.
  2. Masukkan secret key dan pilih encoding-nya.
  3. Pilih algoritma hash; nilai HMAC akan langsung diperbarui.
  4. Tempel signature yang kamu terima di Expected signature untuk memverifikasinya.

Apa itu HMAC?

HMAC (Hash-based Message Authentication Code, RFC 2104) menggabungkan secret key dengan fungsi hash untuk menghasilkan signature. Siapa pun yang memiliki key bisa menghitung nilai yang sama; siapa pun yang tidak memilikinya tidak bisa memalsukannya. API memakai HMAC untuk menandatangani request (AWS Signature v4, banyak payment gateway), sedangkan webhook memakainya agar kamu bisa memastikan callback benar-benar berasal dari pengirim.

Memverifikasi webhook

LayananHeaderAlgoritma / encoding
GitHubX-Hub-Signature-256HMAC-SHA256, hex, diawali sha256=
StripeStripe-SignatureHMAC-SHA256 hex dari timestamp.body
ShopifyX-Shopify-Hmac-Sha256HMAC-SHA256, Base64
SlackX-Slack-SignatureHMAC-SHA256 hex dari v0:timestamp:body

Penyebab paling umum signature tidak cocok adalah body sudah berubah sebelum ditandatangani — JSON yang di-parse lalu di-serialize ulang, spasi atau line ending yang berbeda. Selalu tandatangani byte mentah yang kamu terima. Verifier di atas menerima hex (dengan atau tanpa sha256=), Base64, dan Base64url.

HMAC vs hash biasa

Hash SHA-256 biasa hanya membuktikan integritas, bukan keaslian: siapa pun bisa menghitung ulang setelah mengubah pesan. HMAC menyertakan secret, sehingga hanya pemegang key yang bisa menghasilkan nilai yang valid. Gunakan key dengan panjang acak minimal sama dengan output hash (32 byte untuk SHA-256). Di kode server, bandingkan signature dengan fungsi constant-time seperti crypto.timingSafeEqual.

Untuk hash tanpa key, gunakan generator hash; untuk token bertanda tangan, gunakan encoder JWT.

Juga dicari sebagai: hmac sha256, hmac online, hmac sha256 online, signature webhook, hmac sha512, verifikasi hmac.

Tool yang cocok dipakai bersama Generator HMAC

  • JWT Decoder — Tempel JSON Web Token untuk memeriksa header dan payload-nya, melihat kapan token kedaluwarsa, dan memverifikasi tanda tangannya.
  • Encode / Decode Base64 — Ubah teks ke Base64 dan sebaliknya dengan dukungan UTF-8 penuh (aksen, emoji), beralih ke Base64 URL-safe, atau seret file untuk mendapatkan string Base64 atau data URI-nya.
  • Enkripsi & Dekripsi AES — Lindungi catatan, rahasia, atau nilai konfigurasi dengan kata sandi menggunakan AES-256 — atau dekripsi teks hasil openssl enc.
  • Validator IBAN — Cek apakah IBAN valid sebelum kamu mengirim uang atau menyimpannya: negaranya, panjang yang sesuai untuk negara tersebut, format nomor rekening, dan checksum mod-97.

Pertanyaan yang sering diajukan

Kenapa HMAC saya tidak cocok dengan signature webhook?
Biasanya pesannya berbeda: body harus berupa byte mentah yang diterima, bukan JSON yang sudah di-parse lalu di-stringify ulang. Periksa juga algoritma, encoding key, dan prefix seperti sha256=.
Apakah HMAC-SHA1 masih aman?
HMAC-SHA1 masih dianggap aman untuk autentikasi, berbeda dengan SHA-1 biasa untuk signature, tetapi sistem baru sebaiknya memakai HMAC-SHA256.
Apakah secret key saya dikirim ke server?
Tidak. HMAC dihitung di browser kamu dengan Web Crypto API.
Apa perbedaan output hex dan Base64?
Keduanya mengodekan byte yang sama dengan cara berbeda. Hex untuk SHA-256 berisi 64 karakter; Base64 berisi 44 karakter. Gunakan format yang diharapkan sistem penerima.
Bisakah saya memasang Generator HMAC sebagai aplikasi web dan memakainya offline?
Bisa. Generator HMAC adalah aplikasi web (PWA) yang bisa dipasang. Pemasangannya lewat browser kamu, bukan diunduh dari toko aplikasi. Klik Pasang aplikasi di bagian atas halaman ini di Chrome atau Edge (Windows, macOS, Linux, ChromeOS) atau di Android. Di iPhone dan iPad, gunakan Bagikan → Tambahkan ke Layar Utama, dan di Safari 17+ pada Mac, gunakan File → Tambahkan ke Dock. Setelah itu, aplikasi akan terbuka di jendelanya sendiri dengan ikonnya sendiri. Karena berjalan sepenuhnya di browser kamu, aplikasi ini tetap bisa dipakai offline. Firefox di desktop tidak bisa memasang aplikasi web. Cara memasang aplikasi.

Tool terkait