Dateien und E-Mails verschlüsseln mit GPG/PGP – Grundlagen | Enjyn Gruppe
Hallo Welt
Hallo Welt
Original Lingva Deutsch
Übersetzung wird vorbereitet...
Dieser Vorgang kann bis zu 60 Sekunden dauern.
Diese Seite wird erstmalig übersetzt und dann für alle Besucher gespeichert.
0%
DE Zurück zu Deutsch
Übersetzung durch Lingva Translate

303 Dokumentationen verfügbar

Wissensdatenbank

Verschlüsselung GPG PGP Grundlagen

Zuletzt aktualisiert: 05.04.2026 um 19:42 Uhr

Dateien und E-Mails verschlüsseln mit GPG/PGP – Grundlagen

Was ist asymmetrische Verschlüsselung?

Asymmetrische Verschlüsselung (auch Public-Key-Kryptographie genannt) basiert auf zwei mathematisch verbundenen Schlüsseln: einem öffentlichen Schlüssel (Public Key) und einem privaten Schlüssel (Private Key). Der öffentliche Schlüssel kann beliebig verteilt werden – nur der private Schlüssel kann Nachrichten entschlüsseln, die mit dem öffentlichen Schlüssel verschlüsselt wurden. Dies macht sichere Kommunikation über unsichere Kanäle möglich.

GPG vs. PGP – Der Unterschied

PGP (Pretty Good Privacy) ist das ursprüngliche kommerzielle Verschlüsselungsprogramm von Symantec. GPG (GNU Privacy Guard) ist eine freie, offene und lizenzfreie Implementierung des OpenPGP-Standards. GPG ist der Branchenstandard unter Linux und bietet identische Funktionalität wie PGP. Beide verwenden das gleiche Dateiformat und Schlüsselsystem.

💡 Tipp: GPG und PGP sind praktisch austauschbar. Ihre Schlüssel funktionieren in beiden Systemen.

Wichtige Konzepte

Public Key und Private Key

  • Public Key: Der öffentliche Schlüssel wird verteilt und darf jedem bekannt sein. Er verschlüsselt Daten, signiert Daten anderer Personen und prüft deren Signaturen.
  • Private Key: Der private Schlüssel bleibt auf Ihrem Computer und ist mit einer Passphrase geschützt. Er entschlüsselt Ihr Postfach und signiert Ihre Nachrichten.

Key Fingerprint

Der Fingerprint ist ein 40-stelliger Hexadezimalwert (oder gekürzt: 16 Zeichen), der den öffentlichen Schlüssel eindeutig identifiziert. Beispiel: 1A2B 3C4D 5E6F 7A8B 9C0D 1E2F 3A4B 5C6D 7E8F 9A0B. Er dient zur Verifizierung, dass der Schlüssel authentisch ist.

Key Server

Key Server sind öffentliche Datenbanken, auf denen Sie Ihren öffentlichen Schlüssel speichern, damit andere ihn finden und importieren können. Populäre Server sind keys.openpgp.org und pgp.mit.edu.

GPG Installation und erste Schritte

Installation

Unter Debian/Ubuntu:

sudo apt update
sudo apt install gnupg2

Unter RHEL/CentOS:

sudo yum install gnupg2

Überprüfen Sie die Installation:

gpg --version

Schlüsselpaar generieren

Ein neues Schlüsselpaar erstellen Sie mit:

gpg --gen-key

Sie werden interaktiv gefragt:

  • Art des Schlüssels (Standard: RSA und RSA)
  • Schlüssellänge (Standard: 3072 Bit, empfohlen: 4096 Bit für zusätzliche Sicherheit)
  • Gültigkeitsdauer (Standard: unbegrenzt oder z.B. 2 Jahre)
  • Name, E-Mail-Adresse und optionaler Kommentar
  • Sichere Passphrase

Beispiel für ein modernes Schlüsselpaar mit ed25519:

gpg --full-generate-key
# Wählen Sie: (11) ECC und ECC
# Kurve: ed25519
# Gültig für: 0 (unbegrenzt) oder 3y (3 Jahre)
⚠️ Wichtig: Wählen Sie eine starke Passphrase! Sie ist der einzige Schutz für Ihren privaten Schlüssel.

Schlüsselverwaltung

Schlüssel auflisten

