Omnikit
DevFichiersFinancesTous les outils
Ctrl K
Outils pour développeursOutils pour fichiersCalculateurs financiersTous les outils
AccueilOutils pour développeursGénérateur HMAC
EnglishالعربيةবাংলাDeutschEspañolFrançaisPolskiPortuguêsРусский

Générateur HMAC

dev

HMAC-SHA1, SHA-256, SHA-384 et SHA-512 d'un texte ou d'un fichier, et vérification de signatures

Fonctionne dans votre navigateur. Rien de ce que vous saisissez n'est envoyé nulle part.

Un HMAC prouve qu'un message vient de quelqu'un qui détient le secret partagé ; c'est ainsi qu'on vérifie un webhook. SHA-1, SHA-256, SHA-384 et SHA-512 sont pris en charge, sur du texte ou sur un fichier jusqu'à 200 Mo. Le secret ne quitte jamais votre navigateur, ce qui compte pour une clé de signature.

Cette page a été traduite automatiquement à partir de l'original anglais. Aucune personne n’a encore relu la traduction : c’est la version anglaise qui fait foi. Lire l'original en anglais

Ensuite :
  • Générateur de hachage MD5, SHA-1, SHA-256, SHA-384 et SHA-512 de textes ou de fichiers, avec comparaison de somme de contrôle
  • Décodeur, vérificateur et encodeur JWT Décodez n'importe quel JWT, vérifiez sa signature et signez de nouveaux jetons, le tout dans votre navigateur

Comment générer une signature HMAC

1

Choisissez SHA-1, SHA-256, SHA-384 ou SHA-512 sous Algorithme.

2

Saisissez la Clé secrète et indiquez si elle est écrite en Texte, Hex ou Base64.

3

Collez le message sous Texte, ou passez à Fichier et appuyez sur Choisir un fichier.

4

Copiez le résultat Hex, Base64 ou Base64URL avec son icône de copie ; Ctrl+Entrée copie l'hex.

À propos du générateur HMAC

Ce générateur HMAC calcule un hachage à clé d'un texte ou d'un fichier avec SHA-1, SHA-256, SHA-384 ou SHA-512 et affiche le résultat en hex, en Base64 et en Base64 compatible URL pendant que vous tapez. Il vérifie aussi : collez la signature attendue et il vous dit si elle correspond.

HMAC permet à deux systèmes de prouver qu'un message vient de quelqu'un qui détient un secret partagé et qu'il n'a pas été modifié en route. Les développeurs s'en servent quand le webhook d'un prestataire de paiement échoue à la vérification et qu'il faut savoir si le secret, le corps ou l'en-tête est en cause, quand ils écrivent une fonction de signature et la comparent à une réponse connue, ou quand la documentation d'une API montre une signature d'exemple à reproduire.

La clé peut être saisie en texte, en hex ou en Base64, car les prestataires publient leurs secrets dans les trois formats. La signature attendue peut être en hex ou en Base64 et garder le préfixe de son en-tête, comme sha256= chez GitHub ou le format t=,v1= de Stripe. La comparaison se fait en temps constant, comme votre serveur devrait le faire aussi.

Tout se passe dans votre navigateur via la Web Crypto API. La clé et le message ne sont jamais envoyés, journalisés ni enregistrés, pas même dans ce navigateur ; seuls l'algorithme et le format de clé choisis sont mémorisés. Des fichiers jusqu'à 200 Mo peuvent être signés, car le fichier entier doit tenir en mémoire d'un coup.

Quand la vérification d'un webhook échoue, la cause habituelle est le corps : la signature couvre les octets bruts exacts, et un corps JSON resérialisé par un framework ne correspondra pas. Outils liés : JWT Decoder, Base64 Encoder, Bcrypt Hash and Verify.

Questions fréquentes

Comment générer une signature HMAC SHA256 en ligne ?

Choisissez SHA-256, tapez ou collez la clé secrète, puis tapez le message ou choisissez un fichier. La signature apparaît aussitôt en hex et en Base64 ; appuyez sur Copier à côté de celle qu'attend votre API. Si votre clé est donnée en hex ou en Base64 plutôt qu'en texte, changez d'abord le format de clé, car les mêmes caractères se décodent en octets différents.

Ma clé secrète est-elle envoyée à un serveur ?

