数字证书的类型
证书类型.png
上图就是证书的类型,大致是根据颁发者和用途进行分类,下面大概介绍下几种证书类型
1. 自签名证书
颁发者和主体名(证书用户)相同,就是自己给自己颁发的证书。上图中说明的比较清楚了,这个一般出现在特殊情况中,多为测试,实际使用较少。
2. CA证书
CA自身的证书,这个是按照用途来分的,一般来说,CA设备为了方便管理,会分成多级CA,其中最开始的CA被称为根CA,这里的根CA证书属于自签名证书。CA证书是用来给设备颁发证书的。
3. 本地证书
这就是通常意义上的证书,用户通过申请获得CA颁发的一个证书。
4. 设备本地证书
这里应该也是特殊情况,当无法和CA申请本地证书时,可以使用内置的CA证书给自己颁发证书。(不确定,没有找到相关的说明)
数字证书的存储类型
证书类型说明1.png
证书类型说明2.png
上图为证书的保存格式,主要可以分为这几类:可以包含私钥二进制,不可以包含私钥的二进制、可以包含私钥的ASCⅡ码。通常都是用记事本来分辨二进制和ASCⅡ码,是否包含私钥则一般需要用openssl工具来查看
#openssl x509部分命令
#打印出证书的内容:
openssl x509 -in cert.pem -noout -text
#打印出证书的系列号
openssl x509 -in cert.pem -noout -serial
#打印出证书的拥有者名字
openssl x509 -in cert.pem -noout -subject
#以RFC2253规定的格式打印出证书的拥有者名字
openssl x509 -in cert.pem -noout -subject -nameopt RFC2253
#在支持UTF8的终端一行过打印出证书的拥有者名字
openssl x509 -in cert.pem -noout -subject -nameopt oneline -nameopt -escmsb
#打印出证书的MD5特征参数
openssl x509 -in cert.pem -noout -fingerprint
#打印出证书的SHA特征参数
openssl x509 -sha1 -in cert.pem -noout -fingerprint
#把PEM格式的证书转化成DER格式
openssl x509 -in cert.pem -inform PEM -out cert.der -outform DER
#把一个证书转化成CSR
openssl x509 -x509toreq -in cert.pem -out req.pem -signkey key.pem
#给一个CSR进行处理,颁发字签名证书,增加CA扩展项
openssl x509 -req -in careq.pem -extfile openssl.cnf -extensions v3_ca -signkey key.pem -out cacert.pem
#给一个CSR签名,增加用户证书扩展项
openssl x509 -req -in req.pem -extfile openssl.cnf -extensions v3_usr -CA cacert.pem -CAkey key.pem -CAcreateserial
查看csr文件细节:
openssl req -in my.csr -noout -text
以上就是对证书类型和常见存储类型的接受,欢迎各位大佬指导交流~