Fiche technique | |
---|---|
Type de produit : | Bibliothèque |
Langage de programmation : | C |
Auteur : | quictls |
Licence : | Apache 2.0 |
Date de publication : | 2024 à maintenant |
Site Web : | https://github.com/quictls |
Introduction
QuicTLS est une variante spécialisée d'OpenSSL conçue pour prendre en charge le protocole QUIC (Quick UDP Internet Connections). QUIC est un protocole de transport moderne développé par Google et désormais standardisé par l'IETF. Il vise à remplacer TCP dans certains cas en offrant des connexions plus rapides, plus sécurisées et résilientes aux pertes de paquets.
QuicTLS a été créé pour intégrer le support du protocole QUIC directement dans les fonctionnalités cryptographiques de TLS 1.3 (Transport Layer Security). Cela permet de fournir une base solide pour des bibliothèques et applications utilisant QUIC.
Origine
- QuicTLS est un fork d'OpenSSL maintenu principalement par des développeurs travaillant sur des projets nécessitant un support natif de QUIC.
- Bien que certains cadres d'applications ou applications comme Chromium ou Envoy utilisent BoringSSL pour QUIC, QuicTLS est une alternative pour les projets préférant conserver OpenSSL ou ayant des besoins spécifiques en termes de compatibilité avec les API OpenSSL.
Pourquoi QuicTLS ?
- TLS 1.3 est conçu pour les connexions sécurisées sur TCP, mais QUIC nécessite une gestion différente des sessions cryptographiques en raison de ses particularités, notamment l'utilisation d'UDP et des connexions multiplexées.
- QuicTLS adapte OpenSSL pour : Gérer les handshakes TLS 1.3 avec QUIC, exposer les primitives cryptographiques nécessaires à QUIC, comme les clefs pour protéger les entêtes de paquets.
Caractéristiques principales
- Support natif de QUIC : Implémente des extensions nécessaires pour utiliser TLS 1.3 avec QUIC.
- Compatibilité : Maintient la plupart des fonctionnalités classiques d'OpenSSL, ce qui permet une transition plus fluide pour les applications existantes.
- Interopérabilité : Permet aux bibliothèques QUIC (comme ngtcp2 ou picoquic) d'intégrer facilement TLS.
Différences avec OpenSSL
- QuicTLS est basé sur une version spécifique d'OpenSSL mais ajoute des API supplémentaires pour gérer les cas d'utilisation de QUIC.
- Ce n'est pas une branche officielle d'OpenSSL, et il peut ne pas inclure toutes les fonctionnalités ou mises à jour des versions principales d'OpenSSL.
Utilisation
Le QuicTLS est souvent utilisé dans des projets ou cadres d'applications nécessitant une solution légère et adaptée pour le protocole QUIC sans migrer vers des alternatives comme BoringSSL. Exemple : Projets de recherche ou implémentations spécifiques du protocole QUIC.