Guide
jwt.io-Alternativen: Online-JWT-Decoder im Vergleich
jwt.io ist die Referenzimplementierung. Nutzen Sie einen rein clientseitigen Decoder, wenn das Token echte Zugangsdaten enthält.
By Buğra SözeriPublished
JWTs (JSON Web Tokens) sind drei durch Punkte getrennte, Base64url-codierte Segmente. Header und Payload sind nicht verschlüsselt – sie sind für jeden lesbar, der das Token besitzt. Sie zu dekodieren erfordert nicht mehr als eine Base64url-Dekodierung und ein JSON-Parsing. Die Frage ist nicht, ob Sie es dekodieren können, sondern wo – und ob das gewählte Tool unnötiges Risiko mit sich bringt.
Was jwt.io sehr gut macht
jwt.io wird von Auth0 (heute Okta) betreut und ist das, was dem JWT-Ökosystem am nächsten an einem offiziellen Referenztool kommt. Seine Stärken sind beträchtlich:
- Signaturprüfung – fügen Sie ein Secret (HMAC) oder einen öffentlichen Schlüssel (RSA, ECDSA, EdDSA) ein, und jwt.io prüft, ob die Signatur des Tokens gültig ist. Kein anderes verbreitetes kostenloses Online-Tool unterstützt dies so sauber.
- Algorithmusabdeckung – HS256, HS384, HS512, RS256, RS384, RS512, ES256, ES384, ES512, PS256, PS384, PS512 sowie Ed25519/Ed448.
- RFC-Konformität – das Tool wird von Personen betreut, die an den JWT-Spezifikationen mitgewirkt haben. Ist ein Token nach RFC 7519 ungültig, sagt jwt.io das auch.
- Bibliotheksliste – am Ende von jwt.io werden Open-Source-JWT-Bibliotheken für mehr als 30 Sprachen mit Links zu ihren Repositories aufgeführt. Das ist eine echte Referenzquelle für Entwickler bei der Wahl einer Implementierung.
- Vertrauen im Ökosystem – jwt.io-URLs sind der De-facto-Standard, um Token-Erklärungen in Dokumentationen, Stack-Overflow-Antworten und API-Referenzen zu teilen.
Das Datenschutzbedenken
jwt.io gibt an, vollständig im Browser zu laufen. Auth0 hat bestätigt, dass bei der Dekodierung keine Token-Daten an ihre Server gesendet werden. Für die zentrale Dekodier- und Anzeigeoperation ist das mit großer Sicherheit zutreffend.
Allerdings lädt jwt.io JavaScript von Drittanbietern – Analytics-, Monitoring- und Werbeskripte –, das auf Netzwerkebene außerhalb der Kontrolle von Auth0 liegt. Sicherheitsforscher und Community-Mitglieder haben dieses Bedenken auf GitHub und in Sicherheitsforen geäußert: Ein von einem Drittanbieter-CDN geladenes Skript könnte im Prinzip das DOM auslesen. Die Wahrscheinlichkeit, dass dies speziell bei jwt.io ausgenutzt wird, ist gering, aber nicht null.
Die praktische Empfehlung folgt direkt aus RFC 7519 §10 und OWASP: Trägt das Token irgendetwas Sensibles – einen Session-Identifier, Identitäts-Claims eines Nutzers, einen API-Schlüssel in einem benutzerdefinierten Claim –, dekodieren Sie es lokal, nicht online. Die Dekodieroperation lässt sich in jeder Programmiersprache oder im Terminal trivial durchführen.
Der JWT-Decoder von Convertitive ist strikt clientseitig. Die Seite enthält keine Analytics-Skripte, die Eingabefelder auslesen, und keine Token-Daten verlassen den Browser. Das ist ein bedeutsamer Unterschied für Tokens, die zwar wenig kritisch, aber nicht völlig entbehrlich sind – Entwicklungs-Tokens, Staging-Zugangsdaten, Demo-JWTs.
Was der JWT-Decoder von Convertitive nicht leistet
Convertitive unterstützt keine Signaturprüfung, und das ist Absicht.
Die Signaturprüfung erfordert, dass Sie entweder ein gemeinsames Secret (HMAC) oder einen öffentlichen Schlüssel (RSA/ECDSA) angeben. Beides in ein browserbasiertes Tool einzugeben ist ein Sicherheits-Antipattern: Secrets gehören in Secrets-Manager, nicht in Browser-Eingabefelder. Selbst ein Tool, das sie in JavaScript korrekt behandelt – sie niemals an einen Server sendet –, gewöhnt Nutzer daran, Zugangsdaten als Copy-and-paste-Elemente zu behandeln.
RFC 7519 §10 adressiert dies ausdrücklich: „Schlüssel zum Signieren oder Verifizieren von JWTs MÜSSEN geheim gehalten und DÜRFEN NICHT geteilt werden.“ RFC 8725 geht weiter und merkt an, dass Algorithmus-Verwechslungsangriffe trivial ausnutzbar werden, wenn die Validierung an nicht vertrauenswürdige Oberflächen delegiert wird.
Müssen Sie eine JWT-Signatur verifizieren, nutzen Sie die JWT-Bibliothek Ihrer Anwendung direkt oder ein lokales Skript. Die Signaturprüfung von jwt.io ist nützlich zum Debuggen in der Entwicklung – verwenden Sie dabei nur einen Entwicklungs- oder Testschlüssel, niemals ein Produktions-Secret.
Funktionsvergleich
| Funktion | jwt.io | token.dev | Convertitive |
|---|---|---|---|
| Header- + Payload-Dekodierung | Ja | Ja | Ja |
| Signaturprüfung | Ja – alle gängigen Algorithmen | Ja – HMAC und RSA | Nein (bewusst) |
| exp / iat menschenlesbar angezeigt | Ja | Ja | Ja |
| Algorithmusabdeckung | Sehr breit – 12+ Algorithmen | Mittel | Nur Anzeige (keine Prüfung) |
| Drittanbieter-Analytics-Skripte | Ja (Auth0 / Okta Analytics) | Minimal | Nein |
| Token-Daten an Server gesendet | Nein (clientseitig angegeben) | Nein | Nein (verifiziert rein clientseitig) |
| Bibliotheks-Referenzliste | Ja – 30+ Sprachen | Nein | Nein |
| JWE-Unterstützung (verschlüsseltes Token) | Nein | Nein | Nein |
| Offline-Nutzung (nach erstem Laden) | Teilweise | Ja | Ja |
| Betreiber | Auth0 / Okta | Community | Convertitive |
Wann jwt.io zu nutzen ist
- Sie müssen eine Signatur verifizieren während der Entwicklung und verwenden einen Entwicklungs- oder Testschlüssel (niemals ein Produktions-Secret).
- Sie benötigen die Bibliotheks-Referenzliste, um eine JWT-Implementierung für Ihren Stack zu wählen.
- Sie möchten einem Kollegen einen Link zu einer Token-Erklärung schicken – jwt.io-Links sind unter Entwicklern universell verständlich.
- Sie debuggen ein Demo- oder synthetisches Token ohne echte Zugangsdaten und möchten die funktionsreichste Oberfläche.
Wann der JWT-Decoder von Convertitive zu nutzen ist
- Das Token ist ein Entwicklungs- oder Staging-Token, das Sie keinem Drittanbieter-Skript aussetzen möchten – auch nicht bei geringem Risiko.
- Sie müssen nur die Payload-Claims lesen – Ablauf, Subject, Rollen – und benötigen keine Signaturprüfung.
- Sie prüfen ein Token-Format (Header-Algorithmus kontrollieren, Claim-Namen verifizieren) und benötigen nicht den vollen Funktionsumfang von jwt.io.
Die JWT-Struktur zur Auffrischung
Ein Standard-JWT besteht aus drei durch Punkte getrennten Komponenten:
- Header – Base64url-codiertes JSON, das den Token-Typ (
JWT) und den Signaturalgorithmus (alg) angibt. - Payload – Base64url-codiertes JSON mit den Claims. Registrierte Claims umfassen
iss(Issuer),sub(Subject),aud(Audience),exp(Ablauf) undiat(Ausstellungszeit). - Signatur– berechnet über Header + „.“ + Payload mit dem im Header angegebenen Algorithmus und Schlüssel. Sie lässt sich ohne den Schlüssel nicht dekodieren.
Teil 1 und 2 sind nicht geheim – sie sind nur codiert, nicht verschlüsselt. Jeder mit der Token-Zeichenkette kann Header und Payload lesen. Die Signatur beweist, dass das Token von jemandem mit dem Signaturschlüssel ausgestellt wurde, verbirgt aber nicht den Inhalt.
Für eine tiefere technische Erläuterung siehe unsere Anleitung zum JWT-Token-Decoding. Zum Verständnis speziell der Base64url-Codierung siehe Base64-Codierung erklärt.
Das ehrliche Fazit
jwt.io ist das bessere Tool, wenn Sie eine Signaturprüfung benötigen oder das vollständigste JWT-Referenzerlebnis möchten. Es wird von Menschen mit tiefem Kontext zur JWT-Spezifikation betreut, und seine Bibliotheksliste ist wirklich nützlich.
Der Decoder von Convertitive ist die bessere Wahl, wenn Sie garantieren möchten, dass kein Drittanbieter-Skript mit Ihrem Token interagiert, oder wenn Sie nur Header- und Payload-Inspektion ohne die Komplexität der Signaturprüfung benötigen. Er leistet weniger – bewusst.
Für jedes Token mit echten Produktionszugangsdaten: Nutzen Sie keines von beiden. Nutzen Sie die Kommandozeile.
Frequently asked questions
- Kann jwt.io eine JWT-Signatur verifizieren?
- Ja – jwt.io unterstützt die Signaturprüfung. Sie fügen Ihr Token ein, wählen den Algorithmus und geben ein Secret (bei HMAC) oder einen öffentlichen Schlüssel (bei RSA/ECDSA) an. Der Decoder von Convertitive unterstützt die Signaturprüfung bewusst nicht: Das Eingeben eines Signaturschlüssels oder privaten Schlüssels in ein browserbasiertes Tool ist laut RFC 7519 §10 ein Sicherheits-Antipattern.
- Sendet jwt.io mein Token an Auth0-Server?
- jwt.io wird damit beworben, vollständig im Browser zu laufen. Auth0 (der Betreiber) gibt an, dass für die Dekodierung keine Serveranfragen erfolgen. Allerdings lädt die Seite Drittanbieter-Skripte und Analytics, was eine von null verschiedene Risikofläche schafft. In Sicherheitsdiskussionen der Community wurde dieses Bedenken bereits geäußert. Enthält das Token Produktionszugangsdaten, ist ein Offline-Tool oder ein lokaler Befehl wie `node -e "console.log(JSON.parse(Buffer.from(token.split('.')[1], 'base64url').toString()))"` die sicherste Option.
- Warum unterstützt Convertitive keine Signaturprüfung?
- RFC 7519 §10 warnt ausdrücklich davor, Signaturschlüssel zu teilen. Ein browserbasiertes Tool, das ein Secret oder einen privaten Schlüssel annimmt, normalisiert die Praxis, Zugangsdaten in Webformulare einzugeben. Convertitive dekodiert nur Header und Payload – jenen Teil eines JWT, der stets ohne Verschlüsselung Base64url-codiert ist und kein Signatur-Secret enthält.
- Ist ein JWT verschlüsselt?
- Standard-JWTs (JWS, JSON Web Signature) sind signiert, aber nicht verschlüsselt – Header und Payload sind Base64url-codiert und für jeden sichtbar, der das Token besitzt. JWE-Tokens (JSON Web Encryption) sind verschlüsselt. Beginnt Ihr Token mit eyJ und besteht aus drei durch Punkte getrennten Teilen, ist es ein JWS und sein Header und Payload lassen sich ohne jeden Schlüssel dekodieren.
- Kann ich ein JWT auf der Kommandozeile dekodieren?
- Ja. In Node.js: node -e "const t='YOUR_TOKEN'; console.log(JSON.parse(Buffer.from(t.split('.')[1],'base64url').toString()))". Mit jq und base64: echo YOUR_TOKEN | cut -d. -f2 | base64 -d | jq. Diese benötigen keine Netzwerkverbindung und sind der empfohlene Weg für Tokens mit Produktionszugangsdaten.
- Was bedeutet 'exp' in einem JWT-Payload?
- exp ist der POSIX-Ablaufzeitstempel, definiert in RFC 7519 §4.1.4. Es ist ein Unix-Zeitstempel (Sekunden seit 1970-01-01T00:00:00Z). Sowohl jwt.io als auch Convertitive zeigen ihn als menschenlesbares Datum an. Nutzen Sie unseren Zeitstempel-Konverter, um einen beliebigen exp-Wert mit der aktuellen Zeit abzugleichen.
Sources & references
Authoritative references cited by this piece. Verified by Buğra Sözeri on the dates shown and re-checked at every deploy.
- RFC 7519 — JSON Web Token (JWT) — Die maßgebliche Spezifikation für JWT-Struktur, registrierte Claims und Sicherheitsbetrachtungen einschließlich §10 zur Vertraulichkeit von Signaturschlüsseln(as of )
- RFC 8725 — JSON Web Token Best Current Practices — IETF-BCP zu bekannten JWT-Angriffsvektoren und der Empfehlung gegen Algorithmus-Verwechslung; bildet die Grundlage der Diskussion zur Signaturprüfung(as of )
- OWASP JWT Security Cheat Sheet — Praktische Sicherheitsleitlinien zu JWT-Validierung, Algorithmus-Whitelisting und Schlüsselverwaltung als Rahmen der Datenschutzdiskussion(as of )
- jwt.io — JWT Debugger von Auth0 — Das verglichene Referenztool; Grundlage der Funktionsvergleichstabelle(as of )
Related
Published May 31, 2026