在 Studio 中使用 SSL

安全套接字层 (SSL) 是标准的安全性技术,用于在服务器与客户机之间建立加密链接。加密链接可确保服务器与客户机之间传递的所有数据保持私密和不变。要创建 SSL 连接,服务器需要 SSL 证书。本部分提供在 Studio 中使用 SSL 的概述,讨论传输层安全性 (TLS) 和 SSL 安全性,讨论证书并提供所需过程以正确导入要在验证 SSL 客户机认证时使用的认证中心 (CA)、终端实体证书和专用密钥。

SSL 和传输层安全性

TLS 1.0 代表 SSL 3.0 的升级。例如,用于建立客户机/服务器认证和加密的 TLS 握手协议与 SSL 握手协议并不相同。另外,TLS 现在更具扩展性。虽然它们不能互操作,但 TLS 提供一个机制,TLS 1.0 实施可通过该机制恢复为 SSL 3.0 实施。

TLS 协议使用公用密钥和对称密钥加密技术。公用密钥密码术使用公用密钥和专用密钥。用一个密钥加密的信息仅可使用另一个密钥解密。 例如,使用公用密钥加密的信息仅可以使用专用密钥解密。

发布每台服务器的公用密钥,而专用密钥保密。要发送一份安全信息给服务器,客户机将通过使用服务器的公用密钥 加密该消息。当服务器接收该消息时,它将使用其专用密钥解密该消息。

对称密钥密码术使用相同的密钥来加密和解密消息。客户机随机生成用于加密所有会话数据的对称密钥。然后,使用服务器的 公用密钥加密该密钥,然后发送给服务器。

TLS 提供了三种基本安全性服务:
  • 消息隐私 - 通过公用密钥和对称密钥加密组合实现。客户机和服务器之间的所有流量使用密钥和会话设置期间协商的加密算法加密。
  • 消息完整性 - 确保会话流量在到达其最终目标的途中不发生更改。TLS 和 SSL 使用公用/专用密钥的组合和散列函数来确保消息完整性。
  • 相互认证 - 通过公用密钥证书交换身份证明。在包含以下组件的公用密钥证书中对客户机和服务器身份进行编码:
    • 主题的专有名称
    • 发证方的专有名称
    • 主题的公用密钥
    • 发证方的签名
    • 有效期
    • 序列号
您还可以使用安全 HTTP (HTTPS) 确保从服务器下载时,不损害客户机的安全性信息。

证书

SSL 使用数字证书对服务器和(可选)客户机的身份进行认证。 认证中心(CA,授权颁发、更新和撤销数字证书的可信机构)将在验证请求方的身份和合法性后颁发数字证书 (CA)。CA 证书(可以是根 CA 证书或下级 CA 证书)包含 CA 的签名和有效期。 CA 保证密钥和另一个 CA 或终端实体之间的连接。 终端实体是人员、角色、组织、化名或一块硬件或软件。

通过公用和专用密钥方式执行加密和认证。公用密钥被嵌入到证书中,这称为站点或服务器证书。证书包含多项信息,包含颁发证书的 CA 的名称、服务器或客户机的名称和公用密钥、CA 的签名以及证书的日期和序列号。在创建自签署证书或 CA 证书请求时创建专用密钥,并且用它来解密来自客户机的消息。

按照以下顺序建立 SSL 或 TLS 会话:
  1. 客户机和服务器交换问候消息以协商加密算法和用于会话的散列函数(用于消息完整性)。
  2. 客户机从服务器请求 ITU-T 标准 X.509 证书以证明其身份。服务器也可以任选地从客户机请求证书。通过检查证书格式和有效日期并验证证书是否包含可信认证中心的签名(或是否为自签署)来验证证书。
  3. 客户机随机生成一组用于加密的密钥。 这些密钥由服务器的公共密钥加密并安全地传递给服务器。