Google a introduit la pile ouverte OpenSK pour créer des jetons cryptographiques

Google présenté Plateforme OpenSK, qui permet de créer un firmware pour des jetons cryptographiques entièrement conformes aux normes FIDO U2F и FIDO2. Les jetons préparés à l'aide d'OpenSK peuvent être utilisés comme authentifiants pour l'authentification principale et à deux facteurs, ainsi que pour confirmer la présence physique de l'utilisateur. Le projet est écrit en Rust et distribué par sous licence Apache 2.0.

OpenSK permet de créer votre propre token pour l'authentification à deux facteurs sur les sites qui, contrairement aux solutions prêtes à l'emploi produites par des fabricants tels que Yubico, Feitian, Thetis et Kensington, repose sur un firmware entièrement ouvert, disponible pour extension et audit. OpenSK se positionne comme une plateforme de recherche que les producteurs et les passionnés de jetons peuvent utiliser pour développer de nouvelles fonctionnalités et promouvoir les jetons auprès du grand public. Le code OpenSK a été initialement développé comme une application pour TockOS et testé sur les cartes Nordic nRF52840-DK et Nordic nRF52840-dongle.

En plus du projet logiciel fourni schémas pour imprimer sur une imprimante 3D un boîtier de clé USB basé sur une puce populaire Nordique nRF52840, comprenant un microcontrôleur ARM Cortex-M4 et un accélérateur de cryptographie
ARM TrustZone Cryptocell 310. Nordic nRF52840 est la première plateforme de référence pour OpenSK. OpenSK prend en charge l'accélérateur de chiffrement ARM CryptoCell et tous les types de transport fournis par la puce, notamment USB, NFC et Bluetooth Low Energy. En plus d'utiliser l'accélérateur de chiffrement, OpenSK a également préparé des implémentations distinctes des algorithmes ECDSA, ECC secp256r1, HMAC-SHA256 et AES256 écrits en Rust.

Google a introduit la pile ouverte OpenSK pour créer des jetons cryptographiques

Il convient de noter qu'OpenSK n'est pas la première implémentation ouverte d'un micrologiciel pour les jetons prenant en charge FIDO2 et U2F ; un micrologiciel similaire est développé par des projets ouverts. Solo Dome и finlandais. Par rapport aux projets mentionnés, OpenSK n'est pas écrit en C, mais en Rust, ce qui évite de nombreuses vulnérabilités résultant de la gestion de la mémoire de bas niveau, telles que l'accès à la mémoire après libération, les déréférences de pointeurs nuls et les dépassements de mémoire tampon.

Le firmware proposé pour l'installation est basé sur TockOS,
système d'exploitation pour microcontrôleurs basé sur Cortex-M et RISC-V, fournissant une isolation sandbox du noyau, des pilotes et des applications. OpenSK est conçu comme une applet pour TockOS. En plus d'OpenSK, Google a également préparé TockOS optimisé pour les lecteurs Flash (NVMC) référentiel Et mettre correctifs. Le noyau et les pilotes de TockOS, comme OpenSK, sont écrits en Rust.

Source: opennet.ru

Ajouter un commentaire