Transport Layer Security

Le protocole TLS (Transport Layer Security) et son prédécesseur, le SSL (Secure Sockets Layer), sont des protocoles cryptographiques qui assurent la sécurité et l'intégrité des données pour les communications sur les réseaux TCP/IP tels que l'Internet. Plusieurs versions de ces protocoles sont courantes dans des applications telles que la navigation sur le web, le courrier électronique, la télécopie sur Internet, la messagerie instantanée et la voix sur IP (VoIP).

Description

Le protocole TLS permet aux applications de communiquer sur un réseau de manière à empêcher les écoutes, les manipulations et la falsification de messages. Le TLS assure l'authentification des points terminaux et la confidentialité des communications sur l'internet grâce à la cryptographie. La plupart du temps, seul le serveur est authentifié (c'est-à-dire que son identité est garantie) tandis que le client reste non authentifié ; cela signifie que l'utilisateur final (qu'il s'agisse d'un individu ou d'une application, comme un navigateur Web) peut être sûr avec qui il communique. Le niveau de sécurité suivant est connu sous le nom d'authentification mutuelle. L'authentification mutuelle nécessite le déploiement d'une infrastructure à clé publique (PKI) pour les clients, sauf si le protocole TLS-PSK ou le protocole SRP (Secure Remote Password) sont utilisés, qui permettent une authentification mutuelle forte sans avoir besoin de déployer une PKI.

Utilisation

Le SSL et le TLS ont été largement utilisés dans plusieurs projets de logiciels à source ouverte. Les programmeurs peuvent utiliser les bibliothèques OpenSSL, NSS ou GnuTLS pour la fonctionnalité SSL/TLS. Microsoft Windows inclut l'utilisation de SSL et TLS dans son offre de canal sécurisé. Les programmeurs Delphi peuvent utiliser une bibliothèque appelée Indy.

Normes

La version actuelle approuvée est la 1.2, qui est spécifiée dans :

  • RFC 5246 : "The Transport Layer Security (TLS) Protocol Version 1.2".

La norme actuelle rend ces anciennes versions obsolètes :

  • RFC 2246 : "The TLS Protocol Version 1.0".
  • RFC 4346 : "The Transport Layer Security (TLS) Protocol Version 1.1".

D'autres RFC ont par la suite étendu le TLS, notamment :

  • RFC 2595 : "Using TLS with IMAP, POP3 and ACAP". Spécifie une extension des services IMAP, POP3 et ACAP qui permet au serveur et au client d'utiliser la sécurité de la couche transport pour fournir une communication privée et authentifiée sur Internet.
  • RFC 2712 : "Ajout des suites de chiffrement Kerberos à la sécurité de la couche transport (TLS)". Les suites de chiffrement de 40 bits définies dans cette note n'apparaissent que dans le but de documenter le fait que ces codes de suite de chiffrement ont déjà été attribués.
  • RFC 2817 : "Upgrading to TLS Within HTTP/1.1", explique comment utiliser le mécanisme de mise à niveau dans HTTP/1.1 pour lancer la sécurité de la couche transport (TLS) sur une connexion TCP existante. Cela permet au trafic HTTP non sécurisé et sécurisé de partager le même port bien connu (dans ce cas, http : à 80 plutôt que https : à 443).
  • RFC 2818 : "HTTP Over TLS", distingue le trafic sécurisé du trafic non sécurisé par l'utilisation d'un "port serveur" différent.
  • RFC 3207 : "SMTP Service Extension for Secure SMTP over Transport Layer Security". Spécifie une extension du service SMTP qui permet à un serveur et à un client SMTP d'utiliser la sécurité de la couche transport pour fournir une communication privée et authentifiée sur Internet.
  • RFC 3268 : "AES Ciphersuites for TLS". Ajoute des suites de chiffrement AES (Advanced Encryption Standard) aux chiffrages symétriques existants.
  • RFC 3546 : "Transport Layer Security (TLS) Extensions", ajoute un mécanisme de négociation des extensions de protocole lors de l'initialisation de la session et définit certaines extensions. Rendue obsolète par la RFC 4366.
  • RFC 3749 : "Transport Layer Security Protocol Compression Methods", spécifie le cadre des méthodes de compression et la méthode de compression DEFLATE.
  • RFC 3943 : "Transport Layer Security (TLS) Protocol Compression Using Lempel-Ziv-Stac (LZS)".
  • RFC 4132 : "Ajout des suites de chiffrement Camellia à la sécurité de la couche transport (TLS)".
  • RFC 4162 : "Ajout des suites de chiffrement SEED à la sécurité de la couche transport (TLS)".
  • RFC 4217 : "Sécuriser le FTP avec TLS".
  • RFC 4279 : "Pre-Shared Key Ciphersuites for Transport Layer Security (TLS)", ajoute trois séries de nouvelles suites de chiffrement pour le protocole TLS afin de prendre en charge l'authentification basée sur des clés pré-partagées.
  • RFC 4347 : "Datagram Transport Layer Security" spécifie une variante TLS qui fonctionne sur les protocoles de datagrammes (tels que UDP).
  • RFC 4366 : "Transport Layer Security (TLS) Extensions" décrit à la fois un ensemble d'extensions spécifiques et un mécanisme d'extension générique.
  • RFC 4492 : "Elliptic Curve Cryptography (ECC) Cipher Suites for Transport Layer Security (TLS)".
  • RFC 4507 : "Transport Layer Security (TLS) Session Resumption without Server-Side State".
  • RFC 4680 : "TLS Handshake Message for Supplemental Data".
  • RFC 4681 : "TLS User Mapping Extension".
  • RFC 4785 : "Pre-Shared Key (PSK) Ciphersuites with NULL Encryption for Transport Layer Security (TLS)".

Pages connexes

  • Autorité de certification
  • Certificat de clé publique
  • Certificat de validation étendue
  • Accélération SSL
  • Sécurité de la couche de transport des datagrammes
  • Sécurité de la couche de transport multiplexée
  • X.509
  • Réseau privé virtuel
  • SEED
  • Cryptographie sur serveur

Logiciels

  • OpenSSL : une implémentation libre (et très populaire) (licence BSD avec quelques extensions fantaisistes)
  • GnuTLS : une implémentation libre sous licence LGPL
  • JSSE : une implémentation Java incluse dans l'environnement d'exécution Java
  • Services de sécurité des réseaux (NSS) : Bibliothèque open source validée FIPS 140

AlegsaOnline.com - 2020 / 2023 - License CC3