Een aloude ict-wijsheid luidt dat het perfecte wachtwoord onmogelijk te onthouden is en uiteraard nooit opgeschreven mag worden. Maar wat is veilig en toch werkbaar en hoe pak je dat het beste aan?
Net zoals je je huis beschermt met een slot zodat je als enige binnenkan met de juiste sleutel, zo bescherm je de toegang tot je computer, bedrijfsnetwerk of website met een persoonlijk slot: de login. Die bestaat uit een gebruikersnaam en een wachtwoord.
Mensen willen logischerwijze een gemakkelijk te onthouden wachtwoord. Dus vullen ze van alles in: de eigen voornaam of familienaam, die van vrouw of vriendin, beste vriend of vriendin, kinderen, hond of kat, favoriete auto, hobby, noem maar op. Als het maar persoonlijk en dus makkelijk te onthouden is.
Zwak en sterk
Helaas is dat niet echt veilig. Zodra een hacker enige persoonlijke informatie over een gebruiker te weten komt, kan hij vrij vlug een persoonlijk getint wachtwoord achterhalen. Zo'n vlug te raden wachtwoord heet dan ook wel een zwak wachtwoord.
Een sterk wachtwoord, daarentegen, is niet gemakkelijk te raden. Ook bij telkens combinaties uitproberen (brute force attack) kost het (te)veel tijd om het wachtwoord te vinden. In ieder geval meer tijd en pogingen dan een goede inlogprocedure zal toelaten.
Het is logisch dat bedrijven en organisaties regels opleggen. Ze vereisen dat gebruikers sterkere wachtwoorden kiezen. De eerste sterke wachtwoorden dienden een minimum aantal tekens lang te zijn (meestal minstens zes) en uit letters én cijfers te bestaan. Toen ook dat nog niet veilig genoeg bleek, werden de eisen strenger. Zo moesten er zowel hoofd- als kleine letters in voorkomen en naast cijfers ook minstens één leesteken. Dat helpt allemaal om te voorkomen dat een hacker wachtwoorden zomaar kan raden.
DeXGh8!eR-34@T5j
Een alternatief is sterke wachtwoorden automatisch te genereren en die dan op gezette tijden uit te reiken aan de medewerkers. Maar als je elke dag met een wachtwoord als 'DeXGh8!eR-34@T5j' moet inloggen, dan is er uiteraard geen schijn van kans je dit kunt onthouden, tenzij je toevallig gezegend bent met een fenomenaal geheugen. Ook voor gebruikers met een goed fotografisch geheugen is er geen voordeel, want bij de meeste inlogprocedures krijg je je wachtwoord immers nooit te zien. In plaats daarvan worden alleen maar sterretjes of puntjes weergegeven. Een tikfout is voldoende om de inlog te laten mislukken. Bovendien zie je niet eens wat je precies fout deed.
Op papier mag dit veilig zijn, in de praktijk is het dat niet omdat de gebruiker zo'n moeilijk wachtwoord zal noteren en in de buurt van zijn pc bewaren. We hebben zelf al Post-it-briefjes met wachtwoorden gezien aan de rand van het scherm geplakt. Reikt jouw bedrijf zelf sterke wachtwoorden uit? Kijk dan maar eens in de bureaulade, onder het toetsenbord of onder de muismat van de gebruikers!
Wachtzin
Een sterk wachtwoord is dus bijna per definitie gebruiksonvriendelijk. Er bestaat echter een variant die gebruiksvriendelijker is en toch voldoende sterk: de wachtzin. De term zegt het al: in plaats van één woord gebruik je meerdere woorden, meestal in een volledige zin. De meeste authenticatie- of inlogprocedures staan geen al te lange wachtwoorden toe. Daardoor is de kans groot dat de wachtzin in lengte is beperkt. Maar met zestien tot twintig en zelfs 32 tekens is het vaak wel mogelijk een gemakkelijk te onthouden en toch sterke wachtzin te verzinnen. "Jantjes_5Pruimen" is daar een voorbeeld van. Het is zestien tekens lang, bevat hoofd- en kleine letters plus een cijfer en een leesteken én is voor de gebruiker erg gemakkelijk te onthouden.
Zelfs als de gebruiker elke week een andere wachtzin moet kiezen, kan hij werken met variaties hierop. "Rood-kapjes_1Wolf" en "G.S.M.-nr.#1860" (kies voor de cijfers je eigen pincode) zijn slechts enkele voorbeelden van wachtzinnen die sterk en toch makkelijk te onthouden zijn.
Nu bevatten deze voorbeelden wel herkenbare en in een woordenlijst voorkomende woorden. Dat is dan weer een zwak punt. Je kunt echter herkenbare woorden verminken zodat ze niet meer in woordenlijsten voorkomen, zoals jongeren wel eens doen bij het sms'en om woorden af te korten. Vervang bijvoorbeeld de letter 'S' door het cijfer '5' of het dollarteken '$'. De 'Z' wordt '2' of '3', de 'O' wordt '0', de 'G' een '6', de 'I' verandert in '!', de 'a' wordt '@', enzovoorts. Een andere optie is het gebruik van een cijfer voor lettercombinaties die samen klinken als dat cijfer. Zo kun je 'acht' vervangen door '8' en 'vier' of 'ver' door '4'. Een ‘w8zin' dus. Spaties tussen woorden kun je vervangen door koppeltekens of liggende streepjes, of je speelt wat met de asterisk of het ampersand-teken.
Online-identiteiten
Met wat creativiteit kun je op deze manier sterke wachtzinnen verzinnen die toch nog redelijk te onthouden zijn. Maar wat als je in plaats van één inlog er tientallen verschillende moet onthouden?
Als je toegang wilt tot informatie, moet je je vrijwel altijd registeren en dus een gebruikersaccount aanmaken. Om later opnieuw toegang tot die informatie te krijgen, moet je je legitimeren. Dat vereist dus het doorlopen van een inlogprocedure of 'sign-on'.
Dat begint bij je netwerkinlog als je je desktop-pc of notebook start, maar daar stopt het zeker niet. De e-mailclient vereist ook een inlog om bij je elektronische post te kunnen. Als je voor je werk een of meerdere applicaties gebruikt die met centraal opgeslagen data werken, vereisen die meestal ook een inlog. Als je gebruik maakt van informatie en nieuwsberichten op het internet, dan zul je vaak ook voor die informatie moeten inloggen op een website. Wellicht koop je af en toe ook cd's of dvd's bij een webwinkel zoals Amazon? Alweer een inlog! Of je gebruikt een webgebaseerde applicatie? Daar moet je ook op inloggen.
Op die manier komt de gemiddelde gebruiker al gauw aan enkele tientallen gebruikersnamen met bijbehorende wachtwoorden. Het zou natuurlijk niet zo verstandig zijn om voor al die accounts dezelfde login te gebruiken. Iemand die je logingegevens in handen krijgt, kan dan probleemloos bij al je persoonlijke informatie. Je moet dus voor elke individuele inlog of online-identiteit ook een individuele gebruikersnaam en een individueel wachtwoord verzinnen.
Bovendien vereisen veel van die accountsystemen een periodieke verversing om alles zo veilig mogelijk te houden. Als enkele tientallen accountsystemen periodieke verversingen eisen (met verschillende vervaldagen), dan vereist dat een hele administratie om alles bij te houden.
Te gebruiksvriendelijke browsers
Het is uiteraard uit den boze om op je pc een onbeveiligd bestand met wachtwoorden en websites of locaties te bewaren. Dat geldt ook voor webbrowsers. Internet Explorer, Firefox en verschillende andere browsers onthouden meerder inlogs, die ze daarna volautomatisch kunnen uitvoeren. Erg gebruiksvriendelijk, maar helaas absoluut onveilig. Wie toegang verwerft tot je pc, kan immers via je browser toegang krijgen tot allerlei persoonlijke informatie. De browser vult immers bereidwillig alles zelf in voor de hacker! Uit beveiligingsoverwegingen stel je dus je browser het beste zo in dat hij geen inlogs onthoudt voor websites.
Omdat het inderdaad echt niet te doen is om van tientallen websites de inloggegevens te onthouden, heb je geen andere keuze dan die gegevens ergens te bewaren. Je kunt je inlogs bijvoorbeeld bewaren op een USB-geheugenstick met encryptie (bijvoorbeeld Safeboot). Die mag je uiteraard nooit in je pc of notebook laten zitten. Zelfs als je de encryptiestick verliest of als hij gestolen wordt, kan de dief niet bij de gegevens komen. Het zal duidelijk zijn dat je het beste twee of meer van deze encryptie-sticks hebt, zodat je een back-up hebt van belangrijke persoonlijke data zoals inloggegevens. Die sticks bewaar je dan telkens op andere plaatsen: bijvoorbeeld een die je bij je draagt en een tweede in een kluis of bij je thuis.
Single Sign-On
Het beheer van tientallen identiteiten is dus zeker niet eenvoudig, tenminste niet als je dat veilig wilt doen. Daarom bestaan er ondertussen systemen die ook dat proberen te vereenvoudigen. Zo'n systeem heet een 'Single Sign-On' (kortweg SSO) of enkelvoudige inlog. (Recent publiceerden we een test van dergelijke systemen.) Het idee achter een SSO is dat je maar één keer hoeft in te loggen en dat het systeem dan "weet" wie je bent. Dit geldt voor alle toepassingen die je gebruikt en alle inlogprocedures die je moet doorlopen.
Het SSO-systeem houdt alle individuele gebruikersnamen en wachtwoorden veilig bij. Het vult ook de juiste accountgegevens in bij de juiste inlogprocedure. Bovendien houdt het SSO-systeem ook bij welke accountgegevens periodiek vervallen. Op die manier zorgt het ook voor verversing. Dat kan handmatig en dan moet je zelf een nieuw wachtwoord opgeven. Het kan ook automatisch en dan genereert het SSO-systeem zelf een nieuw sterk wachtwoord.
Zo'n SSO-systeem moet dan natuurlijk wel zorgen voor een hoofdlogin die veel veiliger is. Bovendien moet controleren dat de ingelogde gebruiker de juiste is. Het is dus niet de bedoeling dat iemand anders achter je pc kan gaan zitten en dan probleemloos met jouw inlog bij alle informatie kan. De wachtzin voor de hoofdlogin of meesteridentiteit is vanzelfsprekend van cruciaal belang.
Tokens
Het is echter mogelijk dat sommige gebruikers niet de nodige fantasie hebben om elke week of elke maand een nieuwe spitsvondige sterke wachtzin te verzinnen. Dan bestaan er nog andere methodes voor authenticatie. De meest succesvolle is een authenticatiesysteem met tokens. Een token is een soort van veilige computersleutel, die je gebruikt als inlog in plaats van – of in combinatie met – het traditionele gebruikersnaam en wachtwoord/wachtzin.
Zo'n token genereert bij iedere inlog een unieke en nieuwe inlogcode. Die moet je normaliter combineren met je pincode. Die combinatie resulteert in een geldige en sterke inlogauthenticatie. Het DigiPass-systeem van Vasco dat door veel banken gebruikt wordt als authenticatie bij online transacties, is een voorbeeld van een token-inlogsysteem.
Een ander voorbeeld is het tijdsgesynchroniseerde token. Dat token dient zelf niet fysiek voor de authenticatie, maar toont op een lcd-schermpje een zescijferige code die elke minuut wijzigt. Een gebruiker logt dan in met een pincode plus die zescijferige tokencode. De tokencode is veilig omdat die om de minuut verandert en dus niet nagemaakt kan worden. De bijkomende pincode garandeert dat de aanmelding wordt gedaan door de echte, bedoelde gebruiker.
Een pincode is voor de meeste gebruikers vrij gemakkelijk te onthouden, waardoor ze minder vlug in de verleiding komen die te noteren. Een hacker zou dus het unieke token moeten stelen samen met de pincode én de gebruikersnaam om met succes te kunnen inloggen.
Het feit dat de tokencodes elke minuut veranderen, brengt ons tot het 'tijdgesynchroniseerde' aspect van het token. De tokens gebruiken een speciaal ontworpen algoritme om elke minuut een nieuwe zescijferige code te berekenen, die uniek is voor elk token. De bijbehorende beveiligingsappliance heeft datzelfde algoritme aan boord. Die kan dus aan de hand van het identificatienummer van een token berekenen welke cijfercode momenteel zichtbaar is op het lcd-schermpje.
Andere sterke inlogmethodes
Een ander systeem voor sterke inlog is dat van de biometrische verificatie of inlog. Hierbij log je in via een vingerafdrukscanner of een irisscanner. Je hebt tegenwoordig ook een chipgebaseerde elektronische identiteitskaart of eID. Ook die kan dienen voor een sterke inlog met behulp van een kaartlezer. Een bedrijf kan ook eigen chipkaarten uitreiken. Om zeker te zijn dat de bezitter van de chipkaart ook de juiste geautoriseerde persoon is, is vaak ook nog een pincode of wachtwoord vereist.
Een variant hiervan is de nabijheidsdetector in combinatie met een 'clip-on badge' (een vastknijpbare kaart ter grootte van een creditcard) die een kleine zender met batterijtje aan boord heeft. Hier mee kan je volautomatisch inloggen op een pc met nabijheidsdetectie zodra je in de buurt komt. Loop je weer weg van de pc dan word je automatisch uitgelogd. De nabijheidsdetectiekaart heeft een drukknop om de kaart uit te schakelen als je niet wenst in teloggen. Er bestaat ook een passieve versie die je langs een vaste detector moet vegen om gedetecteerd en ingelogd te worden. In ziekenhuizen is deze inlogmethode erg populair omdat dokters en verplegend personeel gewoonlijk sowieso een identificatiekaart bij zich dragen.
De Kern
-
Sterke wachtwoorden zijn moeilijk te onthouden en dus gebruikersonvriendelijk.
-
Je kunt werken met makkelijker te onthouden en toch sterke wachtzinnen, tokens, of biometrische inlogsystemen.