vrijdag 15 maart 2024

Passkey vervangt password

 

Afbeelding via Pixabay

Reeds ten tijde van Asterix en Obelix werden wachtwoorden gebruikt, en in computers worden ze sinds mensenheugenis gebruikt (Wikipedia noemt 1961 als jaar waarin ze werden toegepast in een systeem van het MIT). En nu, een slordige tweeduizend jaar na onze Gallische vrienden, zijn we ze zat. Het zijn er teveel, ze zijn lastig en ze zijn onveilig – zelfs lange, complexe wachtwoorden zijn onveilig als iemand ze je via phishing aftroggelt. Maar er is hoop: de passkey komt eraan!

Passkeys (toegangssleutels) zijn nog niet breed beschikbaar, maar het woord doemt steeds vaker op en dat is genoeg reden om er eens goed in te duiken. Passkeys verschillen fundamenteel van wachtwoorden, met als grootste voordeel dat ze vele malen veiliger zijn. En ze zijn gemakkelijk te hanteren. Wie wil dat nou niet?

Om het verschil uit te leggen, begin ik bij het aloude wachtwoord. De werking ervan berust op wat een noemen een gedeeld geheim (shared secret): zowel jij als de site/app/applicatie/computer weten het wachtwoord. Zo’n beetje het enige verschil met de werkwijze van de oude Romeinen is dat computerwachtwoorden aan de andere kant niet letterlijk worden opgeslagen, maar in de vorm van een hashwaarde (een wiskundig berekende ‘vervorming’ van het origineel). Aan die andere kant moeten ze kunnen controleren of de ingetikte combinatie van gebruikersnaam en wachtwoord bij elkaar passen, dus die gegevens van alle gebruikers staan bij elkaar in een groot bestand van bijvoorbeeld zo’n website. Dat is goud voor hackers als het niet beschermd is. En daarom is die hashing zo belangrijk. Hashing is onomkeerbaar; het wachtwoord ‘slechtvoorbeeld’ verandert in ‘0b3b1ddfbe320f44ec5ca91da6d8fb32’ en er is geen weg terug: je kunt uit de hashwaarde niet het oorspronkelijke wachtwoord terugbreien. Als jij je wachtwoord intypt, dan wordt dat weer gehasht en als de uitkomst overeenkomt met de opgeslagen hashwaarde, dan mag je naar binnen. Net als ieder ander die jouw wachtwoord weet. Bovendien kan een geduldige hacker, die zo’n wachtwoordbestand in handen heeft, in alle rust wachtwoorden proberen en als de berekende hashwaarde overeenkomt met de waarde in het bestand, dan weet hij je wachtwoord.

Maar dan de passkey. Daar komt geen gedeeld geheim aan te pas, maar serieuze cryptografie (versleuteling). Ook dát deden de oude Romeinen al. Destijds was het vooral een kwestie van andere tekens gebruiken, of van verschuiving (a wordt d, b wordt e enzovoorts). Daar komt een sleutel aan te pas: bij gebruik van andere tekens gebruik je een soort legenda, bij verschuiving een getal (in het voorbeeld is de sleutel +3). Moderne cryptografie is veel complexer, met name de vorm die voor passkeys wordt gebruikt: asymmetrische cryptografie. Kenmerkend daarvoor is dat er niet wordt gewerkt met één sleutel (die tussen de betrokken partijen moet worden gedeeld, net als een wachtwoord), maar met twee sleutels. Die sleutels hebben een wiskundige relatie. De ene heet de publieke sleutel, de andere is de geheime sleutel (public/private key). Kern van het verhaal is nu dat de geheime sleutel op jouw apparaat blijft en de publieke sleutel naar de andere partij gaat. Als jij op je apparaat iets doet met je geheime sleutel, dan kan de ander met behulp van de bijbehorende publieke sleutel controleren of jij het was. Die publieke sleutel hoeft niet te worden beveiligd, zoals zijn naam al aangeeft.

Stel, je wilt op je laptop inloggen op een site die met passkeys werkt. Die passkey kan bijvoorbeeld op je smartphone staan. Je laptop en je telefoon weten via Bluetooth dat ze bij elkaar in de buurt zijn en dat dus niet iemand op afstand probeert in te loggen. Op je telefoon ontgrendel je de gevraagde passkey met je vingerafdruk, gezichtsscan of een code. En hup, je bent ingelogd op die site.

Omdat de passkey het toestel niet verlaat, kun je als gebruiker geen toegangsgegevens lekken – je bent dus niet vatbaar voor phishing. Dat is in mijn ogen hét grote voordeel van passkeys: een aanvaller kan er simpelweg niet tussenkomen. Je kunt je passkeys synchroniseren tussen verschillende apparaten, zodat je ze op je laptop, tablet en smartphone bij de hand hebt. Die synchronisatie verloopt versleuteld (end-to-end, daar kan dus ook niemand op inbreken).

Passkeys worden op dit moment ondersteund door de grote tech-bedrijven (Google, Apple, Microsoft). Maar sommige password managers, zoals Bitwarden, kunnen er ook al mee overweg.

Nieuwsgierig geworden? Log in op je Google-account (maak er desnoods eentje aan), ga naar Instellingen > Beveiliging > Toegangssleutels en Beveiligingssleutels en maak hier je toegangssleutel. Op mijn pc draait een plugin van Bitwarden in de browser, en ik kreeg meteen de vraag of ik de passkey daarin wilde opslaan. Als ik voortaan op mijn pc bij Google wil inloggen, dan vraagt de password manager of ik de passkey wil gebruiken. Het werkt dus eigenlijk net zo als voorheen, maar dan zonder dat er geheimen aan te pas komen. Nu maar hopen dat passkeys in  zwang raken, zodat we ermee vertrouwd raken en straks – de komende twee millennia of zo – niet beter weten.

 

En in de grote boze buitenwereld …

Geen opmerkingen:

Een reactie posten