Nhận thông tin từ tệp khóa công khai gpg bọc thép


21

Khi được cung cấp một tệp có khóa GnuPG công khai được bọc thép, tức là tệp ( pubkey.gpg) được tạo bằng:

gpg -r 0xDEADBEEF --export --armored > pubkey.gpg

Cách tốt nhất để có được thông tin như in dấu vân tay trong tập tin đó, mà không nhập nó vào khóa của tôi là gì?

Cách tốt nhất tôi tìm thấy cho đến nay (và tôi không hài lòng) là:

gpg --dry-run --import pubkey.gpg

Đương nhiên, tôi đã trang trí trang gpg, nhưng không tìm thấy giải pháp rõ ràng.

Câu trả lời:


7

Tôi không biết rằng gpg có một tùy chọn cho việc này, nhưng đây là cách giải quyết linh hoạt hơn để trích xuất thông tin từ tệp chính:

mkdir temp-gnupg-dir
export GNUPGHOME=temp-gnupg-dir
gpg --import pubkey.gpg
gpg --list-keys
rm -r temp-gnupg-dir

Thay vì GNUPGHOMEbiến môi trường, bạn có thể chuyển --homedir=temp-gnupg-dirđến mọi lệnh gọi gpg.


Điều này không đẹp, nhưng thật hữu ích khi biết những tùy chọn nào không có sẵn và đây một giải pháp. Vì vậy, tôi cảm ơn bạn vì điều đó.
Chen Levy

1
Trong khi điều này sẽ làm việc, nó phức tạp hơn mức cần thiết. Dưới đây tôi đã đăng tải cách thực hiện mà không cần chuyển đổi hoặc nhập móc khóa.
jm3

17

Để in dấu vân tay của khóa bọc thép trên đĩa mà không cần nhập, chỉ cần sử dụng --with-fingerprint:

> gpg --with-fingerprint jm3.asc

pub  1024R/9112BC51 1996-02-05 john manoogian <jm3@*>
Key fingerprint = C9 DC 27 29 0E 1A DB 50  21 C8 64 08 15 29 41 86

uid                            john manoogian <jm3@foo...
uid                            john manoogian <jm3@bar...
uid                            john manoogian <jm3@baz...
uid                            john manoogian <jm3@qux...

Võngà!


Điều này sẽ tạo một thư mục gnupg và một khóa mặc định nếu không tồn tại. Câu trả lời được chấp nhận không có tác dụng phụ đó.
Etan Reisner

--with-fingerprinttùy chọn .
x-yuri

1
Điều này không còn hoạt động. Phiên bản gpg của tôi là 2.2.5.
Dan Milon

5

Bạn có thể kiểm tra trình hiển thị gói PGP của Kazu Yamamoto, hiển thị định dạng gói của OpenPGP (RFC 4880) và PGP phiên bản 2 (RFC 1991).

Để tìm nạp và biên dịch:

git clone http://github.com/kazu-yamamoto/pgpdump
cd pgpdump
./configure --prefix=/usr/local/ && make && sudo make install

Sử dụng nó thậm chí còn đơn giản hơn:

pgpdump pubkey.gpg

Ngoài ra còn có một giao diện cgi-bin có sẵn trên trang web này: http://www.pgpdump.net/cgi-bin/pgpdump


1
Điều này thật tuyệt! Và với một đồng nghiệp Haskeller Kazu :) BTW, pgpdump được đóng gói bởi Debian (và có thể cả các bản phát hành khác nữa), vì vậy hãy kiểm tra nó trong kho trước khi tự biên dịch nó.
La Mã Cheplyaka

3
Có một tương tự như pgpdump nhưng không phải là đầu ra dài dòng từgpg --list-packets
JSmith
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.