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.
Input आणि Output
Halaman ini melakukan pengiraan sepenuhnya dalam penyemak imbas आणि tidak menghantar data.
* 'Urutan bait' mengikut spesifikasi API adalah penting. Jika kunci adalah binari, sila masukkan dalam Hex/Base64.
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 Masukkan Kunci (Pilih Hex / Base64 jika spesifikasi API adalah binari)
- 2 Masukkan Mesej (Rentetan untuk ditandatangani / payload)
- 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.
Kesilapan Biasa
Keputusan berubah jika pengendalian baris baharu berbeza.
Oleh kerana tandatangan menganggap padanan tepat, membuang ruang putih boleh menyebabkan ketidakpadanan.
Base64URL biasanya menggunakan +→-, /→_, आणि menggugurkan =. Sila semak spesifikasi.
Contoh: Memasukkan 'deadbeef' sebagai 'rentetan' vs memasukkannya sebagai 'urutan bait 0xDE 0xAD...'.
Maklumat Tambahan
Mekanisme untuk mencipta tandatangan daripada kunci rahsia आणि mesej. Pihak ketiga tidak boleh mencipta keputusan yang sama tanpa kunci yang sama.
SHA-256 adalah 'hash', HMAC adalah 'hash berkunci (tandatangan)'.
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.