Aller au contenu

Intervention sur une infrastructure de clés publiques

1. Objectif du cours

Comprendre le rôle et le fonctionnement d'une PKI (infrastructure à clés publiques) et savoir mettre en œuvre, à titre d'exemple, un chiffrement asymétrique avec GnuPG pour échanger et vérifier des messages chiffrés.

2. Notions et définitions essentielles

  • PKI (Public Key Infrastructure) : technologie liant et authentifiant une entité à une machine via des certificats signés numériquement.
  • Entité : utilisateur, logiciel, périphérique ou processus disposant d'une clé.
  • Chiffrement asymétrique : système basé sur une paire de clés (clé publique / clé privée) ; la publique sert à chiffrer, la privée à déchiffrer.
  • Certificat : document qui associe une clé à une entité et est signé par une Autorité de Certification (CA).
  • CA (Certificate Authority) : organisme qui signe et délivre des certificats (payant, gratuit ou interne).
  • Types de certificats : DV (Domain Validation), OV (Organization Validation), EV (Extended Validation) — niveaux croissants de vérification et de coût.

3. Fonctionnement et principes

  • La PKI assure identification, validation et chiffrement des communications en s'appuyant sur la cryptographie à clé publique et sur des certificats signés par une CA.
  • Processus typique de connexion par certificat : requête du client → envoi du certificat (ou correspondance si déjà présent) → vérification → établissement d'un canal sécurisé si correspondance ok.
  • Qualité et gestion des certificats (validité, renouvellement) sont critiques pour la sécurité ; un certificat expiré ou non reconnu doit susciter prudence.
  • On peut utiliser des CA publiques (ex. Let's Encrypt) ou générer des certificats auto-signés pour tests/environnements privés (ces derniers ne sont pas reconnus par les navigateurs/CA).

4. Commandes et manipulations

Regroupées par procédure (extraites du cours, explication courte) : - Installation de l'outil : - sudo apt-get install gpg : installe GnuPG sur Debian. - Génération de la paire de clés : - sudo gpg --full-gen-key : lance la création d'une clé privée/publique, invite à renseigner identité et phrase secrète. - Inspection du stockage local : - ls -al (pour afficher fichiers cachés) puis lister le contenu du dossier .gnupg : permet de retrouver les clés générées. - Exportation de la clé publique : - sudo gpg --armor --output pubkey.txt --export [uid] : exporte la clé publique lisible (ASCII) vers pubkey.txt. - cat pubkey.txt : permet de visualiser le contenu exporté. - Importation dans un trousseau tiers : - sudo gpg --import pubkey.txt : insère une clé publique reçue dans le trousseau GnuPG. - Chiffrement et déchiffrement de fichiers : - sudo gpg --encrypt --recipient : chiffre un fichier pour le destinataire. - sudo gpg --output --decrypt : déchiffre un fichier chiffré (demande la phrase secrète).

5. Sécurité et bonnes pratiques

  • Utiliser une phrase secrète robuste (le cours signale un seuil minimal : 8 lettres + 1 chiffre recommandé).
  • Surveiller la validité des certificats : un certificat expiré depuis 24–48 h peut être un oubli ; expiré depuis longtemps, préférer interrompre la connexion.
  • Choisir la CA selon le besoin : Let's Encrypt pour gratuité et tests, CA payantes pour garanties plus strictes.
  • Les certificats auto-signés chiffrent les données mais ne sont pas reconnus par les navigateurs/CA ; réservés aux environnements de test ou internes.
  • La qualité du chiffrement (algorithmes, tailles de clés, gestion des clés privées) est essentielle pour la sécurité globale.

6. Points essentiels à retenir pour le TSSR

  • PKI = système liant identité numérique et clé publique via des certificats signés par une CA.
  • Chiffrement asymétrique = paire clé publique (partagée) / clé privée (secrète) : public chiffre, privé déchiffre.
  • CA signe les certificats ; distinction DV/OV/EV = niveau de vérification et délai (OV ≈ 2–5 jours).
  • GnuPG est l'outil utilisé dans la démonstration pour générer, exporter/importer, chiffrer et déchiffrer.
  • Les certificats ont une validité limitée ; il faut les renouveler et être vigilant face aux certificats invalides.
  • Les certificats auto-signés conviennent pour tests mais ne remplacent pas une CA reconnue en production.
  • Inspecter le dossier de l'utilisateur pour retrouver les clés (.gnupg).
  • Une correspondance invalide entre clé publique et clé privée empêche la connexion/chiffrement.
  • Let's Encrypt est mentionnée comme option gratuite pour obtenir des certificats.
  • La migration historique : SSL a été remplacé par TLS ; TLS est le protocole moderne.

7. Tableau récapitulatif

Élément Niveau de vérification Délai typique Usage recommandé
DV (Domain Validation) Faible Quelques heures Sites publics non sensibles (blogs)
OV (Organization Validation) Moyen 2–5 jours Entreprises nécessitant vérif. d'organisation
EV (Extended Validation) Élevé Plus long / processus complet Transactions sensibles, forte assurance
Certificat auto-signé Aucune vérification externe Immédiat Tests internes / environnements privés

8. Vérifications pratiques

(contrôles concrets vus dans le cours, sans répéter la procédure) - Vérifier la présence du dossier caché utilisateur (.gnupg) et que les fichiers de clés y figurent.
- Visualiser le contenu exporté de la clé publique pour confirmer l'ASCII armored.
- Après importation dans un trousseau, constater le message de confirmation d'ajout de la clé.
- Vérifier qu'un fichier chiffré (.gpg) et son équivalent en clair existent après chiffrement/déchiffrement.
- Ouvrir le fichier déchiffré pour s'assurer que le message est lisible en clair (preuve de succès du déchiffrement).
- Dans un accès web, consulter les informations du certificat fournies lors de l'accès pour vérifier validité et date d'expiration.

9. Flashcards Anki

Que signifie PKI? :: Public Key Infrastructure Quelle paire compose le chiffrement asymétrique? :: Clé publique et clé privée Quel est l'outil utilisé dans la démonstration? :: GnuGPG Que signifie CA? :: Certificate Authority (Autorité de Certification) Quel type de certificat offre la validation la plus forte? :: EV (Extended Validation) Quel est le délai typique d'obtention d'un certificat OV? :: De 2 à 5 jours Où se trouvent les clés générées par GnuPG pour un utilisateur? :: Dans le dossier caché .gnupg de l'utilisateur Quel site est cité pour obtenir des certificats gratuits? :: Let's Encrypt Que vérifie-on pour confirmer qu'un message a été correctement déchiffré? :: On ouvre le fichier déchiffré et on lit le message en clair Pourquoi un certificat auto-signé n'est-il pas équivalent à un certificat CA? :: Il n'est pas reconnu par les autorités de certification et donc pas considéré comme tel par les navigateurs/clients