前言

在当今的网站编码完成后,要在广域网上能够访问到这个网站,没有https证书,是不可能能够正常被网络上的用户所能够访问到的,必须在有关的网站上申请https证书,挂到对应的服务器上,才能够保证被正常地访问到,那么什么是https证书呢?它与本文所要介绍的tls有什么关联?
🌠 HTTPS 是在 HTTP 协议基础上实施 TLS 加密,所有网站以及其他部分 web 服务都使用该协议。因此,任何使用 HTTPS 的网站都使用 TLS 加密。
😕 什么是TLS协议呢?它有什么作用?工作过程是怎样的?如何来使用TLS?

传输层安全性(Transport Layer Security,TLS)是一种广泛采用的安全性协议,旨在促进互联网通信的私密性和数据安全性。TLS 的主要用例是对 web 应用程序和服务器之间的通信(例如,web 浏览器加载网站)进行加密。TLS 还可以用于加密其他通信,如电子邮件、消息传递和 IP 语音 (VoIP) 等

TLS的作用

  1. 加密:隐藏从第三方传输的数据;
  2. 身份验证:确保交换信息的各方是他们所声称的身份;
  3. 完整性:验证数据未被伪造或篡改

TLS的工作过程与TLS握手的过程

网站或者应用程序要使用TLS,必须在其源服务器上安装TLS(SSL)证书,当用户导航到一个使用TLS的网站时,客户端与web服务器之间开始TLS握手,在TLS握手过程中,客户端与web服务器需要确定一下几件事情:

  • 指定将要使用的TLS版本;
  • 决定将要使用哪些密码套件;
  • 使用服务器的TLS证书验证服务器的身份;
  • 握手完成后,生成会话密钥用于加密两者之间的消息;

🌠 TLS握手为每个通信会话建立一个密码套件,密码套件是一组算法,其中指定了一些细节,比如哪些共享加密密钥将用于该特定会话;握手还处理身份验证,其中通常包括服务器向客户端证明其身份,公钥是使用单向加密的加密密钥,即任何拥有公钥的人都可以解读使用服务器私钥加密的数据,以确保其真实性,但只有源发送方才可以使用私钥加密数据。服务器的公钥是其 TLS 证书的一部分。

数据完成加密和验明身份后,使用消息身份验证码(MAC)进行签名。接收方然后可以验证 MAC 来确保数据的完整性。这有点像阿司匹林药瓶上的防篡改铝箔;消费者知道没人篡改过他们的药品,因为购买时铝箔完好无损。

tls-handshadow