Google memperkenalkan tumpukan terbuka OpenSK untuk membuat token kriptografi

Google disajikan Platform OpenSK, yang memungkinkan Anda membuat firmware untuk token kriptografi yang sepenuhnya sesuai dengan standar FIDO U2F ΠΈ FIDO2. Token yang disiapkan menggunakan OpenSK dapat digunakan sebagai autentikator untuk autentikasi primer dan dua faktor, serta untuk mengonfirmasi kehadiran fisik pengguna. Proyek ini ditulis dalam Rust dan didistribusikan oleh berlisensi di bawah Apache 2.0.

OpenSK memungkinkan pembuatan token Anda sendiri untuk otentikasi dua faktor di situs, yang, tidak seperti solusi siap pakai yang diproduksi oleh produsen seperti Yubico, Feitian, Thetis, dan Kensington, dibangun di atas firmware yang sepenuhnya terbuka, tersedia untuk ekstensi dan audit. OpenSK diposisikan sebagai platform penelitian yang dapat digunakan oleh produsen dan peminat token untuk mengembangkan fitur-fitur baru dan mempromosikan token kepada massa. Kode OpenSK awalnya dikembangkan sebagai aplikasi untuk TockOS dan diuji pada papan dongle Nordic nRF52840-DK dan Nordic nRF52840.

Selain proyek perangkat lunak disediakan tata letak untuk mencetak pada printer 3D rumah gantungan kunci USB berdasarkan chip populer Nordik nRF52840, termasuk mikrokontroler ARM Cortex-M4 dan akselerator kripto
ARM TrustZone Cryptocell 310. Nordic nRF52840 adalah platform referensi pertama untuk OpenSK. OpenSK menyediakan dukungan untuk akselerator kripto ARM CryptoCell dan semua jenis transportasi yang disediakan oleh chip, termasuk USB, NFC, dan Bluetooth Low Energy. Selain menggunakan akselerator kripto, OpenSK juga telah menyiapkan implementasi terpisah dari algoritma ECDSA, ECC secp256r1, HMAC-SHA256 dan AES256 yang ditulis dalam Rust.

Google memperkenalkan tumpukan terbuka OpenSK untuk membuat token kriptografi

Perlu dicatat bahwa OpenSK bukanlah implementasi terbuka pertama dari firmware untuk token dengan dukungan untuk FIDO2 dan U2F; firmware serupa sedang dikembangkan oleh proyek terbuka Solo ΠΈ somu. Dibandingkan dengan proyek yang disebutkan, OpenSK tidak ditulis dalam C, tetapi dalam Rust, yang menghindari banyak kerentanan yang timbul dari penanganan memori tingkat rendah, seperti mengakses memori setelah bebas, dereferensi penunjuk nol, dan buffer overruns.

Firmware yang diusulkan untuk instalasi didasarkan pada TockOS,
sistem operasi untuk mikrokontroler berdasarkan Cortex-M dan RISC-V, menyediakan isolasi sandbox dari kernel, driver dan aplikasi. OpenSK dirancang sebagai applet untuk TockOS. Selain OpenSK, Google juga telah mempersiapkan TockOS yang dioptimalkan untuk Flash drive (NVMC) repositori dan atur tambalan. Kernel dan driver di TockOS, seperti OpenSK, ditulis dalam Rust.

Sumber: opennet.ru

Tambah komentar