De débutant à expert : Guide complet sur la technologie TEE
Avec l'augmentation croissante de la demande en calcul privé, la technologie d'environnement d'exécution de confiance (TEE) attire de plus en plus d'attention. Que ce soit le service de cloud privé lancé par Apple ou la fonctionnalité de calcul confidentiel intégrée dans les GPU par NVIDIA, tous deux illustrent le large potentiel d'application du TEE. Le TEE peut fournir une protection solide pour les données des utilisateurs (, y compris les clés privées ), tout en garantissant que l'exécution des programmes n'est pas perturbée par des influences extérieures. Par conséquent, nous constatons que dans des domaines tels que les crypto-monnaies et l'intelligence artificielle, le TEE est devenu une technologie clé pour la construction de divers produits.
En tant que technologie émergente, le TEE est en pleine phase expérimentale de développement. Cet article vise à fournir aux développeurs et aux lecteurs ordinaires une introduction aux concepts de base liés au TEE, y compris la définition du TEE, le modèle de sécurité, les vulnérabilités courantes et les meilleures pratiques. Pour faciliter la compréhension, nous avons essayé d'utiliser un langage simple et accessible dans notre rédaction.
Introduction à TEE
TEE fait référence à un environnement indépendant dans un processeur ou un centre de données, capable d'exécuter des programmes sans interférence extérieure. Pour atteindre cet objectif, le TEE utilise une série de conceptions, principalement un contrôle strict de l'accès des autres parties du système aux programmes et données à l'intérieur du TEE. Actuellement, le TEE est largement utilisé dans les téléphones mobiles, les serveurs, les PC et les environnements cloud, offrant une bonne disponibilité et un bon rapport qualité-prix.
Les différentes façons pour les fournisseurs de réaliser le TEE varient, mais l'objectif central est d'éviter que le TEE soit perturbé par des programmes externes. Prenons l'exemple des informations biométriques : le TEE, grâce à l'isolement matériel, empêche fondamentalement les applications malveillantes, les sites web ou les systèmes piratés d'accéder aux données sensibles. Les portefeuilles matériels sont également un exemple typique d'application du TEE, car ils peuvent communiquer en toute sécurité avec l'ordinateur tout en empêchant l'accès direct de l'ordinateur aux mnémoniques stockées.
Modèle de sécurité de TEE
Il existe de nombreux types de TEE, chacun nécessitant une analyse du modèle de sécurité indépendant, comme Intel SGX, Intel TDX, AMD SEV, AWS Nitro Enclaves, ARM TrustZone, etc. Cet article discute principalement d'Intel SGX, TDX et AWS Nitro, car ils sont les plus largement utilisés dans le domaine du Web3.
Le flux de travail général de l'application TEE est le suivant :
Les développeurs écrivent du code ( qui peut être open source ou non )
Emballer le code en un fichier d'image Enclave exécutable dans le TEE (EIF)
Déployer EIF sur un serveur doté de fonctionnalités TEE.
L'utilisateur interagit avec l'application via une interface prédéfinie.
Il existe trois risques potentiels dans ce processus :
Développeurs : Le code EIF peut comporter des comportements malveillants, tels que le vol de données personnelles des utilisateurs.
Serveur : peut exécuter un EIF qui ne correspond pas aux attentes, ou exécuter d'autres programmes dans le TEE.
Fournisseur : La conception TEE peut contenir des vulnérabilités de sécurité ou des portes dérobées.
Pour faire face à ces risques, TEE utilise des mécanismes tels que la construction répétable et la preuve à distance. La construction répétable garantit que quiconque peut vérifier que le code déployé final est conforme au code source public. La preuve à distance fournit un message signé par une partie de confiance de la plateforme TEE ( ), contenant des mesures de code du programme, la version de la plateforme TEE, etc., permettant aux observateurs externes de confirmer que le programme s'exécute dans un véritable environnement TEE.
Cependant, les utilisateurs doivent toujours faire confiance au fournisseur de TEE. Si l'on considère le fournisseur comme un attaquant potentiel, il est recommandé de combiner le TEE avec des preuves à connaissance nulle ou des protocoles de consensus, plutôt que de se fier uniquement au TEE.
Avantages de TEE
La popularité de TEE, en particulier dans le déploiement d'agents IA, est principalement due aux caractéristiques suivantes :
Performance : TEE peut exécuter des modèles LLM, avec des performances et des coûts comparables à ceux des serveurs ordinaires.
Support GPU : La dernière série de GPU NVIDIA offre un support pour le calcul TEE
Exactitude : les LLM fonctionnant dans un TEE de confiance ne peuvent pas être manipulés malicieusement.
Confidentialité : Les données à l'intérieur du TEE sont invisibles de l'extérieur, ce qui permet une gestion sécurisée des clés privées.
Accès réseau : Les programmes à l'intérieur de TEE peuvent accéder à Internet de manière sécurisée
Droits d'écriture : le code à l'intérieur du TEE peut construire des messages et les envoyer via l'API
Développement convivial : prend en charge plusieurs langages de programmation, déploiement facile
Ces caractéristiques rendent le TEE difficilement remplaçable dans certains scénarios d'application, et devraient favoriser l'émergence de nouvelles applications.
Limitations de TEE
Malgré sa puissance, le TEE fait encore face à divers risques potentiels, principalement :
( négligence des développeurs
Le code n'est pas transparent, difficile à vérifier
Problèmes de mesure du code
Logique de code non sécurisée
Risque d'attaque de la chaîne d'approvisionnement
) vulnérabilité d'exécution
Risque d'exécution de code dynamique
Dépendance des sources de données externes
Canaux de communication non sécurisés
défaut de conception d'architecture
Surface d'attaque trop grande
Problèmes de portabilité et d'activité
Racine de confiance non sécurisée
Problèmes opérationnels
Risques de sécurité de la version de la plateforme
Menaces de sécurité physique
![Manuel TEE : Guide des meilleures pratiques pour une utilisation sécurisée, des concepts de base aux pratiques recommandées]###https://img-cdn.gateio.im/webp-social/moments-90c5135093861a77bded1920a8b575be.webp###
Construire des programmes TEE sécurisés
Pour améliorer la sécurité des applications TEE, nous recommandons :
( La solution la plus sûre : aucune dépendance externe
En éliminant les dépendances externes, on peut réduire au maximum le risque d'attaque, mais cela peut limiter les fonctionnalités.
) Mesures de sécurité nécessaires
Considérer les applications TEE comme des contrats intelligents, tester rigoureusement, réduire la fréquence des mises à jour.
Auditer le code et le processus de construction
Utiliser des bibliothèques vérifiées
Vérifier la preuve fournie par TEE
Suggestions pour des cas d'utilisation spécifiques
Assurer une communication sécurisée entre l'utilisateur et le TEE
Considérant la volatilité de la mémoire TEE, prendre des mesures de persistance des données.
Réduire la surface d'attaque, par exemple en utilisant un système d'exploitation minimal.
TEE avec isolation physique
Adoption d'un mécanisme de multiples validateurs pour améliorer la fiabilité
![Guide pratique concise de TEE : des concepts de base aux meilleures pratiques de sécurité]###https://img-cdn.gateio.im/webp-social/moments-e12da31bdf104a12147ceabe500bec58.webp###
Perspectives d'avenir
Avec la généralisation de la technologie AI et l'importance croissante accordée par les utilisateurs à la confidentialité des données, de plus en plus d'entreprises technologiques commencent à intégrer TEE dans leurs produits. D'autre part, la communauté cryptographique explore également activement le potentiel de l'application de TEE sur les chaînes extensibles. Bien que TEE ne soit pas au niveau de la minimisation de la confiance par rapport aux solutions de connaissance zéro complètes, il parvient à établir un bon équilibre entre fonctionnalité et hypothèses de confiance. Nous prévoyons que TEE pourrait devenir le pont reliant les entreprises Web3 et les produits des grandes entreprises technologiques, favorisant le développement intégré des deux domaines.
Voir l'original
This page may contain third-party content, which is provided for information purposes only (not representations/warranties) and should not be considered as an endorsement of its views by Gate, nor as financial or professional advice. See Disclaimer for details.
10 J'aime
Récompense
10
3
Partager
Commentaire
0/400
0xSoulless
· 07-12 21:16
Encore un plan de protection des pigeons
Voir l'originalRépondre0
SignatureDenied
· 07-12 21:04
La sécurité de la vie privée est une grande affaire~
Guide complet sur la technologie TEE : des concepts aux applications, défis de sécurité et meilleures pratiques
De débutant à expert : Guide complet sur la technologie TEE
Avec l'augmentation croissante de la demande en calcul privé, la technologie d'environnement d'exécution de confiance (TEE) attire de plus en plus d'attention. Que ce soit le service de cloud privé lancé par Apple ou la fonctionnalité de calcul confidentiel intégrée dans les GPU par NVIDIA, tous deux illustrent le large potentiel d'application du TEE. Le TEE peut fournir une protection solide pour les données des utilisateurs (, y compris les clés privées ), tout en garantissant que l'exécution des programmes n'est pas perturbée par des influences extérieures. Par conséquent, nous constatons que dans des domaines tels que les crypto-monnaies et l'intelligence artificielle, le TEE est devenu une technologie clé pour la construction de divers produits.
En tant que technologie émergente, le TEE est en pleine phase expérimentale de développement. Cet article vise à fournir aux développeurs et aux lecteurs ordinaires une introduction aux concepts de base liés au TEE, y compris la définition du TEE, le modèle de sécurité, les vulnérabilités courantes et les meilleures pratiques. Pour faciliter la compréhension, nous avons essayé d'utiliser un langage simple et accessible dans notre rédaction.
Introduction à TEE
TEE fait référence à un environnement indépendant dans un processeur ou un centre de données, capable d'exécuter des programmes sans interférence extérieure. Pour atteindre cet objectif, le TEE utilise une série de conceptions, principalement un contrôle strict de l'accès des autres parties du système aux programmes et données à l'intérieur du TEE. Actuellement, le TEE est largement utilisé dans les téléphones mobiles, les serveurs, les PC et les environnements cloud, offrant une bonne disponibilité et un bon rapport qualité-prix.
Les différentes façons pour les fournisseurs de réaliser le TEE varient, mais l'objectif central est d'éviter que le TEE soit perturbé par des programmes externes. Prenons l'exemple des informations biométriques : le TEE, grâce à l'isolement matériel, empêche fondamentalement les applications malveillantes, les sites web ou les systèmes piratés d'accéder aux données sensibles. Les portefeuilles matériels sont également un exemple typique d'application du TEE, car ils peuvent communiquer en toute sécurité avec l'ordinateur tout en empêchant l'accès direct de l'ordinateur aux mnémoniques stockées.
Modèle de sécurité de TEE
Il existe de nombreux types de TEE, chacun nécessitant une analyse du modèle de sécurité indépendant, comme Intel SGX, Intel TDX, AMD SEV, AWS Nitro Enclaves, ARM TrustZone, etc. Cet article discute principalement d'Intel SGX, TDX et AWS Nitro, car ils sont les plus largement utilisés dans le domaine du Web3.
Le flux de travail général de l'application TEE est le suivant :
Il existe trois risques potentiels dans ce processus :
Pour faire face à ces risques, TEE utilise des mécanismes tels que la construction répétable et la preuve à distance. La construction répétable garantit que quiconque peut vérifier que le code déployé final est conforme au code source public. La preuve à distance fournit un message signé par une partie de confiance de la plateforme TEE ( ), contenant des mesures de code du programme, la version de la plateforme TEE, etc., permettant aux observateurs externes de confirmer que le programme s'exécute dans un véritable environnement TEE.
Cependant, les utilisateurs doivent toujours faire confiance au fournisseur de TEE. Si l'on considère le fournisseur comme un attaquant potentiel, il est recommandé de combiner le TEE avec des preuves à connaissance nulle ou des protocoles de consensus, plutôt que de se fier uniquement au TEE.
Avantages de TEE
La popularité de TEE, en particulier dans le déploiement d'agents IA, est principalement due aux caractéristiques suivantes :
Ces caractéristiques rendent le TEE difficilement remplaçable dans certains scénarios d'application, et devraient favoriser l'émergence de nouvelles applications.
Limitations de TEE
Malgré sa puissance, le TEE fait encore face à divers risques potentiels, principalement :
( négligence des développeurs
) vulnérabilité d'exécution
défaut de conception d'architecture
Problèmes opérationnels
![Manuel TEE : Guide des meilleures pratiques pour une utilisation sécurisée, des concepts de base aux pratiques recommandées]###https://img-cdn.gateio.im/webp-social/moments-90c5135093861a77bded1920a8b575be.webp###
Construire des programmes TEE sécurisés
Pour améliorer la sécurité des applications TEE, nous recommandons :
( La solution la plus sûre : aucune dépendance externe
En éliminant les dépendances externes, on peut réduire au maximum le risque d'attaque, mais cela peut limiter les fonctionnalités.
) Mesures de sécurité nécessaires
Suggestions pour des cas d'utilisation spécifiques
![Guide pratique concise de TEE : des concepts de base aux meilleures pratiques de sécurité]###https://img-cdn.gateio.im/webp-social/moments-e12da31bdf104a12147ceabe500bec58.webp###
Perspectives d'avenir
Avec la généralisation de la technologie AI et l'importance croissante accordée par les utilisateurs à la confidentialité des données, de plus en plus d'entreprises technologiques commencent à intégrer TEE dans leurs produits. D'autre part, la communauté cryptographique explore également activement le potentiel de l'application de TEE sur les chaînes extensibles. Bien que TEE ne soit pas au niveau de la minimisation de la confiance par rapport aux solutions de connaissance zéro complètes, il parvient à établir un bon équilibre entre fonctionnalité et hypothèses de confiance. Nous prévoyons que TEE pourrait devenir le pont reliant les entreprises Web3 et les produits des grandes entreprises technologiques, favorisant le développement intégré des deux domaines.