Gebruiksvriendelijke 2-factor authenticatie met U2F

Inleiding

Bij veel online diensten kan er aangemeld worden met enkel een wachtwoord. Dat is slechts één factor, een kennisfactor. Het spreekt voor zich dat dit niet de meest veilige manier is. Om het veiligheidsniveau te verhogen kan er een extra factor toegevoegd worden, zoals een fysieke token die de gebruiker in zijn bezit heeft. Men spreekt hierbij van 2-factor authenticatie. De bezitsfactor kan verschillende vormen aannemen: een SMS die naar een GSM verstuurd wordt of een app op een smartphone die eenmalige codes genereert, zoals Google Authenticator.

U2F: Universal Second Factor

Een tijd geleden voegde Google de mogelijkheid toe om een security key als bezitsfactor toe te voegen aan een profiel in de context van 2 step verification. De technische specificatie hiervoor werd samen ontwikkeld met Yubico die compatibele security keys levert. Ondertussen is de specificatie in handen van de FIDO Alliance, een initiatief van de industrie met als missie om te voorzien in open, op standaarden gebaseerde sterke authenticatie (cf. blogpost over de FIDO Alliance).

U2F (Universal Second Factor) is een specificatie voor authenticatie-tokens, met aandacht voor veiligheid en gebruiksgemak. Technisch is de specificatie gebaseerd op public key cryptografie. Bij de registratie van een U2F device bij een online dienst wordt er een specifiek sleutelpaar gegenereerd dat enkel bruikbaar is bij die bepaalde online dienst. Bij het aanmelden verifieert de dienst of de gebruiker in het bezit is van het U2F device via een challenge/response protocol: het U2F device tekent een challenge op basis van een private sleutel die veilig opgeslagen is in het device; de online dienst kan deze getekende challenge verifiëren op basis van de overeenkomstige publieke sleutel die tijdens de registratie gekoppeld is aan de account van de gebruiker bij de online dienst. De term “universal” wijst op het feit dat je eenzelfde U2F device kan gebruiken bij meerdere online diensten. De privacy wordt hierbij gewaarborgd: er wordt geen informatie gedeeld tussen de online diensten onderling.

Ondersteuning voor U2F is momenteel beschikbaar in Google Chrome en Opera. Het feit dat browsers standaard ondersteuning bieden heeft een aantal voordelen. Als gebruiker hoef je geen aparte software te installeren om ermee aan de slag te gaan. Daarenboven biedt U2F bescherming tegen phishing en man-in-the-middle aanvallen.

U2F laat ook toe om paswoorden te vereenvoudigen zonder in te boeten op vlak van beveiliging. Daar waar een lang wachtwoord gevraagd wordt als eerste factor, kan dit vereenvoudigd worden tot een pincode van 4 cijfers.

In eerste instantie wordt enkel USB ondersteund als communicatiemethode ten opzichte van U2F devices. Maar in de toekomst zal ook Bluetooth en NFC tot de mogelijkheden behoren.

U2F devices

Op de website van de FIDO Alliance is een overzicht te vinden van U2F compatibele devices. Yubico was de eerste met het aanbieden van een compatibele security key, maar ondertussen zijn er meerdere aanbieders, zoals Vasco met de DIGIPASS SecureClick (zie mijn Product Review).

Hoe werkt het voor een eindgebruiker?

Vooraleer je als gebruiker aan de slag kan met een U2F compatibel device, moet dit eerst geregistreerd worden bij de desbetreffende dienst. Daarna kan je bij de dienst aanmelden in 2 stappen: in een eerste stap geef je het wachtwoord in; daarna dien je op de knop te duwen van het U2F device en ben je aangemeld bij de dienst.

Compatibiliteit

U2F wordt vandaag ondersteund door Chrome v40 of hoger en Opera. In Firefox is er ondersteuning via een add-on; op native ondersteuning voor U2F is het nog even wachten. In de nabije toekomst zullen mobiele platformen als Android en iOS native ondersteuning bieden voor U2F via Bluetooth Low Energy (BLE).

Op vlak van online diensten zijn er momenteel slechts een handvol compatibel met U2F, waaronder Google Login, GitHub en Dropbox.

Conclusie

U2F maakt het mogelijk om een extra beveiliging te voorzien ten opzichte van een wachtwoord, met de nodige aandacht voor beveiliging en respect voor de privacy. U2F devices zijn op zich eenvoudig te gebruiken, maar het blijven nog steeds fysieke toestellen die je als gebruiker moet bijhebben.

Ingebakken ondersteuning voor U2F in browsers en platformen biedt tal van voordelen, maar deze ondersteuning is nog niet universeel. De vraag is of deze specificatie zal doorbreken en een algemeen ondersteunde standaard zal worden.

Leave a Reply

Your email address will not be published. Required fields are marked *