如何使用解析出pem中的公钥信息
时间: 2023-12-01 07:02:44 浏览: 56
X509证书解析C语言实现
3星 · 编辑精心推荐
在 OpenSSL 中,可以使用以下命令从 PEM 格式的公钥文件中提取出公钥信息:
```
openssl ec -pubin -in publickey.pem -text -noout
```
其中,publickey.pem 是 PEM 格式的公钥文件的路径。执行以上命令后,会输出公钥的信息,包括算法标识、公钥点坐标等,示例如下:
```
read EC key
Public-Key: (256 bit)
pub:
04:a9:5d:3f:23:4f:3e:ee:ed:12:8c:25:23:98:67:
7f:6a:6e:9f:53:26:07:16:7e:da:3e:4a:1c:ee:cb:
7c:06:d8:1c:2e:5c:5b:e9:6c:dd:84:5a:86:1d:1c:
44:dc:6e:1a:af:2c:6b:56:65:4c:b5:9e:6e:3e:8a:
3d:db:2d:22:95
ASN1 OID: sm2
```
其中,pub 字段后面的值就是公钥的十六进制编码。需要将这个编码转换成字节数组,然后进行解析得到公钥的各个部分。SM2 的公钥部分由两个坐标值组成,可以将公钥编码解析成两个 BigInteger 对象,分别表示 x 和 y 坐标值。
阅读全文