猿问
如何从 go 中的 x509 证书公钥中获取字符串?
如果我有一个
*x509.Certificate
对象,我如何从中提取公钥 base64 字符串表示形式?
慕工程0101907
浏览 113
回答 1
1回答
BIG阳
注意:如果您已经拥有该对象,请跳至#3x509.Certificate。您需要执行以下操作:用 解码 PEM pem.Decode()。block, _ := pem.Decode([]byte(certPEM))解析证书x509.ParseCertificate()。cert, _ := x509.ParseCertificate(block.Bytes)用 封送公钥x509.MarshalPKIXPublicKey()。publicKeyDer, _ := x509.MarshalPKIXPublicKey(cert.PublicKey)使用 PEM 编码结构对其进行编码pem.EncodeToMemory()。publicKeyBlock := pem.Block{ Type: "PUBLIC KEY", Bytes: publicKeyDer,}publicKeyPem := string(pem.EncodeToMemory(&publicKeyBlock))在Go Playground上运行cert.pem如果使用以下命令将示例中的证书复制到文件中,则可以确认结果:openssl x509 -inform pem -in cert.pem -pubkey -noout你应该得到相同的结果!
0
0
0
随时随地看视频
慕课网APP
相关分类
Go
我要回答