Mã hóa và ký với khóa bí mật cụ thể


20

Tôi có khóa thẻ thông minh OpenPGP (YubiKey NEO) cũng như khóa bí mật cục bộ được cài đặt trong khóa GnuPG của tôi.

Tôi muốn mã hóa và ký một tập tin bằng khóa thẻ của tôi, không phải là khóa trong khóa của tôi. Làm cách nào tôi có thể chỉ định khóa nào tôi muốn đăng nhập?

Nếu id khóa bí mật hệ thống tập tin của tôi là DEADBEEFvà khóa thẻ thông minh của tôi là DEADBEE5, làm thế nào để tôi ký với khóa đó?

Câu trả lời:


11

Bạn nên chỉ định --default-key:

gpg -s --default-key DEADBEE5 input > output

và kiểm tra sau đó với

gpg -d < output | head -1

Từ gpg mantrang ( --signphần):

Khóa được sử dụng để ký được chọn theo mặc định hoặc có thể được đặt bằng các tùy chọn --local-user và --default-key.


gpg: conflicting commandskhi tôi cố gắng mã hóa và ký tên.
Naftuli Kay

@NaftuliTzviKay Xin lỗi --sign-key là để ký các khóa khác với một khóa cụ thể. Tôi đã cập nhật câu trả lời (và đã kiểm tra trước lần này).
Anthon

--default-*làm cho rất ít ý nghĩa trên dòng lệnh. Các tùy chọn này là cho tập tin cấu hình.
Hauke ​​Laging

1
Sự khác biệt giữa --local-user--default-key--local-usersẽ đưa ra một lỗi nếu bạn chỉ định khóa không tồn tại. Với --default-key, nó sẽ bỏ qua một khóa không tồn tại và sử dụng khóa đầu tiên trong quá trình khóa.
wvducky

15

Khóa ký được chọn với -u/ --local-user:

gpg --local-user 0xDEADBEE5 --sign file

Tùy chọn này có thể được đưa ra nhiều lần để kết hợp chữ ký của một số khóa:

gpg --local-user 0xDEADBEE5 --local-user 0x12345678 --sign file

Theo trang người đàn ông sử dụng --local-usercũng giống như sử dụng --default-usernhư trong câu trả lời của tôi
Anthon

1
@Anthon Nó dẫn đến kết quả tương tự. Điều đó không có nghĩa là --default-*nên được khuyến nghị cho việc sử dụng này. Tôi đã ở trong danh sách gửi thư của GnuPG trong nhiều năm. Tôi chưa bao giờ thấy một cái gì đó như thế trước đây.
Hauke ​​Laging

Vâng, có vẻ như vấn đề đã xuất hiện một lần trên người dùng gnupg và rằng bạn là người đã cung cấp câu trả lời với việc bạn đọc trang người đàn ông ;-). Đối với tôi, việc chỉ định một tùy chọn với -keytên của nó cảm thấy phù hợp hơn nhiều khi tôi muốn sử dụng một khóa cụ thể hơn là chỉ định một cái gì đó với -userYMMV.
Anthon

4
Tôi nghĩ rằng @Anthon có nghĩa là --default-keytrong nhận xét của mình ở trên. Chạy theo điều đó, một điểm khác biệt giữa --local-user--default-keytheo kinh nghiệm của tôi, là lần đầu tiên thất bại nếu không có khóa khớp, trong khi khóa thứ hai sẽ rơi trở lại các khóa khác. Vì lý do đó, tôi rất cảnh giác khi đưa --default-keyvào các kịch bản.
Jack O'Connor

Tôi đã thử nghiệm và xác nhận nhận xét của @ JackO'Connor với gpg 2.2.4. Người đàn ông đã --default-keynóiIf there is no secret key available for any of the specified values, GnuPG will not emit an error message but continue as if this option wasn't given.
wvducky
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.