Aktualisierungen als RSS-Feed oder im Changelog.

Privacy-Handbuch

iconGnuPG ist eine frei nutzbare Implementierung des OpenPGP Standards zur Verschlüsselung und Signierung von Daten. Es wird vom GNU Projekt ständig weiterentwickelt. Das Add-on Enigmail für Thunderbird verwendet GnuPG 2.x.

Verbesserte Konfiguration

In der Konfigurationsdatei "gpg.conf" kann man nach der Installation ein paar kleine Verbesserungen vornehmen. Die Datei findet man in folgenden Verzeichnissen und muss evtl. neu angelegt werden: Die Datei kann man mit einem Texteditor bearbeiten und folgende Optionen ergänzen bzw. durch Entfernen des Kommentarzeichens "#" aktivieren: # keine Informationen über Softwareversion und Betriebssystem einfügen
no-emit-version
no-comments

display-charset utf-8

# 16-stellige Key-IDs verwenden statt 8-stelliger (schwerer zu faken)
keyid-format 0xlong

# Empfohlene Preferenzen für Krypto Algorithmen
personal-digest-preferences SHA512 SHA384 SHA256
personal-cipher-preferences AES256 AES192 AES TWOFISH
personal-compress-preferences Uncompressed ZIP ZLIB BZIP2
default-preference-list SHA512 SHA384 SHA256 AES256 AES192 AES Uncompressed

# Signaturalgorithmus für Beglaubigungen
cert-digest-algo SHA512

# Einstellungen für symmetrische Verschlüsselung
s2k-cipher-algo AES256
s2k-digest-algo SHA384

# Cipher mit 64 Bit Blockgröße deaktivieren, weil sie
# schwach sind und ohne MDC verwendet werden (siehe: #Efail)
disable-cipher-algo 3DES
disable-cipher-algo IDEA

# SHA1 als schwachen Algorithmus markieren (wie MD5)
weak-digest SHA1

# sonstiges
fixed-list-mode
verify-options show-uid-validity
list-options show-uid-validity

# Keine automatische Suche nach fehlenden Keys im DNS oder auf WKS-Servern
auto-key-locate local

# Keyserver Optionen
keyserver-options no-honor-keyserver-url,no-auto-key-retrieve,no-include-revoked

Auswahl und Stärke der OpenPGP Schlüssel 

Aktuelle GnuPGP Versionen unterstützen neben RSA und DSA Schlüsseln mit bis zu 4096 Bit Länge auch Schlüssel auf Basis elliptischer Kurven. Die Auswahl aller Optionen erhält man, wenn GnuPG auf der Kommandozeile im Experten-Modus aufgerufen wird: > gpg2 --expert --full-gen-key Welche Schlüssel sollte man nutzen? Ein paar Gedanken zur Auswahl:
  1. RSA Schlüssel werden von allen PGP Implementierungen problemlos verwendet. Bei ausreichender Schlüssellänge > 2000 Bit gelten diese Schlüssel als sicher.
  2. Das BSI ist derzeit der Meinung, dass RSA Schlüssel mit einer Länge von 2048 Bit bis 2022 eingesetzt werden können (BSI TR-02102-1). (Wenn man also jetzt einen neuen Schlüssel generiert, der für 5 Jahre gültig ist und dann möglicherweise verlängert werden soll, dann sollte man mindestens 3072 Bit Schlüssellänge wählen.)
  3. Schlüssel auf Basis elliptischer Kurven werden nur in aktuellen PGP Implementierungen unterstützt, die sich aber noch nicht überall durchgesetzt haben.
  4. Für den Einsatz elliptischer Kurven in PGP gibt es folgende Standards:
    • RFC 6637 der IETF empfiehlt die NIST-Kurven P-256, P-384 und P-512 für PGP.
    • Die Java Bibliothek BountyCastle sowie PGP Implemtierungen für C# und VB.net können außerdem mit den Brainpool Kurven nach RFC 5639 umgehen.
    • Das GnuPGP Team hat mit RFC 4880bis Draft eine Erweiterung vorgeschlagen, neben den NIST und Brainpool Kurven auch die Unterstützung für die Kurven Ed25519 und Curve25519 von D.J. Bernstein in PGP zu integrieren. Dieser Draft ist bisher nur in GnuPG v. 2.1.x umgesetzt.
    Wer jetzt schon Schlüssel auf Basis elliptischer Kurven verwendet, muss mit Problemen bei einigen Empfängern rechnen, insbesondere mit den Bernstein Kurven.
Wir empfehlen derzeit für langfristige Nutzung RSA Schlüssel mit 4096 Bit Länge.

Alte PGP-Schlüssel aufmotzen

Bei der Erstellung eines OpenPGP Schlüssel werden die aktuellen Default Preference List für Krypto-Algorithmen in den Schlüssel übernommen. GnuPG verwendet die für den Schlüssel gültigen Preferenzen immer dann, wenn keine Preferenzen in der Konfiguration angegeben wurden, wenn der Kommunikations­partner also keine persönlichen Preferenzen definiert.

Wenn man vor einigen Jahren seinen Schlüssel erstellt hat, dann wird in diesem Fall beispielsweise das angeknackste SHA-1 als Digest-Algorithmus bevorzugt verwendet. Man muss die persönlichen Preferenzen auch in die eigenen Schlüssel übernehmen und die Schlüssel danach neu verteilen.

Das geht nur auf der Kommandozeile. Man muss das GnuPG Kommandozeilen Tool gpg2 mit der Option "--edit-key" und der Key-ID aufrufen. Danach kann man sich mit dem Kommando "showpref" die aktuellen Preferencen für diesen Schlüssel anzeigen lassen und mit dem Kommando "setpref" die Default-Liste übernehmen: > gpg2 --edit-key mustermann@server.tld
gpg (GnuPG) 2.1.x; Copyright (C) 2016 Free Software Foundation, Inc.
...
gpg> showpref
[ unbekannt ] (1). Max Mustermann <mustermann@server.tld>
   Verschlü.: AES256, AES192, AES, CAST5, 3DES
   Digest: SHA1, SHA256, RIPEMD160
   Komprimierung: nicht komprimiert, ZLIB, BZIP2, ZIP
   Eigenschaften: MDC, Keyserver no-modify

gpg> setpref
Setze die Liste der Voreinstellungen auf:
   Verschlü.: AES256, AES192, AES, 3DES
   Digest: SHA512, SHA384, SHA256, SHA1
   Komprimierung: nicht komprimiert
   Eigenschaften: MDC, Keyserver no-modify
Die Voreinstellungen wirklich ändern? (j/N) j
...
Sie benötigen die Passphrase, um den geheimen Schlüssel zu entsperren.
Benutzer: "Max Mustermann <mustermann@server.tld>"
...
gpg> quit
Änderungen speichern? (j/N) j
Lizenz: Public Domain