0

Générateur et vérificateur HMAC

Générez et vérifiez les codes d'authentification des messages HMAC avec SHA-256, SHA-384, SHA-512 ou SHA-1 à l'aide d'une clé secrète, entièrement dans votre navigateur.

Buy Me a Coffee at ko-fi.com
Traitement... 0%
Clé d'importation
Informatique HMAC
Terminé

Résultat

Un HMAC (Hash-based Message Authentication Code) est une construction cryptographique à clé qui combine une clé secrète avec un message via une fonction de hachage telle que SHA-256. Contrairement à un simple hachage, que n’importe qui peut recalculer à partir du seul message, un HMAC ne peut être reproduit que par quelqu’un qui détient la même clé secrète – c’est ce qui en fait un code d’authentification plutôt qu’une simple somme de contrôle.

C'est la différence fondamentale par rapport à un simple résumé : notre propre outil Hash Generator calcule des hachages sans clé comme MD5 ou SHA-256, qui sont parfaits pour détecter une corruption accidentelle mais ne prouvent rien sur l'auteur des données, puisque n'importe qui peut générer le même hachage. Un HMAC prouve à la fois l'intégrité (le message n'a pas été modifié) et l'authenticité (le signataire connaissait le secret partagé), c'est pourquoi HMAC est l'élément de base standard derrière la signature des requêtes API, les algorithmes HS256/HS384/HS512 de JWT et l'authentification des enregistrements TLS.

Le cas d’utilisation réel le plus courant consiste à vérifier les signatures des webhooks. Des services tels que Stripe, GitHub et Shopify signent chaque charge utile de webhook avec HMAC-SHA256 à l'aide d'un secret que vous configurez et envoient la signature résultante dans un en-tête de requête. Votre serveur est censé recalculer le HMAC sur la charge utile brute avec le même secret et le comparer à la valeur de l'en-tête. Si elles correspondent, vous savez que la demande provient véritablement de ce service et n'a pas été falsifiée pendant le transport. Le mode de vérification de cet outil reproduit exactement cette vérification : collez la charge utile, le secret partagé et la signature reçue, et obtenez une correspondance ou une incompatibilité instantanée.

Tout s'exécute localement via l'API Web Crypto native du navigateur (crypto.subtle.importKey et crypto.subtle.sign), de sorte que la clé secrète, le corps du message et la signature résultante ne quittent jamais votre ordinateur - rien n'est téléchargé sur un serveur, ce qui est important puisque les secrets HMAC sont exactement le genre de valeur que vous ne devriez jamais coller dans un outil en ligne aléatoire qui pourrait l'enregistrer.