Я намагаюся додати паролі до диспетчера паролів. Але мої спроби не вдається з помилками GPG "без відкритого ключа". Чому?


27

Я намагаюся встановити Pass: стандартний менеджер паролів Unix , однак, коли я намагаюся додати паролі до програми, я отримую ці помилки

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

Громадські ключі GPG?

Коли я набираю команду, gpg --list-keysя отримую:

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

Я трохи втратив, як виправити це, будь-які ідеї?

Відповіді:


28

Як ви створили зберігання паролів? pass init "Kelly's Passwords"? Якщо так, це неправильно, ви б мали подзвонити pass init 64290B2D.

І якщо потім pass insert fooне вдасться:

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

то ви повинні довіряти свій власний ключ першим ( gpg --edit-key 64290B2D, trust, 5, save).


Я просто додам, що для тих, хто був на крок позаду, як я, слід спочатку init gpg key зgpg --generate-key
ItayB

2
@ItayB команда для створення ключа gpg насправді gpg --gen-key(в gpg 1.4.20)
Рубанов

В одному випадку використання gpg(версія 1.4.20) під Xubuntu завжди призводить до збоїв (генерування паролів через pass). Використання gpg2(версія 2.1.11) зробило все добре.
Нікос Олександріс

"Ключ", наприклад, 64290B2D, - це те, що ви використовували для ідентифікації ключа, у моєму випадку це електронна адреса, розкрита як нібиgpg -k
John Mee

5

З тими ж ознаками, якщо хтось натрапить на це питання, рішення може бути дещо іншим. Ви passвикористовуєте gpg2замість gpg, можливо, ви використовували для створення / управління своїми ключами (або, навпаки). Перевірте:

bash -x $(which pass) insert foo

2
WTF !? Чому і gpg, і gpg2 встановлені в свіжій системі? Чому ні прохідна сторінка, ні її веб-сайт не хочуть згадувати, як створити ключ! @ # &% Проклятий gpg ???
Тобія

2
Якщо ви вже створили GPG 1 - ви можете імпортувати його у GPG 2 так:gpg2 --import ~/.gnupg/secring.gpg
maxschlepzig

2

Я отримав таку ж помилку впродовж часу, що запуск bash у налагодженні допомагає. (bash -x), тоді я зрозумів, що пропуск вказав неіснуючий gpg-ключ у .password-store / .gpg-id


1

Я отримав таку ж помилку, але перевірка за допомогою gpg2 --list-keysдає мені

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

Тож моє рішення - це

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

Дивіться /unix//a/177310/14315

Якщо вам доведеться поновити підрозділи, скористайтеся цим:

> 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.

Джерело https://lists.gnupg.org/pipermail/gnupg-users/2005-June/026063.html

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.