Charger un fichier
  1. base64hub
  2. Autres bases
  3. Hex en Base64

Convertisseur hex en Base64 pour hachages et clés

Collez des octets en hex et obtenez les mêmes octets en Base64. Une empreinte SHA-256 de 64 chiffres hex devient 44 caractères Base64, car l’hex est d’abord décodé en octets au lieu d’être encodé comme du texte.

Gratuit sans inscription, sans limites Local rien n'est envoyé 44 car. pour une empreinte SHA-256, pas 88 Mis à jour 27 oct. 2026
Entrée 0Octets 0 BSortie 0

Traité dans votre navigateur. Cette page ne peut envoyer vos données nulle part – comment le savons-nous

Comment convertir de l’hex en Base64

  1. Collez l’hex dans Entrée · Hex. Les espaces, sauts de ligne, deux-points, tirets et préfixes 0x ou \x sont ignorés, et la casse n’a pas d’importance.
  2. Le Base64 s’affiche dans Sortie · Base64 pendant la saisie.
  3. Sous la sortie, décochez Remplissage (=) si le destinataire veut du Base64 sans remplissage, et réglez Retour à la ligne sur 64 (PEM) ou 76 (MIME) pour une sortie coupée.
  4. Copier la sortie, ou utilisez le bouton Base64 → Hex pour vérifier le résultat dans l’autre sens. Base64 en hex est le même outil dans le sens inverse.

Empreintes de hachage : hex ou Base64

Les fonctions de hachage renvoient des octets bruts. Les outils en ligne de commande comme sha256sum et md5sum affichent ces octets en hex, alors que de nombreux protocoles attendent la même empreinte en Base64. Voici les empreintes des cinq octets hello :

HachageHex (de sha256sum etc.)Base64
MD55d41402abc4b2a76b9719d911017c592XUFAKrxLKna5cZ2REBfFkg==
SHA-1aaf4c61ddcc5e8a2dabede0f3b482cd9aea9434dqvTGHdzF6KLavt4PO0gs2a6pQ00=
SHA-2562cf24dba5fb0a30e26e83b2ac5b9e29e1b161e5c1fa7425e73043362938b9824LPJNul+wow4m6DsqxbninhsWHlwfp0JecwQzYpOLmCQ=

Les contextes qui veulent la forme Base64 :

  • Subresource Integrity. integrity="sha384-…" sur une balise <script> ou <link> contient une empreinte en Base64. Le générateur de hachage SRI construit l’attribut complet à partir d’un fichier.
  • Les en-têtes Content-MD5. La RFC 1864 définit la valeur comme le Base64 de l’empreinte MD5 de 16 octets, et les stockages d’objets qui vérifient les envois avec cet en-tête rejettent la forme hex. Voir MD5 en Base64.
  • Les signatures et HMAC des requêtes d’API, généralement envoyés en Base64. HMAC en Base64 les calcule sous les deux formes.
  • Les clés et secrets : une clé de 32 octets affichée par openssl rand -hex 32 devient la valeur Base64 de 44 caractères qu’attendent de nombreux fichiers de configuration.

Pour le SHA-256 de votre propre texte ou fichier, SHA-256 en Base64 saute complètement l’étape hex.

L’erreur classique : encoder le texte hex

echo -n 2cf24d…9824 | base64 donne un résultat plausible, mais faux. Cette commande encode les 64 caractères ASCII de l’hex au lieu des 32 octets qu’ils représentent, et renvoie 88 caractères commençant par MmNmMjRk. Cette valeur se décode en le texte hex, donc rien ne proteste jusqu’à ce qu’une vérification de signature ou d’intégrité échoue. Décodez d’abord l’hex :

echo -n 2cf24dba5fb0a30e26e83b2ac5b9e29e1b161e5c1fa7425e73043362938b9824 | xxd -r -p | base64
# LPJNul+wow4m6DsqxbninhsWHlwfp0JecwQzYpOLmCQ=

printf hello | openssl dgst -sha256 -binary | base64
# same result, without going through hex at all

xxd -r -p retransforme de l’hex simple en octets. L’outil est livré avec Vim ; sur les systèmes minimaux, installez le paquet xxd. Avec OpenSSL, c’est -binary qui fait sortir l’empreinte en octets plutôt qu’en hex.

Hex en Base64 dans le code

import base64
base64.b64encode(bytes.fromhex("5d41402abc4b2a76b9719d911017c592")).decode()
# 'XUFAKrxLKna5cZ2REBfFkg=='
Buffer.from("5d41402abc4b2a76b9719d911017c592", "hex").toString("base64");
// 'XUFAKrxLKna5cZ2REBfFkg=='

Les pages Python et Node.js traitent des variantes URL-safe et sans remplissage. Quand l’empreinte va dans une URL ou un JWT, convertissez le résultat avec Base64 en Base64URL.

Si la conversion échoue

  • « nombre impair de chiffres hexadécimaux ». Chaque octet demande deux chiffres ; l’un d’eux s’est perdu au copier. Vérifiez les deux extrémités de l’entrée.
  • « caractère inattendu ». L’entrée contient autre chose que de l’hex, comme une étiquette sha256: ou le nom de fichier que sha256sum affiche après l’empreinte. Supprimez-le ; Afficher saute à l’endroit concerné.
  • Les offsets d’un dump hex. Dans 00000010: 4865 6c6c, 00000010 est une position, pas une donnée, mais c’est de l’hex valide et il sera converti. Utilisez la sortie de xxd -p, qui n’a pas d’offsets.

FAQ

Comment convertir un hachage SHA-256 en hex en Base64 ?

Collez les 64 chiffres hex dans l’entrée. Le résultat fait 44 caractères et se termine par = : par exemple, 2cf24dba…9824 devient LPJNul+wow4m6DsqxbninhsWHlwfp0JecwQzYpOLmCQ=. En ligne de commande : echo -n HEX | xxd -r -p | base64.

Pourquoi mon Base64 est-il deux fois trop long ?

La chaîne hex a été encodée comme du texte : chaque chiffre hex est devenu un octet. Une empreinte SHA-256 traitée ainsi donne 88 caractères au lieu de 44. Décodez d’abord l’hex en octets, ce que fait ce convertisseur.

Combien de caractères Base64 donne une chaîne hex ?

Deux chiffres hex font un octet, et tous les 3 octets deviennent 4 caractères Base64, arrondis au multiple de 4 supérieur. 32 chiffres hex (MD5) donnent 24 caractères, 40 (SHA-1) en donnent 28, 64 (SHA-256) en donnent 44 et 128 (SHA-512) en donnent 88.

Puis-je convertir un UUID en Base64 ?

Oui, collez-le avec les tirets. Les 16 octets de 123e4567-e89b-12d3-a456-426614174000 deviennent Ej5FZ+ibEtOkVkJmFBdAAA==, soit 24 caractères au lieu de 36.