Non. Le HMAC est calculé dans votre navigateur avec la Web Crypto API, et la clé et le message ne quittent jamais la page. Rien de ce que vous tapez n'est journalisé ni enregistré, pas même dans le stockage local. Seuls l'algorithme et le format de clé choisis sont mémorisés sur cet appareil pour la prochaine fois.

Pourquoi la signature de mon webhook ne correspond-elle pas ?

En général, le corps n'est pas, octet pour octet, ce que l'expéditeur a signé : un framework a analysé puis resérialisé le JSON, modifié les fins de ligne ou supprimé des espaces. Signez le corps brut. Autres causes : le mauvais secret (les clés de test et de production diffèrent), un secret hex traité comme du texte, ou de l'hex comparé à une signature Base64.

Quelle différence entre un HMAC et un simple hachage SHA-256 ?

N'importe qui peut calculer un simple hachage, il ne prouve donc rien sur son auteur. HMAC y mêle une clé secrète, si bien que seul le détenteur de la clé peut produire la bonne valeur. Il est aussi conçu pour résister aux attaques par extension de longueur qui cassent l'approche naïve consistant à hacher la clé suivie du message.

Pourquoi comparer en temps constant lors de la vérification ?

Une comparaison de chaînes ordinaire s'arrête au premier caractère différent : sa durée révèle donc quelle part d'une signature devinée était juste. Mesuré sur de nombreuses requêtes, cela permet à un attaquant de construire une signature valide octet par octet. Cet outil compare chaque octet à chaque fois, et le code de votre serveur devrait faire de même.

Quelles sont les limites ?

Des messages texte de toute longueur raisonnable et des fichiers jusqu'à 200 Mo, car Web Crypto a besoin du message entier en mémoire. SHA-1, SHA-256, SHA-384 et SHA-512 sont pris en charge ; MD5 n'existe pas dans Web Crypto et ne devrait de toute façon pas servir pour de nouvelles signatures. Les clés doivent faire au moins un octet.

Toujours bloqué ? Poser une question sur Générateur HMAC et toute personne qui connaît la réponse peut répondre. Aucun compte nécessaire.

Outils associés

Tous les outils pour développeurs
Infos navigateur et appareilVoyez ce que n'importe quel site peut lire sur votre navigateur et votre appareil, et copiez-le pour le supportDécodeur, vérificateur et encodeur JWTDécodez n'importe quel JWT, vérifiez sa signature et signez de nouveaux jetons, le tout dans votre navigateurGénérateur de mots de passeMots de passe aléatoires robustes et phrases de passe mémorisables, générés sur votre appareilTesteur de force de mot de passeCombien de temps votre mot de passe résisterait à une attaque, et ce qui le rend faible exactementHachage et vérification bcryptHachez un mot de passe avec bcrypt à un coût de 4 à 14, ou vérifiez un mot de passe contre un hachageLink Safety CheckerPaste a suspicious link and see the phishing tricks in it, without ever opening the linkWebRTC Leak TestSee which IP addresses WebRTC hands to websites, and whether your VPN is being bypassedTOTP Generator and TesterLive authenticator codes from a secret, a QR code for your app, and a code tester
Cet outil vous a-t-il été utile ?
Omnikit

Les petites tâches, faites dans votre navigateur. Gratuit, rapide et privé. Les fichiers ne sont jamais envoyés.

Fichiers

  • Compress Image
  • Image to PDF
  • Merge PDF
  • Compress PDF
  • PDF to Word
  • Word to PDF

Dev

  • JSON Formatter & Validator
  • Base64 Encode & Decode
  • JWT Decoder, Verifier & Encoder
  • Password Generator
  • UUID Generator
  • Unix Timestamp Converter

Finances

  • SIP Calculator
  • EMI Calculator
  • GST Calculator
  • FD Calculator
  • PPF Calculator
  • Lumpsum Calculator
EnglishالعربيةবাংলাDeutschEspañolFrançaisPolskiPortuguêsРусский
GuidesQuestionsÀ proposNos vérificationsBibliothèque juridique (bêta)ConfidentialitéConditionsTransparenceContactMore: Exam practice (UGC NET Paper 1)Fonctionne dans votre navigateur. Rien n'est envoyé. © 2026 Omnikit (theomnikit.com)