GnuPG 1 và GnuPG 2 có tương thích với nhau không?


83

Với Macports, tôi nhận ra rằng có các cổng gnupgvà mới hơn gnupg2. Tôi muốn sử dụng GnuPG để mã hóa tập tin. Tôi nên cài đặt cả hai, hoặc chỉ một là đủ? Nếu tôi cài đặt cả hai, cả hai đều tương thích với nhau? Có vấn đề nào tôi cài đặt vấn đề đầu tiên không?

Câu trả lời:


89

GẠCH 1

GnuPG 1.4 ("cổ điển") sẽ được sử dụng cho máy chủ và nhúng, vì nó mang lại ít phụ thuộc hơn và các nhị phân nhỏ hơn. Trước đây, nó thường được cài đặt như gpgngày nay, nó thường được đặt tên hơn gpg1(tùy thuộc vào phân phối).

Từ trang man GnuPG 1.4:

Đây là phiên bản độc lập của gpg. Để sử dụng máy tính để bàn, bạn nên cân nhắc sử dụng gpg2từ gói GnuPG-2 (Trên một số nền tảng gpg2được cài đặt dưới tên gpg)

GẠCH 2

GnuPG 2.0 là phiên bản được thiết kế lại của GnuPG - nhưng những thay đổi chủ yếu ở cấp độ nội bộ. Phiên bản mới hơn được chia thành nhiều mô-đun, ví dụ, cũng có các mô-đun cho X.509 (được sử dụng bởi S / MIME).

Từ man gpg2:

Trái ngược với gpg phiên bản độc lập, phù hợp hơn cho máy chủ và nền tảng nhúng, phiên bản này thường được cài đặt dưới tên gpg2và được nhắm mục tiêu nhiều hơn cho máy tính để bàn vì nó yêu cầu một số mô-đun khác được cài đặt.

GnuPG 2.1

Một thay đổi quan trọng đã đến với GnuPG 2.1, kết hợp các dây khóa công khai và riêng tư ( pubring.gpgso với secring.gpg) trước đây thành khóa công khai. Điều này đã được triển khai theo cách giữ cho mọi thứ tương thích, vì vậy bạn vẫn có thể sử dụng GnuPG 1 khi GnuPG 2.1 tích hợp khóa riêng, nhưng các thay đổi đối với khóa riêng sẽ không hiển thị cho việc triển khai khác tương ứng. Từ thay đổi :

[...] Cho phép cùng tồn tại các phiên bản GnuPG cũ hơn với GnuPG 2.1. Tuy nhiên, bất kỳ thay đổi nào đối với các khóa riêng bằng cách sử dụng gpg mới sẽ không hiển thị khi sử dụng các phiên bản GnuPG trước 2.1 và ngược lại.


Để trực tiếp trả lời câu hỏi của bạn:

Tôi nên cài đặt cả hai, hoặc chỉ một là đủ? Có vấn đề nào tôi cài đặt vấn đề đầu tiên không?

Chỉ cần cài đặt cả hai. Dù sao họ cũng không can thiệp. Cài đặt gpg(nếu không được cài đặt) cho các ứng dụng khác truy cập nó (như trình quản lý gói, ứng dụng thư khách, ...) và gpg2để "sử dụng trực tiếp" trên dòng lệnh.

Nếu tôi cài đặt cả hai, cả hai đều tương thích với nhau?

Cả hai đều thực hiện giao thức OpenPGP, vì vậy chúng tương thích với nhau về dữ liệu được chia sẻ giữa chúng. Ngoài ra, họ (hầu hết) sử dụng các lệnh và tùy chọn giống nhau, vì vậy hầu hết thời gian bạn có thể chuyển đổi giữa chúng tùy ý.

GnuPG 2.1 làm cho các thay đổi đối với khóa riêng tư trở nên vô hình đối với các triển khai trước GnuPG 2.1 (xem phần trên trong phần GnuPG 2.1).


1
gpg2dường như không thấy các khóa riêng mà gpgnhìn thấy. Chẳng hạn, gpg2 --list-secret-keyskhông cho đầu ra, nhưng gpg --list-secret-keyskhông cho đầu ra.
Flimm

6
Đây chính xác là những gì tôi đã mô tả với sự khác biệt quan trọng giữa GnuPG 2 và 2.1: GnuPG 2.1 lưu trữ khóa riêng trong một tệp khác. Các khóa riêng của bạn được lưu trữ trong GnuPG 1.4 secring.gpg, không được truy vấn bởi GnuPG 2.1. Sao chép chúng vào GnuPG 2.1 thông qua gpg --export-secret-keys [key-id] | gpg2 --import.
Jens Erat

gpg2 thực sự tự động nhập các khóa gpg cho tôi (cygwin)
lucidbrot


4
Câu trả lời này có thể là một chút lỗi thời. Trên Ubuntu 18.04 bionic, gpgv1gói được mô tả là "phiên bản" cổ điển "không dùng nữa" và gpgv2được mô tả là "gói chuyển tiếp giả". Cài đặt gpggói đơn giản cho gpg phiên bản 2.2.4. Vì vậy, có vẻ như gpgv1 sẽ biến mất và gpgv2 (được gọi đơn giản là "gpg") là tiêu chuẩn mới.
Mark Doliner
Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.