1 回答

TA貢獻(xiàn)1818條經(jīng)驗(yàn) 獲得超7個(gè)贊
我遇到了與 PGP 完全相同的問(wèn)題,在我的第一次試用中也遇到了 EOF。
加密文件為二進(jìn)制文件(.pgp)
密鑰環(huán)裝甲文件 (.asc) 中的私鑰/公鑰如下所示:
----BEGIN PGP PUBLIC KEY BLOCK-----
-----END PGP PRIVATE KEY BLOCK-----
這是我使用的代碼:
keyRing, err := os.Open("keyArmoredFile.asc")
if err != nil {
? ? log.Fatal(err)
}
entityList, err := openpgp.ReadArmoredKeyRing(keyRing)
if err != nil {
? ? log.Fatal(err)
}
entity := entityList[0]
passphraseByte := []byte("password")
err = entity.PrivateKey.Decrypt(passphraseByte)
if err != nil {
? ? log.Fatal(err)
}
for _, subkey := range entity.Subkeys {
? ? subkey.PrivateKey.Decrypt(passphraseByte)
}
encryptedContent, err := os.Open("encryptedFile.pgp")
if err != nil {
? ? log.Fatal(err)
}
md, err := openpgp.ReadMessage(encryptedContent, entityList, nil, nil)
if err != nil {
? ? log.Fatal(err)}
bytes, err := ioutil.ReadAll(md.UnverifiedBody)
if err != nil {
? ? log.Fatal(err)
}
// decryption result
decStr := string(bytes)
- 1 回答
- 0 關(guān)注
- 158 瀏覽
添加回答
舉報(bào)