HTTP和HTTPs的区别
HTTPs比HTTP多了一个SSL(安全套接层)。
为网络通信提供安全及数据完整性的协议。
是操作系统对外是API,SSL3.0后更名为TLS
采用身份认证和数据加密保证网络通信的安全和数据的完整性。
加密方式4种:
对称加密:加密和解密都用同一个密钥;
非对称加密:加密和解密的密钥是不相同的(区块链加密方法);
哈希算法:将任意长度的信息转化为固定长度的值,算法不可逆;
数字签名:证明某个消息或者文件是某人发出/认同的。
HTTPS数据传输流程:
浏览器将支持的数据加密算法发送给服务器,
服务器依据浏览器支持的加密算法,以及证书的形式回发给浏览器;
浏览器验证证书合法性,并结合证书公钥加密信息发送给服务器;
服务器使用私钥解密信息,验证哈希,加密响应消息回发给浏览器。
浏览器解密响应消息,并且对消息进行验真,之后进行加密交互数据。
HTTP和https区别:
https需要到ca申请证书,http不需要。
HTTPs密文传输,http明文传输。
连接方式不同:HTTP使用80端口。https使用443端口。
HTTPS=HTTP+加密+认证+完整性保护,更加安全。
HTTPS真的安全吗?
浏览器默认填充HTTP://,请求需要进行跳转,有被劫持的风险。
可以使用HSTS进行优化。(很少问道)