Tiada Data Dihantar

Penjana HMAC (Kira HMAC-SHA256 dalam Penyemak Imbas)

Alat pengiraan HMAC untuk menjana HMAC SHA256 di sini. Kunci आणि input tidak dihantar mahupun disimpan.

Menyokong input Teks/Hex/Base64 आणि output Hex/Base64. Mengira dengan selamat menggunakan API Crypto standard penyemak imbas.

Pengiraan Tempatan Tiada Storan Hex/Base64 Disokong

Input आणि Output

Halaman ini melakukan pengiraan sepenuhnya dalam penyemak imbas आणि tidak menghantar data.

Tiada Data Dihantar
Format Input

* 'Urutan bait' mengikut spesifikasi API adalah penting. Jika kunci adalah binari, sila masukkan dalam Hex/Base64.

Format Input
Panjang Output: 32 bait (SHA-256)
Pilihan

Keputusan akan berubah jika kod baris baharu berbeza disebabkan oleh OS atau salin-tampal.

Oleh kerana tandatangan API menganggap 'padanan tepat', mengekalkan seperti sedia ada biasanya disyorkan.

Penggunaan

3 langkah asas untuk mencipta tandatangan HMAC.

  1. 1 Masukkan Kunci (Pilih Hex / Base64 jika spesifikasi API adalah binari)
  2. 2 Masukkan Mesej (Rentetan untuk ditandatangani / payload)
  3. 3 Pilih Format Output (Hex / Base64) आणि Salin

HMAC dikira berdasarkan 'urutan bait', bukan 'rentetan aksara'. Walaupun ia kelihatan sama, keputusan akan berbeza jika pengekodan aksara, baris baharu, atau ruang putih tambahan berbeza (menganggap UTF-8).

Contoh (Vektor Ujian untuk Pengesahan)

Klik 'Muat Contoh' untuk mengisi medan input.

Contoh 1
Kunci (Teks/UTF-8)
secret
Mesej (Teks/UTF-8)
message
HMAC-SHA256 (Hex)
8b5f48702995c1598c573db1e21866a9b825d4a794d169d7060a03605796360b
HMAC-SHA256 (Base64)
i19IcCmVwVmMVz2x4hhmqbgl1KeU0WnXBgoDYFeWNgs=
Contoh 2
Kunci (Teks/UTF-8)
key
Mesej (Teks/UTF-8)
The quick brown fox jumps over the lazy dog
HMAC-SHA256 (Hex)
f7bc83f430538424b13298e6aa6fb143ef4d59a14946175997479dbc2d1a3cd8
HMAC-SHA256 (Base64)
97yD9DBThCSxMpjmqm+xQ+9NWaFJRhdZl0edvC0aPNg=

Kesilapan Biasa

Perbezaan Kod Baris Baharu (LF/CRLF)

Keputusan berubah jika pengendalian baris baharu berbeza.

Trim (Membuang Ruang Putih)

Oleh kerana tandatangan menganggap padanan tepat, membuang ruang putih boleh menyebabkan ketidakpadanan.

Tatatanda Base64URL

Base64URL biasanya menggunakan +→-, /→_, आणि menggugurkan =. Sila semak spesifikasi.

Pengendalian Kunci (Teks vs Binari)

Contoh: Memasukkan 'deadbeef' sebagai 'rentetan' vs memasukkannya sebagai 'urutan bait 0xDE 0xAD...'.

Maklumat Tambahan

Apakah itu HMAC?

Mekanisme untuk mencipta tandatangan daripada kunci rahsia आणि mesej. Pihak ketiga tidak boleh mencipta keputusan yang sama tanpa kunci yang sama.

Perbezaan daripada SHA-256

SHA-256 adalah 'hash', HMAC adalah 'hash berkunci (tandatangan)'.

Kes Penggunaan

Digunakan untuk tandatangan API, pengesahan Webhook, pengesanan gangguan permintaan, dsb.

Soalan Lazim

Adakah kunci disimpan?

Ia tidak disimpan. Alat ini mengira dalam penyemak imbas आणि tidak menghantar kunci atau mesej ke pelayan. (※ Sebagai langkah berjaga-jaga, sila set semula selepas memasukkan pada PC kongsi)

Base64 atau Hex?

Kedua-duanya digunakan. Anda boleh memilih format output (Hex / Base64 / Base64URL). Sila pilih mengikut spesifikasi API.

Pengekodan Aksara?

Menganggap UTF-8. Input teks ditukar kepada bait sebagai UTF-8 untuk pengiraan. Gunakan input Hex / Base64 untuk mengendalikan binari.

Perbezaan antara HMAC आणि hash SHA-256?

SHA-256 adalah 'hash', HMAC adalah 'hash berkunci (tandatangan)'. Keputusan yang sama tidak dapat dihasilkan melainkan kunci sepadan.

Output tidak sepadan

Punca biasa adalah (1) Pengendalian kunci (Teks vs Binari), (2) Baris baharu, (3) Ruang putih, (4) Base64URL. Sila semak kesilapan biasa di atas mengikut urutan.