G:表示颁发给发送端/接收端的证书
证书的分类:
- 根证书:一般是大型公司使用,是通过证书颁发机构申请过的
- 自建根证书:没有向证书颁发机构申请,自己设计的
常用的证书协议:
x509v3:IETF的证书标准
x.500:目录的标准
SCEP:简单证书申请协议,用http来进行申请,数据有PKCS#7封装,数据其实格式也是PKCS#10的
PKCS#7:是封装数据的标准,可以放置证书和一些请求信息
PKCS#10:用于离线证书申请的证书申请的数据格式,注意数据包是使用PKCS#7封装这个数据
PKCS#12:用于一个单一文件中交换公共和私有对象,就是公钥,私钥和证书,这些信息进行打包,加密放在存储目录中,CISCO放在NVRAM中,用户可以导出,以防证书服务器挂掉可以进行相应恢复。思科是.p12,微软是.pfx
证书与公钥的交互过程:
- 客户端提前拥有服务端的证书,所以客户端有服务端的公钥
- 服务端没有提前没有客户端的证书,所以没有客户端的公钥,在SSL全流程握手的时候,服务端会向客户端索要证书
.key格式:私有的密钥
.crt格式:证书文件,certificate的缩写
.csr格式:证书签名请求(证书请求文件),含有公钥信息,certificate signing request的缩写
.crl格式:证书吊销列表,Certificate Revocation List的缩写
.pem格式:用于导出,导入证书时候的证书的格式,有证书开头,结尾的格式