![解密 .gpg 檔案時發生錯誤](https://rvso.com/image/1475784/%E8%A7%A3%E5%AF%86%20.gpg%20%E6%AA%94%E6%A1%88%E6%99%82%E7%99%BC%E7%94%9F%E9%8C%AF%E8%AA%A4.png)
我在解密 .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