Intel développe le protocole HTTPA pour compléter HTTPS

Les ingénieurs d'Intel ont proposé un nouveau protocole HTTPA (HTTPS Attestable), étendant HTTPS avec des garanties supplémentaires de sécurité des calculs effectués. HTTPA permet de garantir l'intégrité du traitement d'une requête utilisateur sur le serveur et de s'assurer que le service web est digne de confiance et que le code exécuté dans l'environnement TEE (Trusted Execution Environment) sur le serveur n'a pas été modifié suite à un piratage ou sabotage par l'administrateur.

HTTPS protège les données transmises lors de la transmission sur le réseau, mais ne peut empêcher que leur intégrité soit violée à la suite d'attaques sur le serveur. Des enclaves isolées, créées à l'aide de technologies telles qu'Intel SGX (Software Guard Extension), ARM TrustZone et AMD PSP (Platform Security Processor), permettent de protéger les ordinateurs sensibles et de réduire les risques de fuite ou de modification d'informations sensibles sur le nœud final.

Pour garantir la fiabilité des informations transmises, HTTPA permet d'utiliser les outils d'attestation fournis dans Intel SGX, qui confirment l'authenticité de l'enclave dans laquelle les calculs ont été effectués. Essentiellement, HTTPA étend HTTPS avec la possibilité d'attester à distance une enclave et vous permet de vérifier qu'elle fonctionne dans un véritable environnement Intel SGX et que le service Web est fiable. Le protocole est initialement développé comme un protocole universel et, en plus d'Intel SGX, peut être implémenté pour d'autres systèmes TEE.

Intel développe le protocole HTTPA pour compléter HTTPS

En plus du processus normal d'établissement d'une connexion sécurisée pour HTTPS, HTTPA nécessite en outre la négociation d'une clé de session digne de confiance. Le protocole introduit une nouvelle méthode HTTP « ATTEST », qui permet de traiter trois types de requêtes et de réponses :

  • « contrôle en amont » pour vérifier si le côté distant prend en charge l'attestation d'enclave ;
  • « attester » pour convenir des paramètres d'attestation (sélection d'un algorithme cryptographique, échange de séquences aléatoires propres à la session, génération d'un identifiant de session et transfert de la clé publique de l'enclave au client) ;
  • « session de confiance » - génération d'une clé de session pour un échange d'informations de confiance. La clé de session est formée sur la base d'un secret de pré-session préalablement convenu généré par le client à l'aide de la clé publique TEE reçue du serveur et de séquences aléatoires générées par chaque partie.

Intel développe le protocole HTTPA pour compléter HTTPS

HTTPA implique que le client est digne de confiance et que le serveur ne l'est pas, c'est-à-dire le client peut utiliser ce protocole pour vérifier les calculs dans un environnement TEE. Dans le même temps, HTTPA ne garantit pas que les autres calculs effectués lors du fonctionnement du serveur Web qui ne sont pas effectués dans TEE n'ont pas été compromis, ce qui nécessite l'utilisation d'une approche distincte pour le développement de services Web. Ainsi, HTTPA est principalement destiné à être utilisé avec des services spécialisés qui ont des exigences accrues en matière d’intégrité des informations, tels que les systèmes financiers et médicaux.

Pour les situations où les calculs dans TEE doivent être confirmés à la fois pour le serveur et pour le client, une variante du protocole mHTTPA (Mutual HTTPA) est fournie, qui effectue une vérification bidirectionnelle. Cette option est plus compliquée en raison de la nécessité d'une génération bidirectionnelle de clés de session pour le serveur et le client.

Source: opennet.ru

Ajouter un commentaire