Introduction
Bienvenue dans le monde de la cryptographie ! Dans ce laboratoire, vous acquerrez une expérience pratique avec l'un des concepts les plus fondamentaux de la sécurité moderne : le hachage cryptographique. Plus spécifiquement, nous travaillerons avec l'algorithme SHA-256.
Une fonction de hachage cryptographique est un algorithme mathématique qui prend une entrée (ou « message ») de n'importe quelle taille et produit une chaîne d'octets de taille fixe. Ce résultat est généralement un « condensat » (digest) ou un « hash ». SHA-256, par exemple, produit toujours un hash de 256 bits (32 octets).
Ces fonctions possèdent plusieurs propriétés importantes :
- Déterministe : La même entrée produira toujours la même sortie.
- À sens unique (One-way) : Il est pratiquement impossible de calculer inversement la fonction pour retrouver l'entrée originale à partir de son hash.
- Effet d'avalanche (Avalanche Effect) : Un petit changement dans l'entrée (comme modifier un seul caractère) produira un hash de sortie radicalement différent.
Tout au long de ce laboratoire, vous utiliserez l'outil en ligne de commande openssl et un script Python simple pour explorer ces propriétés et comprendre comment le hachage est utilisé dans des scénarios réels tels que la vérification de l'intégrité des fichiers et la sécurisation des mots de passe.



