Diceware-wachtzingenerator — Willekeurige-woordenwachtzinnen
Genereer sterke, makkelijk te onthouden wachtzinnen opgebouwd uit willekeurige echte woorden volgens de Diceware-methode — met echte cryptografische willekeur, en de werkelijke entropie in bits eerlijk weergegeven.
🔒 Wordt volledig in uw browser verwerkt. Niets wat u hier invoert, wordt ooit geüpload.
Resultaat
Deze tool genereert wachtzinnen op de Diceware-manier: in plaats van een dichte reeks willekeurige tekens die moeilijk in te typen en nog moeilijker te onthouden is, rijgt hij meerdere gewone woorden aaneen die onafhankelijk van elkaar willekeurig worden gekozen. Een wachtzin als 'forest-comet-lantern-guitar-oasis-thistle' heeft een echte, berekenbare entropie, terwijl een mens hem hardop kan voorlezen, op een telefoontoetsenbord kan intypen of na een paar pogingen kan onthouden — precies het compromis waarvoor Diceware-achtige generatie is ontworpen.
Willekeur is waar het helemaal om draait, dus die wordt hier serieus genomen: elk woord wordt gekozen met de cryptografisch veilige willekeurigheidsgenerator crypto.getRandomValues() van de browser, met correcte rejection-sampling bij elke trekking. Een ruwe 32-bits willekeurige waarde wordt alleen geaccepteerd als deze in een bereik valt dat gelijkmatig deelbaar is door de lengte van de woordenlijst; waarden in het overgebleven, ongelijke restant worden weggegooid en opnieuw getrokken. Deze stap overslaan en simpelweg waarde % lengte woordenlijst doen, zou woorden met een lage index iets bevoordelen ten opzichte van woorden met een hoge index — een subtiele statistische vertekening die een naïeve implementatie stilletjes zou introduceren. Deze generator neemt die sluiproute nooit.
Eerlijkheid over entropie is de andere helft van het ontwerp. De meegeleverde woordenlijst bevat 1821 unieke, eenduidige, alledaagse Engelse woorden — een grote, representatieve lijst, maar niet de specifieke 7776-woordenlijst die door het klassieke Diceware-project wordt gebruikt. Daarom claimt deze tool nooit het bekende cijfer van 12,9 bits per woord dat alleen voor die exacte lijst geldt. In plaats daarvan wordt de entropie per woord live berekend als log2(lengte van de lijst), wat hier uitkomt op ongeveer 10,8 bits per woord, en het resultaat op het scherm toont altijd de volledige formule — aantal woorden keer bits-per-woord, plus de eerlijke bijdrage van eventuele extra's — zodat je precies kunt zien hoe het totaal tot stand is gekomen, in plaats van te vertrouwen op een marketinggetal.
De optionele schakelaars worden met dezelfde eerlijkheid behandeld. Elk woord van een hoofdletter voorzien is een vaste, deterministische regel die steeds op dezelfde manier wordt toegepast, dus het voegt helemaal geen echte entropie toe — een aanvaller die de regel kent, heeft er geen enkel voordeel van als hij niet weet welke letters hoofdletters zijn, en de tool zegt dat ook gewoon. Een willekeurig getal van twee cijfers toevoegen is daarentegen een echte extra willekeurige trekking uit 100 even waarschijnlijke waarden, wat er een echte en vermelde ~6,6 bits bovenop de woorden doet. Alles wordt lokaal in je browser berekend en weergegeven, zonder dat er een server aan te pas komt, dus de gegenereerde wachtzin wordt door niemand anders gezien dan door jou.