Problème — Sécurisation d'un échange par chiffrement hybride
Application directe du cours · niveau 2 · NSI (terminale), chapitre 14 — Réseaux : protocoles, routage et sécurité
Énoncé
Problème — Sécurisation d'un échange par chiffrement hybride.
Alice veut envoyer un fichier confidentiel à Bob via Internet. Expliquer, étape par étape, comment un système de chiffrement hybride (comme TLS/HTTPS) garantit la confidentialité de l'échange. On illustrera par un petit pseudo-code Python décrivant le principe.
Corrigé
Le problème du chiffrement symétrique seul est le partage de la clé secrète ; celui du chiffrement asymétrique seul est sa lenteur. Le chiffrement hybride combine les deux :
- Bob possède une paire de clés (publique / privée) et publie sa clé publique.
- Alice génère une clé de session symétrique aléatoire.
- Alice chiffre cette clé de session avec la clé publique de Bob (asymétrique) et la lui envoie.
- Bob déchiffre la clé de session avec sa clé privée : lui seul peut le faire.
- Alice et Bob partagent désormais la clé de session ; ils chiffrent le fichier avec cette clé (symétrique, donc rapide).
Le principe peut être illustré ainsi :
# Principe du chiffrement hybride (pseudo-code illustratif)
# 1. Bob dispose d'une paire de cles asymetriques
cle_publique_bob, cle_privee_bob = generer_paire_cles()
# 2. Alice cree une cle de session symetrique aleatoire
cle_session = generer_cle_symetrique()
# 3. Alice chiffre la cle de session avec la cle PUBLIQUE de Bob
cle_session_chiffree = chiffrer_asym(cle_session, cle_publique_bob)
# -> envoyee a Bob sur le reseau (illisible pour un espion)
# 4. Bob retrouve la cle de session avec sa cle PRIVEE
cle_session_bob = dechiffrer_asym(cle_session_chiffree, cle_privee_bob)
# 5. Les echanges utilisent ensuite le chiffrement symetrique (rapide)
message_chiffre = chiffrer_sym("fichier confidentiel", cle_session)
message_clair = dechiffrer_sym(message_chiffre, cle_session_bob)
Ainsi, même si un attaquant intercepte tous les paquets, il ne voit que des données chiffrées et la clé de session chiffrée, qu'il ne peut déchiffrer sans la clé privée de Bob. La confidentialité est garantie. C'est exactement ce mécanisme qu'utilise HTTPS pour sécuriser la navigation web.
Les autres exercices de ce chapitre Le cours du chapitre
Un blocage sur cet exercice ? Le tuteur d'Adloun guide par questions, sans donner la réponse.