OpenTitan : un projet communautaire pour des puces de confiance

Google est partie prenante au projet OpenTitan, qui vise à concevoir des architectures de référence pour des racines de confiance matérielles.

Sécuriser la conception et l’implémentation des racines de confiance matérielles ? Il y a l’open source pour ça.

Google suit cette voie dans le cadre du projet communautaire OpenTitan.

L’initiative est pilotée par lowRISC, organisation britannique à but non lucratif spécialisée dans le design d’architectures de composants ouvertes.

Elle implique pour l’heure :

  • l’École polytechnique fédérale de Zurich ;
  • G+D Mobile Security, fournisseur allemand de solutions de sécurité ;
  • Nuvoton Technology, société taïwanaise de semi-conducteurs ;
  • Western Digital, l’entreprise américaine spécialiste du stockage ;
  • et donc Google.

Ce dernier s’appuie sur les travaux qui ont abouti à l’implémentation, dans ses datacenters, de puces nommées Titan. Leur rôle : détecter d’éventuelles compromissions des serveurs et des cartes réseau… et les désactiver en conséquence.

ibex-coreL’architecture de référence d’OpenTitan* se fonde sur des cœurs Ibex (RISC 32 bits).
Elle y associe des coprocesseurs cryptographiques, un générateur de nombres aléatoires et divers mécanismes de défense.

 

opentitan-architectureCertaines de ses composantes ne seront pas ouvertes. Il s’agira essentiellement de la propriété intellectuelle liée à la fabrication des composants.

Les puces élaborées sur ce modèle – voulu plus transparent que ceux des principaux fournisseurs de semi-conducteurs – pourront notamment prévenir l’exécution d’un firmware compromis.

En ce sens, elles s’apparentent à celles que Microsoft entend généraliser sous la bannière Secured-core.
Le trio Intel – AMD – Qualcomm est dans la boucle, aux côtés de plusieurs constructeurs (Dell, Dynabook, HP, Lenovo, Panasonic).

* Architecture qu’on peut émuler avec Verilator ou expérimenter sur la carte Nexys Video, qui embarque un FPGA Xilinx Artix 7.

Logo © OpenTitan