Ausschließlich crypto.getRandomValues() – kryptographischer Zufallsgenerator des Browsers. Kein Math.random().
Rejection Sampling verhindert statistischen Modulo-Bias. Fisher-Yates Shuffle mit Crypto-Zufall.
Kein Byte verlässt den Browser. Keine Logs, kein Server, keine Cloud. Funktioniert ohne Internet.
Länge schlägt Komplexität. 20 Zeichen → >130 Bit. Quantensicher ab 128 Bit.
AD-Profile erfüllen Microsoft-Komplexitätsanforderungen (Groß+Klein+Zahl+Sonderzeichen).
<60 Bit: unsicher · 60–80: akzeptabel · 80–100: sicher · >128: quantensicher.