Sind GnuPG 1 und GnuPG 2 miteinander kompatibel?

83

Mit Macports stelle ich fest, dass es Ports gnupgund einen neueren gibt gnupg2. Ich möchte GnuPG zum Verschlüsseln von Dateien verwenden. Sollte ich beides installieren, oder reicht nur eines aus? Wenn ich beide installiert habe, sind beide miteinander kompatibel? Ist es wichtig, welches ich zuerst installiere?

qazwsx
quelle

Antworten:

89

GnuPG 1

GnuPG 1.4 ("klassisch") bleibt für die Verwendung auf Embedded- und Servern erhalten, da es weniger Abhängigkeiten und kleinere Binärdateien bietet. Früher wurde es oft so installiert gpg, heute wird es häufiger benannt gpg1(je nach Distribution).

Aus der GnuPG 1.4-Manpage:

Dies ist die eigenständige Version von gpg. Für den Desktop-Einsatz sollten Sie in Betracht ziehen, gpg2das GnuPG-2-Paket zu verwenden (auf einigen Plattformen gpg2wird es unter dem Namen installiert gpg).

GnuPG 2

GnuPG 2.0 ist eine überarbeitete Version von GnuPG - Änderungen finden jedoch hauptsächlich auf interner Ebene statt. Die neuere Version ist in mehrere Module aufgeteilt, zum Beispiel gibt es auch Module für X.509 (von S / MIME verwendet).

Von man gpg2:

Im Gegensatz zur Standalone-Version gpg, die besser für Server- und Embedded-Plattformen geeignet ist, wird diese Version häufig unter dem Namen installiert gpg2und zielt eher auf den Desktop ab, da mehrere andere Module installiert werden müssen.

GnuPG 2.1

Eine wichtige Änderung kam mit GnuPG 2.1, das die zuvor getrennten öffentlichen und privaten Schlüsselbunde ( pubring.gpgvs. secring.gpg) in den öffentlichen Schlüsselbund kombiniert . Dies wurde so implementiert, dass die Kompatibilität gewahrt bleibt. Sie können GnuPG 1 also weiterhin verwenden, wenn GnuPG 2.1 den privaten Schlüsselbund integriert hat, aber Änderungen an den privaten Schlüsseln werden für die jeweils andere Implementierung nicht angezeigt. Aus dem Changelog :

[...] erlaubt die Koexistenz älterer GnuPG-Versionen mit GnuPG 2.1. Änderungen an den privaten Schlüsseln mit dem neuen gpg werden jedoch nicht angezeigt, wenn GnuPG-Versionen vor Version 2.1 und umgekehrt verwendet werden.


Um Ihre Frage direkt zu beantworten:

Sollte ich beides installieren, oder reicht nur eines aus? Ist es wichtig, welches ich zuerst installiere?

Installieren Sie einfach beide. Sie stören sowieso nicht. Installieren Sie gpg(falls nicht anders installiert) für andere Anwendungen, die darauf zugreifen (z. B. Paketmanager, E-Mail-Clients usw.), und gpg2für die "direkte Verwendung" in der Befehlszeile.

Wenn ich beide installiert habe, sind beide miteinander kompatibel?

Beide implementieren das OpenPGP-Protokoll, sodass sie hinsichtlich der zwischen ihnen ausgetauschten Daten miteinander kompatibel sind. Darüber hinaus verwenden sie (meistens) dieselben Befehle und Optionen, sodass Sie die meiste Zeit willkürlich zwischen ihnen wechseln können.

GnuPG 2.1 macht Änderungen am privaten Schlüsselbund für Implementierungen vor GnuPG 2.1 unsichtbar (siehe oben im Abschnitt zu GnuPG 2.1).

Jens Erat
quelle
1
gpg2scheint die privaten Schlüssel nicht zu sehen, die gpgsehen. Gibt zum Beispiel gpg2 --list-secret-keyskeine Ausgabe aus, gibt aber gpg --list-secret-keyseine Ausgabe aus.
Flimm
6
Genau das habe ich mit dem wichtigen Unterschied zwischen GnuPG 2 und 2.1 beschrieben: GnuPG 2.1 speichert private Schlüssel in einer anderen Datei. Ihre privaten Schlüssel werden in GnuPG 1.4 gespeichert secring.gpg, was von GnuPG 2.1 nicht abgefragt wird. Kopiere sie nach GnuPG 2.1 durch gpg --export-secret-keys [key-id] | gpg2 --import.
Jens Erat
gpg2 hat die gpg-schlüssel für mich (cygwin) automatisch importiert
lucidbrot
4
Diese Antwort ist möglicherweise etwas veraltet. Unter Ubuntu 18.04 bionic wird das gpgv1Paket als "veraltete" klassische "Version und gpgv2als" Dummy-Übergangspaket "beschrieben. Das Installieren des einfachen gpgPakets gibt gpg Version 2.2.4. Es sieht also so aus, als würde gpgv1 verschwinden und gpgv2 (einfach als "gpg" bezeichnet) ist der neue Standard.
Mark Doliner