Aktualisierungen als RSS-Feed oder
auf unserem Twitter Account @PrHdb

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: 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 CAST5
personal-compress-preferences ZLIB BZIP2 ZIP cert-digest-algo SHA512

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

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

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

Auswahl und Stärtke 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 aktuell konfigurierten Default Preferenzen für Krypto-Algorithmen in den Schlüssel übernommen. GnuPG verwendet die für den Schlüssel gültigen Preferenzen immer dann, wenn keine Prefenrenzen in der Konfiguration angegeben wurden, wenn der Kommunikations­partner also keine persönlichen Preferenzen in seiner Config definiert hat.

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, wenn man sicherstellen will, dass auch alle Kommunikationspartner die eigenen Wünsche respektieren.

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 Prefenrencen 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: ZLIB, BZIP2, ZIP, nicht komprimiert
   Eigenschaften: MDC, Keyserver no-modify

gpg> setpref
Setze die Liste der Voreinstellungen auf:
   Verschlü.: AES256, AES192, AES, CAST5, 3DES
   Digest: SHA512, SHA384, SHA256, SHA224, SHA1
   Komprimierung: ZLIB, BZIP2, ZIP, 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