【go】golang rsa私钥如何转化为pkcs8格式
使用golang的rsa包生成的私钥默认是pkcs1的.如果将pkcs1转化为pkcs8格式的
回答
func MarshalPKCS8PrivateKey(key *rsa.PrivateKey) []byte { info := struct {
Version int
PrivateKeyAlgorithm []asn1.ObjectIdentifier
PrivateKey []byte
}{}
info.Version = 0
info.PrivateKeyAlgorithm = make([]asn1.ObjectIdentifier, 1)
info.PrivateKeyAlgorithm[0] = asn1.ObjectIdentifier{1, 2, 840, 113549, 1, 1, 1}
info.PrivateKey = x509.MarshalPKCS1PrivateKey(key)
k, err := asn1.Marshal(info)
if err != nil {
log.Panic(err.Error())
}
return k
}
以上是 【go】golang rsa私钥如何转化为pkcs8格式 的全部内容, 来源链接: utcz.com/a/107461.html