Ein Zufallspasswort aus einem bekannten Zeichenvorrat ist vorhersagbarer als ein Satz aus dem Alltag, aber nur wenn der Zufall stimmt. Dieser Generator zieht Zeichen mit crypto.getRandomValues und Rejection Sampling — nicht mit Math.random().
Ist ein Zeichensatz aktiv, steckt mindestens ein Zeichen daraus im Ergebnis. Danach wird gemischt, damit die Pflichtzeichen nicht immer vorn stehen. Die Menge der Sonderzeichen ist absichtlich klein und ASCII-lastig, weil viele Formulare Klammern ablehnen.
Das Passwort entsteht in diesem Tab. Trotzdem: Browser-Erweiterungen können mitlesen, und ein Passwort-Manager ist der bessere Ablageort als eine Notiz. Der Generator ersetzt keine Zwei-Faktor-Anmeldung.