java和go中的密码学(6)-DER和PEM两种证书格式(介绍和转化)

标签:密码学
发布时间:2018年10月09日 价值:20000.00 / 共识:23

从前面的章节,我们初步掌握了ASN.1语法以及BER\DER编码规则,而且也已经知道密码学中证书、公私钥等序列化都是基于ASN.1规范。这章节,我们先简单聊聊数字证书(后续请看后面代码实现章节详解。)

DER和PEM基本了解

X.509协议中规范了数字证书的基本字段。当X.509规范的数字证书序列化成文件的时候,我们常常用两种编码格式:DER 和 PEM,没错,我们平时经常可以看到.der和.pem格式后缀的文件。
DER:ASN.1的BER编码的扩展。二进制文件,文本编辑器打开会出现乱码。这个在前面已经述说。
PEM:Privacy Enhanced Mail,是基于DER的扩展。打开看文本格式,以”——-BEGIN…”开头, “——-END…”结尾,中间内容是“前面DER文件中二进制内容的BASE64编码”.

查看PC系统中的证书

1)查看

A.我们可以尝试查看自己pc系统中已经安装的数字证书,查看步骤如下图序号:

证书框中,可以看到“受信任的根证书颁发机构”,“中级证书颁发机构”:
“受信任的根证书颁发机构”:存储着Root CA的数字证书,自签名。往往是通过系统预安装的或pc本人自己安装的,因此他们是本PC系统中的信任的根源(既然是你自己安装的,那当然意味着你自己已经确认了它是安全可靠了),代表着绝对的信任。
“中级证书颁发机构”:里面的数字证书,是由“受信任的根证书颁发机构”中的根证书签名所得。

B.双击某个数字证书可以查看其具体内容。

2)文件以DER编码导出

步骤如下:
A.选择DER编码规则:

B.保存为文件:

C.文本编辑器打开,二进制文件,故是乱码:

D.如果以双击证书,则可以打开。

3)文件以PEM编码导出

A.导出Pem文件

B.文本编辑器打开:

Tips: 中间的内容,是DER二进制文件的Base64编码结果。

用OpenSSL查看证书

DER:

PEM:

证书编码的转换

PEM转为DER:
openssl x509 -in test_pem.cer -outform der -out test_der.cer
DER转为PEM:
openssl x509 -in test_der.cer -inform der -outform pem -out test_pem.cer

  • 分享 收藏
0 条评论
  • 这篇文章暂无评论,赶紧评论一下吧~