Чи сумісні між собою GnuPG 1 і GnuPG 2?


83

З Macports я розумію, що є порти gnupgі новіші gnupg2. Я хотів би використовувати GnuPG для шифрування файлів. Потрібно встановити обидва, або достатньо лише одного? Якщо я встановив обидва, чи сумісні вони обидві? Чи має значення, який з них я встановлюю першим?

Відповіді:


89

GnuPG 1

GnuPG 1.4 ("класичний") залишатиметься для вбудованого та серверного використання, оскільки він приносить менше залежностей та менших двійкових файлів. Раніше його часто встановлювали як gpg, сьогодні його частіше називають gpg1(залежно від розповсюдження).

На головній сторінці GnuPG 1.4:

Це автономна версія gpg. Для використання на робочому столі слід розглянути можливість використання gpg2з пакету GnuPG-2 (на деяких платформах gpg2встановлено під назвою gpg)

GnuPG 2

GnuPG 2.0 - це перероблена версія GnuPG - але зміни в основному на внутрішньому рівні. Більш нова версія розбита на кілька модулів, наприклад, є також модулі для X.509 (використовуються S / MIME).

Від man gpg2:

На відміну від автономної версії gpg, яка більше підходить для серверних та вбудованих платформ, ця версія зазвичай встановлюється під назвою gpg2та більше орієнтована на робочий стіл, оскільки вимагає встановлення кількох інших модулів.

GnuPG 2.1

Важлива зміна відбулася з GnuPG 2.1, який поєднує раніше відкриті та приватні брелоки ( pubring.gpgпроти secring.gpg) у відкритий брелок. Це було реалізовано таким чином, щоб зберігати речі сумісні, тому ви все ще можете використовувати GnuPG 1, коли GnuPG 2.1 інтегрує приватний брелок, але зміни в приватних ключах не відображатимуться для відповідної іншої реалізації. З журналу змін :

[...] дозволяє співіснувати старіші версії GnuPG з GnuPG 2.1. Однак будь-які зміни приватних ключів за допомогою нового gpg не відображатимуться при використанні версій GnuPG до 2.1, і навпаки.


Щоб безпосередньо відповісти на ваше запитання:

Потрібно встановити обидва, або достатньо лише одного? Чи має значення, який з них я встановлюю першим?

Просто встановіть обидва. Вони ніяк не заважають. Встановіть gpg(якщо все-таки не встановлено) для інших програм, які отримують доступ до нього (наприклад, менеджери пакетів, поштові клієнти, ...), і gpg2для "прямого використання" в командному рядку.

Якщо я встановив обидва, чи сумісні вони обидві?

Обидва реалізують протокол OpenPGP, тому вони сумісні один з одним щодо даних, якими вони поділяються. Крім того, вони (в основному) використовують одні і ті ж команди та параметри, тому більшу частину часу ви можете перемикатися між ними довільно.

GnuPG 2.1 вносить зміни в приватний брелок, невидимий для виконання перед GnuPG 2.1 (див. Вище в розділі GnuPG 2.1).


1
gpg2схоже, не бачить приватних ключів, які gpgбачить. Наприклад, gpg2 --list-secret-keysне дає виводу, але gpg --list-secret-keysдає вихід.
Flimm

6
Саме так я описав важливу різницю між GnuPG 2 та 2.1: GnuPG 2.1 зберігає приватні ключі в іншому файлі. Ваші приватні ключі зберігаються в GnuPG 1.4 secring.gpg, що не запитується GnuPG 2.1. Скопіюйте їх у GnuPG 2.1 наскрізь gpg --export-secret-keys [key-id] | gpg2 --import.
Єнс Ерат

gpg2 фактично автоматично імпортував для мене клавіші gpg (cygwin)
lucidbrot


4
Ця відповідь може бути трохи застарілою. У Ubuntu 18.04 bionic gpgv1пакунок описаний як "застаріла" класична "версія" і gpgv2описується як "фіктивний перехідний пакет". Встановлення простого gpgпакету надає gpg версії 2.2.4. Отже, виявляється, що gpgv1 відходить, а gpgv2 (іменується просто як "gpg") - це новий стандарт.
Марк Долінер
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.