Google presentó la pila abierta OpenSK para crear tokens criptográficos

Google presentado Plataforma OpenSK, que le permite crear firmware para tokens criptográficos que cumplen totalmente con los estándares. FIDO U2F и FIDO2. Los tokens preparados con OpenSK se pueden utilizar como autenticadores para la autenticación primaria y de dos factores, así como para confirmar la presencia física del usuario. El proyecto está escrito en Rust y distribuido por licenciado bajo Apache 2.0.

OpenSK permite crear su propio token para la autenticación de dos factores en sitios que, a diferencia de las soluciones listas para usar producidas por fabricantes como Yubico, Feitian, Thetis y Kensington, se basa en firmware completamente abierto, disponible para extensión y auditoría. OpenSK se posiciona como una plataforma de investigación que los productores y entusiastas de tokens pueden utilizar para desarrollar nuevas funciones y promover tokens entre las masas. El código OpenSK fue desarrollado originalmente como una aplicación para TockOS y probado en placas de dongle Nordic nRF52840-DK y Nordic nRF52840.

Además del proyecto de software. proporcionó diseños para imprimir en una impresora 3D una carcasa de llavero USB basada en un chip popular Nordic nRF52840, incluido un microcontrolador ARM Cortex-M4 y un acelerador criptográfico
ARM TrustZone Cryptocell 310. Nordic nRF52840 es la primera plataforma de referencia para OpenSK. OpenSK brinda soporte para el acelerador criptográfico ARM CryptoCell y todos los tipos de transporte proporcionados por el chip, incluidos USB, NFC y Bluetooth Low Energy. Además de utilizar el acelerador criptográfico, OpenSK también ha preparado implementaciones separadas de los algoritmos ECDSA, ECC secp256r1, HMAC-SHA256 y AES256 escritos en Rust.

Google presentó la pila abierta OpenSK para crear tokens criptográficos

Cabe señalar que OpenSK no es la primera implementación abierta de firmware para tokens con soporte para FIDO2 y U2F; proyectos abiertos están desarrollando firmware similar. Solo и somu. En comparación con los proyectos mencionados, OpenSK no está escrito en C, sino en Rust, lo que evita muchas de las vulnerabilidades que surgen del manejo de memoria de bajo nivel, como el acceso a memoria libre, desreferencias de puntero nulo y desbordamientos de búfer.

El firmware propuesto para la instalación se basa en TockOS,
Sistema operativo para microcontroladores basado en Cortex-M y RISC-V, que proporciona aislamiento sandbox del kernel, controladores y aplicaciones. OpenSK está diseñado como un subprograma para TockOS. Además de OpenSK, Google también se ha preparado para TockOS optimizado para unidades Flash (NVMC) repositorio y establecer parches. El kernel y los controladores de TockOS, como OpenSK, están escritos en Rust.

Fuente: opennet.ru

Añadir un comentario