Symétrique vs asymétrique : les deux familles de chiffrement
10 min · Intermédiaire · 7 août 2026
Chiffrement symétrique : une seule clé, dans les deux sens
Dans un chiffrement symétrique, la même clé sert à chiffrer et à déchiffrer. C’est simple et rapide, mais ça suppose un problème résolu au préalable : comment les deux parties se mettent-elles d’accord sur cette clé, sans qu’un tiers qui écoute la conversation ne l’obtienne aussi ?
# Chiffrement symetrique jouet (XOR), a but pedagogique uniquement :
# jamais utilise tel quel en pratique, l'algorithme reel (AES) est
# infiniment plus robuste. Le point a retenir : LA MEME cle sert aux
# deux operations.
def xor_chiffrer(texte, cle):
return bytes(octet ^ cle for octet in texte.encode())
message = "Message secret"
cle = 42 # la meme cle chiffre ET dechiffre
chiffre = xor_chiffrer(message, cle)
print("Chiffre (octets) :", list(chiffre))
dechiffre = bytes(octet ^ cle for octet in chiffre).decode()
print("Dechiffre :", dechiffre) Attention
Ce chiffrement XOR à clé unique est un jouet pédagogique, pas une recommandation : il se casse en quelques lignes de code. Un algorithme symétrique réel (AES, par exemple) applique le même principe de « clé unique dans les deux sens », avec une robustesse mathématique sans commune mesure.
Chiffrement asymétrique : deux clés, une seule reste secrète
Le chiffrement asymétrique utilise une paire de clés mathématiquement liées : une clé publique, qu’on peut diffuser librement, et une clé privée, qui ne quitte jamais son propriétaire. Ce que la clé publique chiffre, seule la clé privée correspondante peut le déchiffrer.
Analogie : la cle publique est un cadenas ouvert, distribue a qui veut.
Tout le monde peut le refermer sur une boite (chiffrer), mais seul le
proprietaire de la cle privee correspondante peut l'ouvrir (dechiffrer). Ce mécanisme résout directement le problème de distribution de clé : aucun secret ne circule jamais sur le réseau, seule la clé publique voyage.
Pourquoi pas juste de l’asymétrique, alors ?
L’asymétrique est nettement plus coûteux en calcul que le symétrique, de plusieurs ordres de grandeur. L’utiliser pour chiffrer un flux entier de données serait bien trop lent en pratique. La solution retenue par la quasi-totalité des systèmes réels, dont TLS (chapitre suivant), est hybride : l’asymétrique sert uniquement à échanger en sécurité une clé symétrique éphémère, puis tout le reste de la conversation bascule sur le symétrique, rapide.