Andrew Huang (), un cĂ©lĂšbre militant pour la promotion des idĂ©es de matĂ©riel libre, laurĂ©at du , plateforme ouverte «« destinĂ©e Ă la crĂ©ation de concepts de nouveaux appareils mobiles. Ă l'instar de Raspberry Pi et Arduino qui permettent de crĂ©er des dispositifs pour l'Internet des objets, Precursor vise Ă offrir la possibilitĂ© de concevoir et d'assembler soi-mĂȘme divers appareils mobiles pour rĂ©pondre Ă ses besoins.
Contrairement Ă d'autres projets, Precursor n'offre pas seulement une carte, mais un prototype prĂȘt Ă l'emploi d'un appareil portable avec un boĂźtier en aluminium mesurant 69 x 138 x 7,2 mm, un Ă©cran LCD (336Ă536), une batterie (1100 mAh Li-Ion), un clavier miniature, un haut-parleur, un moteur vibrant, un accĂ©lĂ©romĂštre et un gyroscope. Le module de calcul n'est pas fourni avec un processeur prĂȘt Ă l'emploi, mais avec un SoC dĂ©fini par logiciel basĂ© sur le FPGA Xilinx XC7S50, sur lequel est organisĂ©e l'Ă©mulation d'un CPU RISC-V 32 bits fonctionnant Ă 100 MHz. Il n'y a aucune limitation sur l'Ă©mulation d'autres composants matĂ©riels, par exemple, diffĂ©rents processeurs, allant de 6502 et Z-80 Ă AVR et ARM, ainsi que des puces sonores et divers contrĂŽleurs. La carte comprend 16 Mo de SRAM, 128 Mo de Flash, Wi-Fi Silicon Labs WF200C, USB type C, SPI, IÂČC, GPIO.
Parmi les fonctionnalitĂ©s liĂ©es Ă la sĂ©curitĂ©, on note la prĂ©sence de deux gĂ©nĂ©rateurs matĂ©riels de nombres pseudo-alĂ©atoires. Fait intĂ©ressant, l'appareil est fondamentalement fourni sans microphone intĂ©grĂ© â il est sous-entendu que la rĂ©ception du son n'est possible qu'avec la connexion explicite d'un casque, et si le casque est dĂ©connectĂ©, il est physiquement impossible d'organiser une Ă©coute, mĂȘme si le logiciel de l'appareil a Ă©tĂ© compromis.
Le module de communication sans fil (Wi-Fi) est matériellement isolé du reste de la plateforme et fonctionne dans un environnement séparé. Pour se protéger contre les accÚs non autorisés, un boßtier verrouillable, un RTC séparé pour suivre l'intégrité et un suivi des mouvements en veille (accéléromÚtre et gyroscope toujours activés) sont également utilisés. Un circuit de destruction et d'effacement instantané de toutes les données, activé par une clé AES, est également prévu.
Le langage utilisé pour décrire les composants matériels est le langage FHDL (Fragmented Hardware Description Language), basé sur Python. Migen fait partie du cadre , qui fournit l'infrastructure pour la création de circuits électroniques. Sur la base de Precursor, un SoC de référence a été préparé à l'aide de FPGA et de LiteX , incluant un CPU VexRISC-V RV32IMAC à 100 MHz, ainsi qu'un contrÎleur intégré
Betrusted-EC avec un cĆur LiteX VexRISC-V RV32I Ă 18 MHz.
Le SoC Betrusted propose un ensemble intĂ©grĂ© de primitives cryptographiques, telles que le gĂ©nĂ©rateur de nombres pseudo-alĂ©atoires, AES-128, -192, -256 avec les modes ECB, CBC et CTR, SHA-2 et SHA-512, basĂ© sur les courbes elliptiques Curve25519. Le moteur cryptographique est Ă©crit en SystemVerilog et repose sur des cĆurs cryptographiques du projet .
Precursor est positionnĂ© comme une plateforme pour la crĂ©ation et la vĂ©rification de prototypes, tandis que Betrusted reprĂ©sente l'un des appareils mobiles prĂȘts Ă l'emploi, construit sur la base de Precursor. Les enclaves traditionnelles utilisĂ©es pour le stockage isolĂ© des clĂ©s cryptographiques ne protĂšgent pas contre les attaques de haut niveau, telles que la collecte de mots de passe par des keyloggers ou l'accĂšs aux messages via des captures d'Ă©cran, c'est pourquoi Betrusted a intĂ©grĂ© des Ă©lĂ©ments d'interaction utilisateur (, Human-Computer Interaction), garantissant que les donnĂ©es secrĂštes qui peuvent ĂȘtre lues par un humain ne seront jamais stockĂ©es, affichĂ©es ou transmises en dehors de l'appareil sĂ©curisĂ©.
Betrusted ne cherche pas Ă remplacer un tĂ©lĂ©phone mobile, mais Ă former uniquement un enclave sĂ©curisĂ© avec des entrĂ©es et des sorties disponibles pour audit. Par exemple, un smartphone externe peut ĂȘtre utilisĂ© via Wi-Fi comme un canal de donnĂ©es non fiable, mais les messages chiffrĂ©s transmis ne sont saisis que sur le clavier intĂ©grĂ© de l'appareil Betrusted, et les messages reçus ne sont affichĂ©s que sur l'Ă©cran intĂ©grĂ©.
Tous les composants de Precursor et de Betrusted sont ouverts et disponibles pour modification et expĂ©rimentation sous la licence , qui exige que toutes les Ćuvres dĂ©rivĂ©es soient Ă©galement ouvertes sous la mĂȘme licence. La documentation de conception complĂšte est Ă©galement ouverte y compris , la rĂ©alisation prĂȘte de et (). Des modĂšles sont disponibles pour l'impression 3D de boĂźtiers. Un ensemble de firmwares est Ă©galement dĂ©veloppĂ© sous forme de projets ouverts Xous basĂ© sur un micro-noyau. Xous basĂ© sur un micro-noyau.
Source : opennet.ru