Alle öffentlichen Schlüssel in Ihrer Keyring anzeigen:

gpg --list-keys

Alle privaten Schlüssel:

gpg --list-secret-keys

Mit Fingerprint:

gpg --list-keys --fingerprint

Öffentlichen Schlüssel exportieren

Um Ihren Schlüssel anderen zu geben oder zu verteilen:

gpg --export --armor 0x1A2B3C4D > mein-oeffentlicher-schluessel.asc

Oder spezifisch nach E-Mail:

gpg --export --armor max@beispiel.de > max-pubkey.asc

Ohne --armor wird binäres Format verwendet (weniger lesbar).

Öffentlichen Schlüssel importieren

Wenn Sie einen Schlüssel erhalten:

gpg --import max-pubkey.asc

Oder direkt von einem Key Server:

gpg --recv-keys 0x1A2B3C4D

Überprüfen Sie den Fingerprint des importierten Schlüssels:

gpg --fingerprint max@beispiel.de

Datei-Verschlüsselung

Datei verschlüsseln

Verschlüsseln Sie eine Datei mit dem öffentlichen Schlüssel des Empfängers:

gpg --encrypt --recipient 0x1A2B3C4D wichtig.pdf
# Oder mit E-Mail:
gpg --encrypt --recipient max@beispiel.de wichtig.pdf

Dies erstellt die Datei wichtig.pdf.gpg. Die Original-Datei bleibt unverändert.

Für mehrere Empfänger:

gpg --encrypt --recipient max@beispiel.de --recipient anna@beispiel.de dokument.txt

Datei entschlüsseln

Sie benötigen Ihren privaten Schlüssel und die Passphrase:

gpg --decrypt wichtig.pdf.gpg > wichtig.pdf
# Oder:
gpg --decrypt wichtig.pdf.gpg --output wichtig.pdf

Sie werden zur Eingabe Ihrer Passphrase aufgefordert.

Digitale Signaturen

Datei signieren

Eine Signatur beweist, dass Sie die Datei erstellt haben und sie seitdem nicht verändert wurde:

gpg --sign dokument.txt

Dies erstellt dokument.txt.gpg in binärem Format. Für ein lesbares Format mit integrierter Signatur:

gpg --clearsign dokument.txt

Dies erstellt dokument.txt.asc – die Original-Datei und die Signatur sind lesbar vermischt.

Signatur überprüfen

Die Signatur überprüfen:

gpg --verify dokument.txt.asc
# Ausgabe: Good signature from "Max Mustermann "

Oder um die Datei zu extrahieren:

gpg --decrypt dokument.txt.asc > dokument.txt

Verschlüsseln und signieren kombinieren

Um Ihre Nachricht zu verschlüsseln UND zu signieren:

gpg --sign --encrypt --recipient max@beispiel.de geheim.txt

Dies stellt sicher, dass:

  • Nur max@beispiel.de die Datei lesen kann (Verschlüsselung)
  • max nachweisen kann, dass Sie die Datei erstellt haben (Signatur)

E-Mail-Verschlüsselung

E-Mail-Inhalt verschlüsseln

Bereiten Sie E-Mail-Inhalte vor:

gpg --encrypt --recipient anna@beispiel.de --armor --output email.asc << EOF
Liebe Anna,
das ist eine vertrauliche Nachricht.
Viele Grüße
MAX
EOF

Die verschlüsselte Nachricht kopieren Sie dann in Ihr E-Mail-Programm.

Signierte E-Mail senden

Unterschreiben Sie Ihre E-Mail-Nachrichten:

echo "Vertrauliche Nachricht" | gpg --clearsign --armor
✅ Gut zu wissen: Viele E-Mail-Programme (Thunderbird mit Enigmail, Apple Mail mit GPGTools) integrierten Verschlüsselung. Dies ist einfacher als manuelle Kommandozeilen-Verschlüsselung.

Schlüsselserver nutzen

Öffentlichen Schlüssel hochladen

Um Ihren Schlüssel auf einem Key Server zu veröffentlichen:

gpg --send-keys --keyserver keys.openpgp.org 0x1A2B3C4D

Beliebte Keyserver:

  • keys.openpgp.org (modern, mit Verifizierung)
  • pgp.mit.edu (traditionell, zuverlässig)
  • keys.gnupg.net (bewährt)

