Methodology
Methodik der Code-Tools
RFC-konforme Primitiven, Ausführung nur im Browser, null Analytics über die Nutzdaten.
By Buğra SözeriPublished Updated
Das Code-Cluster liefert zehn Werkzeuge, die alle vollständig im Browser laufen und von denen keines seine Nutzdaten irgendwohin sendet. Diese Seite dokumentiert, was jedes Tool tatsächlich tut — die RFCs, denen sie entsprechen, die Primitiven, die sie verwenden, und was sie bewusst nicht tun.
Base64 (RFC 4648)
Standard-Alphabet: A-Z a-z 0-9 + /, mit = auf Vielfache von 4 aufgefüllt. Die URL-sichere Variante (base64url) ersetzt + durch - und / durch _ und lässt die Auffüllung weg.
Implementierung: JavaScripts native btoa / atob erledigen die Kodierung, unterstützen aber nur Latin-1-Strings (jedes Byte ist ein Zeichen). Für UTF-8 kodieren wir den String zuerst mit TextEncoder und führen dann btoa auf dem resultierenden Byte-Array aus. Das ist die einzige Möglichkeit, beliebigen Unicode-Text im Browser ohne Abhängigkeiten sicher in Base64 zu kodieren.
JWT-Decoder (nur Inspektion, keine Verifikation)
JWTs (RFC 7519) sind drei base64url-kodierte Segmente, getrennt durch Punkte: header.payload.signature. Unser Decoder spaltet, base64url-dekodiert Header und Payload, parst sie als JSON und zeigt das Ergebnis an. Wir verifizieren die Signatur nicht.
Die Signaturverifikation erfordert den Signaturschlüssel — typischerweise ein HMAC-Geheimnis oder einen öffentlichen RSA/ECDSA-Schlüssel —, der vom Aussteller stammen muss. Ein reines Browser-Tool kann ein von einem Dritten ausgestelltes JWT nicht sinnvoll verifizieren, also tun wir nicht so. Nutzen Sie den Decoder zur Inspektion; nutzen Sie den serverseitigen Stack Ihrer Anwendung für die tatsächliche Verifikation.
Schreibweisen-Konverter
Übersetzt zwischen camelCase, snake_case, kebab-case, PascalCase, CONSTANT_CASE, Title Case, Sentence case und lower / UPPER. Der Algorithmus zerlegt die Eingabe mit einem regulären Ausdruck, der Groß-/Kleinschreibungsübergänge, Bindestriche, Unterstriche und Leerzeichen erkennt, in „Wörter“ und setzt sie in der Zielkonvention wieder zusammen.
Sonderfall: Zahlen in Bezeichnern. Unsere Konvention ist, Zahl- Buchstaben-Grenzen als Wortgrenzen beizubehalten (sodass parseInt32 in parse, int, 32 zerlegt wird), aber Buchstaben- Zahl-Grenzen innerhalb offensichtlich bezeichnerartiger Folgen nicht zu trennen (sodass md5 ein einzelnes Wort bleibt und nicht md_5).
Hash-Generator
SHA-1, SHA-256, SHA-384, SHA-512 über die Web Crypto API (crypto.subtle.digest), die ein dünner Wrapper über der nativen Implementierung des Betriebssystems ist. Wir liefern bewusst kein MD5 — der Browser stellt es nicht nativ bereit (weil es kryptografisch gebrochen ist), und wir wollen nicht eigens ein 2-KB-Shim einbinden, um eine Hash-Funktion zu unterstützen, die niemand für irgendetwas Sicherheitsrelevantes verwenden sollte.
Die Ausgabe ist hexadezimal in Kleinbuchstaben. Aus Sicht des Nutzers sind alle Operationen synchron, obwohl die Web Crypto API asynchron ist — die Latenz auf modernen Geräten liegt für Eingaben unter einem Megabyte unter einer Millisekunde.
UUID-Generator
Zwei Varianten:
- v4 (zufällig):
crypto.randomUUID(), sofern verfügbar, mit Rückfall auf einen manuellen, voncrypto.getRandomValuesgetriebenen Generator. 122 Bit Entropie. - v7 (Zeitstempel + Zufall): 48-Bit-Unix-Zeitstempel in ms + 74 Zufallsbits. Sortierbar nach Erzeugungszeit, was v7 zur bevorzugten Wahl für Datenbank-Primärschlüssel macht.
Passwort-Generator
Verwendet crypto.getRandomValues mit Rejection Sampling gegen das größte Vielfache der Zeichensatzgröße, das in einen uint32 passt. Das beseitigt den Modulo-Bias — der naive Ansatz random32 % charsetSize ist verzerrt, wenn charsetSize 2³² nicht gleichmäßig teilt, was bei jedem realistischen Zeichensatz der Fall ist.
Die Entropie wird als Länge × log₂(Zeichensatz)Bit berechnet und live angezeigt. Das Stärke-Label ordnet die Entropie fünf Bändern zu (sehr schwach / schwach / mittel / stark / sehr stark) mit Schwellenwerten, die gängigen Sicherheitsempfehlungen entsprechen (NIST SP 800-63B empfiehlt ≥ 80 Bit für risikoreiche Verwendung).
Algorithmus-Details: die Entropie- und Zufalls-Primitiven
Der Passwort- und der UUID-Generator sind die einzigen Tools in diesem Cluster, die auf kryptografisch starke Zufälligkeit angewiesen sind; ihre Korrektheit beruht auf zwei Browser-Primitiven.
Unverzerrte Zeichenauswahl (Rejection Sampling)
Bei einem Zeichensatz der Größe K und einer 32-Bit- vorzeichenlosen Zufallsziehung r ist das naive r % K zu kleineren Indizes hin verzerrt, sofernK nicht 2³² teilt. Wir berechnen threshold = 2³² − (2³² mod K), ziehen und verwerfen jedes r ≥ threshold. Erwartete Anzahl Ziehungen pro Zeichen: < 1,05 für jedesK ≤ 2³²/16. Die Ausgabe ist gleichmäßig über den Zeichensatz verteilt.
Entropie-Bilanzierung
Die Passwort-Entropie beträgt Länge × log₂(K) Bit. Unsere Stärke-Bänder folgen der Empfehlung von NIST SP 800-63B:
| Band | Entropie (Bit) | Brute-Force-Schätzung (10⁹ Versuche/Sek.) |
|---|---|---|
| Sehr schwach | < 40 | Sekunden bis Stunden |
| Schwach | 40-60 | Stunden bis Wochen |
| Mittel | 60-80 | Monate bis Jahre |
| Stark | 80-100 | Jahrhunderte |
| Sehr stark | ≥ 100 | geologische Zeiträume |
UUID-v7-Aufbau (RFC 9562)
bits[0..47] = unix_ms (48 bits)
bits[48..51] = version = 0111 (4 bits)
bits[52..61] = random or sub-ms counter (10 bits)
bits[62..63] = variant = 10 (2 bits)
bits[64..127] = random (64 bits)
total random: 74 bits — collision-resistant in practiceQuellen & Referenzen
Jedes Tool im Cluster ist einer primären Spezifikation zugeordnet: Base64 zu RFC 4648, JWT zu RFC 7519, Hashes zu FIPS PUB 180-4, UUIDs zu RFC 9562, Passwort-Entropie zu NIST SP 800-63B. Die Web Crypto API selbst ist eine W3C-Empfehlung. Im Quellenblock unten finden Sie die maßgeblichen URLs.
Annahmen & Grenzen
- Ausführung nur im Browser. Die Tools setzen einen modernen Browser mit Web Crypto voraus. Alte oder gehärtete Umgebungen (manche Kiosk-Sperren, serverseitiges Node ohne Shims) fallen auf eine JS-Implementierung zurück und verlieren die kryptografische Stärke.
- Keine Signaturverifikation. Das JWT-Decoding inspiziert, verifiziert aber nicht. Nutzen Sie dieses Tool nicht als Teil einer Authentifizierungs-Pipeline.
- Kein MD5. Kryptografisch gebrochen für authentifizierte Nutzung; absichtlich weggelassen, selbst zur Prüfsummenbildung. Verwenden Sie SHA-256 mit geringem Leistungsnachteil.
- Kein Streaming für große Eingaben.Die Hash- und Base64-Tools laden die gesamte Eingabe in den Speicher. Eingaben >100 MB lassen den Tab während der Kodierung pausieren.
- Keine Telemetrie über Nutzdaten. Wir protokollieren, speichern oder übertragen nichts, was in diese Tools eingefügt wird. Der Kompromiss: Wir können auch nicht debuggen, warum eine bestimmte Eingabe fehlerhaft dargestellt wird, ohne dass der Nutzer sie reproduziert.
- UUID-v7-Zeitstempel sind millisekundengenau. Das Erzeugen von >1000 UUIDs in derselben Millisekunde stützt sich für die Ordnungseindeutigkeit auf die 10 Bit Sub-ms-Zufälligkeit.
- Die Passwortstärke ist eine Heuristik. Die tatsächliche Angriffsschwierigkeit hängt von den bekannten Mustern des Angreifers (Wörterbuch, geleakte Passwortlisten) ab, nicht nur von der Entropie.
Was wir nicht tun
- Inhalte verschlüsseln oder entschlüsseln. Die Web Crypto API unterstützt es; wir stellen keine Oberfläche bereit, weil der Missbrauch von Krypto-APIs ein Eigentor ist.
- JWTs verifizieren. Siehe oben.
- Strukturell schön formatieren — wir erhalten die Formatierung des Nutzers, wo möglich. Für vollständiges Pretty-Printing verwenden Sie einen dedizierten Formatierer.
- Nutzdaten protokollieren. Nichts, was der Nutzer einfügt, verlässt jemals den Browser.
Frequently asked questions
- Welchen Base64-Standard implementiert Convertitive?
- Das Standard-Alphabet aus RFC 4648 §4 (Zeichen A–Z, a–z, 0–9, +, / mit =-Auffüllung). Die base64url-Variante aus RFC 4648 §5 (+ → -, / → _, keine Auffüllung) wird ebenfalls unterstützt und automatisch gewählt, wenn der URL-sichere Schalter aktiviert ist. Beide Varianten sind vollständig in RFC 4648 (IETF, 2006) spezifiziert.
- Verifiziert Convertitive JWT-Signaturen?
- Nein. Der JWT-Decoder parst und zeigt Header und Payload an, indem er gemäß RFC 7519 §3 die ersten beiden durch Punkte getrennten Segmente Base64url-dekodiert. Die Signaturverifikation erfordert das Signaturgeheimnis oder den öffentlichen Schlüssel, den wir bewusst niemals anfordern. Die gesamte JWT-Verarbeitung läuft lokal im Browser; das Token verlässt Ihr Gerät nie.
- Welche Hash-Funktionen verwendet der Hash-Generator, und sind sie kryptografisch sicher?
- Der Generator verwendet SHA-1, SHA-256, SHA-384 und SHA-512 über die Web Crypto API (window.crypto.subtle), deren Implementierungen in NIST FIPS 180-4 spezifiziert sind. Die gesamte Berechnung erfolgt im Browser. SHA-1 gilt für Kollisionsresistenz als veraltet (SHAttered-Angriff, Stevens et al., 2017), wird aber weiterhin in Altkontexten wie Git-Objekt-IDs verwendet. Für Integrität oder Authentifizierung verwenden Sie SHA-256 oder höher.
- Wie stellt der UUID-Generator Zufälligkeit sicher?
- UUIDs sind Version 4 (zufällig), wie in RFC 9562 §5.4 spezifiziert. Jede UUID wird mit window.crypto.getRandomValues() erzeugt, einem CSPRNG (kryptografisch sicherer Pseudozufallszahlengenerator), den der Browser aus der Entropiequelle auf Betriebssystemebene bereitstellt. Dies unterscheidet sich von Math.random(), das nicht kryptografisch sicher ist. Die 122 Zufallsbits ergeben eine Kollisionswahrscheinlichkeit von ~5 × 10⁻³⁶ pro Paar.
- Sendet irgendein Code-Tool meine Daten an einen Server?
- Nein. Base64-Kodierung/-Dekodierung, JWT-Parsing, Hashing, UUID-Erzeugung und alle anderen Code-Tools laufen vollständig im Browser über die Web Crypto API und Standard-JavaScript. Keine Nutzdaten werden an einen Server übertragen. Sie können dies überprüfen, indem Sie die Browser-DevTools → Netzwerk öffnen und bei Nutzung dieser Tools null ausgehende Anfragen beobachten.
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 4648 — The Base16, Base32, and Base64 Data Encodings — Maßgebliche Spezifikation für das Base64-Standard-Alphabet und die base64url-Variante, die unser Encoder implementiert.(as of )
- RFC 7519 — JSON Web Token (JWT) — Definiert die dreiteilige header.payload.signature-Struktur, die unser JWT-Decoder parst.(as of )
- NIST SP 800-63B — Digital Identity Guidelines, Authentication and Lifecycle Management — US-Bundesrichtlinie, die den Entropie-Schwellenwerten in unseren Passwortstärke-Labels zugrunde liegt.(as of )
- FIPS PUB 180-4 — Secure Hash Standard (SHA) — Die NIST-Publikation, die SHA-1, SHA-256, SHA-384 und SHA-512 definiert — genau die Algorithmen, die unser Hash-Generator über Web Crypto aufruft.(as of )
- RFC 9562 — Universally Unique IDentifiers (UUIDs) — Aktuelle IETF-Spezifikation für UUID v1–v8, einschließlich der zeitlich geordneten v7-Kennung, die wir bereitstellen.(as of )
- Web Crypto API — W3C Recommendation — Definiert crypto.subtle.digest und crypto.getRandomValues — die browsereigenen Primitiven hinter unseren Hash- und Zufallsbyte-Generatoren.(as of )
Related
- Code-Tools
- Base64-Encoder
- JWT-Decoder
- Passwort-Generator
- QR-Code-Generator
- JSON-Formatierer
- JSON ↔ YAML-Konverter
- Regex-Tester
- Text-Diff
- Markdown ↔ HTML
- Lorem-ipsum-Generator
- Hash-Generator
- URL-Encoder
- UUID-Generator
- Schreibweisen-Konverter
- Wortzähler
- Wie GPT-Tokenisierung funktioniert
- Wie man ein starkes Passwort wählt
- Base64 vs. base64url
- SHA-256 vs. MD5
- Glossar: Base64
- Glossar: JWT
- Glossar: SHA-256
- Glossar: Entropie
- Datenstudie zur Lebensdauer von TLS-Zertifikaten
Published May 14, 2026 · Last reviewed May 31, 2026