Secure Socket Layer (SSL) 安全套接字层

发布于:2024-12-20 ⋅ 阅读:(16) ⋅ 点赞:(0)

原文链接 Secure Socket Layer (SSL) - GeeksforGeeks

结论

SSL(安全套接字层)是一种重要的互联网安全协议,可加密数据以确保在线通信期间的隐私、身份验证和数据完整性。尽管 TLS(传输层安全性)已取代了 SSL ,但 SSL 仍然得到广泛认可,并且是建立用户和 Web 服务器之间安全连接的基础。了解 SSL 对于了解互联网安全的演变和在线敏感信息的保护至关重要。

总体而言,SSL 证书是网络安全的重要组成部分,提供加密(encryption)、身份验证(authentication)、完整性(integrity)、不可否认性(non-repudiation)和其他关键功能,确保敏感信息在互联网上安全可靠地传输。

目录

结论

什么是安全套接字层?

SSL 如何工作?

SSL 为何重要?

安全套接字层协议

SSL 记录协议

握手协议 

更改密码协议(Change-cipher protocol)

警报协议(Alert Protocol)

警告(级别 = 1)

致命错误(级别 = 2): 

安全套接字层的显著特点(Salient Features of Secure Socket Layer)

SSL 的版本

SSL 证书

SSL 证书有哪些类型?

SSL 和 TLS 是同一件事吗?

SSL 是否仍然是最新的?

结论

安全套接字层常见问题解答 – 常见问题解答

SSL 和 TLS 之间有什么区别?

SSL 现在还使用吗?

如果网站不使用 SSL 会发生什么情况?

SSL 可以阻止所有类型的网络攻击吗?


安全套接字层 (SSL)为 Web 浏览器和服务器之间传输的数据提供安全性。SSL 加密 Web 服务器和浏览器之间的链接,确保它们之间传递的所有数据保持私密且不受攻击。

在本文中,我们将详细讨论 SSL、其协议、SSL 的静默功能以及 SSL 的版本。

什么是安全套接字层?

SSL,即安全套接字层,是一种互联网安全协议,可加密数据以确保其安全。它由 Netscape 于 1995 年创建,旨在确保在线通信中的隐私、身份验证和数据完整性。SSL 是我们现在称为 TLS(传输层安全性)的旧版本。

使用 SSL/TLS 的网站 URL 中使用“HTTPS”而不是“HTTP”。

SSL 如何工作?

加密

        SSL 加密通过网络传输的数据,确保隐私。如果有人截获数据,他们只会看到一堆几乎不可能解码的乱码字符。

身份验证

        SSL 启动两个设备之间称为握手的身份验证过程,以确认双方的身份,确保双方都是他们所声称的身份。

数据完整性

        SSL对数据进行数字签名以确保其未被篡改,从而验证收到的数据正是发送者发送的数据。

SSL 为何重要?

最初,网络上的数据都是以明文形式传输的,因此任何截获该消息的人都可以轻松阅读它。例如,如果有人登录了他们的电子邮件帐户,他们的用户名和密码就会在互联网上不受保护地传播。

SSL 的诞生就是为了解决这个问题并保护用户隐私。通过加密用户和 Web 服务器之间的数据,SSL 可确保截获数据的人只能看到乱七八糟的字符。这样可以保证用户的登录凭据安全,只有电子邮件服务才能看到。

此外,SSL 还通过以下方式帮助防止网络攻击:

验证 Web 服务器:确保用户连接到合法网站,而不是攻击者设置的虚假网站。

防止数据篡改:SSL 就像一个防篡改封条,可确保发送和接收的数据在传输过程中不会被更改。

安全套接字层协议

SSL 记录协议(SSL Record Protocol)

握手协议(Handshake Protocol)

更改密码规范协议(Change-Cipher Spec Protocol)

警报协议(Alert Protocol)

SSL 协议

SSL 记录协议

SSL 记录为 SSL 连接提供两种服务。 

保密(Confidentiality)

消息完整性(Message Integrity)

在 SSL 记录协议中,应用程序将数据分成多个片段。片段被压缩,然后附加由 SHA(安全哈希协议 Secure Hash Protocol)和 MD5(消息摘要 Message Digest消息摘要 )等算法生成的加密 MAC(消息认证码)。之后,对数据进行加密,最后将 SSL 标头(header)附加到数据中。 

SSL 记录协议

握手协议 

握手协议用于建立会话。此协议允许客户端和服务器通过相互发送一系列消息来相互验证。握手协议使用四个阶段来完成其周期。 

阶段 1:

        在阶段 1 中,客户端和服务器都会向对方发送 hello 数据包。在此 IP 会话中,出于安全目的,双方会交换密码套件和协议版本(cipher suite and protocol version)。 

阶段 2:

        服务器发送其证书和服务器密钥交换(certificate and Server-key-exchange)。服务器通过发送 Server-hello-end 数据包结束阶段 2。 

