Google прадставіў адкрыты стэк OpenSK для стварэння крыптаграфічных токенаў

Кампанія Google прадставіла платформу OpenSK, якая дазваляе ствараць прашыўкі для крыптаграфічных токенаў, якія цалкам адпавядаюць стандартам. FIDO U2F и FIDO2. Падрыхтаваныя з выкарыстаннем OpenSK токены могуць прымяняцца ў якасці аўтэнтыфікатараў для першаснай і двухфактарнай аўтэнтыфікацыі, а таксама для пацверджання фізічнай прысутнасці карыстальніка. Праект напісаны на мове Rust і распаўсюджваецца пад ліцэнзіяй Apache 2.0.

OpenSK дае магчымасць стварэння ўласнага токена для двухфактарнай аўтэнтыфікацыі на сайтах, які ў адрозненне ад гатовых рашэнняў, якія выпускаюцца такімі вытворцамі, як Yubico, Feitian, Thetis і Kensington, пабудаваны на цалкам адчыненай прашыўцы, даступнай для пашырэння і аўдыту. OpenSK пазіцыянуецца як даследчая платформа, якую вытворцы токенаў і энтузіясты могуць выкарыстоўваць для распрацоўкі новых магчымасцяў і пасоўванні токенаў у шырокія масы. Першапачаткова код OpenSK быў распрацаваны як дадатак для Tock OS і пратэставаны на поплатках Nordic nRF52840-DK і Nordic nRF52840-dongle.

Акрамя праграмнага забеспячэння праектам прадастаўляюцца макеты для друку на 3D-друкарцы корпуса USB-бірулькі на базе папулярнага чыпа Nordic nRF52840, Які ўключае мікракантролер ARM Cortex-M4 і крыптаакселератар
ARM TrustZone Cryptocell 310. Nordic nRF52840 з'яўляецца першай эталоннай платформай для OpenSK. У OpenSK забяспечана падтрымка крыптаакселератара ARM CryptoCell і ўсіх якія прадстаўляюцца чыпам выглядаў транспарта, уключаючы USB, NFC і Bluetooth Low Energy. Акрамя задзейнічання крыптаакселератара ў OpenSK таксама падрыхтаваны адасобленыя рэалізацыі алгарытмаў ECDSA, ECC secp256r1, HMAC-SHA256 і AES256, напісаныя на Rust.

Google прадставіў адкрыты стэк OpenSK для стварэння крыптаграфічных токенаў

Варта адзначыць, што OpenSK не першая адкрытая рэалізацыя прашыўкі для токенаў з падтрымкай FIDO2 і U2F, аналагічныя прашыўкі развіваюць адкрытыя праекты. Сола и Сому. У параўнанні са згаданымі праектамі OpenSK напісаны не на Сі, а на мове Rust, які дазваляе пазбегнуць шматлікіх уразлівасцяў, якія ўзнікаюць з-за нізкаўзроўневай працы з памяццю, такіх як зварот да вобласці памяці пасля яе вызвалення, разнайменаванне нулявых паказальнікаў і вынахад за межы буфера.

Прапанаваная для ўсталёўкі прашыўка грунтуецца на TockOS,
аперацыйнай сістэме для мікракантролераў на базе Cortex-M і RISC-V, якая забяспечвае sandbox-ізаляцыю ядра, драйвераў і прыкладанняў. OpenSK аформлены як аплет для TockOS. Акрамя OpenSK Google таксама падрыхтаваў для TockOS аптымізаванае для Flash-назапашвальнікаў (NVMC) сховішча і набор патчаў. Ядро і драйверы ў TockOS, як і OpenSK, напісаны на мове Rust.

Крыніца: opennet.ru

Дадаць каментар