Dieses Tool erzeugt Einweg-Token mit hoher Entropie für spezifische Web-Sicherheitsszenarien. Anders als ein generischer Zufallsstring-Generator wendet jedes Szenario automatisch die richtigen Konventionen an.
Szenarien:
- CSRF-Token: ein undurchsichtiger Token, der an die Benutzersitzung gebunden und mit zustandsändernden Anfragen (Formulare, AJAX) gesendet wird, um zu beweisen, dass die Anfrage von Ihrer eigenen Seite stammt.
- OAuth/OIDC-State: ein unerratbarer Wert, der an den Autorisierungsserver gesendet und beim Redirect-Callback validiert wird, wodurch die Antwort an diese Anfrage gebunden und Login-CSRF verhindert wird.
- Session-Nonce: ein einmaliger Zufallswert, der an eine Session gebunden ist, um das Wiederholen einer Anfrage zu verhindern.
- PKCE Verifier + Challenge: erzeugt einen
code_verifier (clientseitig behalten) und leitet den code_challenge = base64url(SHA256(verifier)) (an den Auth-Server gesendet) gemäß RFC 7636 ab, sodass ein geleakter Autorisierungscode ohne den Verifier nicht eingelöst werden kann. PKCE erzwingt base64url-Kodierung und eine Verifier-Länge von 32-96 Bytes (43-128 base64url-Zeichen).
- Benutzerdefiniert: ein generischer undurchsichtiger Hochentropie-Token für jedes Einweg-Szenario, das Sie definieren; die Bytelänge wird vom Nutzer gesteuert (8-128).
Optionen:
- Bytelänge: Entropie-Bytes. Für alle voreingestellten Szenarien auf 32 (256 Bits) fixiert; nur bei Benutzerdefiniert editierbar (8-128).
- Kodierung: base64url (URL-sicher, Standard für Web-Token), hex oder base64. Für PKCE auf base64url erzwungen.
- Ablauf-Zeitstempel-Präfix hinzufügen: stellt
base36(AblaufSekunden).token voran, damit der Server abgelaufene Token zustandslos ablehnen kann (OWASP-empfohlenes Muster).
- TTL (Sekunden): Gültigkeitsfenster, das vom Zeitstempel-Präfix verwendet wird.
- Anzahl: 1-50 Token gleichzeitig erzeugen.
Sicherheit: Zufall kommt von Nodes crypto.randomBytes() — niemals Math.random(). Die PKCE-Challenge nutzt SHA-256 via crypto.createHash(). Dieses Tool erzeugt nur Token-Material; es speichert oder validiert keine Token serverseitig.