解密 .gpg 檔案時發生錯誤

解密 .gpg 檔案時發生錯誤

我在解密 .gpg 檔案時遇到錯誤。我已經透過以下方法匯入了公鑰。

$gpg --import key1.asc
directory `/user_home/.gnupg' created

gpg: new configuration file
`/user_home/.gnupg/gpg.conf' created

gpg: WARNING: options in `/user_home/.gnupg/gpg.conf' are not yet active during this
run

gpg: keyring `/user_home/.gnupg/secring.gpg' created
gpg: keyring `/user_home/.gnupg/pubring.gpg' created
gpg: /user_home/.gnupg/trustdb.gpg: trustdb created
gpg: key 3CDDKLPD: public key imported
gpg: Total number processed: 1
gpg:imported: 1  (RSA: 1)

$gpg --import key2.asc
gpg: key 4F23B654: public key imported
gpg: Total number processed: 1
gpg: imported: 1  (RSA: 1)

$gpg --list-public-keys
/user_home/.gnupg/pubring.gpg
pub   2048R/3CDDKLPD

uid                 
pub   2048R/4F23B654
uid

$gpg --decrypt myfile.txt.gpg
gpg: encrypted with 2048-bit RSA key, ID 4F23B654, created 2010-07-11

gpg: decryption failed: No secret keykey

雖然會發生此錯誤,但有人可以幫助確定為什麼會發生這種情況嗎?我會很感激的。

答案1

他們應該對發送給您的文件進行加密以進行解密你的公鑰,您應該加密檔案以便它們解密他們的公鑰。看來他們用他們的公鑰而不是你的公鑰加密了文件,所以由於你沒有他們的私鑰,所以你無法解密這些文件。

我會聯繫他們,要求他們確認已導入您的公鑰並將其重新發送給他們,向他們展示您在上面發布的詳細信息,並要求他們使用您的公鑰對其進行加密,然後將其重新發送給您再次嘗試解密。

如果您正在測試以確保可以使用私鑰解密文件,則使用您自己的公鑰加密測試文件,而不是使用您沒有相關私鑰進行解密的其他人的文件,這就是這種類型的金鑰對加密/解密有效。


您導入他們的公鑰以在發送給他們之前使用此加密文件

$gpg --import key2.asc

gpg: key 4F23B654: public key imported

gpg: Total number processed: 1

gpg: imported: 1  (RSA: 1)

您解密他們發送給您的文件,但收到一條錯誤訊息,指出您確實擁有解鎖該文件的金鑰對,因為他們使用自己的公鑰而不是您的公鑰對其進行了加密。只有他們才能解鎖/解密使用其公鑰加密的文件,這就是為什麼它是您可以與任何人共享的公鑰。

$gpg --decrypt myfile.txt.gpg

gpg: encrypted with 2048-bit RSA key, ID 4F23B654, created 2010-07-11

gpg: decryption failed: No secret key

相關內容