UNE ANALYSE Le protocole HTTP/3 a reçu la normalisation RFC 9114 – un coup de pouce pour la sécurité Internet, mais pas sans obstacles pour les développeurs Web.

Cette semaine, l’Internet Engineering Task Force (IETF) a publié HTTP/3, publié en tant que RFC 9114.

Le protocole HTTP est l’épine dorsale du Web. Le protocole de transfert hypertexte (HTTP) agit comme une couche d’application pour faciliter la communication entre les serveurs et les navigateurs, la récupération des ressources et le transfert des données. HTTPS est HTTP avec une sécurité supplémentaire via le cryptage.

HTTP/3 est la dernière révision du protocole HTTP, prenant le relais de HTTP/2 de 2015. HTTP/3 est conçu pour résoudre certains des problèmes de performances inhérents à HTTP/2, en améliorant l’expérience utilisateur, en réduisant l’impact de la perte de paquets sans blocage en tête de ligneaccélérant les exigences de poignée de main et activant le chiffrement par défaut.

Le protocole utilise le contrôle de la congestion de l’espace sur le protocole UDP (User Datagram Protocol).

Étape RAPIDE

L’une des principales différences dans HTTP/3 est RAPIDE. Développé par Google, Quick UDP Internet Connections (QUIC) a été adopté par l’IETF, et une version sur mesure fournit une pierre angulaire de HTTP/3.

Comme noté par Cloudflarela mise en œuvre de QUIC configure des connexions cryptées par défaut au niveau de la couche de transport, combinant les poignées de main en une seule action et cryptant les métadonnées échangées entre les connexions.

Les numéros de paquet et les informations d’en-tête sont donc supprimés des écoutes clandestines et des attaquants. Cette amélioration pourrait potentiellement réduire le succès des attaques de manipulateur du milieu (MitM), de l’usurpation d’adresse IP et des attaques par déni de service.

« Cette fonctionnalité n’était pas incluse dans HTTP/2 », note Cloudflare. « Le chiffrement de ces données permet de garder les informations exploitables sur le comportement des utilisateurs hors de portée des attaquants. »

Le chiffrement au niveau de la couche de transport n’est pas la fin de l’histoire. Akamai dit que comme HTTP/3 fonctionne sur QUIC, cela ouvre également la voie à de futures innovations dans le transport et la communication chiffrés – comme nous l’avons déjà vu avec l’extension QUIC Datagram (RFC 9221), une technologie permettant de gérer à la fois le trafic UDP et TCP en toute sécurité.

De plus, le protocole prend en charge le temps d’aller-retour zéro (0-RTT), introduit dans TLS 1.3, qui ignore l’exigence de prise de contact dans les paramètres de confiance – mais un inconvénient est que cela pourrait conduire à des attaques de répétition sans protection adéquate.

« Perspective difficile »

Rustam Lalkaka, directeur de produit chez Cloudflare, nous a précédemment dit que bien que HTTP/3 présente une gamme d’avantages en matière de sécurité et de performances, l’activation de QUIC peut être une perspective difficile pour les développeurs, car de nombreuses technologies largement répandues n’ont pas encore ajouté QUIC et HTTP/3 Support.

Certains fournisseurs de transit et FAI peuvent être hostiles au trafic UDP, et il peut également être nécessaire d’augmenter l’utilisation du processeur lorsque HTTP/3 est implémenté, au détriment des serveurs et des navigateurs Web.

La prise en charge de HTTP/3 a été déployé progressivement sur les principaux navigateurs, notamment Google Chrome, Mozilla Firefox et Microsoft Edge. Apple Safari fournit également un support, bien qu’au moment de la rédaction, cela doive être activé dans l’onglet « Fonctionnalités expérimentales » du menu développeur.

Les analyses de Cloudflare ont révélé que la majorité du trafic en ligne est facilitée par HTTP/2. La majorité des requêtes HTTP/3 actuelles sont effectuées par les utilisateurs de Chrome, suivis par Edge et Firefox. Les volumes Safari sont minimes, mais Cloudflare s’attend à une augmentation une fois qu’Apple aura activé la prise en charge HTTP/3 par défaut.

Cloudflare Radar estime que 8% du trafic internet est basé sur HTTP/1, suivi de HTTP/2 à 67 % et de HTTP/3 à 25 %.