Google wprowadził otwarty stos OpenSK do tworzenia tokenów kryptograficznych

Google представила Platforma OpenSK, która umożliwia tworzenie oprogramowania dla tokenów kryptograficznych w pełni zgodnego ze standardami FIDO U2F и FIDO2. Tokeny przygotowane przy użyciu OpenSK mogą służyć jako uwierzytelniacze do uwierzytelniania podstawowego i dwuskładnikowego, a także do potwierdzania fizycznej obecności użytkownika. Projekt jest napisany w języku Rust i dystrybuowane przez na licencji Apache 2.0.

OpenSK umożliwia stworzenie własnego tokena do uwierzytelniania dwuskładnikowego w witrynach, który w odróżnieniu od gotowych rozwiązań produkowanych przez takich producentów jak Yubico, Feitian, Thetis i Kensington, zbudowany jest w oparciu o całkowicie otwarty firmware, dostępny do rozbudowy i audytu. OpenSK jest pozycjonowany jako platforma badawcza, z której producenci i entuzjaści tokenów mogą korzystać do opracowywania nowych funkcji i promowania tokenów wśród mas. Kod OpenSK został pierwotnie opracowany jako aplikacja dla Zaznacz system operacyjny i przetestowano na płytkach Nordic nRF52840-DK i Nordic nRF52840-dongle.

Oprócz projektu oprogramowania są zapewnione układy do wydruku na drukarce 3D obudowa breloka USB oparta na popularnym chipie Nordycki nRF52840, w tym mikrokontroler ARM Cortex-M4 i akcelerator kryptowalut
ARM TrustZone Cryptocell 310. Nordic nRF52840 to pierwsza platforma referencyjna dla OpenSK. OpenSK zapewnia obsługę akceleratora kryptograficznego ARM CryptoCell i wszystkich rodzajów transportu zapewnianych przez chip, w tym USB, NFC i Bluetooth Low Energy. Oprócz wykorzystania akceleratora kryptowalut OpenSK przygotował także osobne implementacje algorytmów ECDSA, ECC secp256r1, HMAC-SHA256 i AES256 napisane w języku Rust.

Google wprowadził otwarty stos OpenSK do tworzenia tokenów kryptograficznych

Należy zaznaczyć, że OpenSK nie jest pierwszą otwartą implementacją oprogramowania dla tokenów z obsługą FIDO2 i U2F; podobne oprogramowanie jest opracowywane w ramach otwartych projektów Serwico Solo и fiński. W porównaniu do wspomnianych projektów, OpenSK nie jest napisany w C, ale w Rust, co pozwala uniknąć wielu luk w zabezpieczeniach wynikających z obsługi pamięci na niskim poziomie, takich jak dostęp do pamięci po zwolnieniu, wyłuskiwanie wskaźników zerowych i przepełnienie bufora.

Oprogramowanie proponowane do instalacji opiera się na TockOS,
system operacyjny dla mikrokontrolerów oparty na Cortex-M i RISC-V, zapewniający izolację typu sandbox jądra, sterowników i aplikacji. OpenSK został zaprojektowany jako aplet dla TockOS. Oprócz OpenSK Google przygotowało także TockOS zoptymalizowany pod kątem dysków Flash (NVMC) repozytorium i nastaw łaty. Jądro i sterowniki w TockOS, podobnie jak OpenSK, są napisane w Rust.

Źródło: opennet.ru

Dodaj komentarz