平时我们在浏览器输入网址的时候会发现有的网址是“http”打头的,更多网址用“https”打头的,那么这两者是一样的吗?其实,这两者完全不同,输错了也不能打开目标访问网址。事实上,HTTPS是为了解决HTTP安全性要求更换使用的。下面我们聊一下HTTP安全问题及HTTPS如何加密。
1、HTTP安全性问题:
1)使用明文进行通信,内容可能会被窃听;
2)不验证通信方的身份,通信方的身份有可能遭遇伪装;
3)无法证明报文的完整性,报文有可能遭篡改。
2、HTTPS 协议原理
HTTPS并不是新协议,而是让 HTTP先和 SSL(Secure Sockets Layer)通信,再由 SSL 和 TCP 通信,也就是说https使用了隧道进行通信。
3、HTTPS 的加密
1)使用对称密钥和非对称密钥组合的方式进行加密(利用了非对称密钥的安全性和对称密钥的高效性)
2)先使用非对称密钥:服务器端保存了私钥,把公钥发送给客户端。
3)客户端生成对称密钥,然后利用服务器端发送过来的公钥(非对称)进行加密,再把加密完的对称密钥发送给服务器端。
4)客户端和服务器端利用对称密钥进行加密。
4、HTTPS 的认证
1)通过使用证书来对通信方进行认证。
2)数字证书认证机构(CA,Certificate Authority)是客户端与服务器双方都可信赖的第三方机构。
3)服务器的运营人员向 CA 提出公开密钥的申请 ,CA 在判明提出申请者的身份之后,会对已申请的公开密钥做数字签名 ,然后分配这个已签名的公开密钥,并将该公开密钥放入 公开密钥证书 后绑定在一起。
4)进行 HTTPS 通信时,服务器会把证书发送给客户端。客户端取得其中的公开密钥之后,先使用 数字签名 进行验证,如果验证通过,就可以开始通信了。
5、HTTPS完整性保护
1)SSL 提供报文摘要功能来进行完整性保护
2)HTTP也提供了 MD5 报文摘要功能
3)HTTPS 的报文摘要功能之所以安全,是因为它结合了加密和认证这两个操作。试想一下,加密之后的报文,遭到篡改之后,也很难重新计算报文摘要,因为无法轻易获取明文。
6、HTTPS 的缺点
1)CA 认证整数昂贵
2)因为要涉及到加密解密过程,所以速度比 HTTP 慢
以上就是关于HTTPS和HTTP两者的相关介绍,对于用户来说就是输入正确的网址就可以了。