JWT-Secret prüfen: Länge und Stärke
JWT-Secret prüfen: Länge und geschätzte Entropie eines HMAC-Secrets für HS256, HS384 und HS512 nach RFC 7518 bewerten, Token gegen bekannte schwache Secrets testen und ein sicheres Secret erzeugen.
| Prüfung | Ergebnis |
|---|
JWT Secret generieren
JWT gegen schwache Secrets testen
Alles läuft in Ihrem Browser, Eingaben werden nicht übertragen. Nur zum Lernen und Testen: Verwenden Sie für echte Geheimnisse und Produktivsysteme geprüfte Werkzeuge Ihrer Organisation.
Wie lang muss ein JWT-Secret sein?
Tokens mit HS256, HS384 oder HS512 werden mit einem gemeinsamen Schlüssel per HMAC signiert. Wer das Secret kennt oder errät, kann beliebige gültige Tokens erzeugen, zum Beispiel mit Administratorrechten. RFC 7518, Abschnitt 3.2, schreibt deshalb vor: Der Schlüssel muss mindestens so lang sein wie die Ausgabe der Hashfunktion, also 256 Bit für HS256, 384 Bit für HS384 und 512 Bit für HS512. Dieses Werkzeug soll Ihnen helfen, ein JWT-Secret prüfen zu können: Es zeigt die JWT Secret Länge in Byte und Bit, vergleicht sie mit der Vorgabe und schätzt die Entropie, also wie schwer das Secret zu erraten ist.
Die Länge allein genügt nicht. Ein HS256 Secret wie meinsupergeheimesjwtsecret2024!! hat zwar 32 Zeichen, besteht aber aus Wörtern und lässt sich mit Wortlisten angreifen. Ein abgefangenes Token reicht dafür aus: Angreifer probieren offline Milliarden Kandidaten pro Sekunde, ohne Ihren Server zu belasten. Die Entropie-Schätzung berücksichtigt deshalb Zeichenvorrat, Verteilung, Wiederholungen und eine Liste bekannter Standard-Secrets, darunter Platzhalter aus Tutorials und Bibliotheken. Liegt das Secret als Hex oder Base64 vor, geht das Werkzeug davon aus, dass es zufällig erzeugt wurde.
Am sichersten ist ein Secret aus einem kryptografischen Zufallsgenerator: Mit „Neues Secret erzeugen“ entstehen 32, 48 oder 64 zufällige Bytes über crypto.getRandomValues, auf der Kommandozeile geht das mit openssl rand -base64 32. Speichern Sie das Secret in einem Secret-Manager oder einer Umgebungsvariable, nie im Quellcode. Für Systeme, in denen mehrere Dienste Tokens nur prüfen sollen, sind asymmetrische Verfahren wie RS256 oder ES256 oft die bessere Wahl. Signaturen prüfen Sie mit JWT-Signatur prüfen.
Anleitung: JWT-Secret prüfen in 5 Schritten
- Das Secret in das Feld „JWT-Secret“ einfügen und das Format wählen (Text, Base64, Base64url oder Hex).
- Unter „Algorithmus“ HS256, HS384 oder HS512 einstellen.
- Bewertung, Länge in Bit und geschätzte Entropie ablesen.
- Bei Bedarf mit „Neues Secret erzeugen“ ein zufälliges Secret erstellen und mit „Oben prüfen“ übernehmen.
- Optional ein vorhandenes Token unter „JWT gegen schwache Secrets testen“ einfügen und auf „Testen“ klicken.
Typische Anwendungsfälle
- Vor dem Go-live prüfen, ob in der Konfiguration noch ein Platzhalter-Secret aus einem Tutorial steht.
- In einem Sicherheits-Review nachweisen, dass das HMAC-Secret die Mindestlänge aus RFC 7518 erfüllt.
- Ein neues Secret für
JWT_SECRETin einer.env-Datei oder einem Secret-Manager erzeugen. - Testen, ob ein Token aus einer Testumgebung mit einem bekannten Standardwert signiert ist.
Häufige Fragen
Wie lang muss ein HS256 Secret sein?
Mindestens 256 Bit, also 32 Byte. Als Text aus Buchstaben und Ziffern entspricht das bei zufälliger Wahl etwa 43 Zeichen, weil jedes Zeichen weniger als 8 Bit Zufall trägt.
Warum gilt your-256-bit-secret als unsicher?
Das ist der Platzhalter aus der Beispielansicht von jwt.io. Er steht in jeder Wortliste. Tokens, die damit signiert sind, kann jeder fälschen.
Wird mein Secret übertragen?
Nein. Alle Prüfungen und der Test des Tokens laufen in Ihrem Browser. Trotzdem gilt: Ein produktives Secret, das Sie irgendwo eingefügt haben, sollten Sie im Zweifel austauschen.
Was bedeutet die Entropie in Bit?
Sie gibt an, wie viele gleich wahrscheinliche Möglichkeiten ein Angreifer durchprobieren müsste: n Bit entsprechen 2 hoch n Versuchen. Ab etwa 128 Bit gilt ein Secret als praktisch nicht zu erraten; RFC 7518 verlangt für HS256 die volle Schlüssellänge von 256 Bit.
Ist ein längeres Secret als 256 Bit bei HS256 sinnvoll?
Es schadet nicht, bringt aber wenig: HMAC-SHA-256 kürzt Schlüssel über 64 Byte per Hash. 32 zufällige Bytes reichen für HS256; wichtiger ist, dass sie wirklich zufällig sind.
Wie oft sollte ich das JWT-Secret wechseln?
Spätestens, wenn es in ein Repository, ein Log oder an eine ausgeschiedene Person gelangt ist. Planen Sie Rotation mit einer Key-ID (kid) im Header, damit alte und neue Tokens eine Weile parallel gültig bleiben.
Das könnte auch helfen
Hash-Generator
MD5, SHA-1, SHA-256, SHA-384 und SHA-512 für Text oder Datei berechnen und vergleichen.
ÖffnenHMAC-Generator
HMAC mit SHA-256, SHA-512, SHA-1 oder MD5 berechnen und Webhook-Signaturen prüfen.
ÖffnenPasswort-Generator
Sichere Zufallspasswörter mit wählbarer Länge und Zeichengruppen, inklusive Entropie in Bit.
ÖffnenPasswort-Stärke prüfen
Passwort testen: Entropie, typische Muster, häufige Passwörter und grobe Knackzeit.
ÖffnenPassphrase-Generator
Merkbare Passphrasen aus einer deutschen Wortliste mit über 2.000 Wörtern, nach Diceware-Art.
ÖffnenToken-Generator
Zufalls-Token als Hex, Base64URL oder alphanumerisch erzeugen, etwa für API-Keys und Secrets.
Öffnen