Fernet-Token Encoder/Decoder
Verschlüsseln Sie Nachrichten in Fernet-Token (AES-128-CBC + HMAC-SHA256) oder decodieren und prüfen Sie Fernet-Token mit Zeitstempel- und HMAC-Validierung. Kompatibel mit der Python-Bibliothek cryptography. Die gesamte Verarbeitung erfolgt lokal und privat in Ihrem Browser.
The key is derived from your password using PBKDF2 + HKDF (480,000 iterations)
Enter a password and message, then click Encrypt to Fernet Token
Warum unseren Fernet-Token Encoder/Decoder nutzen?
- Kompatibel mit der Python-Bibliothek cryptography: Mit unserem Encoder erzeugte Fernet-Token können von der Bibliothek cryptography.fernet von Python entschlüsselt werden – und umgekehrt. Vollständige Kompatibilität mit der Standard-Fernet-Spezifikation (AES-128-CBC + HMAC-SHA256).
- HMAC-Signaturprüfung: Jedes Fernet-Token enthält eine HMAC-SHA256-Signatur, die bei der Entschlüsselung geprüft wird. Wurde das Token manipuliert oder wird das falsche Passwort verwendet, schlägt die HMAC-Prüfung sofort fehl.
- Zeitstempelvalidierung und Token-Alter: Jedes Fernet-Token enthält einen eingebetteten Unix-Zeitstempel, der genau zeigt, wann es erstellt wurde. Bei der Entschlüsselung zeigt der Fernet-Encoder das Alter des Tokens und die Erstellungszeit für Audits und Ablaufprüfungen an.
- Sichere PBKDF2-Schlüsselableitung: Ihr Passwort wird mit PBKDF2 mit 480.000 Iterationen und HKDF-Erweiterung in einen Fernet-kompatiblen 32-Byte-Schlüssel umgewandelt. Das kombinierte Schlüssel-und-Token-Ausgabeformat erleichtert das Teilen – einfach die gesamte Zeichenkette einfügen.
Typische Anwendungsfälle des Fernet-Token Encoder/Decoders
- Sicherer Nachrichtenaustausch: Nutzen Sie den Fernet-Token-Encoder, um Nachrichten vor dem Versand per E-Mail, Chat oder sozialen Medien zu verschlüsseln. Der Empfänger kann das Fernet-Token mit demselben Passwort entschlüsseln. Kein Drittanbieterdienst erforderlich.
- Integration für Python-Entwickler: Python-Entwickler können diesen Online-Fernet-Encoder nutzen, um schnell Token für Tests oder Debugging zu erzeugen. Die Ausgabe ist vollständig mit dem Modul cryptography.fernet von Python kompatibel – keine Testskripte nötig.
- API-Token-Generierung: Erzeugen Sie Fernet-Token für die API-Authentifizierung oder Sitzungsverwaltung. Der eingebettete Zeitstempel ermöglicht Servern die Prüfung der Token-Aktualität, während der HMAC Manipulationen verhindert.
- Speicherung von Konfigurationsgeheimnissen: Verschlüsseln Sie sensible Konfigurationswerte – API-Schlüssel, Datenbankpasswörter oder Dienstzugangsdaten – in Fernet-Token. Speichern Sie die Token in Konfigurationsdateien und entschlüsseln Sie sie zur Laufzeit mit dem Master-Passwort.
- Plattformübergreifende Datenportabilität: Fernet-Token sind plattformunabhängig. Verschlüsseln Sie Daten im Browser mit unserem Fernet-Encoder und entschlüsseln Sie sie anschließend in Python, Go, Rust oder jeder Sprache mit einer Fernet-kompatiblen Bibliothek.
- Cookie- und Sitzungsverschlüsselung: Verschlüsseln Sie Web-Sitzungsdaten oder Cookies in Fernet-Token. Die HMAC-Signatur verhindert Manipulationen, während der Zeitstempel den Sitzungsablauf ermöglicht. Die gesamte Verarbeitung erfolgt lokal im Browser für Tests und Prototypen.
Was ist ein Fernet-Token?
Ein Fernet-Token ist ein symmetrisches Verschlüsselungsformat, das von der Python-Bibliothek cryptography definiert wird. Es kombiniert AES-128-CBC-Verschlüsselung mit HMAC-SHA256-Authentifizierung. Jedes Fernet-Token enthält ein Versionsbyte, einen Unix-Zeitstempel, einen zufälligen Initialisierungsvektor (IV), den Geheimtext und eine HMAC-Signatur – alles in einem Base64-kodierten String. Das Token-Format gewährleistet sowohl Vertraulichkeit als auch Integrität: Der Geheimtext kann ohne Schlüssel nicht gelesen werden, und der HMAC verhindert unbemerkte Manipulationen. Dieser doppelte Schutz macht Fernet-Token geeignet für sicheren Nachrichtenaustausch, Sitzungsverwaltung und Konfigurationsverschlüsselung.
So funktioniert unser Fernet-Token Encoder/Decoder
- Schlüsselableitung: Ihr Passwort wird mit PBKDF2 mit 480.000 Iterationen von SHA-256 und anschließender HKDF-Erweiterung in einen 32-Byte-Fernet-Schlüssel umgewandelt. Die ersten 16 Bytes werden zum HMAC-Signaturschlüssel, die letzten 16 Bytes zum AES-Verschlüsselungsschlüssel.
- Verschlüsselung (Encoding): Ein zufälliger 16-Byte-IV wird erzeugt. Der Klartext wird mit PKCS7 aufgefüllt, mit AES-128-CBC verschlüsselt und in das Token-Format gesetzt: Versionsbyte (0x80) + 8-Byte-Zeitstempel + IV + Geheimtext + HMAC. Das gesamte binäre Token wird Base64-kodiert.
- Entschlüsselung (Decoding): Das Token wird Base64-dekodiert, in seine Bestandteile zerlegt, der HMAC gegen den Signaturschlüssel geprüft und – falls gültig – der Geheimtext mit AES-128-CBC entschlüsselt und entpackt.
Struktur eines Fernet-Tokens
- Version (1 Byte): Immer 0x80 (128), was dies als Fernet-Token Version 2 kennzeichnet. Zukünftige Versionen könnten andere Werte verwenden.
- Zeitstempel (8 Bytes): Big-Endian-Unix-Zeitstempel, der angibt, wann das Token erstellt wurde. Nützlich für Ablaufprüfungen und Audits.
- IV (16 Bytes): Zufälliger Initialisierungsvektor für AES-128-CBC. Für jede Verschlüsselung wird ein anderer IV erzeugt, sodass identische Klartexte unterschiedliche Token ergeben.
- Geheimtext (variabel): Der mit PKCS7 aufgefüllte und mit AES-128-CBC verschlüsselte Klartext unter Verwendung des 16-Byte-Verschlüsselungsschlüssels aus Ihrem Passwort.
- HMAC (32 Bytes): SHA-256-HMAC über Version, Zeitstempel, IV und Geheimtext, berechnet mit dem 16-Byte-Signaturschlüssel. Das verhindert unbemerkte Manipulationen.
Datenschutz, Sicherheit und Nutzungshinweise
Der Fernet-Token Encoder/Decoder verarbeitet alle Daten vollständig in Ihrem Browser über die Web Crypto API. Es werden niemals Daten auf einen Server hochgeladen, in einer Datenbank gespeichert oder an Dritte weitergegeben. Die kryptografischen Operationen – PBKDF2-Schlüsselableitung, AES-128-CBC-Ver- und -Entschlüsselung sowie HMAC-SHA256-Signierung und -Prüfung – nutzen alle nativen kryptografischen Primitive des Browsers für maximale Sicherheit. Bewahren Sie Ihr Passwort sicher auf: Es gibt keinen Wiederherstellungsmechanismus. Das kombinierte Schlüssel-und-Token-Ausgabeformat ermöglicht es, sowohl Schlüsselmaterial als auch Token in einer einzigen Zeichenkette zu teilen.
Häufig gestellte Fragen
Ein Fernet-Token ist ein symmetrisches Verschlüsselungsformat, das von der Python-Bibliothek cryptography definiert wird und AES-128-CBC-Verschlüsselung mit HMAC-SHA256-Authentifizierung kombiniert. Jedes Token enthält ein Versionsbyte, einen Unix-Zeitstempel, einen zufälligen IV, den Geheimtext und eine HMAC-Signatur – alles in einem Base64-kodierten String, der sicher übertragen oder gespeichert werden kann.
Ja. Unser Fernet-Token Encoder/Decoder ist vollständig mit dem Modul cryptography.fernet von Python kompatibel. Im Browser erzeugte Token können in Python entschlüsselt werden, und mit dem Fernet-Modul von Python erzeugte Token können hier entschlüsselt werden, solange derselbe Schlüssel bzw. dasselbe Passwort verwendet wird. Beachten Sie jedoch, dass unser Tool PBKDF2 + HKDF zur Passwort-zu-Schlüssel-Ableitung verwendet, während Pythons Fernet üblicherweise einen rohen 32-Byte-Schlüssel nutzt.
Ihr Passwort wird mit PBKDF2 mit 480.000 Iterationen von SHA-256 und anschließender HKDF-Erweiterung in einen 32-Byte-Fernet-Schlüssel umgewandelt. Die ersten 16 Bytes werden zum HMAC-Signaturschlüssel, die letzten 16 Bytes zum AES-Verschlüsselungsschlüssel. Der Einfachheit halber stellt unser kombiniertes Ausgabeformat das PBKDF2-Salt dem Schlüssel voran, wodurch die Ausgabe für die Entschlüsselung selbstständig ist.
Das kombinierte Format ist eine Komfortfunktion, die das salt-kodierte Schlüsselmaterial dem Fernet-Token voranstellt, getrennt durch einen Punkt. Sie können die gesamte Zeichenkette einfügen, um später zu entschlüsseln – der Decoder extrahiert das Salt, erzeugt den Schlüssel aus Ihrem Passwort neu und entschlüsselt das Token. Alternativ können Sie am Punkt trennen und den zweiten Teil als eigenständiges Fernet-Token verwenden.
Ja, vollständig. Alle kryptografischen Operationen – PBKDF2-Schlüsselableitung, AES-128-CBC-Ver- und -Entschlüsselung sowie HMAC-SHA256-Signierung und -Prüfung – nutzen die Web Crypto API und laufen vollständig in Ihrem Browser. Ihr Passwort und Ihr Klartext verlassen niemals Ihr Gerät. Es werden keine Daten hochgeladen, gespeichert oder mit einem Server geteilt.
Die HMAC-SHA256-Signaturprüfung schlägt fehl und der Decoder meldet einen Fehler. Der HMAC wird über Versionsbyte, Zeitstempel, IV und Geheimtext berechnet, sodass jede Änderung an irgendeinem Teil des Tokens die HMAC-Prüfung fehlschlagen lässt. Das verhindert unbemerkte Manipulationen und sichert die Integrität Ihrer verschlüsselten Daten.
Nein. Sowohl für die Ver- als auch für die Entschlüsselung ist ein Passwort erforderlich. Die Fernet-Spezifikation verlangt einen 32-Byte-Schlüssel, und unser Tool leitet diesen Schlüssel mit PBKDF2 aus Ihrem Passwort ab. Das Passwort ist der einzige Weg, Token zu ver- oder entschlüsseln – es gibt keinen Wiederherstellungsmechanismus, bewahren Sie Ihr Passwort also sicher auf.
Fernet-Token haben einen festen Overhead von 57 Bytes (Version 1 + Zeitstempel 8 + IV 16 + HMAC 32) vor dem Geheimtext. Ihr Klartext wird auf das nächste 16-Byte-Vielfache aufgefüllt und verschlüsselt. Eine 10-Byte-Nachricht erzeugt etwa 92 Bytes Base64-kodiertes Token. Es gibt keine praktische Größenbeschränkung, da die gesamte Verarbeitung lokal erfolgt.
Ja, 100 % kostenlos. Keine Anmeldung, kein Premium-Tarif und keine Nutzungsgrenze. Das Tool läuft vollständig in Ihrem Browser über die Web Crypto API und wird auf Aback Tools immer kostenlos sein.