0Pricing
Cryptology Academy · Leçon

Poignée de main TLS 1.3, étape par étape

Suivez ClientHello, ServerHello, la dérivation de clés et Finished.

Poignée de main TLS 1.3, étape par étape est une leçon Cryptology Academy gratuite sur CoddyKit. Ceci est la leçon 1 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage Cryptology Academy, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours Cryptology Academy comprend 4 leçons au total.

Pourquoi TLS ?

TLS (sécurité de la couche de transport) protège les données en transit sur Internet. Chaque connexion HTTPS utilise TLS. TLS 1.3, normalisé dans la RFC 8446 (2018), a éliminé les algorithmes obsolètes et réduit le nombre d’allers-retours de l’établissement de la connexion de 2 à 1.

ClientHello

Le client envoie : la version de TLS (1.3), une valeur aléatoire de 32 octets, une liste des suites de chiffrement prises en charge (par exemple, TLS_AES_256_GCM_SHA384) et des extensions de partage de clés contenant les clés publiques ECDH pour les groupes pris en charge (X25519, P-256).

ServerHello

Le serveur sélectionne une suite de chiffrement et un groupe de partage de clés, génère sa propre paire de clés éphémères ECDH et répond avec sa clé publique. À ce stade, les deux parties peuvent calculer le secret partagé via ECDH.

Dérivation de clés via HKDF

TLS 1.3 utilise HKDF (fonction de dérivation de clés fondée sur HMAC) selon un ordonnancement : secret initial → secret d’établissement de la connexion → secret maître. Chaque étape dérive des clés distinctes pour le trafic d’établissement de la connexion du client et du serveur, ainsi que pour les données d’application.

Fin du serveur

Le serveur envoie son certificat, CertificateVerify (une signature du transcript de l’établissement de la connexion utilisant sa clé privée) et son message de fin (une HMAC sur le transcript). Le tout est chiffré avec la clé de trafic de l’établissement de la connexion.

Fin du client

Le client vérifie la chaîne de certificats, contrôle la signature CertificateVerify, vérifie le MAC du message de fin, puis envoie son propre message de fin. L’établissement de la connexion est maintenant terminé en 1 aller-retour (1-RTT).

Reprise 0-RTT

TLS 1.3 prend en charge la reprise 0-RTT (sans aller-retour) à l’aide d’une clé prépartagée (PSK) provenant d’une session précédente. Le client peut envoyer immédiatement des données d’application, mais les données 0-RTT ne bénéficient d’aucune protection contre les rejeux et doivent être idempotentes.

Suites de chiffrement de TLS 1.3

TLS 1.3 impose uniquement des chiffrements AEAD : AES-128-GCM-SHA256, AES-256-GCM-SHA384, ChaCha20-Poly1305-SHA256. Tous utilisent ECDHE ou DHE pour l’échange de clés. Les suites faibles (RC4, 3DES, CBC) ont été supprimées.

Couche des enregistrements

Après l’établissement de la connexion, toutes les données sont encapsulées dans des enregistrements TLS : en-tête de 5 octets (type de contenu, version, longueur) + charge utile chiffrée par AEAD. Le numéro de séquence est implicite et utilisé dans le cadre du nonce AEAD pour empêcher les rejeux.

Confidentialité persistante

Comme TLS 1.3 utilise toujours un échange de clés éphémères (ECDHE), la compromission de la clé privée à long terme du serveur ne permet pas de déchiffrer les sessions passées. Chaque session possède une paire de clés éphémères unique, détruite après l’établissement de la connexion.

Vue dans Wireshark

Dans Wireshark : ClientHello affiche random + key_share ; ServerHello affiche le groupe sélectionné ; les enregistrements suivants apparaissent comme « Application Data » (chiffrés). Exportez SSLKEYLOGFILE pour déchiffrer les données avec les clés de session.

Vérification rapide

Combien d’allers-retours nécessite un établissement complet de la connexion TLS 1.3 ?

Récapitulatif

TLS 1.3 combine ECDHE, HKDF, les chiffrements AEAD et l’authentification fondée sur des certificats dans un établissement de connexion en 1-RTT avec confidentialité persistante obligatoire. Ensuite : la couche des enregistrements TLS et les suites de chiffrement en détail.

Questions Fréquemment Posées

La leçon « Poignée de main TLS 1.3, étape par étape » est-elle gratuite ?

Oui — le texte complet de « Poignée de main TLS 1.3, étape par étape » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours Cryptology Academy, passe à CoddyKit PRO. Le cours Cryptology Academy comprend 4 leçons au total.

Qu'est-ce que j'apprendrai dans « Poignée de main TLS 1.3, étape par étape » ?

Suivez ClientHello, ServerHello, la dérivation de clés et Finished. Tu pratiques Cryptology Academy avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.

Dois-je avoir de l'expérience pour commencer Cryptology Academy ?

Aucune expérience préalable n'est requise. Cryptology Academy sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 1 sur 4.

Combien de temps prend la leçon « Poignée de main TLS 1.3, étape par étape » ?

La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.

Peux-tu écrire et exécuter du code dans cette leçon Cryptology Academy ?

Oui. Chaque leçon Cryptology Academy inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.

Toutes les leçons de ce cours

  1. Poignée de main TLS 1.3, étape par étape
  2. Couche d’enregistrement TLS et suites de chiffrement
  3. Validation des certificats dans TLS
  4. Attaques TLS : BEAST, POODLE et rétrogradation
← Retour à Cryptology Academy