Update der PGP-Key Signaturen

Zusammenfassung vom heise Artikel, wie man PGP-Key Signaturen auf den neuesten Stand bringt.

Problematische Signaturen aufspüren

$ gpg --export --armor <KeyID> >mykey.asc
$ gpg --list-packets mykey.asc
$ gpg --list-packets mykey.asc | grep -A2 ':signature packet:.*<KeyID>'

Alles was digest algo 2 steht für SHA1 enthält sollte aktualisiert werden:

:signature packet: algo 1, keyid 576822F9E1374764
    version 4, created 1381741909, md5len 0, sigclass 0x13
    digest algo 2, begin of digest 9b 07

Signatur mit dem expire-Trick erneuern

Zuerst Backup:

cp -rp ~/.gnupg ~/.gnupg.orig

Optimieren der gpg.conf:

vi ~/.gnupg/gpg.conf
# Liste der bevorzugten Algorithmen für neue Schlüssel
default-preference-list SHA512 SHA384 SHA256 SHA224 AES256 AES192 AES CAST5 ZLIB BZIP2 ZIP Uncompressed
# Bevorzugte Verschlüsselungsalgorithmen
personal-cipher-preferences AES256 AES192 AES CAST5
# Bevorzugte Hashalgorithmen
personal-digest-preferences SHA512 SHA256 SHA384 SHA224
# Hashalgorithmus zur Signatur von Schlüsseln
cert-digest-algo SHA512

Danach den Key im gpg editor öffnen und das expire des Keys auf irgend ein anderes Datum stellen (z.B. 90 Tage):

$ gpg --edit-key <KeyID>
# Hier wird Passphrase oder SmartCard PIN erfragt
gpg> expire

Die noch aktiven subkeys nicht vergessen:

gpg> key 4
gpg> expire

Die Präferenzen im Schlüssel setzen:

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)

Die alten signaturen entfernen lassen:

gpg> clean

Jetzt das ursprünglich gesetzte expire Date bei allen Keys wieder setzen und speichern.

gpg> expire
gpg> save

Zum Schluss überprüfen, ob die Signaturen aktuell digest algo 8 (SHA256), 9 (SHA384) und 10 (SHA512) sind:

$ gpg --export <KeyID> | gpg --list-packets | grep -A 2 signature 

Veröffentlichen

Der Key kann nun wieder exportiert, versandt oder auf einem Keyserver veröffentlicht werden.

See Also