Posts tonen met het label authenticatie. Alle posts tonen
Posts tonen met het label authenticatie. Alle posts tonen

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 …

vrijdag 7 oktober 2022

De geschiedenis van de sleutel

 

Afbeelding via Pixabay

Je fiets, je auto en je huis hebben één ding gemeen: er zit een slot op. En bij al die sloten horen sleutels. Sloten hebben een lange geschiedenis – naar het schijnt bestaan ze al meer dan zesduizend jaar. Door de eeuwen heen dienden al die sloten hetzelfde doel: binnenlaten wie naar binnen mag, de rest buitensluiten.

Er zijn ook altijd mensen geweest die tóch ergens naar binnen wilden waar ze niet naar binnen mochten. De meesten halen hun schouders op en denken “jammer dan”, maar sommigen proberen echt binnen te komen. Die mensen noemen we inbrekers. Ze hebben een heel scala aan mogelijkheden om de opgeworpen barrière te slechten, bijvoorbeeld gereedschap voor lockpicking (waarmee je cilindersloten kunt openpeuteren), de Poolse sleutel (in gebruik bij fietsendieven) en de aloude koevoet. Waarbij moet worden opgemerkt dat die laatste niet wordt gebruikt om het slot te openen, maar eromheen te werken.

En toen werd de computer uitgevonden. Al snel – in 1961 – bedacht men dat daar ook een slot op moest. Ik heb zelf nog pc’s gebruikt die een fysiek slot hadden, maar het wachtwoord is toch het meest gebruikte mechanisme. Het wachtwoord op zich was niet nieuw; reeds de oude Romeinen maakten er gebruik van, en ik herinner me van oude wildwestfilms dat iedereen, die het fort wilde betreden, bij de poort het wachtwoord moest noemen.

In die goede oude tijd hadden we één wachtwoord. Dat kon je gemakkelijk onthouden, al was het alleen maar omdat er nog geen eisen waren waaraan het moest voldoen. In de moderne tijden hebben we allemaal tientallen accounts, op het werk en privé, en de wachtwoorden daarvan moeten aan de soms meest verschrikkelijke eisen voldoen, die ook nog eens overal anders zijn. Zo kwam ik er gisteravond achter dat mijn bank wél een bijzonder karakter eist, maar dat dat geen accent circonflexe (^) mag zijn. En terwijl ik daar best een reden voor kan bedenken, vraag ik mij dan gelijk af waarom dit karakter elders wel mag worden gebruikt.

Ik heb het al eerder geschreven: wachtwoorden hebben hun langste tijd gehad. Niet alleen omdat we het beu zijn, maar vooral omdat ze (mede daardoor overigens) hun beveiligingswaarde verliezen. Ik durf wel te stellen dat iedereen, die geen password manager gebruikt, ofwel zijn wachtwoorden ergens opschrijft, ofwel zwakke wachtwoorden gebruikt (waar ik ook het gebruik van hetzelfde wachtwoord op verschillende plaatsen toe reken). Dat opschrijven hoeft overigens nog niet zo slecht te zijn, mits je het een beetje slim aanpakt. Een schrift met de titel “Al mijn wachtwoorden”, zoals negen jaar geleden op tv was te zien bij Ellen DeGeneres, is een minder goed idee. 

Biometrie is voor sommige toepassingen een mooi alternatief. Je telefoon ontgrendel je soepel met je vingerafdruk of met gezichtsherkenning. Zelfs vuurwapens worden ermee uitgerust (al is nog nooit zo’n smart gun verkocht, zegt Wikipedia). Er zijn ook robuustere – en dus duurdere – biometrische systemen die bijvoorbeeld je iris scannen, of je handpalm. Bij die laatste kan, behalve naar de vorm van je hand, ook worden gekeken naar het patroon van de aderen in de hand. Biometrie kan letterlijk diep gaan.

Een alternatief voor het inloggen bij websites is de FIDO-standaard (Fast Identity Online). Bij gebruik van FIDO registreer je je eenmalig bij een website. Vervolgens kun je er inloggen met behulp van je mobiele apparaat of je computer, waarbij je eventueel een FIDO USB-key gebruikt, die je alleen hoeft aan raken om in te kunnen loggen. Maar ondanks ronkende teksten op de website van de FIDO Alliance (“FIDO is widespread and growing fast!”), heb ik het nog nooit op een website gezien. Grote spelers als Google, Facebook en Dropbox zijn aangesloten, maar kennelijk niet voor Nederlandse gebruikers.

Veranderen is moeilijk, zo blijkt maar weer. Maar ooit zullen er mensen zijn die niet meer weten wat een wachtwoord is, net zoals er nu al miljoenen mensen rondlopen die de tijd zonder computer en smartphone niet hebben meegemaakt, of mensen die niet weten wat een floppy is. Tot die tijd: gebruik een password manager. En overal waar het kan twee/multifactorauthenticatie (2FA/MFA, ook wel tweestapsverificatie genoemd).

 

En in de grote boze buitenwereld …