De belachelijke wachtwoordeisen van de Belastingdienst

17 comments

Wachtwoorden zijn net als puisten. Iedereen heeft ze, maar je gaat er niet uitgebreid over orereren tijdens de vrijmibo. Toch moeten we het even over wachtwoorden hebben, met dank aan de Belastingdienst.

Afgelopen week deed ik aangifte. Mijn wachtwoord was verlopen vanwege “nieuwe veiligheidseisen”. Als klein tipje kreeg ik vast wat eisen waar mijn nieuwe wachtwoord aan moest voldoen:

3381de49-dece-48dd-9cd9-f922dbf59f7c

Ik moest gelijk denken aan dit klassieke Dilbert-stripje:

5945df16-8a42-427b-9316-ea0567ac531c
Even een experimentje: dit zijn wachtwoorden die volgens deze wachtwoordtester van Dropbox ‘eeuwen’ duren om te kraken. Maar bij de Belastingdienst zijn ze niet geldig:

Hier zijn een paar wachtwoorden die wél geldig zijn:

Leuk detail van dit lijstje: al die wachtwoorden komen uit de lijst van de 20 meest gebruikte wachtwoorden. Niet zo veilig dus, en volgens de wachtwoordtester te kraken in minder dan een seconde.

Dit is trouwens een interessant detail uit het lijstje (met dank aan Niels voor het spotten):

04a6b6c3-5a54-416c-8a63-e96160764767

Dit is een beetje curieus. Het kan namelijk de suggestie wekken dat de Belastingdienst wachtwoorden niet veilig versleuteld opslaat.

Dat zit zo: als je het goed doet sla je wachtwoorden nooit ‘zo’ op in een database. Ze worden altijd versleuteld door hashing. Dat hashen gaat maar één kant op: je kan een hash berekenen van een wachtwoord, maar andersom kun je niet terug van hash naar wachtwoord.

Ondanks dat je het wachtwoord zelf niet weet kun je wel controleren dat het klopt: de hash van wat iemand intikt bij een inlogscherm moet matchen met de hash in de database. Je vergelijkt dus nooit twee wachtwoorden, altijd twee hashes!

Als je dit mechanisme gebruikt (wat praktisch alle grote internetbedrijven doen) is het onmogelijk om te zien welke karakters er in een oud wachtwoord voorkomen.

Zowel in de comments hier beneden als op Twitter wordt gesuggereerd dat de BD wél veilig toegang heeft tot je wachtwoord, namelijk op het moment dat je het oude wachtwoord moet intikken. Dan zouden ze die check kunnen doen. Dat is een goed punt, maar helaas weten we niet op welke manier de Belastingdienst die check uitvoert.

Ook is er de eis dat je wachtwoord anders moet zijn dan je vorige wachtwoorden (meervoud). Je zou alle vorige wachtwoorden als hash kunnen opslaan, en het op die manier kunnen checken. Maar waarom zou je dat doen? Het creëert alleen maar extra complexiteit in het systeem en het voegt geen echte verbeteringen toe in de veiligheid.

Wat zou de Belastingdienst dan wél moeten doen? Zoals je kan lezen in dit inmiddels klassieke stripje van XKCD en dit lange technische artikel van Jeff Atwood is de oplossing simpel: eis gewoon langere wachtwoorden (minimaal 12 tekens), zónder al die gekke regels. ‘appelmoes kerk paars konijn’ is als wachtwoord eindeloos veel veiliger én beter te onthouden dan ‘B3l@st!ng’ en alle andere lelijke varianten.

Alle huidige bizarre regels zorgen er voor dat mensen slechte wachtwoorden bedenken die niet veilig zijn. En ze maken het én niet leuker én niet makkelijker. Zonde.

Naschrift: in een eerdere versie van dit artikel werd stelliger gezegd dat de Belastingdienst wachtwoorden onveilig opslaat. Dat heb ik aangepast na commentaar op dit blog en de gelinkte tweet.

Add a comment

17 comments