(一)HTTPS简介:
SSL(security sockets layer):
- 为网络通信提供安全及数据完整的性的一种安全协议
- 是操作系统对外API,SSL3.0后更名为TLS
- 采用身份验证和数据加密保证网络通信的安全和数据完整性
一般的加密方式:
1.对称加密:机密和解密使用同一种算法
2.非对称加密:加密使用的密钥和解密使用的不一样
3.哈希算法:将任意长度的信息转换为固定长度的值,不可逆
4.数字签名:证明某个消息或文件时由某人发出的
HTTPS数据传输流程:
- 1.浏览器将支持的加密算法信息发送给服务器
- 2.服务器选择一套浏览器支持的加密算法,以证书的形式回送给浏览器
- 3.浏览器验证证书的合法性,并结合证书公钥加密信息发送给服务器
- 4.服务器使用私钥解密信息,验证哈希,将加密响应消息回发给浏览器
- 5.浏览器解密响应信息,并对消息进行验真,之后进行加密交互数据
(二)HTTPS与HTTP区别:
- HTTPS需要CA证书,HTTP不会
- HTTPS密文传输,HTTP明文传输
- 连接方式不同,HTTPS默认443端口,HTTP使用80端口
- HTTPS=HTTP+加密+认证+完整性保护
HTTPS存在的风险:
浏览器默认填充http://,请求要进行跳转,有被劫持的风险
可以使用HSTS优化