🔑 Module 6 – Cryptographie appliquée et gestion des clés

📘 Cours complet ⏱️ 4h 🎯 Bloc 3 – B3.2 / B3.4
Objectifs : maîtriser les principes de la cryptographie, mettre en œuvre des algorithmes de chiffrement, gérer les clés et les certificats.

📖 Introduction

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.

🎯

À l'issue de ce module, vous serez capable de :

  • Distinguer chiffrement symétrique, asymétrique et fonctions de hachage.
  • Générer et gérer des clés avec OpenSSL.
  • Configurer un serveur HTTPS avec un certificat.
  • Mettre en œuvre une signature électronique et un horodatage.
  • Comprendre le fonctionnement d'une PKI.

🔐 Les trois piliers de la cryptographie

PilierDescriptionExemple d'algorithme
Chiffrement symétriqueUne seule clé pour chiffrer et déchiffrer. Rapide mais problème de distribution de la clé.AES, 3DES, ChaCha20
Chiffrement asymétriquePaire de clés (publique/privée). La clé publique chiffre, la privée déchiffre.RSA, ECC, ElGamal
Fonction de hachageEmpreinte unique et irréversible. Vérifie l'intégrité des données.SHA-256, SHA-3, MD5 (déconseillé)

2.1 – Chiffrement symétrique (AES)

2.2 – Chiffrement asymétrique (RSA / ECC)

2.3 – Fonctions de hachage

🏛️ Infrastructure à clés publiques (PKI)

La PKI est l'infrastructure qui permet de gérer les certificats numériques.

ÉlémentRô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.509Document numérique liant une clé publique à une identité (nom, organisation).
Liste de révocation (CRL) / OCSPPermet 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.

🛠️ Mise en pratique

4.1 – Générer une paire de clés RSA avec OpenSSL

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.
  • La clé publique peut être partagée librement.

4.2 – Signer et vérifier un document

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.
  • Si la vérification réussit, le document est authentique et intact.

4.3 – Générer un certificat autosigné

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é).
  • Ce certificat peut être utilisé pour tester un serveur HTTPS.
  • Pour une utilisation en production, préférer un certificat délivré par une AC reconnue.

📝 Exercices d'application

Exercice 1 – Vocabulaire cryptographique

Associez chaque terme à sa définition :

  • Chiffrement symétrique : Une seule clé pour chiffrer et déchiffrer.
  • Chiffrement asymétrique : Une paire de clés (publique/privée).
  • Fonction de hachage : Empreinte unique et irréversible.
  • PKI : Infrastructure de gestion des certificats et des clés.

Exercice 2 – Mise en situation

Vous devez sécuriser les communications d'une application web avec HTTPS. Définissez les étapes pour obtenir et installer un certificat.

  • Étape 1 : Générer une paire de clés RSA.
  • Étape 2 : Créer une demande de certificat (CSR).
  • Étape 3 : Soumettre la CSR à une Autorité de Certification (ex : Let's Encrypt).
  • Étape 4 : Valider la possession du domaine.
  • Étape 5 : Télécharger et installer le certificat sur le serveur web.
  • Étape 6 : Configurer le serveur (Nginx/Apache) pour utiliser le certificat.
  • Étape 7 : Vérifier le bon fonctionnement avec curl -v https://monsite.fr.

🎯 Quiz d'auto‑évaluation

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 :

📚 Ressources et liens utiles


← Retour au portail
BTS SIO – Lycée NDLP Avranches – Module 6 v1.0