0Pricing
Cryptology Academy · Lektion

Dateien in der Praxis mit AES verschlüsseln

Verwenden Sie OpenSSL und Python, um echte Dateien mit AES zu verschlüsseln und zu entschlüsseln.

Dateien in der Praxis mit AES verschlüsseln ist eine kostenlose Cryptology Academy-Lektion auf CoddyKit. Dies ist Lektion 4 von 4. Du kannst die komplette Lektion unten kostenlos lesen – dann übst du sie direkt im Browser mit einem integrierten Code-Editor und einem KI-Tutor rund um die Uhr. Sie ist Teil des Cryptology Academy-Lernpfads, und dein Fortschritt wird über Web und CoddyKit-App synchronisiert. Der Cryptology Academy-Kurs umfasst insgesamt 4 Lektionen.

Willkommen

Hier trifft Theorie auf Praxis. In dieser Lektion verschlüsseln und entschlüsseln Sie echte Dateien mit AES-GCM in Python, dem empfohlenen Modus für authentifizierte Verschlüsselung.

Warum AES-GCM?

AES-GCM bietet authentifizierte Verschlüsselung mit zugehörigen Daten (AEAD). Es verschlüsselt die Daten und erzeugt zusätzlich einen 16-Byte-Authentifizierungstag. Jede Manipulation wird vor der Entschlüsselung erkannt.

Bestandteile von AES-GCM

Eingaben: 32-Byte-Schlüssel, zufällige 12-Byte-Nonce, Klartext und optionale zugehörige Daten (AAD). Ausgaben: Chiffretext und 16-Byte-Authentifizierungstag. Die Nonce muss bei jeder Verschlüsselung eindeutig sein.

cryptography-Bibliothek installieren

pip install cryptography Die Python-Bibliothek cryptography von PyCA ist die empfohlene Kryptobibliothek. Sie kapselt OpenSSL und bietet sowohl High-Level-Rezepte als auch Low-Level-Hazmat-Primitives.

AES-GCM-Verschlüsselung in Python

from cryptography.hazmat.primitives.ciphers.aead import AESGCM import os key = AESGCM.generate_key(bit_length=256) nonce = os.urandom(12) aad = b'file_version_1' aesgcm = AESGCM(key) ciphertext = aesgcm.encrypt(nonce, plaintext, aad)

AES-GCM-Entschlüsselung in Python

try: plaintext = aesgcm.decrypt(nonce, ciphertext, aad) except Exception: print('Decryption failed — tampered or wrong key') Wenn die Tag-Prüfung fehlschlägt, löst decrypt() eine Ausnahme aus. Ignorieren Sie diese Ausnahme niemals.

Arbeitsablauf zur Dateiverschlüsselung

with open('input.bin', 'rb') as f: plaintext = f.read() ciphertext_with_tag = aesgcm.encrypt(nonce, plaintext, None) # Store: nonce (12 bytes) + ciphertext_with_tag with open('output.enc', 'wb') as f: f.write(nonce + ciphertext_with_tag)

Arbeitsablauf zur Dateientschlüsselung

with open('output.enc', 'rb') as f: data = f.read() nonce = data[:12] ciphertext_with_tag = data[12:] plaintext = aesgcm.decrypt(nonce, ciphertext_with_tag, None)

Nonce-Verwaltung

Eine zufällige 12-Byte-Nonce ist mit AES-GCM für bis zu 2^32 Verschlüsselungen mit demselben Schlüssel sicher, bevor die Kollisionswahrscheinlichkeit nicht mehr vernachlässigbar ist. Danach rotieren Sie den Schlüssel.

OpenSSL über die Befehlszeile verwenden

# Encrypt: openssl enc -aes-256-cbc -pbkdf2 -in plain.txt -out encrypted.bin # Decrypt: openssl enc -d -aes-256-cbc -pbkdf2 -in encrypted.bin -out plain.txt Hinweis: CBC-Modus – fügen Sie in neueren OpenSSL-Versionen das Flag -GCM für authentifizierte Verschlüsselung hinzu.

Bewährte Methoden zur Schlüsselspeicherung

Hardcodieren Sie Schlüssel niemals im Quellcode. Verwenden Sie Umgebungsvariablen, AWS KMS, HashiCorp Vault oder den Schlüsselbund des Betriebssystems. Rotieren Sie Schlüssel regelmäßig. Sperren Sie Schlüssel, wenn Mitarbeitende das Unternehmen verlassen.

Kurzer Test

Was geschieht, wenn AES-GCM erkennt, dass der Chiffretext manipuliert wurde?

Zusammenfassung

Sie können nun Dateien mit AES-GCM in Python verschlüsseln. Als Nächstes wechseln wir zur asymmetrischen Verschlüsselung und lernen RSA von Grund auf kennen.

Häufig gestellte Fragen

Ist die Lektion „Dateien in der Praxis mit AES verschlüsseln“ kostenlos?

Ja — der vollständige Text von „Dateien in der Praxis mit AES verschlüsseln“ ist hier im Web kostenlos zu lesen. Um sie interaktiv zu üben (integrierter Code-Editor und 24/7 KI-Tutor) und den Rest des Cryptology Academy-Kurses freizuschalten, upgrade auf CoddyKit PRO. Der Cryptology Academy-Kurs umfasst insgesamt 4 Lektionen.

Was lerne ich in „Dateien in der Praxis mit AES verschlüsseln“?

Verwenden Sie OpenSSL und Python, um echte Dateien mit AES zu verschlüsseln und zu entschlüsseln. Du übst Cryptology Academy mit praktischem Code, den du direkt im Browser ausführst, und ein 24/7 KI-Tutor beantwortet deine Fragen während du die Lektion bearbeitest.

Brauche ich Erfahrung, um Cryptology Academy zu starten?

Keine Vorkenntnisse erforderlich. Cryptology Academy auf CoddyKit ist für Anfänger bis fortgeschrittene Lernende strukturiert, sodass du hier starten oder von Anfang an beginnen und in deinem eigenen Tempo voranschreiten kannst. Dies ist Lektion 4 von 4.

Wie lange dauert die Lektion „Dateien in der Praxis mit AES verschlüsseln“?

Die meisten CoddyKit-Lektionen dauern etwa 5–10 Minuten. Jede ist kompakt und interaktiv, sodass du stetig Fortschritte machst und genau dort weitermachst, wo du aufgehört hast – im Web und in der App.

Kann ich in dieser Cryptology Academy-Lektion Code schreiben und ausführen?

Ja. Jede Cryptology Academy-Lektion enthält einen integrierten Code-Editor, sodass du echten Code direkt in deinem Browser schreibst und ausführst und sofort KI-Feedback erhältst — ohne lokale Einrichtung erforderlich.

Alle Lektionen in diesem Kurs

  1. Konzepte der symmetrischen Verschlüsselung
  2. AES-Struktur: Runden und Zustandsmatrix
  3. AES-Schlüsselerweiterung und Schlüssellängen
  4. Dateien in der Praxis mit AES verschlüsseln
← Zurück zu Cryptology Academy