Convertisseur hexadécimal en texte
Décodez les valeurs hexadécimales en caractères lisibles.
Chaque fois qu’un outil affiche le contenu d’un fichier binaire, il l’exprime souvent en hexadécimal. Deux chiffres hex forment un octet (0 à 255). Chaque octet peut représenter un caractère ASCII ou UTF-8. Pour décoder ce qu’on lit, il suffit de convertir les paires hex en caractères.
Deux chiffres hex font un octet, un octet fait un caractère
Quand vous voyez 48 65 6C 6C 6F en hexadécimal dans un debuggeur, vous regardez un message. Chaque paire (48, 65, 6C, 6C, 6F) est un octet. 48 en hex = 72 en décimal = la lettre H en ASCII. 65 en hex = 101 en décimal = la lettre e. Ensemble, c’est « Hello ».
C’est pourquoi les outils affichent les fichiers binaires en hex : c’est dense (deux chiffres par caractère), précis (pas d’ambiguïté sur les frontières), et facile à copier.
Signatures hexadécimales courantes des fichiers
| Type de fichier | Premiers octets (hex) | Interprétation |
|---|---|---|
| PNG | 89 50 4E 47 | Octet de contrôle, puis « PNG » |
| 25 50 44 46 | « %PDF » | |
| ZIP | 50 4B 03 04 | « PK » (PKware) |
| JPEG | FF D8 FF E0 | Marqueurs JPEG |
| GIF | 47 49 46 38 | « GIF8 » |
Lire un fichier par sa signature
Les fichiers commencent par une séquence unique d’octets, la signature ou magic number. PNG commence par 89 50 4E 47 (un octet non imprimable suivi de « PNG »). Les fichiers ZIP commencent par 50 4B (« PK »). Ces signatures permettent à un système d’exploitation d’identifier le type d’un fichier indépendamment de son extension. Si vous renommez un PNG en .txt, le navigateur regarde les premiers octets et sait encore que c’est une image.
Les fichiers malveillants tentent parfois de contrefaire une signature, mais c’est la première chose à vérifier.
Décoder une chaîne hexadécimale en texte
- Écrivez votre hex. Prenons
48 69. - Divisez en paires d’octets. 48 et 69.
- Convertissez chaque paire en décimal. 48 hex = 72 décimal. 69 hex = 105 décimal.
- Cherchez le caractère ASCII. 72 = H, 105 = i.
- Écrivez le résultat. « Hi ».
Questions sur hex vers texte
Qu’arrive-t-il si j’essaie de décoder un octet comme 00 ou 1F ?
Ce sont des caractères de contrôle, non imprimables (retour à la ligne, tabulation, son bip). Ils n’affichent pas à l’écran mais contrôlent le dispositif. L’outil les signale.
Est-ce que tous les octets entre 0 et 255 ont un caractère ?
Oui, mais beaucoup ne sont pas imprimables. ASCII (0-127) est bien défini. De 128 à 255, cela dépend de l’encodage : Latin-1, UTF-8, Windows-1252, etc.
Comment identifier le type d’un fichier corrompu ?
Lisez les premiers octets. Si la signature est correcte (PNG commence par 89 50 4E 47), le fichier n’est pas corrompu au démarrage. Si la signature est manquante ou altérée, la corruption a commencé très tôt.
Est-ce que l’émoji se code en hex comme les lettres ?
Un émoji prend plusieurs octets en UTF-8 (souvent 4). Le cœur ❤ en UTF-8 est E2 9D A4. Vous verriez trois paires hex pour un seul caractère.
Pourquoi un fichier commence-t-il par FF ou 89 au lieu de texte lisible ?
C’est une protection contre les erreurs. Si un fichier binaire commençait par du texte, quelqu’un pourrait le confondre avec du texte brut. Un octet inhabituel signifie clairement « c’est du binaire, ne m’ouvrez pas dans un éditeur ».