HTTP 与 HTTPS有哪些区别?

1.HTTP是超文本传输协议,信息是透明传输,存在安全风险的问题。HTTPS则解决了HTTP不安全的缺陷,在TCP和HTTP网络层之间加入了SSL/TLS安全协议,使得报文能够加密传输

2.HTTP连接建立相对简单,在完成TCP三次握手之后就可以进行HTTP的报文传输。而HTTPS在TCP三次握手之后,还需进行SSL/TLS的握手过程,才可进入加密报文传输

3.HTTP的端口号是80,而HTTPS的端口号是443

4.HTTPS协议需要向CA申请数字证书,来保证服务器的身份是可信的

HTTPS解决了HTTP的哪些问题?

HTTP由于是明文传输,所以安全上存在以下三个风险

1.窃听风险: 比如通信链路上可以获取通信内容

2.篡改风险: 比如强制植入垃圾广告

3.冒充风险

HTTPS在HTTP与TCP层之间加入了SSL/TLS协议,可以很好的解决上述风险

信息加密:交互信息无法被窃取
校验机制:无法篡改通信的内容,篡改了就不能正常显示
身份证书:证明淘宝网是真的淘宝网

HTPPS是如何解决上面的三个风险的?

混合加密的方式实现信息的机密性,解决了窃听的风险
摘要算法的方式来实现完整性,解决了篡改的风险
将服务器公钥放入到数字证书中,解决了冒充的风险

1.混合加密

通过混合加密的方式可以保证信息的机密性,解决了窃听的风险
HTTPS采用的是 对称加密非对称加密 结合的 混合加密 方式
image.png

2.摘要算法

摘要算法用来实现完整性,能够为数据生成独一无二的 [指纹] ,用于校验数据的完整性,解决了篡改的风险。
image.png