Alle Anleitungen

DEVOMNITOOLS / Anleitungen für Entwickler

Texte mit AES-256 direkt im Browser verschlüsseln und entschlüsseln

Erfahren Sie, wie 256-Bit AES-GCM und AES-CBC lokal mit der Web Crypto API funktionieren. PBKDF2-Schlüsselableitung, Nonce-Sicherheit und OpenSSL-Befehle.

DevOmniTools Veröffentlicht: 2 Min. Lesezeit
AES-256-GCM WebCrypto Kryptografie Architektur-Diagramm

Das Wichtigste

  • AES-GCM bietet authentifizierte Verschlüsselung mit Integritäts-Tag; AES-CBC schützt lediglich die Vertraulichkeit.
  • Verwenden Sie niemals denselben Initialisierungsvektor (IV) für denselben kryptographischen Schlüssel wieder.
  • Leiten Sie 256-Bit-Schlüssel aus Passwörtern mit PBKDF2 und mindestens 100.000 Iterationen ab.

Grundlagen des 256-Bit Advanced Encryption Standard (AES)

AES-256-GCM WebCrypto Kryptografie Architektur-Diagramm

Der Advanced Encryption Standard (AES) ist eine vom NIST standardisierte symmetrische Blockchiffre (FIPS 197). Er verarbeitet Daten in Blöcken von 128 Bit unter Verwendung von Schlüsseln mit 128, 192 oder 256 Bit Länge. In modernen Sicherheitsarchitekturen gilt AES-256 als weltweiter Standard für den Schutz ruhender und übertragener Daten.

Bei der Integration von AES in Webanwendungen und APIs ist die Wahl des passenden Betriebsmodus entscheidend für Datenintegrität und Geheimhaltung.

Blockchiffre-Modi: AES-GCM im Vergleich zu AES-CBC

Die beiden am weitesten verbreiteten Betriebsmodi für symmetrische Chiffren sind der Galois/Counter Mode (GCM) und Cipher Block Chaining (CBC):

  1. AES-GCM (Authenticated Encryption with Associated Data - AEAD):

    • Kombiniert den Zählermodus (CTR) mit Galois-Authentifizierung.
    • Erzeugt parallel zum Chiffretext einen 128-Bit Authentifizierungs-Tag.
    • Erkennt jegliche Manipulation oder Beschädigung des Chiffretexts vor dem Entschlüsseln.
    • Standardempfehlung für moderne Cloud- und Webanwendungen.
  2. AES-CBC (Cipher Block Chaining):

    • Verknüpft vorherige Chiffreblöcke per XOR mit dem nächsten Klartextblock.
    • Erfordert PKCS#7-Padding zum Auffüllen auf 16-Byte-Blockgrenzen.
    • Anfällig für Padding-Oracle-Angriffe bei unzureichend isolierten Serverfehlern.
    • Dient primär der Interoperabilität mit älteren Legacy-Systemen und OpenSSL-Skripten.

Lokale Verschlüsselung im Browser

Sie können AES-Verfahren direkt im AES-256 Verschlüsselungstool testen. Die Ausführung erfolgt vollständig über die standardisierte Web Crypto API (window.crypto.subtle) im lokalen Arbeitsspeicher, ohne dass Passwörter oder Klartexte an externe Server übertragen werden.

Für die Erzeugung kryptographischer Schlüssel und Passwörter nutzen Sie den Token-Generator oder analysieren Sie Authentifizierungsdaten mit dem JWT Decoder.

Schlüsselableitung mit PBKDF2

Passwörter besitzen in der Regel nicht die für AES-256 erforderliche kryptographische Entropie. Zur Umwandlung eines Passworts in einen 256-Bit-Schlüssel gilt:

  • Zufälliger Salt: Ein kryptographisch sicherer 16-Byte-Salt wird pro Vorgang neu erzeugt.
  • Iterationsanzahl: 100.000 Runden HMAC-SHA256 verlangsamen Wörterbuch- und GPU-Brute-Force-Angriffe massiv.
  • Schlüsselerzeugung: Ein 32-Byte Rohschlüssel wird generiert und als AES-GCM oder AES-CBC initialisiert.

OpenSSL-Kompatibilität im Terminal

Um verschlüsselte Dateien auf Linux- oder macOS-Systemen zu prüfen, eignet sich der OpenSSL-Befehl:

# Entschlüsseln einer AES-256-CBC Datei mit OpenSSL
openssl enc -d -aes-256-cbc -in datei.enc -out datei.txt -pbkdf2 -iter 100000

Zur Überprüfung und Umwandlung von Rohdaten in lesbare Textformate empfiehlt sich der Base64-Konverter.

Sicherheitsrichtlinien für Entwickler

  • Keine Serverübertragung: DevOmniTools führt alle Berechnungen vollständig im Browser-RAM aus.
  • Eindeutigkeit des Nonce/IV: Der Initialisierungsvektor muss für jede Nachricht neu gewählt werden; eine Wiederholung untergräbt die Authentifizierung.
  • Speicherbereinigung: Schließen Sie Browser-Tabs nach der Verarbeitung sensibler Produktionsdaten.