Les défis de l’architecture ouverte et problématique de sécurité
Imaginez un futur où votre smartphone est 30% moins cher qu’aujourd’hui, votre véhicule connecté bénéficiant de protections sur mesure pour la conduite autonome, et les serveurs cloud stockant vos données médicales garantissent une confidentialité forte.
C’est la promesse de RISC-V (Reduced Instruction Set Computing Architecture), une architecture informatique complètement ouverte et personnalisable, qui bouleverse les codes de l’industrie des processeurs.
Il s’agit de mieux faire connaitre le potentiel sécurité des technologies de TEE et du calcul confidentiel, largement inexploité malgré une vaste adoption par les hyperscalers.
Il s’agit de mieux faire connaitre le potentiel sécurité des technologies de TEE et du calcul confidentiel, largement inexploité malgré une vaste adoption par les hyperscalers.
Les coûts sont drastiquement réduits car l’écosystème est ouvert : cette architecture ne nécessite pas des licences coûteuses, a contrario de l’écosystème ARM ou des plates-formes dominées par Intel et AMD. L’approche est également plus économe en surface de silicium du fait que RISC-V est spécifiquement pensé pour l’optimisation : les fonctions non essentielles n’ont pas à être implantées en matériel.
Cette ouverture soulève par ailleurs un défi crucial : comment garantir une sécurité renforcée dans un écosystème aussi flexible ?
Malgré les mécanismes de protection mis en place au fil des années pour les plateformes RISC-V, la sécurité reste effectivement un enjeu encore largement à améliorer. Jusqu’à présent aucune architecture à même de réconcilier performances, adaptabilité, sécurité, et compatibilité avec les plates-formes existantes n’avait réussi à s’imposer.
Des éléments de réponse disruptifs sont explorés dans les travaux d’Orange Research sur la sécurité autour des technologies (Trusted Execution Environments). Embarquement pour un voyage vers la sécurité « à la demande » …
RISC-V, un nouvel espoir
RISC-V est une interface ouverte universelle à la frontière entre l’architecture matérielle et logicielle. Elle permet de construire des systèmes hautement adaptables et d’optimiser leur fonctionnement de manière indépendante de l’implantation et modulaire en définissant des extensions spécialisées. RISC-V dispose d’un large écosystème dynamique et de nombreuses applications, depuis les équipements mobiles IoT (véhicules connectés, satellites) jusqu’au cloud et au calcul haute-performance.
Pour résumer, RISC-V est un système :
- Totalement ouvert : pas de licence coûteuse, sans secret industriel.
- Modulaire : chaque fabricant peut l’adapter à ses besoins spécifiques.
- Universel : des objets connectés les plus simples aux supercalculateurs.
Face à la montée des menaces, notamment embarquées, les exigences de sécurité sont de garantir une exécution sûre et privée en environnement exposé et de gérer la confiance en fournissant et vérifiant des preuves de sécurité aux applications hébergées dans ces infrastructures. L’architecture RISC-V définit des premiers mécanismes de sécurité comme des niveaux de privilèges utilisateur (U), superviseur (S) pour l’OS, et machine (M) pour la plate-forme matérielle, ainsi qu’un mécanisme simple de niveau matériel pour l’isolation mémoire, la PMP (Physical Memory Protection) afin de contrôler l’accès à des régions de mémoire physique.
Des protections additionnelles ont été proposées dans le domaine de la sécurité physique, de la sécurité des environnements d’exécution, de la protection mémoire (systèmes à capacités et de contrôle de flux d’information), d’extensions pour la cryptographie, notamment post-quantique et de la lutte contre les attaques par canaux auxiliaires (e.g., Spectre, Meltdown).
La sécurité RISC-V reste malgré tout largement inexplorée car ne parvenant pas à trouver des solutions réconciliant sécurité, performances et adaptabilité et se heurtant aux contraintes fortes des plates-formes embarquée.
Les menaces logicielles contre-attaquent

Figure 1 – TEE : principe et propriétés
Les techniques traditionnelles d’isolation basées sur un OS de confiance à l’aide de mécanismes de type MMU (Memory Management Unit) pour créer des espaces d’adressage ou MPU (Memory Protection Unit) en contexte embarqué s’avèrent inefficaces lorsque l’environnement est trop contraint ou trop hostile.
Il faut alors se tourner vers les TEE, « bunkers numériques » (appelés aussi sécurisées). Le TEE crée des zones ultra-sécurisées directement dans le processeur, protégeant les données les plus sensibles, et ce même si un pirate prenait le contrôle de la plus grande partie du système. Le principe : ne plus faire confiance a priori au système d’exploitation – trop complexe et vulnérable – mais ancrer la sécurité dans le matériel lui-même pour se prémunir des menaces logicielles.
Les TEE ont les atouts suivants :
- Zones ultra-sécurisées dans le processeur : Un TEE protège les données sensibles même en cas de piratage.
- Sécurité matérielle : Un TEE est ancré directement dans le matériel, sans dépendre du logiciel.
- Indépendance du système d’exploitation : Un TEE ne fait pas confiance au système d’exploitation vulnérable.
- Protection renforcée : Un TEE garantit confidentialité et intégrité des données critiques dans divers domaines (automobile, santé, cloud, IoT).
Les TEE sont la pierre angulaire de l’informatique confidentielle (confidential computing) déployée de manière opérationnelle par la plupart des fournisseurs de Cloud comme Amazon Web Services, Microsoft Azure ou Google Cloud. Ce modèle de sécurité permet de protéger les données sensibles en cours d’utilisation. Il offre de nombreuses garanties de sécurité (cf. Figure 1) comme l’isolation forte du code et des données (confidentialité, intégrité) et l’attestation, preuve de bon comportement, vérifiable localement ou à distance, et précieuse pour la conformité règlementaire.

