HTTPS的实现原理
HTTPS协议之所以是安全是因为HTTPS协议会对传输的数据进行加密,而加密过程是使用非对称加密实现
HTTPS在内容传输的加密上使用的是对称加密,非对称加密只左右在证书验证阶段
证书验证阶段
1.浏览器发起HTTPS请求
2.服务端返回HTTPS证书
3.客户端验证证书是否合法,不合法提示警告
数据传输阶段
1.当证书合法后,在本地生成随机数
2.通过公钥加密随机数, 并把加密后的随机数传输到服务端
3.服务端通过私钥对随机数进行解密
4.服务端通过客户端传入的随机数构造对称加密算法,对返回结果进行加密后传输
数据传输加密用的对称加密:如果使用非对称加密效率是非常低的
在HTTPS中只有服务端保存了私钥,一堆公私钥只能实现单向的加解密
需要CA认证机构颁发证书,HTTPS协议被认为不安全是因为传输过程容易被监听者勾线监听,伪造服务器,而HTTPS主要是解决的网络传输的安全性问题
假设不存在认证架构,任何人都可以制造证书,风险辨识中间人攻击问题
中间人攻击:
1.本地请求被劫持(如DNS劫持),所有请求都发送到中间人的服务器
2.中间人服务器返回中间人自己的证书
3.客户端创建随机数,通过中间人证书的公钥对随机数加密后传送给中间人,通过随机数构造对称加密传输内容进行加密传输
4.中间人拥有客户端的随机数私钥,可以进行对称加密算法进
HTTPS原理
最新推荐文章于 2023-06-29 10:21:49 发布