Generatore HMAC (HMAC-SHA256 nel browser)

Una pagina senza rete per il calcolo rapido di HMAC SHA256 e la verifica delle firme.

Tutto viene eseguito localmente nel browser. Chiavi e messaggi non vengono mai trasmessi ne salvati.

Calcolo locale Nessun salvataggio Hex e Base64
Nessuna trasmissione in rete

Come si usa (come creare una firma HMAC)

  1. Inserisci la chiave. Se la specifica della tua API fornisce byte di chiave binari, scegli il formato di input Hex o Base64.
  2. Inserisci il payload del messaggio da firmare.
  3. Scegli il formato di output (Hex / Base64 / Base64URL) e copia il risultato.
HMAC lavora sui byte, non sul testo visivo. Codifica UTF-8, differenze nei ritorni a capo e spazi extra cambiano il risultato.

Esempi (test vector)

Esempio 1 (controllo breve)

Input: Chiave = secret (UTF-8), Messaggio = message (UTF-8)

HMAC-SHA256 (Hex):
8b5f48702995c1598c573db1e21866a9b825d4a794d169d7060a03605796360b

HMAC-SHA256 (Base64):
i19IcCmVwVmMVz2x4hhmqbgl1KeU0WnXBgoDYFeWNgs=

Esempio 2 (frase comune)

Input: Chiave = key, Messaggio = The quick brown fox jumps over the lazy dog

Hex:
f7bc83f430538424b13298e6aa6fb143ef4d59a14946175997479dbc2d1a3cd8

Base64:
97yD9DBThCSxMpjmqm+xQ+9NWaFJRhdZl0edvC0aPNg=

Errori comuni

  • Le differenze tra ritorni a capo LF e CRLF producono firme diverse.
  • Tagliare spazi iniziali o finali puo rompere la corrispondenza della firma API.
  • Base64URL spesso significa + in -, / in _, e padding = omesso. Controlla la specifica della tua API.
  • Se una chiave e distribuita come byte Hex/Base64, trattarla come testo semplice causa risultati diversi.

Domande frequenti

La mia chiave viene salvata?

No. Questo strumento calcola nel browser e non invia input di chiave o messaggio a nessun server.

Base64 o Hex?

Entrambi sono comuni. Puoi scegliere output Hex / Base64 / Base64URL in base alla specifica della tua API.

Quale codifica caratteri viene usata (UTF-8)?

L'input di testo viene codificato in UTF-8 prima del calcolo HMAC. Per valori binari, usa input Hex/Base64.

Qual e la differenza tra HMAC e hash SHA-256?

SHA-256 e un hash semplice. HMAC aggiunge una chiave segreta per l'autenticazione del messaggio.

Il mio output non coincide. Che cosa devo controllare?

Controlla l'interpretazione della chiave (testo o byte), la gestione dei ritorni a capo, il trim degli spazi e le regole Base64URL.

Approfondimento

Che cos'e HMAC?

HMAC e un codice di autenticazione del messaggio basato su hash con chiave, che usa una chiave segreta e una funzione hash.

Differenza rispetto a SHA-256

SHA-256 da solo non ha alcuna chiave segreta. HMAC-SHA256 richiede una chiave condivisa ed e usato per le firme.

Casi d'uso tipici

Firma di richieste API, verifica di webhook e controllo dell'integrita dei token.