阶段 3:

        在此阶段,客户端通过发送其证书和客户端交换密钥(certificate and Client-exchange-key)来回复服务器。 

阶段 4:

        在第 4 阶段,更改密码套件(Change-cipher suite)发生,此后握手协议结束。 

握手协议

SSL 握手协议阶段示意图

更改密码协议(Change-cipher protocol

此协议使用 SSL 记录协议。除非握手协议完成,否则 SSL 记录输出将处于待处理状态(pending state)。握手协议之后,待处理状态将转换为当前状态。 

更改密码协议由一条长度为 1 字节(byte)且只能有一个值的消息组成。此协议的目的是使待处理状态复制到当前状态。 

更改 Cypher 协议

警报协议(Alert Protocol

此协议用于向对等实体传达与 SSL 相关的警报。此协议中的每个消息包含 2 个字节。第二个字节描述错误。

警报协议

该级别进一步分为两部分: 

警告(级别 = 1)

此警报对发送方和接收方之间的连接没有影响。其中一些是:

        错误证书(Bad Certificate):当收到的证书已损坏时。

        无证书(No Certificate):没有适当的证书。

        证书已过期(Certificate Expired):证书已过期。

        证书未知(Certificate Unknown):在处理证书时出现一些其他未指定的问题,导致证书不可接受。

        关闭通知(Close Notify):通知发送方将不再在连接中发送任何消息。

        不支持的证书(Unsupported Certificate):收到的证书类型不受支持。

        证书已撤销(Certificate Revoked):收到的证书在撤销列表中。

致命错误(级别 = 2): 

此警报会中断发送方和接收方之间的连接。连接将停止,无法恢复,但可以重新启动。其中一些是:

        握手失败(Handshake Failure):当发送方无法根据可用选项协商一组可接受的安全参数时。

        减压失败(Decompression Failure):当减压功能接收到不正确的输入时。

        非法参数(Illegal Parameters):当某个字段超出范围或者与其他字段不一致时。

        错误记录 MAC(Bad Record MAC):收到不正确的 MAC。

        意外消息(Unexpected Message):收到不适当的消息时。

安全套接字层的显著特点(Salient Features of Secure Socket Layer

这种方法的优点是可以根据给定应用程序的特定需求定制(tailored)服务。

安全套接字层是由 Netscape 发起的。

SSL 旨在利用 TCP 提供可靠的端到端安全服务。

这是一个两层协议(two-layered protocol)。

SSL 的版本

SSL 1 – 由于高度不安全性而从未发布
SSL 2 – 于 1995 年发布
SSL 3 – 于 1996 年
发布 TLS 1.0 – 于 1999 年发布
TLS 1.1 – 于 2006 年发布
TLS 1.2 – 于 2008 年发布
TLS 1.3 – 于 2018 年发布

SSL 证书

SSL(安全套接字层)证书是一种数字证书(digital certificate),用于保护和验证网站或在线服务的身份。该证书由受信任的第三方(称为证书颁发机构【Certificate Authority】 (CA))颁发,该机构在颁发证书之前会验证网站或服务的身份。

SSL 证书具有几个重要特性,使其成为保护在线交易安全的可靠解决方案:

        加密(Encryption):SSL 证书使用加密算法来保护网站或服务与其用户之间的通信。这可确保敏感信息(例如登录凭据和信用卡信息)不被未经授权的一方拦截和读取。

        身份验证(Authentication):SSL 证书可验证网站或服务的身份,确保用户与目标方进行通信,而不是与冒名顶替者进行通信。这可让用户确信他们的信息正在传输到受信任的实体。

        完整性(Integrity):SSL 证书使用消息认证码 (MAC) 来检测传输过程中对数据的任何篡改。这可确保传输的数据不会以任何方式被修改,从而保持其完整性。

        不可否认性(Non-repudiation):SSL 证书提供数据的不可否认性,这意味着数据接收者不能否认已经收到数据。这在需要确定信息真实性的情况下非常重要,例如在电子商务交易中。

        公钥加密(Public-key cryptography): SSL 证书使用公钥加密在客户端和服务器之间进行安全密钥交换。这允许客户端和服务器安全地交换加密密钥,确保加密信息只能由预期的接收者解密。

        会话管理(Session management):SSL 证书允许管理安全会话,允许在中断后恢复安全会话。这有助于减少每次用户访问网站或服务时建立新的安全连接的开销。

        由受信任的 CA 颁发的证书(Certificates issued by trusted CAs):SSL 证书由受信任的 CA 颁发,这些 CA 负责在颁发证书之前验证网站或服务的身份。这为用户提供了高度的信任和保证,使他们确信他们正在与之通信的网站或服务是真实可信的。

除了这些关键特性之外,SSL 证书还具有各种验证级别,包括域验证【Domain Validation】 (DV)、组织验证 【Organization Validation】(OV) 和扩展验证【Extended Validation】 (EV)。验证级别决定了 CA 在颁发证书之前验证的信息量,其中 EV 证书为用户提供最高级别的保证和信任。有关每个验证级别类型的 SSL 证书的更多信息,请参阅Namecheap

总体而言,SSL 证书是网络安全的重要组成部分,提供加密(encryption)、身份验证(authentication)、完整性(integrity)、不可否认性(non-repudiation)和其他关键功能,确保敏感信息在互联网上安全可靠地传输。

SSL 证书有哪些类型?

SSL 证书有多种类型,每种类型适合不同的需求:

  • 单域 SSL 证书:此类型仅涵盖一个特定域。域是网站的名称,例如 www.geeksforgeeks.org。例如,如果您拥有 www.geeksforgeeks.org 的单域 SSL 证书,则它不会涵盖任何其他域或子域。

  • 通配符 SSL 证书:与单域证书类似,但它还涵盖单个域的所有子域。例如,如果您拥有 *.geeksforgeeks.org 的通配符证书,它将涵盖 www.geeksforgeeks.org、blog.www.geeksforgeeks.org 以及 example.com 下的任何其他子域。

  • 多域 SSL 证书:此类型可以在单个证书内保护多个不相关的域。

这些证书的范围和灵活性各不相同,允许网站所有者根据他们的需求选择适当的安全覆盖级别。

SSL 证书具有不同的验证级别,这决定了对企业或组织的审查程度:

  • 域名验证 (DV):这是最简单且最便宜的级别。要获得 DV 证书,企业只需证明其拥有该域名(例如 www.geeksforgeeks.org)。

  • 组织验证 (OV):这涉及更实际的验证过程。证书颁发机构(CA) 在颁发证书之前直接联系组织以确认其身份。OV 证书为用户提供了有关组织合法性的更多保证。

  • 扩展验证 (EV):这是最严格的验证级别。它需要对组织进行全面的背景调查,以确保其合法性和可信度。EV 证书可通过 Web 浏览器中的绿色地址栏识别,表明其安全性和可信度达到最高级别。

这些验证级别可帮助用户了解访问使用 SSL 证书保护的网站时可以期待的安全和信任级别。

SSL 和 TLS 是同一件事吗?

SSL 是 TLS(传输层安全性)的直接前身。1999 年,互联网工程任务组(IETF) 提议对 SSL 进行更新。由于此更新是由 IETF 开发的,没有 Netscape 的参与,因此名称更改为 TLS。SSL 的最后一个版本(3.0)与 TLS 的第一个版本之间的变化并不大;名称更改主要表示新的所有权。

由于 SSL 和 TLS 非常相似,人们经常互换使用这两个术语。有些人仍将其称为 SSL,而其他人则使用“SSL/TLS 加密”,因为 SSL 仍然被广泛认可。

SSL 是否仍然是最新的?

SSL(安全套接字层)自 1996 年的 SSL 3.0 以来一直未更新,现已过时。它存在已知漏洞,因此安全专家建议不要使用它。大多数现代网络浏览器不再支持 SSL。

TLS(传输层安全性)是当前在线使用的加密协议。尽管如此,许多人仍将其称为“SSL 加密”,这在人们寻找安全解决方案时会造成混淆。如今,任何提供“SSL”的供应商都可能提供 TLS 保护,这已成为 20 多年来的标准。术语“SSL 保护”仍在产品页面上广泛使用,因为许多用户仍在搜索它。

结论

SSL(安全套接字层)是一种重要的互联网安全协议,可加密数据以确保在线通信期间的隐私、身份验证和数据完整性。尽管 TLS(传输层安全性)已取代了 SSL ,但 SSL 仍然得到广泛认可,并且是建立用户和 Web 服务器之间安全连接的基础。了解 SSL 对于了解互联网安全的演变和在线敏感信息的保护至关重要。

安全套接字层常见问题解答 – 常见问题解答

SSL 和 TLS 之间有什么区别?

TLS(传输层安全性)是 SSL 的更新版本。虽然它们执行类似的功能,但 TLS 提供了改进的安全功能。这两个术语经常互换使用。

SSL 现在还使用吗?

尽管 SSL 已被 TLS 基本取代,但由于 SSL 的名称识别,许多人仍然使用术语“SSL”来指代这两种协议。

如果网站不使用 SSL 会发生什么情况?

如果网站不使用 SSL,用户和网站之间传输的数据将以纯文本形式发送,这很容易受到拦截和攻击。

SSL 可以阻止所有类型的网络攻击吗?

SSL 无法阻止所有类型的网络攻击。它主要保护传输中的数据,但无法防御恶意软件或网络钓鱼攻击等威胁


网站公告

今日签到

点亮在社区的每一天
去签到