Figure 2 – Chronologie des technologies TEE
Plusieurs vagues de technologies de TEE ont été développées au fil des ans (cf. Figure 2), depuis le TPM (Trusted Platform Module) et les premiers TEE (Intel SGX, AMD SEV, ARM TrustZone), une seconde vague plus mature (Intel TDX, AMD SNP, AWS Nitro ) jusqu’aux dernières évolutions (ARM CCA, TEE sur GPU avec l’essor des cas d’usage IA).
Avec des cas d’usage en sécurité du cloud, environnements distribués, IA et en embarqué. Nous faisons l’hypothèse que grâce à ces technologies, l’automobile bénéficiera de communications de véhicule-à-véhicule sécurisées et de protections renforcées pour la conduite autonome. L’intelligence artificielle pourra déployer un calcul confidentiel protégeant modèles et données d’entraînement, même dans des environnements cloud non fiables. Dans le domaine de la santé, il sera possible de partager de manière sécurisée des données médicales entre hôpitaux tout en respectant les exigences du RGPD (GDPR). Enfin, l’IoT et l’Industrie 4.0 disposeront d’une authentification inviolable et d’un contrôle d’accès granulaire pour les infrastructures critiques.
Le retour de la sécurité à la demande
Une architecture TEE pour système RISC-V est un compromis entre plusieurs exigences comme la sécurité (notamment les points d’entrée/sortie des enclaves, les communications entre enclaves et système, et la table de pages mémoire), les performances ( par exemple le temps de réponse lors d’un changement de domaine), la faible complexité (pas de duplication de structures de données), le passage à l’échelle (nombre d’enclaves, isolation mémoire, protection en intégrité), la flexibilité (isolation à grain fin, isolation dynamique, enclaves imbriquées), et la compatibilité avec l’existant (notamment le fait de pouvoir sécuriser l’exécution sans modifier le système).
La solution la plus simple est Keystone, solution purement logicielle offrant beaucoup de flexibilité et de modularité. Elle comprend 3 composants :
(1) un run-time dans le TEE pour l’exécution d’applications ;
(2) un driver dans le système hôte pour gérer les enclaves ;
(3) un moniteur de sécurité garantissant une protection mutuelle entre hôte et enclaves à l’aide de la PMP RISC-V.
D’autres mécanismes de protection peuvent être ajoutés. Keystone demande cependant à croître en niveau de maturité industrielle.
Parmi les solutions avancées, une première voie explore la flexibilité comme TIMBER-V. Ce système se base sur la mémoire étiquetée, technique qui ajoute des metadonnées aux régions à protéger pour obtenir une protection mémoire forte et flexible et lutter contre la fragmentation mémoire. L’architecture TIMBER-V offre deux niveaux de protection : (1) des domaines de sécurité, verticaux selon les couches de l’infrastructure, et horizontaux untrusted/trusted (cf. Figure 3) ;
(2) une isolation de niveau processus. La protection résultante dispose d’une forte flexibilité, granulaire et dynamique, mais avec des surcoûts en performance élevés, pouvant atteindre jusqu’à 25%.

Figure 3 – Architecture de sécurité TIMBER-V
Une seconde classe de solutions est orientée performances. Penglai se focalise par exemple sur le passage à l’échelle en terme d’isolation mémoire, d’intégrité et de latence pour l’exécution des enclaves, proposant de nouveaux mécanismes de sécurité. Il en résulte une sécurité assez forte, une flexibilité importante (mécanismes activables à la demande et passant à l’échelle) et de très bons résultats de performances (1000 enclaves concurrentes, speedup X1000 sur le temps de démarrage). Mais c’est au prix d’une complexité très importante, certains mécanismes étant dupliqués entre régions mémoire.
Ce constat motive la solution SPEAR-V pour réduire la complexité. L’approche est de gérer les tables de pages au niveau de l’OS sans duplication et en supportant des enclaves imbriquéees pour une protection « zero-trust » entre enclaves malveillantes et une infrastruture vulnérable. La sécurité résultante est assez forte, un mapping mémoire unique étant imposé au niveau enclave pour prévenir des attaques de type « aliasing ». Les enclaves imbriquées permettent un partage mémoire sécurisé très fluide entre système hôte et enclave ou bien dans une hiérarchie d’enclaves. Le tout avec de très bonnes performances (1% d’overhead globalement) sans besoin de modifier le système existant, ce qui réduit les coûts de manière significative.
SPEAR-V, la solution TEE offrant actuellement le meilleur compromis
Les chercheurs d’Orange ont exploré les défis de conception et d’implantation d’une architecture TEE dans les systèmes RISC-V pour réconcilier sécurité et adaptabilité. Ces architectures et solutions constituent des points de repères marquants au niveau des solutions de base ou avancées, en termes de flexibilité ou de performance (cf. Figure 4).

