De l'hexadécimal au texte : reconnaître et décoder l'hexa

Fondamentaux de la Sécurité Niveau 2/4 ~3 min 27 juillet 2026

Le défi

Un flag a été écrit sous forme d'une longue suite de chiffres hexadécimaux, en n'utilisant que les caractères 0-9 et a-f. C'est la signature d'un encodage précis. Reconnaissez-le, cliquez sur le décodeur correspondant, et soumettez le flag.

Ce que tu vas apprendre

  • Reconnaître l'encodage hexadécimal grâce à son jeu de caractères limité (0-9a-f) et à sa longueur paire
  • Comprendre que chaque paire de caractères hexadécimaux représente un octet
  • Décoder une chaîne hexadécimale en une seule étape avec le bouton décodeur correspondant
  • Distinguer l'encodage hexadécimal du base64 grâce au jeu de caractères et au padding
  • Comprendre pourquoi l'hexa n'offre aucune confidentialité, seulement une autre façon d'écrire des octets

Compétences testées

Reconnaissance de l'hexadécimalDécodage hexadécimalDistinguer les encodages par leur jeu de caractères

Prérequis

  • L'idée qu'un texte peut être écrit comme une suite de valeurs d'octets
  • Être à l'aise pour comparer une courte chaîne à un jeu de caractères attendu

Comment ça marche

L'hexadécimal, ou hex, est une façon d'écrire des octets à l'aide de seize chiffres : 0-9 pour les valeurs de zéro à neuf et a-f pour dix à quinze. Chaque octet occupe exactement deux caractères hexadécimaux, donc une chaîne hexadécimale a toujours une longueur paire et ne contient jamais de lettre après f. Ce jeu de caractères restreint est le moyen le plus simple de reconnaître de l'hexa à l'œil nu : si vous ne voyez que des 0-9 et des a-f, avec un nombre pair de caractères, c'est presque certainement de l'hexa.

Le décodage est mécanique. Le décodeur lit la chaîne deux caractères à la fois, transforme chaque paire en l'octet qu'elle désigne, puis affiche ces octets sous forme de texte. Il n'y a ni clé ni secret impliqué : la correspondance entre une paire comme 48 et son octet est fixe et publique. N'importe qui peut inverser de l'hexa en un seul clic, ce qui explique pourquoi l'hexa, comme le base64 et le ROT13, est un encodage et non un chiffrement.

Distinguer l'hexa du base64 est la véritable compétence testée ici. Le base64 utilise des lettres majuscules et minuscules, des chiffres, et se termine souvent par un padding =, il contient donc des caractères comme G-Z que l'hexa ne contient jamais. La chaîne présentée ici n'en a aucun, seulement des 0-9a-f, donc le base64 n'est pas le bon outil. Les boutons ROT13, URL et inverse attendent eux aussi des formats différents et ne produiraient pas de texte lisible : ce sont des leurres.

Erreurs fréquentes

  • Essayer le base64 en premier. Le base64 contiendrait des lettres après f et souvent un padding =. Une chaîne composée uniquement de 0-9a-f est de l'hexa, pas du base64.
  • Mal découper les paires. L'hexa se lit deux caractères par octet. Lire caractère par caractère ou avec des regroupements impairs produit du charabia ; laissez le décodeur gérer l'appariement.
  • Croire que l'hexa protège la valeur. Il n'y a pas de clé, donc l'hexa ne cache rien. Il suffit d'un clic pour retrouver le texte en clair.
  • Soumettre les chiffres hexadécimaux au lieu du flag décodé. La réponse est le flag lisible après décodage, y compris son enveloppe HDNA.

Comment s'en protéger

Le point de défense est le même pour tous les encodages : l'hexa est un format de transport et d'affichage, jamais un contrôle de sécurité. Si une valeur doit rester confidentielle, elle doit être protégée par un véritable chiffrement utilisant une clé secrète gérée, ou bien être totalement absente de l'artefact. Une suite de caractères hexadécimaux autour d'une valeur indique comment elle est écrite, pas qu'elle est en sécurité.

  • Ne jamais considérer une chaîne hexadécimale comme une protection pour des mots de passe, des tokens ou des données personnelles.
  • Utiliser un chiffrement approprié avec une clé gérée lorsque les données ont réellement besoin de confidentialité.
  • Considérer toute couche hexadécimale, base64 ou URL dans les logs, les configurations ou les réponses comme cosmétique, et la décoder lors des revues.
  • Décoder chaque valeur encodée trouvée dans vos propres systèmes pour confirmer qu'aucune information sensible ne se trouve exposée en clair.

Solution complète

Les membres Pro et Max débloquent la solution complète étape par étape.

Passer Pro

Statistiques de la communauté

116 résolutions
75% taux de réussite
M2F14M3 Premier sang

Hacks du jour associés

24 000+ Hackers 100+ Labs & Cours Gratuit
Commencer Gratuitement