La cryptographie est le fondement de la sécurité informatique. Elle permet de garantir la confidentialité, l'intégrité et l'authenticité des données. Ce module vous présente les concepts clés, les algorithmes courants et la mise en œuvre pratique avec des outils comme OpenSSL.
| Pilier | Description | Exemple d'algorithme |
|---|---|---|
| Chiffrement symétrique | Une seule clé pour chiffrer et déchiffrer. Rapide mais problème de distribution de la clé. | AES, 3DES, ChaCha20 |
| Chiffrement asymétrique | Paire de clés (publique/privée). La clé publique chiffre, la privée déchiffre. | RSA, ECC, ElGamal |
| Fonction de hachage | Empreinte unique et irréversible. Vérifie l'intégrité des données. | SHA-256, SHA-3, MD5 (déconseillé) |
echo -n "bonjour" | sha256sumLa PKI est l'infrastructure qui permet de gérer les certificats numériques.
| Élément | Rôle |
|---|---|
| Autorité de Certification (AC) | Émet et signe les certificats. Ex : Let's Encrypt, DigiCert, Sectigo. |
| Autorité d'Enregistrement (AR) | Vérifie l'identité du demandeur de certificat. |
| Certificat X.509 | Document numérique liant une clé publique à une identité (nom, organisation). |
| Liste de révocation (CRL) / OCSP | Permet de vérifier si un certificat a été révoqué. |
Bonnes pratiques : Utiliser des certificats avec une durée de validité limitée (ex : 90 jours pour Let's Encrypt). Automatiser le renouvellement avec des outils comme Certbot.
Générer une clé privée et extraire la clé publique :
# Générer une clé privée RSA de 2048 bits openssl genrsa -out cle_privee.pem 2048 # Extraire la clé publique openssl rsa -in cle_privee.pem -pubout -out cle_publique.pem # Afficher la clé publique cat cle_publique.pem
genrsa : génère une clé privée RSA.-out cle_privee.pem : sauvegarde dans le fichier.rsa -pubout : extrait la clé publique depuis la clé privée.Signer un fichier avec sa clé privée :
# Signer le document openssl dgst -sha256 -sign cle_privee.pem -out signature.bin document.pdf # Vérifier la signature openssl dgst -sha256 -verify cle_publique.pem -signature signature.bin document.pdf
dgst -sha256 : calcule l'empreinte SHA-256 du document.-sign cle_privee.pem : chiffre l'empreinte avec la clé privée.-verify cle_publique.pem : vérifie avec la clé publique.Créer un certificat pour un serveur HTTPS :
# Générer une requête de certificat (CSR) openssl req -new -key cle_privee.pem -out demande.csr # Générer un certificat autosigné (valable 365 jours) openssl x509 -req -in demande.csr -signkey cle_privee.pem -out certificat.crt -days 365
req -new : génère une demande de certificat.x509 -req : signe la demande avec la clé privée (autosigné).Associez chaque terme à sa définition :
Vous devez sécuriser les communications d'une application web avec HTTPS. Définissez les étapes pour obtenir et installer un certificat.
curl -v https://monsite.fr.Testez vos connaissances. Sélectionnez une réponse, un feedback s'affichera immédiatement.
1. Le chiffrement symétrique utilise :
2. AES est un algorithme de :
3. Une fonction de hachage (SHA-256) est :
4. Dans une PKI, l'Autorité de Certification (AC) a pour rôle de :
5. La commande openssl genrsa -out cle.pem 2048 permet de :