cybercursus

Chiffrer, hacher, encoder : trois choses qu'on confond tout le temps

9 min · Débutant · 7 août 2026

Sommaire
  1. Trois mots, trois propriétés différentes
  2. L’erreur la plus fréquente : confondre encodage et sécurité
  3. La démonstration

Trois mots, trois propriétés différentes

Ces trois termes reviennent partout dès qu’on parle de sécurité, et sont presque systématiquement confondus. Chacun répond pourtant à un besoin précis, avec une propriété qui les distingue :

text
Chiffrement : reversible AVEC la bonne cle    -> confidentialite
Hachage      : irreversible, par construction  -> integrite / verification
Encodage     : reversible SANS aucune cle       -> format de transport

L’erreur la plus fréquente : confondre encodage et sécurité

Le Base64 (souvent croisé dans une URL ou un en-tête HTTP) a l’air « chiffré » aux yeux d’un débutant : illisible au premier coup d’œil, composé de lettres et de chiffres. Il ne protège pourtant absolument rien : aucune clé n’est nécessaire pour revenir à la valeur d’origine.

Attention

Stocker un mot de passe encodé en Base64 plutôt qu’en clair n’apporte aucune protection réelle : n’importe qui peut le décoder en une fraction de seconde, sans outil particulier.

La démonstration

python
import base64, hashlib

message = "mot de passe"

# Encodage : reversible par n'importe qui, sans aucun secret
encode = base64.b64encode(message.encode()).decode()
decode = base64.b64decode(encode).decode()
print("Encode :", encode)
print("Decode :", decode)

# Hachage : irreversible par construction, aucune fonction "dehacher" n'existe
empreinte = hashlib.sha256(message.encode()).hexdigest()
print("Empreinte SHA-256 :", empreinte)
print("Retrouver le message a partir de l'empreinte : impossible directement")

Le décodage Base64 ne demande rien de plus que l’algorithme public. Retrouver le message à partir de son empreinte SHA-256, en revanche, n’a pas de solution directe : le chapitre 3 de ce cours montre les méthodes réellement utilisées pour y arriver malgré tout.

Qu'est-ce qui distingue fondamentalement le chiffrement du hachage ?
Pourquoi l'encodage Base64 n'apporte-t-il aucune sécurité ?

Pour aller plus loin

Commentaires

Recherche