Generatore HMAC (Calcola HMAC-SHA256 nel browser)
Uno strumento di calcolo HMAC per generare HMAC SHA256 direttamente qui. Chiavi e input non vengono né inviati né memorizzati.
Supporta input Text/Hex/Base64 e output Hex/Base64. Calcola in modo sicuro utilizzando l'API Crypto standard del browser.
Input e Output
Questa pagina esegue i calcoli interamente all'interno del browser e non invia dati.
* La 'sequenza di byte' secondo le specifiche dell'API è importante. Se la chiave è binaria, inseriscila in Hex/Base64.
Opzioni
I risultati cambieranno se i codici di ritorno a capo differiscono a causa del sistema operativo o del copia-incolla.
Poiché le firme API presuppongono una 'corrispondenza esatta', è generalmente consigliato mantenerlo così com'è.
Utilizzo
I 3 passaggi fondamentali per creare una firma HMAC.
- 1 Inserisci la chiave (Seleziona Hex / Base64 se la specifica API è binaria)
- 2 Inserisci il messaggio (Stringa da firmare / payload)
- 3 Seleziona il formato di output (Hex / Base64) e copia
HMAC viene calcolato su 'sequenze di byte', non su 'stringhe di caratteri'. Anche se sembrano uguali, i risultati differiranno se la codifica dei caratteri, i ritorni a capo o gli spazi bianchi extra sono diversi (presuppone UTF-8).
Esempi (Vettori di test per la verifica)
Fai clic su 'Carica esempio' per compilare i campi di input.
Errori comuni
I risultati cambiano se la gestione dei ritorni a capo varia.
Poiché le firme presuppongono corrispondenze esatte, la rimozione degli spazi bianchi potrebbe causare discrepanze.
Base64URL in genere utilizza +→-, /→_ e omette =. Si prega di controllare le specifiche.
Esempio: inserire 'deadbeef' come 'stringa' rispetto a inserirlo come 'sequenza di byte 0xDE 0xAD...'.
Informazioni supplementari
Un meccanismo per creare una firma da una chiave segreta e un messaggio. Una terza parte non può creare lo stesso risultato senza la stessa chiave.
Lo SHA-256 è un 'hash', l'HMAC è un 'keyed hash (firma)'.
Utilizzato per firme API, verifica di Webhook, rilevamento di manomissioni delle richieste, ecc.
FAQ
La chiave viene memorizzata?
Non viene memorizzata. Questo strumento esegue i calcoli all'interno del browser e non invia chiavi o messaggi a un server. (※Come precauzione, si prega di resettare dopo l'inserimento su un PC condiviso)
Base64 o Hex?
Entrambi sono utilizzati. È possibile selezionare il formato di output (Hex / Base64 / Base64URL). Si prega di scegliere in base alle specifiche dell'API.
Codifica dei caratteri?
Presuppone UTF-8. L'input di testo viene convertito in byte come UTF-8 per il calcolo. Utilizzare l'input Hex / Base64 per gestire dati binari.
Differenza tra HMAC e hash SHA-256?
SHA-256 è un 'hash', HMAC è un 'keyed hash (firma)'. Non è possibile produrre lo stesso risultato a meno che le chiavi non corrispondano.
L'output non corrisponde
Le cause comuni sono (1) Gestione della chiave (Testo vs Binario), (2) Ritorni a capo, (3) Spazi bianchi, (4) Base64URL. Si prega di controllare gli errori comuni sopra in ordine.