Figure 4 – Comparaison des principales solutions
Keystone constitue un point de départ intéressant, mais demande à gagner en maturité. Parmi les solutions avancées, TIMBER-V apparaît comme très flexible mais souffre de pénalités de performances importantes. Penglai passe bien à l’échelle, au prix d’une grande complexité. SPEAR-V fournit le meilleur compromis entre sécurité forte, performances, flexibilité, compatibilité avec l’existant et faible complexité.
Les défis de recherche
La prochaine étape est de faire mieux connaitre le potentiel sécurité des technologies de TEE et du confidential computing qui reste pour le moment largement inexploité, malgré une vaste adoption par les hyperscalers.
Par ailleurs, de nombreuses pistes restent à explorer sur la sécurité RISC-V à base de TEE. D’une part, l’exploration d’architectures complètement adaptables permettra de se rapprocher de systèmes de sécurité véritablement à la demande, les approches actuelles offrant peu de flexibilité. Des travaux très prometteurs explorent par exemple des architectures TEE à la demande, combinant plates-formes FPGA et RISC-V selon les exigences de sécurité. D’autre part, la lutte contre les canaux auxiliaires reste un défi ouvert. Comment intégrer les nombreuses contre-mesures existantes ? Enfin, l’essor international de l’écosystème RISC-V, porté par une communauté d’acteurs toujours plus large, fait naître des interrogations stratégiques fondamentales concernant la certification des plateformes et leur compatibilité avec les exigences de souveraineté technologique.
Sources :
- Marc Lacoste. Trusted Execution Environments: A New Frontier in Telecoms Security.
- Dayeol Lee, David Kohlbrenner, Shweta Shinde, Krste Asanović and Dawn Song. Keystone: An Open Framework for Architecting Trusted Execution Environments. In: European Conference on Computer Systems (EUROSYS), 2020, pp. 1–16.
- Samuel Weiser, Mario Werner, Ferdinand Brasser, Maja Malenko, Stefan Mangard and Ahmad-Reza Sadeghi. TIMBER-V: Tag-Isolated Memory Bringing Fine-grained Enclaves to RISC-V. In: NDSS’19.
- Erhu Feng et al. Scalable Memory Protection in the PENGLAI Enclave. In: OSDI’21.
- David Schrammel et al. SPEAR-V: Secure and Practical Enclave Architecture for RISC-V. In: ACM Asia Conference on Computer and Communications Security (ASIA CCS), 2023, pp. 457–468.
- David Lie et al. Implementing an Untrusted Operating System on Trusted Hardware. In: SOSP’03.
En savoir plus :
- Ghada Dessouky, Ahmad-Reza Sadeghi and Emmanuel Stapf. Enclave Computing on RISC-V: A Brighter Future for Security? International Workshop on Secure RISC-V Architecture Design Exploration (SECRISC-V), 2020.
- Tao Lu. A Survey on RISC-V Security: Hardware and Architecture, arXiv:2107.04175, 2021.
- Confidential Computing Consortium. A Technical Analysis of Confidential Computing v1.3. November 2022.
- Marc Lacoste and Vincent Lefebvre. Trusted Execution Environments for Telecoms: Strengths, Weaknesses, Opportunities, and Threats. In: IEEE Security & Privacy, vol. 21, no. 3, pp. 37-46, May-June 2023.
- Moritz Schneider et al. Composite Enclaves: Towards Disaggregated Trusted Execution. IACR Transactions on Cryptographic Hardware and Embedded Systems 2022 (1):630–656, 2021.
- Md Armanuzzaman, Ahmad-Reza Sadeghi and Ziming Zhao. Building Your Own Trusted Execution Environments Using FPGA.In: Asia CCS’24.
Cette architecture dite ISA (Instruction Set Architecture) en anglais, ouverte et modulaire, suscite beaucoup d’intérêt grâce à la capacité de définir des extensions pour personnaliser les systèmes embarqués. RISC-V s’applique aussi bien aux équipements mobiles IoT qu’aux centres de données. Son caractère reconfigurable et ouvert grâce à ses nombreuses fonctionnalités d’extensibilité en font un outil prometteur pour le support d’applications à la demande.
Un environnement d’exécution de confiance ou TEE (Trusted Execution Environment) en anglais permet de protéger du code et des données définis par l’utilisateur contre toute modification par des composants malveillants, logiciels, matériels, ou système se situant hors des limites du TEE.
Les enclaves se réfèrent à l’origine à la notion de compartiment protégé grâce à l’utilisation d’environnement d’exécution de confiance ou TEE (Trusted Execution Environment) dans l’architecture Intel SGX (Software Guard Extensions). Depuis, le terme enclave est largement utilisé indifféremment avec celui de TEE.







