Tôi cố gắng thêm mật khẩu vào trình quản lý mật khẩu của Pass pass. Nhưng những nỗ lực của tôi thất bại với lỗi không có lỗi công khai khóa GPG. Tại sao?


27

Tôi đang cố gắng cài đặt Pass: trình quản lý mật khẩu Unix tiêu chuẩn , tuy nhiên, khi tôi cố gắng thêm mật khẩu vào ứng dụng, tôi gặp các lỗi này

gpg: Kelly's Passwords: skipped: No public key
gpg: [stdin]: encryption failed: No public key

Khóa công khai GPG?

Khi tôi gõ lệnh gpg --list-keystôi nhận được:

/home/khays/.gnupg/pubring.gpg
------------------------------
pub   2048R/64290B2D 2012-11-05
uid                  Kelly Hays <hays.kelly@gmail.com>
sub   2048R/0DF57DA8 2012-11-05

Tôi hơi lạc lõng với cách khắc phục điều này, có ý tưởng nào không?

Câu trả lời:


28

Làm thế nào bạn tạo ra các cửa hàng mật khẩu? pass init "Kelly's Passwords"? Nếu vậy, điều này là sai, bạn nên gọi pass init 64290B2D.

Và nếu sau đó pass insert foosẽ thất bại với:

gpg: fooo: skipped: public key not found
gpg: [stdin]: encryption failed: public key not found

sau đó bạn phải tin tưởng chìa khóa riêng của bạn đầu tiên ( gpg --edit-key 64290B2D, trust, 5, save).


Tôi sẽ chỉ thêm cho những người chậm một bước như tôi, trước tiên bạn nên khởi tạo khóa gpg bằnggpg --generate-key
ItayB

2
@ItayB lệnh để tạo khóa gpg thực sự gpg --gen-key(trong gpg 1.4.20)
Rubanov

Trong một trường hợp, sử dụng gpg(phiên bản 1.4.20) trong Xubfox, luôn dẫn đến lỗi (tạo mật khẩu qua pass). Sử dụng gpg2(phiên bản 2.1.11) làm cho mọi thứ hoạt động tốt.
Nikos Alexandris

'Khóa', ví dụ 64290B2D, là bất cứ thứ gì bạn sử dụng để xác định khóa, trong trường hợp của tôi là một địa chỉ email, được tiết lộ là uid vớigpg -k
John Mee

5

Với cùng một chỉ dẫn, nếu bất kỳ ai vấp phải vấn đề này, giải pháp có thể hơi khác. Bạn passđang sử dụng gpg2thay vì gpg, bạn có thể đã sử dụng để tạo / quản lý khóa của mình (hoặc ngược lại). Xác minh với:

bash -x $(which pass) insert foo

2
WTF!? Tại sao cả gpg và gpg2 được cài đặt trên một hệ thống mới? Tại sao cả manpage pass và trang web của nó không quan tâm đến việc làm thế nào để tạo khóa gpg! @ # &% Chết tiệt ???
Tobia

2
Trong trường hợp người ta đã tạo GPG 1 - bạn có thể nhập nó vào GPG 2 như thế này:gpg2 --import ~/.gnupg/secring.gpg
maxschlepzig

2

Tôi đã gặp lỗi tương tự trong khi chạy bash trong gỡ lỗi là có ích. (bash -x), sau đó tôi nhận ra rằng pass đã liệt kê một khóa gpg không tồn tại trong .password-store / .gpg-id


1

Tôi đã nhận được cùng một lỗi, nhưng kiểm tra với gpg2 --list-keyscho tôi

pub   rsa4096/0x12345678 2016-11-22 [SC] [expired: 2018-11-26]

Vì vậy, giải pháp của tôi là

gpg --edit-key 0x12345678
gpg> expire
...
gpg> save

Xem https://unix.stackexchange.com/a/177310/14315

Nếu bạn phải gia hạn khóa con, hãy sử dụng:

> e.g. if the subkey whose validity you want to extend is the first listed
> subkey, or if it is the only listed subkey, then the  command would be
> Command> key 1
> this will put a * after the word sub, indicating that this particular
> subkey has been selected. then
> Command> expire
> and follow the prompts.

Nguồn https://lists.gnupg.org/pipermail/gnupg-users/2005-June/026063.html

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.