HTTP与HTTPS的区别

2020-03-27  本文已影响0人  梅林午餐肉

HTTP: HyperText Transfer Protocol
HTTPS: HyperText Transfer Protocol over Secure Socket Layer

HTTPS是安全版本的HTTP。安全基础是SSL(或者TLS)。TLS是SSL的升级替代版

HTTP端口80,HTTPS端口443
HTTP是无状态的,HTTPS是加密传输、身份认证的网络协议

HTTPS解决的问题:
1 . 信任主机的问题。server需要ca,修改ca需重新信任
2 . 防止通讯过程中的数据的泄密和被窜改

URL方案HTTP:客户端开一条到端口80的连接,发送HTTP指令
URL方案HTTPS:客户端开一条到端口443的连接,与服务器进行SSL握手,发送加密的HTTP命令

SSL握手:
1.交换协议版本号
2.选择一个两端都了解的加密方式
3.对两端身份进行认证
4.生成临时的会话密钥,以便加密信道

686913-20180717004507890-79439412.jpg

1.[明文] 客户端发送随机数client_random和支持的加密方式列表
2.[明文] 服务器返回随机数server_random ,选择的加密方式和服务器证书链
3.[RSA] 客户端验证服务器证书,使用证书中的公钥加密premaster secret 发送给服务端
4.服务端使用私钥解密premaster secret
5.两端分别通过client_random,server_random 和premaster secret 生成master secret,用于对称加密后续通信内容

上一篇下一篇

猜你喜欢

热点阅读