为了账号安全,请及时绑定邮箱和手机立即绑定

在磁盘上保存和加载crypto / rsa私钥

在磁盘上保存和加载crypto / rsa私钥

Go
湖上湖 2021-05-07 14:37:44
我正在使用crypto/rsa,并试图找到一种正确保存和加载密钥的方法。有没有建立一个正确的方式[]byte从rsa.PrivateKey。如果是这样,是否有办法正确地做到这一点rsa.PublicKey?
查看完整描述

3 回答

?
ABOUTYOU

TA贡献1812条经验 获得超5个赞

由于您的问题的公钥部分未得到回答,而我遇到了同样的问题并已解决,因此它是:


注意&参数前面的MarshalPKIXPublicKey


Priv := rsa.GenerateKey(rand.Reader, 4096)


pubASN1, err := x509.MarshalPKIXPublicKey(&Priv.PublicKey)

if err != nil {

    // do something about it

}


pubBytes := pem.EncodeToMemory(&pem.Block{

    Type:  "RSA PUBLIC KEY",

    Bytes: pubASN1,

})


ioutil.WriteFile("key.pub", pubBytes, 0644)

相关读物:


MarshalPKIXPublicKey(pub interface {})([] byte,error)godoc

EncodeToMemory(b * Block)[] byte godoc

封锁godoc

PS:MarshalPKIXPublicKey也接受ECDSA密钥,适当地调整pem标头。


查看完整回答
反对 回复 2021-05-24
  • 3 回答
  • 0 关注
  • 173 浏览
慕课专栏
更多

添加回答

举报

0/150
提交
取消
意见反馈 帮助中心 APP下载
官方微信