Подтвердить что ты не робот

GnuPG: "ошибка дешифрования: секретный ключ недоступен" из gpg в Windows

Окружающая среда: ноутбук HP с Windows XP SP2

Я создал несколько зашифрованных файлов, используя GnuPG (gpg) для Windows. Вчера мой жесткий диск потерпел неудачу, поэтому я снова набрал жесткий диск. Теперь я переустановил gpg и обновил свои ключи, используя ту же кодовую фразу, что и раньше. Но теперь я не могу расшифровать файлы. Я получаю следующую ошибку:

C:\sureshr>gpg -a c:\sureshr\work\passwords.gpg
gpg: encrypted with 1024-bit ELG-E key, ID 279AB302, created 2008-07-21
      "Suresh Ramaswamy (AAA) BBB"
gpg: decryption failed: secret key not available

C:\sureshr>gpg --list-keys
C:/Documents and Settings/sureshr/Application Data/gnupg\pubring.gpg
--------------------------------------------------------------------
pub   1024D/80059241 2008-07-21
uid                  Suresh Ramaswamy (AAA) BBB
sub   1024g/279AB302 2008-07-21

AAA = комментарий gpg
BBB = мой адрес электронной почты

Я уверен, что использую правильную кодовую фразу. Что именно означает эта ошибка? Как сообщить gpg, где найти секретный ключ?

Спасибо,

Суреш

4b9b3361

Ответ 1

Вам нужно импортировать не только ваш секретный ключ, но и соответствующий открытый ключ, либо вы получите эту ошибку.

Ответ 2

при повторной передаче ваших ключей из старой брелоки вам нужно указать команду:

gpg --allow-secret-key-import --import <keyring>

иначе он будет импортировать только открытые ключи, а не закрытые ключи.

Ответ 3

Да, ваш секретный ключ отсутствует. Без него вы не сможете расшифровать файлы.

У вас есть ключ где-то?

Повторное создание ключей, независимо от того, используете ли вы одну и ту же кодовую фразу или нет, не будет работать. Каждая пара ключей уникальна.

Ответ 4

workmad3, по-видимому, устарел, по крайней мере, для текущего gpg, поскольку --allow-secret-key-import теперь устарел и ничего не делает.

Что случилось со мной, так это то, что я не смог правильно экспортировать. Просто выполнение gpg --export не является адекватным, поскольку оно только экспортирует открытые ключи. При экспорте ключей вам необходимо выполнить

gpg --export-secret-keys >keyfile

Ответ 5

Еще одна причина для сообщения "секретного ключа недоступна": несоответствие версии GPG.

Практический пример: я использовал GPG v1.4. Переключая упаковочные системы, MacPorts, поставляемый gpg, был удален и показал еще один бинарный файл gpg в пути, это одна версия 2.0. Для дешифрования он не смог найти секретный ключ и дал эту самую ошибку. Для шифрования он жаловался на непригодный открытый ключ. Однако gpg -k и -K оба отображали действительные ключи, что было причиной большой путаницы.

Ответ 6

Решение этой проблемы для меня состояло в том, чтобы уведомить отправителя, что он использовал открытый ключ, который я им отправил, а скорее кто-то. Вы должны увидеть ключ, который они использовали. Скажите им, чтобы они использовали правильный.