ESC

Generateur HMAC

La sortie HMAC apparaitra ici...

Comparer HMAC

Tout le traitement se fait dans votre navigateur avec l'API Web Crypto. Aucune donnee n'est envoyee a un serveur.

Exemples d'Utilisation

Authentification API

Generez des signatures HMAC pour l'authentification de requetes API, couramment utilisees dans les APIs REST.

Verification Webhook

Verifiez les charges webhook en comparant les signatures HMAC de services comme Stripe ou GitHub.

Signature JWT

Creez des signatures HMAC-SHA256 pour la signature de charge utile JSON Web Token (JWT).

Fonctionnalites

Multiples Algorithmes

Support HMAC-SHA256, HMAC-SHA384, HMAC-SHA512 et HMAC-SHA1

Comparaison HMAC

Comparez le HMAC genere avec une valeur attendue pour verifier l'integrite du message

Multiples Formats

Sortie en hexadecimal ou encodage Base64 pour differents besoins d'integration

API Web Crypto

Utilise l'API Web Crypto native pour une generation HMAC securisee dans le navigateur

Comment Utiliser ?

1

Entrez Message et Cle

Tapez ou collez votre message et entrez votre cle secrete.

2

Selectionnez l'Algorithme

Choisissez votre algorithme HMAC (SHA-256, SHA-384, SHA-512 ou SHA-1) et le format de sortie.

3

Generez et Copiez

Cliquez sur Generer HMAC et copiez le resultat.

Questions Frequemment Posees

HMAC (Hash-based Message Authentication Code) combine une fonction de hachage cryptographique avec une cle secrete pour produire une signature. Il prouve a la fois l'integrite (le message n'a pas ete modifie) et l'authenticite (l'expediteur connait la cle secrete). Sans la cle, personne ne peut forger un HMAC valide, ce qui le rend bien plus robuste qu'un simple hash pour l'authentification.

Un hash SHA-256 de "hello" est toujours le meme : n'importe qui peut le calculer. Un HMAC-SHA256 de "hello" produit un resultat different pour chaque cle secrete. Le hachage simple donne l'integrite (detecte la falsification). HMAC donne l'integrite plus l'authentification (prouve qui a signe). C'est pourquoi les API utilisent HMAC pour signer les requetes, pas SHA-256 simple.

HMAC-SHA256 est le standard de l'industrie utilise par la plupart des services : AWS Signature Version 4, webhooks Stripe, webhooks GitHub, webhooks Shopify. HMAC-SHA512 offre une marge de securite supplementaire et est plus rapide que SHA-256 sur materiel 64 bits. Evitez HMAC-SHA1 pour les nouveaux projets ; utilisez-le uniquement pour l'integration avec des systemes legacy qui l'exigent.

Les deux representent la meme valeur HMAC dans des encodages differents. Hex (hexadecimal) produit 64 caracteres pour HMAC-SHA256, plus facile a lire et comparer manuellement. Base64 produit 44 caracteres, plus compact, couramment utilise dans les en-tetes HTTP Authorization, les signatures JWT et les en-tetes de requetes API. Verifiez le format attendu par votre service cible avant de generer.

Quand vous recevez un webhook de Stripe, le payload est accompagne d'un en-tete X-Stripe-Signature contenant un HMAC-SHA256 du corps brut, signe avec la cle secrete de votre endpoint. Pour verifier : calculez le HMAC-SHA256 du corps brut de la requete avec votre secret, puis comparez avec la valeur de l'en-tete. S'ils correspondent, le webhook est authentique. GitHub utilise X-Hub-Signature-256 de la meme facon. Cet outil vous permet de calculer et verifier ces signatures sans ecrire de code.

Pour HMAC-SHA256, la longueur de cle recommandee est d'au moins 32 octets (256 bits), correspondant a la taille de sortie du hash. Les cles plus courtes reduisent la securite ; les cles plus longues sont acceptables. N'utilisez jamais de chaines memorables comme cles, elles sont trop previsibles. Generez les cles avec un RNG cryptographiquement sur et stockez-les dans des variables d'environnement ou un gestionnaire de secrets, jamais dans le code source.

Generez un HMAC, puis collez une valeur HMAC attendue dans le champ Comparer. L'outil compare les deux valeurs et indique si elles correspondent. Utile pour verifier les signatures de webhooks : calculez le HMAC attendu a partir du payload recu et de votre cle, puis comparez avec la signature dans l'en-tete de la requete. Une correspondance confirme que le webhook est authentique.

Jamais. Toute la generation HMAC utilise la Web Crypto API (window.crypto.subtle.sign), qui s'execute entierement dans votre navigateur. Votre cle, message et resultat HMAC ne sont jamais transmis a aucun serveur. Vous pouvez vous deconnecter d'internet et l'outil fonctionne de maniere identique.

Qu'est-ce que HMAC ?

HMAC signifie Code d'Authentification de Message base sur le Hachage. Il combine une fonction de hachage cryptographique (comme SHA-256) avec une cle secrete pour produire une signature prouvant a la fois l'integrite et l'authenticite d'un message. Contrairement a un hash simple, HMAC garantit que seul quelqu'un connaissant la cle secrete a pu generer le code - c'est pourquoi c'est la base de l'authentification API, de la verification des webhooks et de la signature JWT.

Ou vous verrez HMAC dans la vie reelle

Si vous avez integre Stripe, GitHub ou AWS, vous avez utilise HMAC. Stripe signe les payloads de webhook avec HMAC-SHA256 pour que vous puissiez verifier qu'ils viennent bien de Stripe. AWS utilise HMAC-SHA256 dans Signature Version 4 pour signer les requetes API. Les JWT avec l'algorithme HS256 sont litteralement du HMAC-SHA256. Cet outil vous permet de generer et verifier ces signatures sans ecrire de code.

HMAC vs hachage simple

Un hash SHA-256 de "hello" est toujours le meme, peu importe qui l'a calcule. Un HMAC-SHA256 de "hello" est different pour chaque cle secrete - il prouve donc que le message n'a pas ete altere ET qu'il a ete cree par quelqu'un connaissant la cle. C'est la difference cruciale : le hachage donne l'integrite, HMAC donne l'integrite plus l'authentification.

Choisir le bon algorithme

HMAC-SHA256 est le standard de l'industrie et ce que vous devriez utiliser sauf raison specifique. HMAC-SHA384 et HMAC-SHA512 produisent des sorties plus longues pour des marges de securite superieures. HMAC-SHA1 est supporte pour la retrocompatibilite mais ne devrait pas etre utilise dans les nouvelles implementations.

Securite et confidentialite

Cet outil fonctionne entierement dans votre navigateur via l'API Web Crypto - la meme implementation cryptographique qui gere TLS. Votre cle secrete ne touche jamais un serveur. Verifiez-le en utilisant l'outil hors ligne.

Sécurité et Confidentialité

La sécurité de vos données est notre priorité

Traitement Local

Tout le traitement se fait dans votre navigateur

Aucun Transfert de Données

Vos données ne sont pas envoyées à nos serveurs

Aucun Stockage de Données

Aucune donnée n'est stockée ou partagée

Chiffrement SSL

Chiffrement SSL pour une connexion sécurisée

Étape Suivante

Aussi sur MoreOnlineTools