HTTP + 加密 + 认证 + 完整性保护 = HTTPS(简单)
Posted Leida_wanglin
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了HTTP + 加密 + 认证 + 完整性保护 = HTTPS(简单)相关的知识,希望对你有一定的参考价值。
HTTP + 加密 + 认证 + 完整性保护 = HTTPS
柯南语录:
星河随水流聚散
碎碎心念坠落川
想问你平安 却不敢
此生第一次胆寒
半生少年如梦千帆
灼灼心光驱不散
此生既有了这牵绊
我怎好独自黯然
还没带你纵横群山
还没将你的发轻绾
还没好好在这纷乱里纠缠
欠我(你)那把刀还没还
恢恢江湖 与你混迹不曾怕
等我替你踏遍天涯
巍巍江山 为你愿把热血洒
管它又是谁的天下
极寒之雪 飘到哪里才是家
不如让我把你融化
当春艳阳 无形却化作坚实的铠甲
至爱无华
HTTP协议中可能存在信息窃听或身份伪装等安全问题,用HTTPS通信机制可以有效地防止这些问题
1. HTTP的缺点
通信使用明文(不加密),内容可能会被窃听
不验证通信方的身份,因此有可能遭遇伪装
无法证明报文的完整性,所以可能已遭篡改
1.1. 通信使用明文可能会被窃听
HTTP报文使用明文(指未经过加密的报文)方式发送。
1.1.1. TCP/IP 是可能被窃听的网络
为什么说通信时不加密是一个缺点?
因为通信内容在所有的通信线路上都有可能遭到窥视。
1.1.2. 加密处理防止被窃听
加密的对象有:对通信的加密,对内容的加密
1.1.2.1. 通信的加密
HTTP协议中没有加密机制,可以通过和SSL(Secure Socket Layer,安全套接层)
或TLS(Transport Layer Security, 安全层传输协议)的组合使用,加密HTTP的通信内容
与SSL组合使用的HTTP被称为HTTPS(HTTP Secure,超文本传输安全协议)或HTTP over SSL
1.1.2.2. 内容的加密
有效的内容加密,前提是要求客户端和服务端同时具备加密和解密机制。
内容的加密也有可能有被篡改的风险
1.2. 不验证通信方的身份就可能遭遇伪装
HTTP协议中的请求和响应不会对通信方进行确认。
1.2.1. 任何人都可发起请求
会存在各种隐患:
(1)无法确定请求发送至目标的Web服务器是否是按真实意图返回响应的那台服务器。有可能是已伪装的Web服务器
(2)无法确定响应返回到的客户端是否是按真实意图接收响应的那个客户端。有可能是已伪装的客户端。
(3)无法确定正在通信的对方是否具备访问权限。因为某些Web服务器上保存着重要的信息,只想发给特定用户通信的权限。
(4)无法判定请求是来自何方、出自谁手。
(5)即使是无意义的请求也会照单全收。无法阻止海量请求下的DoS攻击(Denial of Service,拒绝服务攻击)
1.2.2. 查明对手的证书
使用HTTP协议无法确定通信方,如果使用SSL则可以,SSL不仅提供加密处理,而且还使用了一种被称为证书的手段,可用于确定方。
证书由第三方提供,用于证明服务器和客户端真实存在。
1.3. 无法证明报文完整性,可能已遭篡改
无法证明信息的完整性,也就无法判断信息是否准确。
1.3.1. 接收到的内容可能有误
中途篡改内容的攻击成为中间人攻击
1.3.2. 如何防止篡改
使用HTTPS,SSL提供认证和加密处理及摘要功能。
上面介绍了HTTP的一些缺陷及存在的各种问题,下面我们正式进入主题HTTPS。
2. HTTP + 加密 + 认证 + 完整性保护 = HTTPS
2.1. HTTPS是身披SSL外壳的HTTP
HTTPS并非是应用层的一种新协议。
采用SSL后,HTTP就拥有了HTTPS的加密、证书和完整性保护这些功能。
至于SSL是如何进行加密的,用到什么加密技术,在这里我就不说了。
以上是关于HTTP + 加密 + 认证 + 完整性保护 = HTTPS(简单)的主要内容,如果未能解决你的问题,请参考以下文章
HTTP + 加密 + 认证 + 完整性保护 = HTTPS(简单)