GPG für asymmetrische Dateiverschlüsselung
Verwenden Sie GPG, um Dateien für bestimmte Empfänger zu verschlüsseln, Inhalte zu signieren und den GPG-Schlüsselbund zu verwalten.
GPG für asymmetrische Dateiverschlüsselung ist eine kostenlose Cryptology Academy-Lektion auf CoddyKit. Dies ist Lektion 1 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.
Überblick und Zweck von GPG
GNU Privacy Guard (GPG) implementiert den OpenPGP-Standard (RFC 4880) für die asymmetrische Dateiverschlüsselung und digitale Signaturen. Damit sind zwei grundlegende Vorgänge möglich: Sie verschlüsseln eine Datei so, dass nur der vorgesehene Empfänger sie entschlüsseln kann, und Sie signieren eine Datei, damit andere ihre Authentizität und Integrität überprüfen können. GPG ist das Standardwerkzeug für die sichere Dateiübertragung und das Signieren von Software-Releases.
GPG-Schlüssel generieren
Die Generierung von GPG-Schlüsseln erfolgt interaktiv mit gpg --gen-key oder skriptgesteuert mit gpg --quick-gen-key. In modernen GPG-Versionen sind ed25519 für Signaturen und cv25519 (Curve25519) für die Verschlüsselung die Standardwerte. Dabei werden ein primärer Signaturschlüssel und ein Unterschlüssel für die Verschlüsselung erstellt. Die Option --full-gen-key bietet vollständige Kontrolle über Schlüsseltyp, Schlüssellänge und Ablaufdatum für Benutzer, die eine individuelle Konfiguration benötigen.
Vergleich der GPG-Schlüsseltypen
RSA-GPG-Schlüssel mit 4096 Bit sind mit allen OpenPGP-Implementierungen kompatibel und bieten starke Sicherheit. ECDSA mit Curve25519 (Ed25519 für Signaturen, Cv25519 für Verschlüsselung) erzeugt kleinere Schlüssel und ermöglicht schnellere Operationen bei gleichwertiger Sicherheit. Ältere DSA-Schlüssel sind in älteren Implementierungen auf SHA-1-Digests beschränkt und sollten nicht verwendet werden. Neue Schlüssel sollten auf Curve25519 basierende Typen verwenden.
Öffentliche Schlüssel exportieren und teilen
Nach der Generierung eines Schlüsselpaares exportieren Sie Ihren öffentlichen Schlüssel zur Weitergabe: gpg --armor --export your@email.com gibt einen ASCII-armierten Block mit dem öffentlichen Schlüssel aus. Geben Sie diese Datei an alle Personen weiter, die Dateien für Sie verschlüsseln oder Ihre Signaturen überprüfen sollen. Empfänger importieren Ihren öffentlichen Schlüssel mit gpg --import publickey.asc, bevor sie verschlüsseln oder Signaturen überprüfen können.
Dateien für Empfänger verschlüsseln
Um eine Datei für einen bestimmten Empfänger zu verschlüsseln, verwenden Sie: gpg --encrypt --recipient recipient@email.com --output secret.gpg plaintext.txt. GPG verwendet den öffentlichen Schlüssel des Empfängers, um den Sitzungsschlüssel der Datei zu verschlüsseln, und verschlüsselt die Datei mit AES-256 (oder dem ausgehandelten Verschlüsselungsalgorithmus). Nur der Empfänger, der den passenden privaten Schlüssel besitzt, kann den Sitzungsschlüssel entschlüsseln und den Klartext wiederherstellen.
Detached-Signaturen erstellen
Eine Detached-Signatur (gpg --detach-sign --armor file.tar.gz) erstellt eine separate .asc-Datei mit der Signatur. Die Originaldatei bleibt unverändert. Empfänger überprüfen sie mit gpg --verify file.tar.gz.asc file.tar.gz. Detached-Signaturen sind der Standard für Software-Releases und ermöglichen die Überprüfung der Signatur, ohne die verteilte Datei zu entschlüsseln oder zu verändern.
Signaturen überprüfen
Die Signaturprüfung bestätigt, dass eine Datei mit dem angegebenen Schlüssel signiert wurde und seit der Signierung nicht verändert worden ist. gpg --verify signature.asc file gibt den Fingerabdruck des Schlüssels, die Benutzer-ID und an, ob die Signatur gültig oder ungültig ist. Die Sicherheit hängt davon ab, dass Sie dem öffentlichen Schlüssel des Signierenden korrekt vertrauen: Eine gültige Signatur von einem nicht vertrauenswürdigen oder nicht verifizierten Schlüssel bietet nur wenig Gewissheit.
Passphrasengeschützte private Schlüssel
GPG verschlüsselt den privaten Schlüssel vor der Speicherung mit einer symmetrischen Chiffre, die aus einer Passphrase abgeleitet wird. Ohne die Passphrase kann ein Angreifer, der die Datei des privaten Schlüssels erlangt, sie nicht verwenden. GPG verwendet eine Schlüsselableitungsfunktion, um den Verschlüsselungsschlüssel aus der Passphrase abzuleiten. Die Passphrase sollte lang und einprägsam sein, aber nicht an anderer Stelle verwendet werden, da alle Ihre verschlüsselten Dateien durch sie geschützt sind.
Operationen mit GPG-Schlüsselservern
GPG-Schlüsselserver hosten öffentliche Schlüssel, damit diese gefunden werden können. gpg --send-keys KEYID --keyserver hkps://keys.openpgp.org lädt Ihren öffentlichen Schlüssel hoch. Andere können mit gpg --recv-keys KEYID suchen und ihn importieren. Schlüsselserver synchronisieren sich untereinander und stellen so eine weltweite Verfügbarkeit bereit. Moderne Schlüsselserver wie keys.openpgp.org erfordern vor der Veröffentlichung eine E-Mail-Verifizierung und verhindern dadurch Spam-Angriffe auf Schlüssel.
Ablauf und Widerruf von Schlüsseln
Ein Ablaufdatum für Ihren Schlüssel bietet automatisch Schutz, wenn Sie die Kontrolle darüber verlieren, ohne dass dafür ein Widerrufszertifikat erstellt werden muss. Wenn ein Schlüssel abläuft, warnt GPG Benutzer, die ihn als Verschlüsselungsziel verwenden. Wenn Ihr Schlüssel kompromittiert wurde, veröffentlichen Sie sofort ein Widerrufszertifikat (das beim Erzeugen des Schlüssels erstellt wurde) auf Schlüsselservern: gpg --import revocation.cert und gpg --send-keys. Dadurch wird eine weitere Verschlüsselung mit dem kompromittierten Schlüssel verhindert.
GPG in automatisierten Workflows
GPG kann in Skripten nicht interaktiv betrieben werden, indem Sie die Flags --batch und --yes verwenden und Passphrasen über --passphrase-fd zur Einlesung aus einem Dateideskriptor bereitstellen. Der GPG-Agent (gpg-agent) speichert die Passphrase für eine konfigurierbare Dauer im Cache und ermöglicht so ihre automatische Wiederverwendung. Für CI/CD-Pipelines sollten Schlüsselmaterialien in Systemen zur Geheimnisverwaltung und nicht im Quellcode oder in Umgebungsvariablen gespeichert werden.
GPG-Verschlüsselungsbefehl
Welcher GPG-Befehl verschlüsselt eine Datei für einen bestimmten Empfänger mithilfe dessen öffentlichen Schlüssels?
Zusammenfassung der GPG-Dateiverschlüsselung
GPG-Zusammenfassung: Generieren Sie Schlüsselpaare (bevorzugt Curve25519), exportieren und teilen Sie öffentliche Schlüssel, verschlüsseln Sie mit dem öffentlichen Schlüssel des Empfängers (--encrypt --recipient), signieren Sie Dateien separat mit Detached-Signaturen (--detach-sign), überprüfen Sie Signaturen mit --verify, schützen Sie private Schlüssel mit Passphrasen, legen Sie Ablaufdaten fest und erstellen Sie Widerrufszertifikate, und verwenden Sie Schlüsselserver zum Auffinden und Verteilen öffentlicher Schlüssel.
Häufig gestellte Fragen
Ist die Lektion „GPG für asymmetrische Dateiverschlüsselung“ kostenlos?
Ja — der vollständige Text von „GPG für asymmetrische Dateiverschlüsselung“ 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 „GPG für asymmetrische Dateiverschlüsselung“?
Verwenden Sie GPG, um Dateien für bestimmte Empfänger zu verschlüsseln, Inhalte zu signieren und den GPG-Schlüsselbund zu verwalten. 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 1 von 4.
Wie lange dauert die Lektion „GPG für asymmetrische Dateiverschlüsselung“?
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
- GPG für asymmetrische Dateiverschlüsselung
- Das Verschlüsselungstool age: moderne GPG-Alternative
- Verschlüsselte Container mit VeraCrypt
- Sicheres Löschen und Zerstören von Schlüsseln