go - 将 RSA PrivateKey PEM 写入 golang 文件

标签 go openssl

我正在使用 spacemonkeygo's openssl library生成 RSA 私钥 - 该库还提供了从 PEM 加载私钥的方法,但我不知道如何将私钥转换为加密的 PEM block - 有人有任何想法吗?

import "github.com/spacemonkeygo/openssl"

// Generate a private key
privateKey, _ := openssl.GenerateRSAKey(2048)

password := "an encryption password"
// Create an encrypted PEM block from the private key?
pem := ???

// Load the PEM file
loadedPrivateKey, _ := openssl.LoadPrivateKeyFromPEMWidthPassword(pem, password)

privateKey == loadedPrivateKey

最佳答案

基本上,您可以使用 x509.EncryptPEMBlock 实现此目的。

如果您的 key 被 -----BEGIN RSA PRIVATE KEY----------END RSA PRIVATE KEY----- 包围code> 后缀和前缀,您可能必须在加密前删除它们。

关于go - 将 RSA PrivateKey PEM 写入 golang 文件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34693477/

相关文章:

multithreading - 为什么基于 channel 的 Lock block ?

c++ - 用于客户端 TLS 连接的 OpenSSL 或 LibreSSL C++ 示例

linux - 使用 ELDK-5.3 交叉编译,在 eldk 5.3 中使用 openssl,未找到 openssl/crypto.h

OpenSSL ECDSA 签名比预期长

Java和openssl C不同的AES CTR加密结果

go - 检查当前时间是否在给定的时间间隔内,GOLANG

json - 如何解码/存储未知的 json 字段?

postgresql - 如何在 golang 中使用 mattes/migrate?

openssl - 使用 OpenSSL 根据证书(但不是整个证书链)验证时间戳 token

image-processing - 如何将 exec.Command 包装在 io.Writer 中