数字证书的格式遵循X.509标准。X.509是由国际电信联盟(ITU-T)制定的数字证书标准。
通常证书会包含以下内容:
- 证书拥有者名称(CN)
- 组织单位(OU)
- 组织(O)
- 城市(L)
- 区(ST)
- 国家/地区( C )
- 证书的过期时间
- 证书的颁发机构
- 证书颁发机构对证书的签名
- 签名算法
- 对象的公钥
常见证书类型:
- *.DER或*.CER文件:这样的证书文件是二进制格式,只含有证书信息,不包含私钥。
- *.CRT文件:这样的证书文件可以是二进制格式,也可以是文本格式,一般均为文本格式,功能与 *.DER及*.CER证书文件相同。
- *.PEM文件:这样的证书文件一般是文本格式,可以存放证书或私钥,或者两者都包含。*.PEM 文件如果只包含私钥,一般用*.KEY文件代替。
- *.PFX或*.P12文件:这样的证书文件是二进制格式,同时包含证书和私钥,且一般有密码保护。
您也可以使用记事本直接打开证书文件。如果显示的是规则的数字字母,例如:
—–BEGIN CERTIFICATE—–
MIIE5zCCA8+gAwIBAgIQN+whYc2BgzAogau0dc3PtzANBgkqh......
—–END CERTIFICATE—–
那么,该证书文件是文本格式的。
如果存在——BEGIN CERTIFICATE——,则说明这是一个证书文件。
如果存在—–BEGIN RSA PRIVATE KEY—–,则说明这是一个私钥文件。
秘钥库概念:所有的公钥和私钥同证书都会被存储在密钥库中。因为证书需要被签名,签名必须使用非对称加密算法+hash算法,所以一般是 MD5WithRSA 或者 SHA1WithRSA。