Wachtwoord + UUID generator
Sterke wachtwoorden of UUIDs maken, volledig in je browser. Geen account, geen server-call — alles draait via de Web Crypto API. Met instelbare lengte, karakter-sets, NL-veilige modus (geen verwarrende i / l / 1 / O / 0 / I) en live entropie-meter.
Alles draait 100% client-side via Web Crypto API. Geen server-call, geen tracking, geen logging.
Wanneer gebruik je deze generator?
Wachtwoord-managers (1Password, Bitwarden, KeePass) hebben hun eigen generator, maar soms heb je iets snels nodig zonder de manager te openen. En voor UUIDs is er geen handige NL-tool met instelbare format. Concrete situaties:
-
Tijdelijk wachtwoord aanmakenVoor een klant-account, staging-omgeving of
.htpasswd-bescherming — doorgegeven via een veilig kanaal. - UUID voor database-PKv7 (timestamped) presteert beter in indexes, v4 (random) is meer geanonimiseerd voor publieke IDs.
- Wachtwoord doorgeven via telefoonNL-veilige modus haalt verwarrende tekens weg. Geen "is dat een 1 of een l?"-gedoe.
- WordPress nieuwe admin aanmakenGenereer een 20-char wachtwoord, plak in WP-admin, sla op in je password manager.
- API-keys / encryptie-secretsVoor lange random tokens (32–64 chars) zonder symbolen — URL-veilig en kopieerbaar.
Hoe lees je de output?
- Entropy-bits Aantal bits cryptografische willekeur. Boven 80 bits is praktisch onkraakbaar tegen brute-force binnen levensduur. 95+ bits is sterk genoeg voor admin/banking.
- Sterkte-bar Visuele indicator: zwak / matig / goed / sterk. Onder 40 bits = sleutel-kraakbaar. Boven 80 bits = veilig genoeg voor de meeste use-cases.
- Alfabet-grootte Hoeveel verschillende karakters in het alfabet zaten. Hoe groter, hoe meer entropy per char (lower+upper+numbers+symbols = 65, lower alleen = 26).
- UUID v4 Volledig random, geen sortering mogelijk. 122 bits van entropy.
- UUID v7 48-bit timestamp + 74-bit random. Sorteerbaar, beter voor database-PK indexes (sequential inserts), maar volgorde van aanmaak lekt uit.
Wat ik vaak tegenkom
Wachtwoorden geven via telefoon zonder NL-veilige modus. *"Is dat een hoofdletter O of een nul?"* — tien minuten gepriegel om één login over te dragen. Met de NL-veilige optie verdwijnen i / l / 1 / O / 0 / I uit het alfabet en is de overdracht in een paar seconden klaar.
Te kort wachtwoord op WordPress-admin. Klant had een 8-char wachtwoord. Brute-force met moderne GPU's: ~24 uur. Wisselen naar 16+ chars maakt brute-force economisch onhaalbaar (eeuwen op gangbare hardware).
UUID v1 (MAC-based) per ongeluk gebruikt. Klant gebruikte UUID v1 voor publieke IDs. Probleem: v1 lekt het MAC-adres van de server in elke ID. Switch naar v4 voor publieke gebruik, of v7 voor sortering zonder MAC-lekkage.
Veelgestelde vragen
Worden mijn wachtwoorden ergens opgeslagen of verzonden?
Nee. Deze tool draait 100% in je browser via de Web Crypto API (crypto.getRandomValues). Er gaat niets naar een server, niets wordt gelogd, niets wordt opgeslagen.
Je kunt het zelf controleren door je browser-devtools te openen (F12) en de Network-tab te bekijken: er zijn geen requests bij het genereren van wachtwoorden of UUIDs.
Wat betekent "NL-veilig wachtwoord"?
Met de optie "Geen verwarrende tekens" worden i, l, 1, o, O, 0, I uit het alfabet weggehaald. Deze tekens zijn moeilijk te onderscheiden in veel fonts (vooral op printerpapier of slechte schermen) wat tot tikfouten leidt bij het overtypen.
Voor wachtwoorden die je moet doorgeven via telefoon, mail of inkloppen op een ander apparaat is dat een grote tijdwinst. Trade-off: kleiner alfabet = iets minder entropie per char, maar bij voldoende lengte (16+) maakt het geen praktisch verschil.
Wat is entropie en waarom is dat belangrijk?
Entropie meet hoeveel mogelijke combinaties een wachtwoord kan zijn, in bits. De berekening: lengte × log₂(alfabet-grootte).
Een 16-char wachtwoord met alle 4 sets (lower+upper+numbers+symbols) heeft ~95 bits entropy — genoeg om brute-force aanvallen miljoenen jaren te laten duren op moderne hardware.
- Onder 40 bits: zwak, in seconden tot minuten te kraken
- 40–60 bits: matig, dagen tot maanden
- 60–80 bits: goed, jaren
- 80+ bits: sterk, niet praktisch kraakbaar
UUID v4 of v7 — wat moet ik kiezen?
v4 (random): volledig willekeurig, geen volgorde, geen sortering mogelijk. Geïdeaal voor publieke IDs (URLs, API-responses) waar je de volgorde van aanmaak niet wil lekken.
v7 (timestamped, RFC 9562 uit 2024): heeft een timestamp aan het begin. Sortering werkt natuurlijk, database-indexes presteren beter (sequential inserts in B-tree indexes). Maar: de volgorde van aanmaak lekt uit.
Vuistregel: voor publieke IDs → v4. Voor primary keys in databases (Postgres, MySQL) → v7.
Wat is een redelijke wachtwoord-lengte?
- Voor accounts: minimum 12 chars met alle sets (~75 bits)
- Voor admin / banking: 16+ chars (~95 bits)
- Voor encryptie-master-keys: 24+ chars (~140 bits)
Boven 32 chars is meestal overkill — extra lengte voegt entropy toe maar wordt onhandig in gebruik. Belangrijker dan lengte: zorg dat het uniek is per service en wordt opgeslagen in een password manager.
Werkt deze tool ook op oude browsers?
Vereist de Web Crypto API (crypto.getRandomValues). Werkt op alle moderne browsers sinds 2014:
- Chrome 11+
- Firefox 21+
- Safari 6+
- Edge alle versies
- IE 11 (via
window.msCrypto-fallback)
Op zeer oude browsers (IE 10 en eerder) werkt de tool niet — die hebben sowieso security-risico's en horen niet meer gebruikt te worden.
Moet ik niet liever Math.random() gebruiken?
Nee. Math.random() is pseudo-random — deterministisch en voorspelbaar. Voor security-doeleinden (wachtwoorden, tokens, keys) is dat ongeschikt — een aanvaller kan toekomstige uitkomsten voorspellen.
crypto.getRandomValues gebruikt het cryptografisch-veilige random-systeem van de browser (/dev/urandom op Linux, BCryptGenRandom op Windows). Niet voorspelbaar, niet seedbaar — veilig voor crypto.