Schlüssel vom Server abrufen

gpg --recv-keys --keyserver keys.openpgp.org 0x1A2B3C4D

Schlüssel-Vertrauen und Signatur

Trust-Level setzen

Wie sehr vertrauen Sie einem Schlüssel? Setzen Sie das Trust-Level:

gpg --edit-key 0x1A2B3C4D
# Dann interaktiv:
gpg> trust
# Wählen Sie 3 (vollständiges Vertrauen)

Trust-Level:

  • 1 = Unbekannt (unknown)
  • 2 = Nicht vertraut (don't trust)
  • 3 = Teilweise vertraut (marginal trust)
  • 4 = Vollständig vertraut (full trust)
  • 5 = Absolut vertraut (ultimate trust)

Schlüssel signieren (Key Signing)

Um Ihrem Vertrauen Nachdruck zu verleihen, signieren Sie andere Schlüssel:

gpg --sign-key 0x1A2B3C4D
# Bestätigen Sie Ihre Aktion mit 'y'

Dies weist andere Benutzer darauf hin, dass Sie den Schlüssel verifiziert haben.

Symmetrische Verschlüsselung (Passphrase)

Sie können auch ohne Schlüsselpaar mit nur einer Passphrase verschlüsseln:

gpg --symmetric geheim.txt

Dies erstellt geheim.txt.gpg und fordert zur Eingabe einer Passphrase auf. Zum Entschlüsseln:

gpg --decrypt geheim.txt.gpg

Praktisch, wenn Sender und Empfänger sich vorher auf eine Passphrase geeinigt haben – aber weniger sicher als asymmetrische Verschlüsselung.

Wichtige Dateien und Verzeichnisse

Pfad/Datei Funktion
~/.gnupg/ Haupt-Konfigurationsverzeichnis für GPG
~/.gnupg/pubring.gpg Ihre öffentlichen Schlüssel und die importierter Schlüssel
~/.gnupg/secring.gpg Ihre privaten Schlüssel (streng geheim!)
~/.gnupg/gpg.conf Konfigurationsdatei für GPG-Einstellungen
⚠️ Wichtig: Sichern Sie Ihren privaten Schlüssel! gpg --export-secret-keys --armor 0x1A2B3C4D > secret-key-backup.asc und speichern Sie ihn an einem sicheren, separaten Ort. Verlust bedeutet: Sie können alte Nachrichten nicht mehr entschlüsseln.

Praktische Workflow-Beispiele

Beispiel 1: Datei an Anna senden

gpg --encrypt --recipient anna@beispiel.de --armor budget.xlsx > budget.xlsx.asc
# Senden Sie budget.xlsx.asc über E-Mail

Beispiel 2: Konfigurationsdatei signieren

gpg --clearsign /etc/myapp/config.conf
# Erzeugt config.conf.asc
# Andere können die Signatur überprüfen:
gpg --verify config.conf.asc

Beispiel 3: Batch-Verschlüsselung mehrerer Dateien

for file in *.pdf; do
  gpg --encrypt --recipient max@beispiel.de "$file"
done

Häufige Fehler und Lösungen

„gpg: decryption failed: No secret key" – Sie haben keinen privaten Schlüssel für die Datei. Sie können sie nicht entschlüsseln.

„gpg: no default secret key" – Setzen Sie Ihren Standard-Schlüssel in ~/.gnupg/gpg.conf: default-key 0x1A2B3C4D

„Bad passphrase" – Sie haben die falsche Passphrase eingegeben. Versuchen Sie es erneut.

Zusammenfassung

GPG/PGP bietet sichere Verschlüsselung und digitale Signaturen für Dateien und E-Mails. Die Grundlagen sind:

  • Generieren Sie ein Schlüsselpaar (öffentlich + privat)
  • Teilen Sie Ihren öffentlichen Schlüssel
  • Importieren Sie Schlüssel anderer
  • Verschlüsseln Sie Daten mit öffentlichen Schlüsseln
  • Entschlüsseln Sie mit Ihrem privaten Schlüssel
  • Signieren Sie wichtige Dateien

Weiterführende Links

Enjix Beta

Enjyn AI Agent

Hallo 👋 Ich bin Enjix — wie kann ich dir helfen?
120