Zoals we in een eerdere blog hebben uitgelegd, is hardwareauthenticatie d.m.v. security keys een van de veiligste 2-factorauthenticatie (2FA) methode. Helaas ondersteunen nog niet alle websites waar je een account kunt aanmaken U2F/FIDO/WebAuthn — de techniek achter security keys. De kans is groter dat zulke websites wel 2FA op basis van 6-cijferige codes ondersteunen (TOTP – Time-based one-time password).
Desondanks TOTP 2FA een relatief veilige optie is, ben je nog steeds vatbaar voor lekken. Als je een authenticator-app op je telefoon of computer hebt staan, kunnen hackers of dieven zich toegang tot jouw apparaat verschaffen. Dat kan door middel van fysieke diefstal of door spyware. Het klinkt misschien vergezocht, maar als je accounts hebt die veel waard zijn is dat het ook voor criminelen. Bijvoorbeeld als je accounts hebt waarmee je met enorme bedragen belegt in crypto.
In deze blog leggen we uit hoe je een extra beveiligingslaag instelt over je TOTP-codes met behulp van je Yubico YubiKey en Yubico Authenticator. In de voorbeeldstappen gebruiken we zelf de YubiKey 5C NFC op MacOS en Android. Het doel is dat je alleen een TOTP-code kunt verkrijgen met behulp van je beveiligingssleutel zonder dat je secret is opgeslagen op je telefoon of computer.
TOTP-codes beveiligen met een YubiKey
Stap 1: Installeer Yubico AuthenticatorOmdat we in deze gids ook willen laten zien dat je je TOTP-codes met je YubiKeys kunt opvragen via je desktop en telefoon, installeren we Yubico Authenticator 6 op onze computer en Yubico Authenticator op onze (Android) telefoon. Beide apps zullen alleen data bevatten wanneer de YubiKey ingevoerd is.
Via de Yubico website kun je de officiële Yubico authenticator downloaden voor Linux, Mac, Windows, Android en iOS.
Stap 2: 2FA inschakelenHet enige wat je nu nog hoeft te doen is 2FA inschakelen op de sites waar je dat wilt. In dit voorbeeld zullen we PastePixel als voorbeeld nemen. Maar dit kan natuurlijk iedere andere website zijn die TOTP 2FA ondersteunt.
We gaan via de website waar we 2FA instellen opzoek naar de optie om 2FA in te schakelen, zorg ervoor dat je een QR-code of secret ziet. Daarnaast openen we de Yubico Authenticator app en pluggen de YubiKey in. We kiezen in de app voor de optie om een account toe te voegen. Als je via de website een QR-code ziet, kun je in de app kiezen voor “Scan QR code”. Alle velden zullen dan automatisch ingevuld worden en anders moet je dat handmatig doen. Voor een stukje extra beveiliging, tik de optie "Require touch" aan.

Druk op save om je account op te slaan. Vervolgens zie je een overzicht van al je accounts. Klik op de optie om een code te genereren. Als je require touch had ingeschakeld, zul je jouw YubiKey moeten aanraken voordat de code wordt gegenereerd. Rond nu de registratie via de website af zoals je dat normaal gesproken ook zou doen.


Zodra je jouw YubiKey uit jouw computer plugt terwijl je de authenticator open hebt, zul je zien dat je gegevens verdwijnen, dus dat je geen accounts meer hebt. Dat komt omdat de TOTP-secret, de code op basis waarvan de codes worden gegenereerd, opgeslagen is op de YubiKey.

We kunnen dit controleren door nu de Yubico authenticator op een ander apparaat te openen, zoals op Android en de YubiKey in te pluggen. Je zult dan zien dat de account die je op je computer hebt ingesteld, nu beschikbaar is op je telefoon. Dus je kunt vanuit verschillende apparaten 2FA TOTP-codes genereren terwijl je secret alléén op je YubiKey is opgeslagen.
Conclusie
Het is niet altijd mogelijk om gebruik te maken van FIDO, daarom moet je soms noodgedwongen gebruik maken van TOTP 2FA. Door de TOTP-secrets op je YubiKeys op te slaan voeg je een extra beveiligingslaag toe.
Tip: Gebruik onze website zoeker tool om eerst te checken of jouw website FIDO/WebAuthn ondersteunt.
Nadeel blijft dat je je security keys kunt kwijtraken. Check onze blog Wat als ik mijn hardwaresleutel kwijtraak? voor meer informatie daarover.
Yubico security key kopen
Ook gebruik maken van de YubiKey 5C NFC, zoals in dit voorbeeld? Check dan onze webshop welke security keys we allemaal hebben.