

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# SSL/TLS 卸载的工作原理 AWS CloudHSM
<a name="ssl-offload-overview"></a>

要建立 HTTPS 连接，您的 Web 服务器将执行与客户端的握手过程。作为此过程的一部分，服务器会将一些加密处理卸载到 AWS CloudHSM 群集HSMs 中，如下图所示。下图解释了此过程的每个步骤。

**注意**  
下面的图和过程假定 RSA 用于服务器验证和密钥交换。当使用的是 Diffie–Hellman 而不是 RSA 时，此过程稍有不同。

![客户端与服务器之间的 TLS 握手流程（包括至 HSM 的加密分载）的插图。](http://docs.aws.amazon.com/zh_cn/cloudhsm/latest/userguide/images/ssl-offload-handshake-process.png)


1. 客户端将 hello 消息发送给服务器。

1. 服务器响应 hello 消息并发送服务器的证书。

1. 客户端将执行以下操作：

   1. 验证 SSL/TLS 服务器证书是否由客户端信任的根证书签名。

   1. 从服务器证书中提取公有密钥。

   1. 生成预主密钥并使用服务器的公有密钥将其加密。

   1. 将加密的预主密钥发送给服务器。

1. 为解密客户端的预主密钥，服务器会将此密钥发送给 HSM。HSM 使用 HSM 中的私有密钥解密此预主密钥，然后将预主密钥发送给服务器。客户端和服务器将独立使用此预主密钥和 hello 消息中的一些信息来计算主密钥。

1. 握手过程结束。在余下的会话中，客户端和服务器之间发送的所有消息将使用主密钥的派生密钥进行加密。

要了解如何使用配置 SSL/TLS 卸载 AWS CloudHSM，请参阅以下主题之一：
+ [AWS CloudHSM 使用 NGINX 在 Linux 上卸载 SSL/TLS 或者带有 OpenSSL 的 Apache](third-offload-linux-openssl.md)
+ [AWS CloudHSM 使用带有 JSSE 的 Tomcat 在 Linux 上卸载 SSL/TLS](third-offload-linux-jsse.md)
+ [AWS CloudHSM 使用 IIS 和 KSP 在 Windows 上卸载 SSL/TLS](ssl-offload-windows.md)