什么是TLS?简单解释传输层安全加密

“我们如何安全地进行交流?”

如果您想与您认识的人进行秘密对话,您可以亲自见面并找到一个私人的谈话场所。

但是,如果您想通过Internet秘密发送数据,则可能需要考虑一些其他事项。

TLS或传输层安全性是指协议。“协议”一词的含义或多或少是“我们同意在此处做事的方式”。

TLS的“传输层”部分仅指Internet协议套件模型中的主机到主机通信,例如客户端和服务器之间的交互方式。

TLS协议尝试解决以下基本问题:

  • 我怎么知道你是谁,你说你是谁?
  • 我怎么知道您的来信没有被篡改?
  • 我们如何安全地沟通?

TLS的工作方式以简单的英语解释。与许多成功的交互一样,它始于握手。

开始了解你

TLS握手的基本过程涉及一个客户端(例如您的Web浏览器)和一个服务器(例如一个托管网站的服务器),以建立一些通信的基本规则。

它始于客户打招呼。从字面上看。这称为ClientHello消息。

所述的ClientHello消息告诉哪个TLS协议版本和服务器的密码套件它支持。

虽然“密码套件”听起来像是一家高档酒店的升级,但它只是指一组可用于保护通信安全的算法。

服务器以类似的名称ServerHello消息,从提供的选项中选择要使用的协议版本和密码套件。如果服务器支持恢复先前的握手,还可以发送其他数据,例如会话ID

什么是TLS?简单解释传输层安全加密
浏览器窗口的卡通和服务器打招呼,由作者。

根据选择的密码套件,客户端和服务器交换更多信息,以建立共享机密。

通常,此过程将交换从非对称密码学转移到具有不同复杂程度的对称密码学。让我们从总体上探讨这些概念,并了解它们为何对TLS至关重要。

不对称的开始

这是不对称的:

什么是TLS?简单解释传输层安全加密
小鸡蛋,大鸡蛋。

非对称加密是一种可以执行身份验证的方法。当您对自己进行身份验证时,您会回答一个基本问题:“我怎么知道你是谁,你说的是谁?”

在非对称密码系统中,您使用一对密钥以实现身份验证。这些密钥是不对称的。一个密钥是您的公共密钥,您可能会猜到它是公共密钥。另一个是您的私钥,您知道。

通常,在TLS握手期间,服务器将通过其数字证书(有时仍称为SSL证书)提供其公共密钥,尽管TLS取代了已弃用的安全套接字层(SSL)协议。

数字证书由称为证书颁发机构(CA)的受信任的第三方提供和验证,它们本身就是一整篇文章。

尽管任何人都可以使用您的公钥加密邮件,但是只有您的私钥才能解密该邮件。

非对称密码学的安全性仅取决于您的私钥保持私有状态,因此不对称。

从单程旅行的角度来看,它也是不对称的。Alice可以向您发送使用您的公共密钥加密的消息,但是您的任何一个密钥都不会帮助您向Alice发送加密的消息。

对称机密

与对称密码相比,非对称密码还需要更多的计算资源。

因此,当TLS握手以不对称交换开始时,客户端和服务器将使用此初始通信来建立共享机密,有时称为会话密钥。该密钥是对称的,这意味着双方使用相同的共享机密,并且必须保持该保密性以确保加密的安全性。

什么是TLS?简单解释传输层安全加密
明智的人说:共享您的公共密钥,但将共享密钥保密。

通过使用初始的非对称通信来建立会话密钥,客户端和服务器可以依靠仅对他们已知的会话密钥。在剩下的会话中,他们俩都将使用相同的共享密钥来加密和解密消息,从而加快了通信速度。

安全会话

TLS握手可以使用非对称加密或其他密码套件来建立共享会话密钥。一旦建立了会话密钥,握手部分就完成了,会话开始了。

会话是客户端和服务器之间的加密通信的持续时间。在这段时间内,使用只有客户端和服务器才具有的会话密钥对消息进行加密和解密。这样可以确保通信安全。

通过使用校验和来维护交换信息的完整性。使用会话密钥交换的消息带有消息验证码(MAC)。这与设备的MAC地址不同。使用会话密钥生成并验证MAC。

因此,任何一方都可以在收到消息之前检测到消息是否已更改。这就解决了一个基本问题:“我怎么知道你的来信没有被篡改?”

由于网络断开或客户端闲置时间过长,会话可能会故意终止。会话结束后,必须通过新的握手或通过先前建立的称为会话ID的机密来重新建立会话,以允许恢复会话。

TLS和你

让我们回顾一下:

  • TLS是用于提供安全通信的加密协议。
  • 创建安全连接的过程始于握手。
  • 握手建立一个共享的会话密钥,然后将其用于保护消息并提供消息完整性。
  • 会话是临时的,一旦结束,必须重新建立或恢复。

这只是非常复杂的密码系统的表面级别的摘要,有助于保护您的通信安全。有关该主题的更多信息,建议浏览密码套件和各种受支持的算法

TLS协议在您的日常生活中起着非常重要的作用。它有助于保护发送给家人的电子邮件,在线银行活动以及阅读本文的联系方式。

点击阅读原文

本文来自投稿,不代表微擎百科立场,如若转载,请注明出处:https://www.w7.wiki/develop/4327.html

发表评论

登录后才能评论