KeyGenerator.io

AES-Schlüsselgenerator

Zufällige AES-Schlüssel mit 128, 192 und 256 Bit, erzeugt in deinem Browser. Kein Netzwerk, keine Protokolle, kein Upload.

0 Bit Entropie

Schlüssellänge
Kodierung

Leertaste erzeugt einen neuen Schlüssel, C kopiert ihn. Erzeugt mit crypto.getRandomValues auf deinem Gerät – die Seite lädt nichts aus dem Netz.

Wie dieser Schlüssel entsteht

Ein AES-Schlüssel ist ein Block zufälliger Bytes fester Länge: 16 für AES-128, 24 für AES-192, 32 für AES-256. Anders als bei einem Passwort gibt es kein Minimum und kein Maximum abzuwägen — der Algorithmus nimmt genau eine dieser drei Längen, und jedes einzelne Bit davon muss unerratbar sein.

Die Bytes stammen unmittelbar aus crypto.getRandomValues, dem kryptografisch sicheren Zufallsgenerator des Browsers, und werden anschließend als Hexadezimal oder Base64 ausgegeben. Kein Zeitstempel, kein Zähler, kein Math.random auf diesem Weg. Beide Schreibweisen tragen dieselben Bytes; nehmen Sie die, die Ihre Bibliothek oder Ihr Schlüsselspeicher erwartet.

Alles geschieht auf Ihrem eigenen Gerät. Die Seite stellt nach dem Laden keine Netzwerkanfragen, dieser Schlüssel hat also nie anderswo existiert und verlässt Ihren Rechner nicht. Nach einem Neuladen ist er weg.

Häufige Fragen

Welche Schlüssellänge soll ich nehmen?

AES-256, sofern nichts anderes vorgegeben ist — nicht weil 128 Bit knackbar wären, sondern weil der längere Schlüssel praktisch nichts kostet und die Frage künftig erledigt. AES-128 ist gegen Brute Force weiterhin vollkommen sicher und auf Hardware ohne AES-Beschleunigung spürbar schneller. AES-192 gibt es, es funktioniert, wird aber so selten verwendet, dass manche Bibliotheken und Hardwarepfade damit schlechter umgehen als mit den beiden anderen.

Ist AES-256 doppelt so stark wie AES-128?

Nein, der Unterschied beträgt das 2^128-fache, nicht das Doppelte. Beide Zahlen liegen aber längst jenseits der Schwelle, ab der Brute Force noch etwas bedeutet: Bis 2^128 zu zählen übersteigt das Energiebudget des Planeten, gleich welche Hardware man sich vorstellt. An der Schlüssellänge scheitern reale Systeme nicht. Sie scheitern an wiederverwendeten Nonces, an aus Passwörtern abgeleiteten Schlüsseln und an Schlüsseln, die neben den Daten liegen, die sie schützen sollen.

Ist der IV dasselbe wie der Schlüssel?

Nein, und diese Verwechslung ist der häufigste AES-Fehler. Der Schlüssel ist ein langlebiges Geheimnis. Der IV (bei GCM die Nonce) ist ein Wert pro Nachricht, überhaupt nicht geheim und wird üblicherweise im Klartext neben dem Chiffrat übertragen. Erzeugen Sie für jede Nachricht einen frischen IV; den Schlüssel erzeugen Sie einmal und behalten ihn.

Brauche ich für jede Nachricht einen neuen Schlüssel?

Nein. Ein Schlüssel verschlüsselt viele Nachrichten, solange jede ihren eigenen IV beziehungsweise ihre eigene Nonce bekommt. Was sich unter demselben Schlüssel niemals wiederholen darf, ist die Nonce: Bei GCM verrät eine Wiederverwendung das XOR zweier Klartexte und erlaubt es Angreifern, Nachrichten zu fälschen — ein vollständiger Bruch, keine geringfügige Schwächung. Üblich ist eine zufällige 96-Bit-Nonce je Nachricht.

Kann ich ein Passwort als AES-Schlüssel nehmen?

Nicht direkt. Ein Passwort ist kurz und stammt aus einem kleinen Raum, während ein AES-Schlüssel von Zufall ununterscheidbar sein muss. Wenn sich ein Mensch die Eingabe merken muss, schicken Sie sie durch eine Schlüsselableitungsfunktion — Argon2id, scrypt oder PBKDF2 mit hoher Iterationszahl — und verwenden Sie deren Ausgabe als Schlüssel. Ein Passwort einmal mit SHA-256 zu hashen liefert zwar 32 Byte, aber keine 32 Byte Unvorhersagbarkeit.

GCM oder CBC?

In fast allen Fällen GCM. Es authentifiziert zusätzlich zur Verschlüsselung, sodass Manipulationen am Chiffrat erkannt werden, statt still zu Unsinn entschlüsselt zu werden, den Ihr Code anschließend für bare Münze nimmt. CBC allein bietet überhaupt keine Integrität und muss mit einem separaten MAC kombiniert werden, in der richtigen Reihenfolge angewendet — genau die Art Detail, die lautlos schiefgeht.

Hexadezimal oder Base64?

In beiden Fällen dieselben Bytes: Ein 256-Bit-Schlüssel sind 64 Zeichen in Hex oder 44 Zeichen in Base64, bei identischer Stärke. Nehmen Sie das Format, das die Gegenstelle erwartet: Cloud-Schlüsselspeicher und Sprachbibliotheken verlangen häufig Base64, während Konfigurationsdateien, Kommandozeilenoptionen und alles, was durch eine Shell läuft, in Hex sicherer aufgehoben ist, das nur 0-9 und a-f enthält.

Wo gehört der Schlüssel hin?

In einen Schlüsselverwaltungsdienst, falls vorhanden, sonst in eine Umgebungsvariable oder eine Secrets-Datei außerhalb der Versionsverwaltung. Niemals neben das Chiffrat, das er schützt: Ein Schlüssel in derselben Datenbank, derselben Sicherung oder demselben Repository wie die Daten schützt nichts mehr, sobald dieser Speicher kopiert wird. Beachten Sie außerdem, dass ein Wechsel des AES-Schlüssels bedeutet, die Daten neu zu verschlüsseln — Rotation will also geplant sein und ist nicht mit einem Cronjob getan.

Ist es sicher, einen Verschlüsselungsschlüssel im Browser zu erzeugen?

Nur wenn die Seite ihn nicht übertragen kann, und das lässt sich prüfen statt voraussetzen. Öffnen Sie die Entwicklerwerkzeuge, bleiben Sie auf dem Reiter Netzwerk und erzeugen Sie beliebig viele Schlüssel: Nach dem Laden wird nichts angefordert. Dahinter steht kein Server, der etwas entgegennehmen könnte, und es gibt keine Analyse und kein Fremdskript, das ihn nach außen tragen könnte.