Aller au contenu

Générateur de HMAC

HMAC Generator

Calcule un HMAC sur un message avec le hachage et l’encodage de clé de votre choix, pour vérifier une signature de webhook.

Calcule un HMAC — une empreinte à clé — sur du texte ou un fichier, la clé étant lue comme du texte, de l'hexadécimal ou du Base64. C'est le même écran que l'outil de hachage avec sa moitié HMAC activée, parce qu'un HMAC est un hachage avec une clé et que les séparer donnerait deux pages partageant tous leurs réglages.

🔒 Fonctionne entièrement dans votre navigateurhmacsignaturewebhookcrypto
Sortie

Entrée

Déposez un fichier pour en calculer la somme de contrôle

Lu dans cet onglet. Rien n’est envoyé.

Le texte est haché sous forme d’octets UTF-8, ce que tout autre outil entend par hacher une chaîne.

Empreintes

Collez une somme de contrôle publiée ; la ligne qui correspond s’allume.

Une ligne par algorithme, avec l’empreinte et un bouton de copie.
AlgorithmeEmpreinteCopier
MD5Les collisions sont bon marché à fabriquer. Convient comme somme de contrôle, pas pour des signatures ni des mots de passe.
SHA-1Des collisions ont été démontrées. Convient pour une somme de contrôle héritée, pour rien de nouveau.
SHA-256
SHA-384
SHA-512
CRC-32Un code détecteur d’erreurs, pas une empreinte. Deux fichiers peuvent en partager un par accident, à plus forte raison exprès.

Entrée

0 o

Source

zone de texte

Comment s’en servir

  1. Activez HMAC

    Le champ de clé apparaît, et CRC-32 sort de la table — c'est une somme de contrôle, pas une fonction de hachage, et il n'a pas de HMAC.

  2. Dites comment la clé doit être lue

    C'est là que les HMAC dérapent d'habitude. Une clé écrite `0a1b2c` fait trois octets en hexadécimal et six en texte, et les deux produisent des empreintes complètement différentes.

  3. Comparez à la signature qu'on vous a envoyée

    Collez-la dans la zone de comparaison ; la ligne correspondante s'allume. Les signatures de webhook de Stripe, de GitHub et de Slack sont toutes des HMAC-SHA256 sur une chaîne précise : viser le bon message compte donc autant que la clé.

Questions fréquentes

Pourquoi mon HMAC ne correspond-il pas à celui de l'en-tête ?

En général le message, pas la clé. Une signature de webhook est calculée sur une chaîne exacte — souvent l'horodatage, un séparateur et le corps brut — et un corps passé par un analyseur JSON puis resérialisé est une autre chaîne. Signez les octets que vous avez reçus.

Un HMAC revient-il à hacher la clé et le message ensemble ?

Non, et c'est tout son intérêt. `hash(clé + message)` est vulnérable à une attaque par extension de longueur sur MD5, SHA-1 et SHA-256 ; la construction en deux passes de HMAC, avec son remplissage intérieur et extérieur, est ce qui supprime cela. Ne construisez jamais le vôtre.

La clé quitte-t-elle l'onglet ?

Non. Elle sert à importer une clé WebCrypto dans cet onglet, et à rien d'autre — ni transmise, ni stockée, ni mise dans l'URL. Recharger la page la perd, ce qui est le comportement correct pour un secret.

Quelle longueur la clé doit-elle avoir ?

Au moins celle de l'empreinte — 32 octets pour SHA-256. HMAC accepte n'importe quelle longueur, mais une clé plus longue que la taille de bloc est d'abord réduite par hachage, et une clé courte reste une clé courte : la sécurité, c'est l'entropie que vous y mettez.

À alimenter depuis

Ensuite

Ces outils acceptent ce que celui-ci produit : le résultat peut y aller directement.