HTTPS相关

1、TLS协议可以认为是更高版本的SSL协议,两者都包括握手协议和记录协议两个模块。握手协议用于通信前进行安全协商,如协商加密秘钥等;记录协议则用于对正式通信建立加密通道。可以认为TLS和SSL是并行的协议,即HTTPS hello协商阶段 二选一即可,两者不能协议格式差异极小,但不能互操作。

2、OpenSSL生成自签名证书流程
1)生成CA根证书、包括私钥(KEY/PEM文件)和公钥文件(CRT文件),公钥文件加入浏览器证书链;
2)生成服务器证书。先生成私钥(KEY/PEM文件);基于私钥生成证书请求文件CSR;用CA的私钥对CSR文件做签名生成服务器的CRT证书文件。
3)如需要开启客户端认证,生成客户端证书,用CA私钥进行签名,过程同2)。
4)服务器端开启单向认证(仅服务器)or双向认证(服务器/客户端)

3、证书相关概念
首先,SSL使用X.509定义的证书,X.509是一种规范,定义了一个证书中应该包括的信息。
其次,证书可以使用不同的编码格式,X.509定义了两种标准的编码格式,即DER和PEM。
DER:DER是一种编码格式,DER证书即“使用DER按照X.509进行编码的证书”
PEM:用ASCII(Base64)编码的X.509 v3 证书。文件开始由一行"—– BEGIN …“开始,由“——END…”结束。
最后,很多证书并不以DER或者PEM作为扩展名,比如CER/CSR/KEY/PFX等。无论扩展名是什么, 其内部编码格式只能从PEM和DER这两种编码格式中选择一种。不同平台的编码格式和扩展名会不同,扩展名不同格式则也会有差异,但可以基于工具和命令行做相互转换。

参考:
HTTPS协商流程和OpenSSL生成证书:https://blog.csdn.net/chen55bo/article/details/78872555
TLS和SSL区别:https://blog.csdn.net/adrian169/article/details/9164385
pem/cer/crt/key等证书概念的区别:https://blog.csdn.net/chen55bo/article/details/78872555

猜你喜欢

转载自blog.csdn.net/qq_36718740/article/details/84952419
今日推荐