Google heeft firmware die voor een fysieke beveiligingssleutels is te gebruiken open source gemaakt. OpenSK is een in de programmeertaal Rust geschreven opensource-implementatie voor beveiligingssleutels die de FIDO U2F- en FIDO2-standaarden ondersteunt. De beveiligingssleutel fungeert als een tweede factor tijdens het inloggen. Nadat het wachtwoord is ingevoerd wordt de aanwezigheid van de sleutel gecontroleerd.
Beveiligingssleutels maken gebruik van een protocol dat op standaard public key-cryprografie is gebaseerd. Een gebruiker die zijn beveiligingssleutel voor een website wil gebruiken moet dit eerst instellen. Tijdens het instellen registreert de gebruiker een publieke sleutel. Bij het inloggen vraagt de website vervolgens om een cryptografische handtekening die bewijst dat de gebruiker de eigenaar is van de privésleutel die bij de publieke sleutel hoort. Hierdoor werkt de beveiligingssleutel alleen op de website waarvoor die is geregistreerd.
Volgens Google bieden fysieke beveiligingssleutels de beste bescherming tegen phishing. Steeds meer websites ondersteunen het gebruik van beveiligingssleutels, zoals Coinbase, Dropbox, Facebook, GitHub, Salesforce, Stripe en Twitter. Door de firmware open source te maken hoopt Google dat onderzoekers, sleutelfabrikanten en andere partijen er gebruik van zullen maken, wat voor nieuwe features en een hogere adoptiegraad moet zorgen.
De eerste versie van OpenSK werkt met een dongle van Nordic Semiconductor. Gebruikers kunnen zo hun eigen "developer key" maken. Google stelt dat het bewust voor de dongle van Nordic als referentiehardware heeft gekozen omdat het alle transportprotocollen ondersteunt, een aparte "hardware crypto core" heeft en betaalbaar is. Hoewel het nu mogelijk is om met de OpenSK-firmware en dongle een FIDO-authenticator te maken, waarschuwt Google dat de eerste versie van de firmware als een experimenteel onderzoeksproject moet worden beschouwd en alleen voor test- en onderzoeksdoeleinden is bedoeld.
Deze posting is gelocked. Reageren is niet meer mogelijk.