HTTP和HTTPS的基本概念
-
HTTP:是互联网上应用最为广泛的一种网络协议,是一个客户端和服务器端请求和应答的标准(TCP),用于从WWW服务器传输超文本到本地浏览器的传输协议,它可以使浏览器更加高效,使网络传输减少。
-
HTTPS:是以安全为目标的HTTP通道,简单讲是HTTP的安全版,即HTTP下加入SSL层,HTTPS的安全基础是SSL,因此加密的详细内容就需要SSL。
-
HTTPS协议的主要作用可以分为两种:一种是建立一个信息安全通道,来保证数据传输的安全;另一种就是确认网站的真实性。
HTTP 的安全风险
1、隐私泄露
由于 HTTP 本身是明文传输,用户和服务端之间的传输内容都能被中间者查看。也就是说 你在网上搜索、购物、访问的网点、点击的页面等信息,都可以被「中间人」获取。
2、页面劫持
隐私泄露的风险比较隐蔽,用户基本感知不到。但另外一类劫持的影响就非常明显非常直接了——页面劫持,也就是直接篡改用户的浏览页面。
HTTP劫持分类
根据劫持路径分类:DNS 劫持、客户端劫持、链路劫持。
image.pngHTTPS和HTTP有什么区别
HTTPS连接建立流程是怎样的
image.png1.客户端向服务端发送报文(报文包括 TLS版本号,支持的加密算法,随机数C)
- 服务端返回握手报文信息(最终决定的加密算法,随机数S,证书)
3.客户端验证server证书(其实公钥验证)
4.客户端组装会话秘钥(会话秘钥 == random S + random C + 预主秘钥)
5.客户端再发送一个报文到服务端(通过sever的公钥对预主秘钥进行加密传输)
6.服务端通过私钥解密得到预主秘钥
7.服务端通过random C randomS 组装会话秘钥
8.客户端发送加密的握手消息
9.服务端返回加密的握手信息 (验证安全通道是否正确建立)
HTTPS都使用了那些加密手段?为什么
- 连接建立过程使用”非对称加密“(非对称加密很耗时)
- 后续通信过程使用”对称加密“
网友评论