尝试在 Go 中读取加密的 PKCS8 私钥文件时,开发者可能会遇到以下错误:“x509:块中没有 DEK-Info 标头。”此错误表明该库无法解密密钥。
用户提供了使用 OpenSSL 的示例密钥生成过程:
openssl genrsa -out file.pem -passout pass:file -aes256 1024 openssl pkcs8 -topk8 -inform pem -in file.pem -outform pem -out filePKCS8.pem
并尝试解密Go中的密钥:
block, _ := pem.Decode(key)
return x509.DecryptPEMBlock(block, password)
但是,标准 Go 库缺少解密加密 PKCS8 密钥的函数。要解决此问题,请考虑使用第三方软件包,例如:
https://github.com/youmark/pkcs8/blob/master/pkcs8.go#L103
该包提供了在 Go 中解密加密 PKCS8 密钥所需的功能。
免责声明: 提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发到邮箱:[email protected] 我们会第一时间内为您处理。
Copyright© 2022 湘ICP备2022001581号-3