Token & API-Key-Generator

Kryptografisch sichere Tokens mit der Web Crypto API. UUID, Hex, Base64-Bearer-Tokens oder API-Keys mit Präfix.

Ein 128-Bit-Identifier nach RFC 4122 v4, davon 122 Bit zufällig. Die Standardwahl für Datenbank-Primärschlüssel, Request-IDs und Korrelations-Tokens.

122 Bit Entropie · im Browser erzeugt, nie an einen Server gesendet

Warum nicht Math.random()?

Math.random() ist ein Pseudozufallszahlengenerator — seine Ausgabe ist vorhersehbar und für Sicherheits-Tokens ungeeignet. Dieses Tool nutzt crypto.getRandomValues(), dieselbe API, die TLS und SSH-Key-Generierung antreibt.

Token-Typen erklärt

UUID v4 ist der Standard für Datenbank-IDs und Korrelations-Tokens. Hex-Strings eignen sich gut für Session-Tokens und Nonces. Base64 ist kompakt für API-Tokens. API-Keys mit Präfixen (wie sk_ oder vlt_) machen es einfach, gesickerte Credentials zu erkennen und zu rotieren.

Wie lang sollte ein Token sein?

128 Bit Entropie sind die Untergrenze für alles, was einen Zugang schützt, und genau das erwartet NIST SP 800-63B von einem zufällig erzeugten Secret. Das sind 32 Hex-Zeichen, 22 Base64-Zeichen oder eine UUID v4. Über 256 Bit hinaus bringt gegen Brute Force nichts mehr - es kostet nur Log-Volumen und Header-Größe. Die Länge zählt mehr als das Alphabet: Ein 32-stelliger Hex-Token und ein 22-stelliger Base64-Token sind gleich schwer zu erraten.

Bearer-Tokens, Access-Tokens und API-Keys

Diese Namen beschreiben, wie ein Credential benutzt wird, nicht wie es erzeugt wird. Ein Bearer-Token gewährt Zugriff allein dadurch, dass es vorgelegt wird - deshalb trägt der HTTP-Authorization-Header ihn wörtlich. Ein Access-Token ist ein Bearer-Token mit kurzer Lebensdauer, meist aus einem OAuth-Flow. Ein API-Key ist ein langlebiges Bearer-Token, das an einen Dienst statt an eine Person ausgegeben wird. Bei der Erzeugung sind alle drei dasselbe: ein undurchsichtiger Zufallsstring mit hoher Entropie. Nutze Hex oder Base64 für die ersten beiden und den API-Key-Modus, wenn du ein scanbares Präfix willst.

Warum API-Keys ein Präfix geben?

GitHub, Stripe, OpenAI und Slack versehen ihre Keys aus einem Grund mit Präfixen (ghp_, sk_live_, xoxb_): Secret-Scanner erkennen einen geleakten Key dann allein am String, ganz ohne Kontext. Wer einen Key mit Präfix in ein öffentliches Repository pusht, dessen Key kann der Aussteller binnen Minuten widerrufen. Ein nackter 32-stelliger Hex-String sieht aus wie ein Commit-Hash, also fällt er niemandem auf. Präfixe machen außerdem die Umgebung auf einen Blick klar - die billigste Absicherung dagegen, einen Produktions-Key in eine Staging-Konfiguration zu kleben.

Häufige Fragen

Sind diese Tokens wirklich zufällig?

Ja. Jeder Token stammt aus crypto.getRandomValues(), dem kryptografisch sicheren Zufallszahlengenerator des Browsers, gespeist aus dem Entropie-Pool des Betriebssystems. Es ist dieselbe Primitive, die TLS-Sitzungsschlüssel erzeugt. Math.random(), das viele Online-Generatoren immer noch verwenden, ist ein vorhersehbarer Pseudozufallsgenerator und darf niemals ein Sicherheits-Token erzeugen.

Wird mein Token an euren Server gesendet?

Nein. Die Erzeugung läuft vollständig in deinem Browser über die Web Crypto API. Öffne den Netzwerk-Tab und generiere einen Token: Es wird keine einzige Anfrage gestellt. Nichts wird geloggt, gespeichert oder übertragen. Wenn du den Token anschließend teilen willst, wird er in deinem Browser verschlüsselt, bevor irgendetwas die Seite verlässt.

Welche Länge sollte ich für einen API-Key wählen?

128 Bit Entropie, und genau das liefert der API-Key-Modus dieses Tools: dein Präfix plus 32 Hex-Zeichen. Das ist praktisch nicht zu erraten und entspricht dem, was Stripe, GitHub und AWS ausgeben. Geh nur darüber hinaus, wenn eine konkrete Compliance-Anforderung es verlangt.

Was ist der Unterschied zwischen einer UUID v4 und einem zufälligen Hex-Token?

Eine UUID v4 ist ein Zufalls-Token mit fester Form: 36 Zeichen, vier Bindestriche und sechs Bit für Version und Variante reserviert, womit 122 zufällige Bit bleiben. Nutze sie, wenn etwas anderes genau diese Form erwartet, etwa eine uuid-Spalte in der Datenbank. Nimm einfaches Hex oder Base64, wenn du nur ein Secret brauchst und das Format dir überlassen ist - es ist bei gleicher Stärke kürzer.

Kann ich mehrere Tokens auf einmal erzeugen?

Ja. Stell die Anzahl auf 5, 10 oder 25, und jeder Token wird unabhängig erzeugt. Alle kopieren legt sie zeilenweise ab - das Format, das die meisten Seed-Skripte, .env-Dateien und Passwortmanager für den Massenimport akzeptieren.

Wie schicke ich einem Kollegen sicher einen Token?

Nicht per Slack, E-Mail oder Ticket - die behalten eine Kopie auf unbestimmte Zeit, wer später Zugang zum Kanal bekommt, bekommt also auch Zugang zum Credential. Nutze Sicher teilen, um den Token hinter einen verschlüsselten, selbstzerstörenden Link zu legen: Er wird in deinem Browser verschlüsselt, der Schlüssel reist im URL-Fragment und erreicht unseren Server nie, und das Secret wird nach dem Lesen oder beim Ablauf zerstört.

Einen Token sicher teilen?

Füge Tokens nicht in Slack oder E-Mails ein. Versende sie über einen verschlüsselten, selbstzerstörenden Link, den nur der Empfänger öffnen kann.