何为HTTPS?
何为HTTPS?
Hypertext transfer protocol secure (HTTPS) 是HTTP的安全版本,优先被用作浏览器与网页之间传输数据的协议。HTTPS被编码,目的是为了增强数据传输的安全性。但是https并不是新协议,而是让http先于SSL(secure sockets layer)通信,再由SSL和TCP通信。通过使用SSL,https具有了加密(防窃听)、认证(防伪装)和完整性保护(防篡改)。与之相反,http的安全问题就正好与https的优点对应:
- 使用明文进行通信,内容可能会被窃听;
- 不验证通信方的身份,通信方的身份可能会被伪造;
- 无法证明报文的完整性,报文可能遭到篡改;
现在主流浏览器,如Chrome、火狐都已支持标记网页是否是使用https协议的,并且显性显示出来如下图:

如图所示,开头不再是http://,而是https://,并且会有一个锁🔒的标示物品,标示会根据浏览器不同而不同。
加密技术
现有的加密技术分为对称加密与非对称加密技术。对称加密技术顾名思义,发送方与接收方使用相同的密钥对数据进行加密解密,就像两个人说的都是同一个语言。而非对称加密,则就意味着二者使用不同的加密解密技术,其中包含公钥和私钥,公钥用作加密,私钥用作解密。使用公钥加密后所得的密文,只能使用对应的私钥才能解密获得原始的明文,用来加密的公钥不得用来解密。公钥可以公开,但私钥不可以公开。
上述两种方法中,非对称加密技术看似好像比较屌,但是实际上还是有以下几个缺点:
- 黑客仍然可以通过拦截下文本,然后使用公钥解密文本(关于这一点我并不是十分清楚,查阅了一些资料还仍待解决,如有朋友可以解答,烦请指点);
- 公钥并不包含服务器的信息,使用非对称加密无法确保服务器的合法身份,存在中间人攻击的风险;
- 非对称加密技术在加密解密的效率上比较慢;
对称的优点是效率高,非对称的优点是安全性高,那么将二者的优点合并起来,岂不美哉?
https采取的方式是在交换密钥的环节中,使用公开密钥加密技术,之后在建立通信、进行报文交换的阶段则使用共享密钥加密技术。示意图如下:(从别处偷的,逃)

关于数字加密技术就介绍到这里,那么https还有没有其他过人之处呢?
还是有的,https还要解决防篡改和防伪装的问题,这在文章开头也以及提到了。
防篡改技术
报文在网络传输的过程中要经过很多个中心节点,那就给了黑客很多机会篡改数据,如果不加一些手段检测,用户就很有可能会被欺骗或受到损失。如何避免呢?这里给大家介绍数字签名技术。
数字签名有两个作用:
- 能够证明消息确实是由发送方发出的,他人伪造不了数字签名;
- 能够证明消息没有被篡改过。
我们如何才能得到一个文本的数字签名呢?很简单,针对一段文本s,先使用哈希算法对其进行hash,得出hash值后,再使用私钥加密后所得内容即为数字签名,然后与原文本一起发送给接收方。接受者使用发送者的公钥解密文本后(此时结果即为发送者对文本hash后的结果),再使用hash算法对收到的原文进行hash,对比二者的内容是否相同。
防伪装技术
针对防伪装,现在使用的是数字证书技术。数字证书认证机构处于同时受客户端与服务器端信任的第三方机构。
(懒得打字了。。

浙公网安备 33010602011771号