SSL 延迟与 Http、Https

SSL延迟有多大?

1. 基本概念

ssl 协议由网景公司(Netscape)设计,由此网络链接从 http 逐步走向更为安全的 https 加密链接模式。

HTTPs 链接和 HTTP 链接都建立在 TCP 协议之上,而三次握手是 TCP 协议实现的重要环节。

  • 三次握手(handshake)


    这里写图片描述

    • 客户端首先发送 SYN 数据包,
    • 然后服务器发送SYN+ACK数据包,
    • 最后客户端发送ACK数据包,

    接下来就可以发送内容(data)了。这三个数据包的发送过程,叫做 TCP 握手。

2. HTTP vs HTTPs

HTTPs 链接和 HTTP 链接都建立在 TCP 协议之上。HTTP 链接比较简单,使用三个握手数据包建立连接之后,就可以发送内容数据了。而 HTTPs 链接,它也采用 TCP 协议发送数据,所以它也需要上面的这三步握手过程。而且,在这三步结束以后,它还有一个 SSL 协议。

  • HTTP耗时 = TCP握手
  • HTTPs耗时 = TCP握手 + SSL握手

也即,为实现 ssl 协议所需的 ssl 握手是 https 相较 http 连接更为耗时的原因所在。

3. curl 验证

使用 linux 下的命令行工具 curl 进行验证:

$ curl -w "TCP handshake: %{time_connect}, SSL handshake: %{time_appconnect}\n" -so /dev/null https://www.alipay.com

TCP handshake: 0.293, SSL handshake: 0.494
  • -so:s:silent,关闭标准输出
  • time_connect/time_appconnect:分别表示 TCP 握手的耗时,SSL 握手的耗时;
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论
### 回答1: SSL(Secure Sockets Layer)和TLS(Transport Layer Security)是用于保护网络通信安全的协议。它们的主要区别在于SSL是较早的协议,而TLS是SSL的继承者,用于解决SSL存在的一些安全漏洞和缺陷。 具体来说,TLS是SSL的升级版,它采用更安全的加密算法和更严格的握手协议,提高了通信的安全性。此外,TLS还支持更多的加密算法和更丰富的身份验证方式,可以满足更高级别的安全需求。 虽然TLS与SSL有许多相似之处,但TLS已经成为了更广泛使用的加密协议。因此,在现代网络安全中,我们更多地使用TLS来保护我们的通信。 ### 回答2: SSL(Secure Socket Layer)和TLS(Transport Layer Security)是两种加密协议,用于确保网络通信的安全性。它们的主要区别可以总结如下: 1. 发展历史:SSL是较早的加密协议,最初由网景公司开发,用于保护Web通信。TLS是SSL的后续版本,由互联网工程任务组(IETF)制定。TLS逐渐取代了SSL成为通信安全领域的主流协议。 2. 协议版本:SSL和TLS有不同的协议版本。目前常用的SSL协议版本有SSL 3.0,而TLS有1.0、1.1、1.2和1.3等版本。随着时间的推移,TLS不断提升安全性和性能,并修复了SSL的一些漏洞和缺陷。 3. 安全性:从安全性角度看,TLS被认为比SSL更安全。TLS采用更强大的加密算法,支持更多的加密套件,提供更好的保护。SSL存在一些安全漏洞和弱点,比如POODLE攻击,而TLS在后续版本中改进了这些问题。 4. 加密套件:TLS提供了更多的加密套件供选择。加密套件包括对称加密算法(如AES、3DES)和非对称加密算法(如RSA、Diffie-Hellman),它们用于确保数据传输的机密性和完整性。相比之下,SSL的加密套件相对较少。 综上所述,SSL和TLS是两种用于网络通信安全的加密协议。TLS是SSL的后续版本,更安全且功能更强大。对于要确保通信安全性的现代应用来说,TLS是更好的选择。 ### 回答3: SSL(Secure Socket Layer)和TLS(Transport Layer Security)是用于保护数据传输安全的加密协议。它们之间的主要区别在于标准的名称和一些技术特性。 首先,SSL是早期加密协议的名称,而TLS是对SSL的升级版本。SSLv3最后一个版本于1996年发布,TLS 1.0在1999年作为SSL的后继者发布。因此,技术上可以说TLS是SSL的最新版本,相对来说更安全、更强大。 其次,SSL和TLS在加密算法方面有所不同。SSL使用的加密算法较为受限,而TLS支持更多的加密算法,可以根据实际需求选择更安全的算法。 此外,TLS在握手协议方面有所改进。SSL的握手过程通常涉及四次通信,而TLS从1.2版本开始,采用了更简化的三次握手过程,降低了握手的延迟。 TLS还引入了一些新的安全特性,如服务器端证书验证和客户端身份验证。这些特性提供了更强的身份认证和数据完整性保护,有助于防止中间人攻击和数据篡改。 虽然TLS相对于SSL来说更安全,但仍然保留了与SSL兼容的能力。最新的TLS版本可以与老版本的SSL进行协商,以保证与不支持TLS的旧系统的兼容性。 总结而言,TLS是SSL的升级版本,相较于SSL更安全、更强大,支持更多加密算法和安全特性。 不过,从功能上来说TLS与SSL还是有一些相似之处,并且可以与旧版本的SSL进行兼容。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

五道口纳什

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值