Ответ 1
Вам нужно импортировать не только ваш секретный ключ, но и соответствующий открытый ключ, либо вы получите эту ошибку.
Окружающая среда: ноутбук 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, где найти секретный ключ?
Спасибо,
Суреш
Вам нужно импортировать не только ваш секретный ключ, но и соответствующий открытый ключ, либо вы получите эту ошибку.
при повторной передаче ваших ключей из старой брелоки вам нужно указать команду:
gpg --allow-secret-key-import --import <keyring>
иначе он будет импортировать только открытые ключи, а не закрытые ключи.
Да, ваш секретный ключ отсутствует. Без него вы не сможете расшифровать файлы.
У вас есть ключ где-то?
Повторное создание ключей, независимо от того, используете ли вы одну и ту же кодовую фразу или нет, не будет работать. Каждая пара ключей уникальна.
workmad3, по-видимому, устарел, по крайней мере, для текущего gpg, поскольку --allow-secret-key-import
теперь устарел и ничего не делает.
Что случилось со мной, так это то, что я не смог правильно экспортировать. Просто выполнение gpg --export
не является адекватным, поскольку оно только экспортирует открытые ключи. При экспорте ключей вам необходимо выполнить
gpg --export-secret-keys >keyfile
Еще одна причина для сообщения "секретного ключа недоступна": несоответствие версии GPG.
Практический пример: я использовал GPG v1.4. Переключая упаковочные системы, MacPorts, поставляемый gpg, был удален и показал еще один бинарный файл gpg в пути, это одна версия 2.0. Для дешифрования он не смог найти секретный ключ и дал эту самую ошибку. Для шифрования он жаловался на непригодный открытый ключ. Однако gpg -k и -K оба отображали действительные ключи, что было причиной большой путаницы.
Решение этой проблемы для меня состояло в том, чтобы уведомить отправителя, что он использовал открытый ключ, который я им отправил, а скорее кто-то. Вы должны увидеть ключ, который они использовали. Скажите им, чтобы они использовали правильный.