关于前端:面试官为什么说HTTPS比HTTP安全-HTTPS是如何保证安全的

35次阅读

共计 1729 个字符,预计需要花费 5 分钟才能阅读完成。

公众号

小册

这是我整顿的学习材料,十分零碎和欠缺,欢送一起学习

  • 古代 JavaScript 高级小册
  • 深入浅出 Dart
  • 古代 TypeScript 高级小册
  • linwu 的算法笔记📒

一、平安个性

在前文中,咱们曾经理解到 HTTP 在通信过程中存在以下问题:

  • 通信应用明文(未加密),内容可能会被窃听。
  • 不验证通信方的身份,因而容易受到假装攻打。

而 HTTPS 的呈现旨在解决这些问题,HTTPS 建设在 SSL(Secure Sockets Layer,安全套接字协定)之上,通过 SSL 来保障通信的安全性。

一旦采纳 SSL,HTTP 就领有了 HTTPS 的加密、证书和完整性爱护等性能。

SSL(Secure Sockets Layer,安全套接字协定)及其后继协定传输层平安(Transport Layer Security,TLS)是为网络通信提供安全性和数据完整性的平安协定。

二、实现办法

SSL 次要依赖于以下三种伎俩来实现其性能:

1. 对称加密

对称加密是指应用协商的密钥对数据进行加密和解密,而密钥是雷同的。只有密钥的安全性失去保障,整个通信过程就能确保机密性。

2. 非对称加密

非对称加密应用两个不同的密钥,一个是公钥,一个是私钥。公钥能够公开分享,而私钥必须窃密。

公钥和私钥都能够用于加密和解密,但应用公钥加密后只能应用私钥解密,反之亦然。

3. 混合加密

在 HTTPS 通信中,采纳混合加密,联合了对称加密和非对称加密。具体做法是发送方应用接管方的公钥对 ” 对称密钥 ” 进行加密,而后接管方应用本人的私钥解密,获取 ” 对称密钥 ”。

这样能够确保在密钥替换的过程中安全性失去保障,随后能够应用对称加密形式进行通信。

举例说明:

假如网站领有私钥并将公钥公开公布。当用户想要登录网站时,只需应用公钥加密数据,密文只有私钥持有者能力解密。黑客无奈解密密文,因为他们没有私钥。

上述办法解决了数据加密问题,但在网络传输过程中,数据可能被篡改,且黑客可能伪造身份公布公钥。若获取了伪造的公钥,混合加密也无奈保障数据的安全性。为此,咱们须要摘要算法来确保完整性和身份验证。

4. 摘要算法

摘要算法是保障数据完整性的次要伎俩,也称为散列函数或哈希函数。它将任意长度的数据压缩成固定长度的惟一摘要字符串,相似于为数据生成数字 ” 指纹 ”。

摘要算法确保数字 ” 指纹 ” 与原文是齐全等价的。因而,只需在原文后附上其摘要,即可确保数据的完整性。

举例来说,若发送一条音讯:” 转账 1000 元 ”,并附上 SHA- 2 摘要,网站接管后计算音讯的摘要,将两个 ” 指纹 ” 进行比照,如果匹配,表明音讯是残缺可信的,没有被批改。

5. 数字签名

数字签名用于确定音讯的确是由发送方签订并发送的,因为没有人能伪造发送方的签名。

其原理很简略,应用私钥加密,公钥解密。

签名和公钥一样齐全公开,任何人都能够获取。但只有应用私钥对应的公钥能力解密它,进而验证原文的完整性,就像签订文件一样证实音讯的确是发送者收回的。

然而,咱们仍须要避免黑客伪造公钥,即如何确定公钥的真实性。这时,须要第三方机构,即证书验证机构(Certificate Authority,CA)。

6. 证书验证机构(CA)

数字证书认证机构位于客户端和服务器单方都可信赖的第三方地位。

CA 对公钥的签名认证要求包含序列号、用处、颁发者、无效工夫等等,将这些信息打包并签名,残缺地证实了公钥的各种信息,造成 ” 数字证书 ”。

流程如

下图:

  • 服务器运营者向数字证书认证机构申请公开密钥。
  • 数字证书认证机构在验证申请者身份后,对已申请的公开密钥进行数字签名。
  • 接着,散发已签名的公开密钥,并将其与公钥证书绑定在一起。
  • 服务器将数字证书发送给客户端,以便应用非对称加密形式通信。

客户端收到证书后,应用数字证书认证机构的公开密钥验证数字签名。一旦验证通过,就能够确认:

  • 服务器的公开密钥是由数字证书认证机构认证的,无效的。
  • 服务器的公开密钥是值得信赖的。

三、总结

能够看到,HTTPS 与 HTTP 尽管只差一个 SSL,但通信的安全性大幅提高,满足了通信的四大个性:

  • 机密性:通过混合算法实现。
  • 完整性:通过摘要算法实现。
  • 身份认证:通过数字签名实现。
  • 不可否认性:同样通过数字签名实现。

同时引入了第三方证书认证机构,以确保公开密钥的安全性。

参考文献

  • 知乎文章
  • 掘金文章
  • 腾讯云开发者社区文章
正文完
 0