In juni 2023 zette een programmeur genaamd Neal Agarwal op zijn site neal.fun iets online dat The Password Game heet. Het vraagt je een wachtwoord te typen. Daarna dat het minstens vijf tekens heeft. Daarna een cijfer. Daarna een hoofdletter. Daarna een speciaal teken.
Tot zover is het geen spel. Dat is het formulier van je bank.
Daarna begint het andere deel. De cijfers moeten optellen tot 25. Er moet een maandnaam in staan. Er moeten Romeinse cijfers in staan waarvan het product 35 is. Het antwoord van de Wordle van vandaag moet erin. Het land op een foto moet herkend worden. De beste zet in een schaakstelling moet erin, in algebraïsche notatie. Het zijn vijfendertig regels, en onderweg komt er in je wachtwoord een ei-emoji genaamd Paul uit, die met rupsen gevoerd moet worden, terwijl een vlam je tekens opeet als je hem niet op tijd blust.
Het spel werkt om een ongemakkelijke reden: niemand hoeft je de grap uit te leggen. Je snapt hem in de eerste seconde, want dat mechanisme onderga je al je halve leven. Het enige wat Agarwal heeft gedaan, is verder aan het draadje trekken.
En dát is het stuk waar je even moet vertragen. De eerste vier regels heeft hij niet verzonnen.
Waar de regels vandaan komen die je al kende
Een hoofdletter, een cijfer, een symbool en een minimumlengte zijn geen internetfolklore: het is de praktische vertaling van een document van het Amerikaanse NIST uit 2003, SP 800-63, geschreven door Bill Burr. Vandaar zakten ze door naar de formulieren van de halve wereld, en vandaar je hoofd in.
We vertelden het hele verhaal in wat een wachtwoord is: Burr had geen gegevens over echte wachtwoorden — die bestonden nauwelijks — dus redeneerde hij naar wat verstandig leek. Meer tekenvariatie, meer combinaties, meer veiligheid. In 2017 kwam het NIST zelf terug op vrijwel alles, en Burr zei tegen de Wall Street Journal dat hij spijt had van een groot deel van wat hij had geschreven.
Het spel van Agarwal overdrijft dus geen veiligheidsbeleid. Het zet een lijst voort die op regel één al fout was. Het enige verschil tussen «moet een symbool bevatten» en «de cijfers moeten optellen tot 25» is dat je aan de eerste gewend bent geraakt.
Wat die regels nooit hebben gemeten
Hier houdt de grap op grappig te zijn, want je kunt het meten.
Deze cijfers komen uit de wachtwoordchecker van deze site, met het model dat hij zelf noemt: een offline aanval tegen een snelle hash, op 10¹² pogingen per seconde. Het zijn geen brochureschattingen; dit is wat je ziet als je dezelfde reeksen daar intypt.
| wachtwoord | regels waaraan het voldoet | pogingen | houdt het |
|---|---|---|---|
Wachtwoord1! |
alle vier | 1,8 × 10⁶ | < 1 seconde |
Zomer2026! |
alle vier | 1,0 × 10⁷ | < 1 seconde |
Zx9#kQ2m |
alle vier | 3,3 × 10¹⁵ | 55 minuten |
| zes gedobbelde woorden, kleine letters | geen enkele | 1,1 × 10²³ | 3.500 jaar |
Die laatste rij komt niet uit de checker maar uit de rekenkunde, en dat is met opzet: de checker kan niet weten dat die zes woorden van een dobbelsteen komen, dus zou hij iets anders uitrekenen. Zes worpen zijn precies 77,5 bit, en 77,5 bit bij 10¹² pogingen per seconde is ongeveer drieënhalfduizend jaar. We komen erop terug.
Lees het nog eens. Wachtwoord1! komt door elk formulier op de planeet en valt
voordat je de toets loslaat, want het woord staat in het woordenboek en de rest is
de versiering die iedereen aanbrengt: hoofdletter voorop, cijfer en symbool
achteraan. En die laatste rij, zes gewone woorden in kleine letters, zou door de
helft van de sites waar je een account hebt geweigerd worden: geen hoofdletter,
geen cijfer, geen symbool.
Het loont om even bij Zx9#kQ2m stil te staan, want dat is het best denkbare geval
van de regel. Acht werkelijk willekeurige tekens, met alle vier de soorten, precies
wat het beleid van 2003 een voorbeeldig wachtwoord vond. Vijfenvijftig minuten. En
dat is een plafond: de checker kan niet weten dat je het willekeurig hebt
getypt, dus geeft hij je het voordeel van de twijfel en rekent het beste scenario
uit. Zo typt trouwens niemand. Vraag een mens om acht tekens met een symbool en
eruit komt Hallo123! — 318.924 pogingen, minder dan een seconde.
De regel ziet het verschil niet. Voor het formulier zijn Hallo123! en
Zx9#kQ2m hetzelfde wachtwoord. Dat is de hele fout: een samenstellingsregel
meet de vorm van de reeks, en de weerstand zit niet in de vorm.
De 90-dagenregel, of hoe Herfst2026! ontstaat
De andere helft van de erfenis van 2003 is de vervaldatum. Elke negentig dagen wijzigen.
Niemand verzint elke negentig dagen een nieuw wachtwoord. Wat mensen doen — wat jij
doet, en ik ook — is het oude ophogen. Zomer2026! wordt Herfst2026! en het werk
is gedaan. Beide houden het minder dan een seconde, en als een aanvaller het
eerste heeft, is het raden van het tweede geen aanval: het is een gaatje invullen.
Het NIST schrapte verplichte rotatie in SP 800-63B, in 2017. In de herziening van augustus 2025 werd de toon strenger: waar eerst stond dat verifiers samenstellingsregels niet zouden moeten opleggen en periodieke wijzigingen niet zouden moeten eisen, staat er nu dat ze geen van beide mogen. Een wijziging wordt alleen afgedwongen als er aanwijzingen zijn dat het wachtwoord gecompromitteerd is.
Negen jaar na de eerste herroeping vraagt je werkgever je nog steeds elk kwartaal om een hoofdletter.
De tekenlimiet is het slechtste signaal van allemaal
Agarwal heeft verteld dat de druppel die de emmer deed overlopen — wat hem het spel deed maken — was dat hij een account wilde aanmaken en te horen kreeg dat zijn wachtwoord te lang was.
Van alle absurde regels is dat de enige die bovendien een slecht teken is.
Een systeem dat je wachtwoord fatsoenlijk bewaart, bewaart het niet: het bewaart de hash, en een hash is altijd even groot, of je hem nu acht tekens geeft of achthonderd. Er bestaat geen opslagreden voor een limiet van zestien. Er is precies één bekende, legitieme technische uitzondering — bcrypt negeert alles voorbij 72 bytes — en die verklaart de formulieren niet die bij twaalf stoppen.
Een korte limiet bewijst niet dat ze je wachtwoord in leesbare vorm bewaren, maar het is het soort detail dat alleen opduikt als iemand het in een databasekolom met vaste breedte heeft gestopt. SP 800-63B vraagt het omgekeerde: dat er minstens 64 tekens worden geaccepteerd.
De regel die wél werkt, past niet in een formulier
Het onderliggende ongemak is dat goede praktijk zich niet als een validatievakje laat uitdrukken. Niemand kan een reguliere expressie schrijven voor «je hebt hem nergens anders gebruikt» of voor «hij staat niet in het laatste datalek».
Wat je wél kunt doen, is tellen. Een zin van woorden die je met dobbelstenen kiest — Diceware — telt 12,9 schone bits per woord op, en die bits zijn echt bits. Met hetzelfde model van 10¹² pogingen per seconde:
- Vijf woorden zijn 64,6 bit: ongeveer 164 dagen.
- Zes woorden zijn 77,5 bit: ongeveer 3.500 jaar.
Allebei die getallen horen genoemd te worden, niet alleen het tweede. Er wordt vaak herhaald dat een zin van vijf woorden «eeuwen standhoudt»; tegen een snelle hash houdt hij geen eeuwen stand: hij houdt vijfenhalve maand stand. Daarom raadde Reinhold vijf aan als ondergrens en zes voor wat er echt toe doet. Woord nummer zes verandert de schaal, en het kost niets.
Geen van beide zou door het formulier van je bank komen.
Waarom het spel grappig is
Als het spel eist dat je cijfers optellen tot 25, lach je omdat het een willekeurige voorwaarde is die niets te maken heeft met wat een wachtwoord veilig maakt.
Een symbool eisen is net zo goed een willekeurige voorwaarde die niets te maken heeft met wat een wachtwoord veilig maakt. Het verschil is dat de halve internetwereld die uitserveert, en dat we die lief zijn gaan vinden.
Wil je de operationele samenvatting, die past in drie regels: gebruik de
generator of een setje dobbelstenen, zet het resultaat in je
wachtwoordmanager, en voldoe aan de regels van het formulier door toe te voegen
wat het vraagt, zonder te geloven dat je daarmee ergens tegen beschermd bent. De
hoofdletter vooraan en de ! achteraan zijn tol, geen verdediging.
De rest is een spel. Het is prachtig gemaakt, en jammer dat het niet bij een spel is gebleven.
Bronnen: Neal Agarwal, «The Password Game» (neal.fun, 27 juni 2023), de 35 regels en het verhaal van de auteur zelf over het formulier dat hem vertelde dat zijn wachtwoord te lang was · NIST SP 800-63 (2003), SP 800-63B (2017) en SP 800-63B-4 (augustus 2025), dat bij samenstellingsregels en vervaldatum van «zouden niet moeten» naar «mogen niet» gaat en vraagt minstens 64 tekens te accepteren · uitspraken van Bill Burr tegen de Wall Street Journal, augustus 2017 · Arnold G. Reinhold, Diceware (1995), waar de 12,9 bit per woord vandaan komen. De tijden in de tabel zijn gemeten met de checker van deze site, met het door hem genoemde model van 10¹² pogingen per seconde tegen een snelle hash; die van Diceware zijn bij hetzelfde tempo berekend uit log₂(7.776) per woord.
Foto van Olha Ruskykh · Pexels