0Pricing
Ethical Hacking Academy · Leçon

Encodage ou chiffrement

Base64, hexadécimal, chiffrements

Encodage ou chiffrement est une leçon Ethical Hacking Academy gratuite sur CoddyKit. Ceci est la leçon 1 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage Ethical Hacking Academy, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours Ethical Hacking Academy comprend 4 leçons au total.

Deux objectifs différents

L’encodage et le chiffrement semblent similaires, car ils transforment tous deux les données en quelque chose d’illisible au premier regard, mais leurs objectifs sont complètement différents.

  • L’encodage modifie le format des données afin qu’elles puissent être stockées ou transmises en toute sécurité.
  • Le chiffrement protège la confidentialité des données afin que seule une personne possédant une clé puisse les lire.

Confondre les deux est l’une des erreurs les plus courantes chez les débutants en sécurité.

L’encodage est réversible par n’importe qui

L’encodage utilise un schéma public et bien connu. Aucun secret n’intervient. Toute personne qui connaît le schéma peut décoder les données instantanément.

Les encodages courants comprennent Base64, hex, URL encoding et ASCII. Ils permettent aux données binaires de transiter par des canaux uniquement textuels, comme les e-mails ou les en-têtes HTTP.

Base64 en pratique

Base64 représente les données binaires à l’aide de 64 caractères imprimables (A-Z, a-z, 0-9, + et /). Il augmente la taille des données d’environ 33 %. Un = final sert de remplissage.

Vous pouvez le décoder sur n’importe quelle machine Linux, sans aucune clé :

echo 'aGVsbG8gd29ybGQ=' | base64 -d
# Output: hello world

Repérer le Base64

En tant que pirate, vous rencontrerez du Base64 partout : jetons JWT, cookies, fichiers de configuration et données exfiltrées. Voici les indices qu’un bloc est encodé en Base64 :

  • Il ne contient que A-Za-z0-9+/ et éventuellement un remplissage avec =.
  • Sa longueur est un multiple de 4.
  • Son décodage donne du texte lisible ou des en-têtes de fichiers reconnaissables.

Essayez toujours de décoder les chaînes suspectes avant de supposer qu’elles sont chiffrées.

Encodage hexadécimal

L’encodage hexadécimal représente chaque octet par deux caractères (0-9, a-f). Il est très utilisé dans les captures réseau, les vidages mémoire et les sorties de hachage.

Les valeurs d’octets 0x68 0x69 écrivent le texte ASCII « hi ».

echo -n 'hi' | xxd -p
# Output: 6869

echo '6869' | xxd -r -p
# Output: hi

Ce que le chiffrement ajoute : une clé

Le chiffrement applique un algorithme de chiffrement ainsi qu’une clé secrète. Sans la clé, il est pratiquement impossible, du point de vue computationnel, d’inverser la sortie (le texte chiffré).

  • Texte en clair = les données lisibles d’origine ;
  • Texte chiffré = la sortie chiffrée ;
  • Clé = le secret qui contrôle le chiffrement et le déchiffrement.

Modifiez la clé et le texte chiffré change complètement.

Chiffres classiques : César

Le chiffre de César décale chaque lettre d’un nombre fixe de positions. Avec un décalage de 3, A devient D. Il s’agit uniquement d’un exemple pédagogique, car il n’existe que 25 clés possibles : il est donc trivialement cassable par force brute.

ROT13 est un chiffre de César avec un décalage de 13. C’est techniquement un chiffre, mais il n’offre aucune sécurité réelle.

echo 'hello' | tr 'a-z' 'd-za-c'
# Output: khoor  (shift of 3)

Chiffres modernes

Le chiffrement réel utilise des algorithmes comme AES (symétrique) et RSA (asymétrique). Ceux-ci reposent sur de grandes clés et des problèmes mathématiques difficiles, plutôt que sur le secret de l’algorithme.

Principe de Kerckhoffs : un système cryptographique doit rester sûr même si tout ce qui le concerne, à l’exception de la clé, est public. La sécurité vient de la clé, jamais du fait de dissimuler l’algorithme.

Le chiffrement ressemble à du hasard

Voici une différence essentielle que vous pouvez observer : un texte chiffré de qualité ressemble à un bruit aléatoire à forte entropie. Ce n’est pas le cas des données encodées.

  • Le Base64 de « hello » est toujours aGVsbG8= pour tout le monde.
  • Le résultat AES de « hello » change avec la clé et le vecteur d’initialisation, ce qui produit une sortie différente à chaque fois.

Si le décodage d’une chaîne donne du texte lisible sans aucune clé, elle était encodée et non chiffrée.

Pourquoi c’est important pour les pirates

Lors d’une évaluation, vous trouvez constamment des données dissimulées. Se demander « s’agit-il d’un encodage ou d’un chiffrement ? » oriente votre prochaine action :

  • Encodé ? Décodez-le immédiatement, aucune clé n’est nécessaire. Des identifiants dissimulés en Base64 sont une réussite immédiate.
  • Chiffré ? Trouvez la clé, attaquez la gestion des clés ou recherchez des failles d’implémentation.

Traiter l’encodage comme s’il s’agissait d’une mesure de sécurité est une vulnérabilité que vous signalerez constamment.

L’obfuscation est une troisième catégorie

Méfiez-vous d’une troisième catégorie : l’obfuscation. Elle consiste à rendre délibérément les données difficiles à lire (JS réduit, binaires compressés, XOR avec un octet fixe), sans véritable algorithme de chiffrement ni gestion de clés.

Comme l’encodage, l’obfuscation n’offre aucune véritable confidentialité. Elle ne fait que ralentir un observateur occasionnel. Les analystes expérimentés l’inversent régulièrement.

Vérification rapide

Testez votre compréhension de la distinction fondamentale.

Récapitulatif

Vous avez appris la différence essentielle entre l’encodage et le chiffrement :

  • L’encodage (Base64, hexadécimal) est réversible par n’importe qui et ne modifie que le format.
  • Le chiffrement (AES, RSA) nécessite une clé secrète et protège la confidentialité.
  • L’obfuscation dissimule les données, mais ne les sécurise pas.
  • Décodez toujours d’abord les chaînes suspectes ; le texte chiffré ressemble à un bruit aléatoire, tandis que les données encodées donnent du contenu lisible sans clé.

Vous allez maintenant découvrir le hachage, une transformation à sens unique, différente des deux autres.

Questions Fréquemment Posées

La leçon « Encodage ou chiffrement » est-elle gratuite ?

Oui — le texte complet de « Encodage ou chiffrement » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours Ethical Hacking Academy, passe à CoddyKit PRO. Le cours Ethical Hacking Academy comprend 4 leçons au total.

Qu'est-ce que j'apprendrai dans « Encodage ou chiffrement » ?

Base64, hexadécimal, chiffrements Tu pratiques Ethical Hacking Academy avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.

Dois-je avoir de l'expérience pour commencer Ethical Hacking Academy ?

Aucune expérience préalable n'est requise. Ethical Hacking Academy sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 1 sur 4.

Combien de temps prend la leçon « Encodage ou chiffrement » ?

La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.

Peux-tu écrire et exécuter du code dans cette leçon Ethical Hacking Academy ?

Oui. Chaque leçon Ethical Hacking Academy inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.

Toutes les leçons de ce cours

  1. Encodage ou chiffrement
  2. Hachage
  3. Symétrique et asymétrique
  4. Craquer des hachages
← Retour à Ethical Hacking Academy