按规则不同,分为两类:
- 按编码分
DER, PEM 这表示证书内容的编码方式为DER 或是 PEM
- 按功能分
这个表示证书的功能, 一般用来做证书文件的后缀, 区分不同种类的文件,也有使用编码规则来做后缀的
- key :证书私钥
- csr :Certificate Signing Request
- crt,cer : CERTIFICATE
X.509证书包含三个文件:key,csr,crt。
-
key是服务器上的私钥文件,用于对发送给客户端数据的加密,以及对从客户端接收到数据的解密
-
csr是证书签名请求文件,用于提交给证书颁发机构(CA)对证书签名
-
crt是由证书颁发机构(CA)签名后的证书,或者是开发者自签名的证书,包含证书持有人的信息,持有人的公钥,以及签署者的签名等信息
备注:在密码学中,X.509是一个标准,规范了公开秘钥认证、证书吊销列表、授权凭证、凭证路径验证算法等。
x509的证书编码格式有两种
-
1.PEM(Privacy-enhanced Electronic Mail) 是明文格式的 以 -----BEGIN CERTIFICATE-----开头,已-----END CERTIFICATE-----结尾,中间是经过base64编码的内容,apache需要的证书就是这类编码的证书 查看这类证书的信息的命令为 :openssl x509 -noout -text -in server.pem
其实PEM就是把DER的内容进行了一次base64编码 -
2.DER 是二进制格式的证书 查看这类证书的信息的命令为 :openssl x509 -noout -text -inform der -in server.der
扩展名:
-
.crt 证书文件 ,可以是DER(二进制)编码的,也可以是PEM( ASCII (Base64) )编码的 ,在类unix系统中比较常见
-
.cer 也是证书 常见于Windows系统 编码类型同样可以是DER或者PEM的,windows 下有工具可以转换crt到cer
-
.csr 证书签名请求 一般是生成请求以后发送给CA,然后CA会给你签名并发回证书
-
.key 一般公钥或者密钥都会用这种扩展名,可以是DER编码的或者是PEM编码的 查看DER编码的(公钥或者密钥)的文件的命令为 openssl rsa -inform DER -noout -text -in xxx.key 查看PEM编码的(公钥或者密钥)的文件的命令为 openssl rsa -inform PEM -noout -text -in xxx.key
-
.p12 证书 包含一个X509证书和一个被密码保护的私钥
网友评论