Generatore HMAC-SHA1
Calcolate un tag HMAC-SHA1 a partire da un messaggio e una chiave segreta. Lo strumento codifica entrambi in UTF-8, applica la costruzione HMAC definita dalla RFC 2104 con SHA-1 e restituisce il risultato di 160 bit come 40 caratteri esadecimali o in Base64. È utile agli sviluppatori che lavorano con firme OAuth 1.0a, implementazioni interne di TOTP, webhook meno recenti e API legacy che firmano ancora con HMAC-SHA1. La vostra chiave rimane nella richiesta.
Domande frequenti
Che cos’è HMAC-SHA1?
HMAC-SHA1 è un codice di autenticazione dei messaggi che combina SHA-1 con una chiave segreta, secondo la RFC 2104. Il tag è di 20 byte ed è mostrato come 40 caratteri esadecimali o 28 caratteri Base64.
HMAC-SHA1 è ancora sicuro anche se SHA-1 è compromesso?
Le collisioni di SHA-1 non compromettono HMAC-SHA1, perché la sicurezza di HMAC dipende da altre proprietà della funzione hash. HMAC-SHA1 è ancora considerato accettabile per i sistemi esistenti. Per i nuovi progetti, preferite HMAC-SHA256.
Qual è un vettore di test noto per HMAC-SHA1?
Il caso di test 2 della RFC 2202 usa la chiave Jefe e il messaggio what do ya want for nothing? e si aspetta effcdf6ae5eb2fa2d27416d5f184df9c259a7c79. Questo strumento restituisce quel tag.
Come si crea una firma OAuth 1.0a?
Usate come messaggio la stringa di base della firma e come chiave il segreto del consumer e quello del token uniti da una e commerciale. Scegliete l’output Base64, quindi codificate il risultato in percentuale per l’intestazione Authorization.
TOTP usa HMAC-SHA1?
Sì. La maggior parte delle app di autenticazione calcola HMAC-SHA1 su un contatore temporale di 8 byte con un segreto decodificato da Base32. Poiché la chiave e il contatore sono binari, questo strumento basato su testo non può riprodurre direttamente un codice TOTP.
Come vengono codificati la chiave e il messaggio?
Entrambi vengono convertiti in byte UTF-8 esattamente come sono stati digitati. Spazi invisibili, un terminatore di riga diverso o una chiave da decodificare da hex o Base64 sono le cause più comuni di discrepanza.
La mia chiave viene restituita nel risultato?
No. La risposta contiene solo il tag e le opzioni non segrete. La chiave non viene registrata né memorizzata.
Quale formato di output dovrei selezionare?
Usate hex se l’altra parte mostra una stringa minuscola di 40 caratteri, e Base64 se mostra 28 caratteri che terminano con =. Entrambi rappresentano gli stessi 20 byte.
Posso usare una chiave vuota?
Sì, HMAC accetta una chiave vuota e lo strumento la elabora. Una chiave vuota non offre alcuna protezione, quindi usatela solo per confrontare vettori di test o altri strumenti.
Quanto può essere lungo il messaggio?
Il messaggio e la chiave insieme possono contenere fino a 5 MiB di testo per richiesta. Il tag viene calcolato subito e nessuno dei due input viene memorizzato.