`
nil-zhang
  • 浏览: 51612 次
  • 性别: Icon_minigender_1
  • 来自: 北京
社区版块
存档分类
最新评论

服务端无状态的TLS seession resumption机制

    博客分类:
  • ssl
阅读更多

SSL session resumption的原理是在服务端缓存所有的session,客户端之后在每次和服务端握手时通过Session ID完成session resumption。这种机制对服务端有如下挑战:

1.      如果是在本机缓存session,必须保证同一个客户端的请求要落到同一台服务器,这无疑给前端负载均衡策略增大了压力。

2.      如果是为一个集群单独一个sharedsession cache,同样也增加了请求的处理环节,并增加了系统的成本(都是money啊)。

之所以如此纠结是因为SSL觉得session信息必须放在服务端缓存,而SSL的替代者TLS则提供了新的选择,服务端无状态的session resumption机制。简单的说,就是服务端不再缓存session的状态信息,而是将其加密并分发和转存到客户端,缓存在客户端的session状态信息叫ticket(船票,你懂得)。客户端每次请求时同时发送ticket到服务端,服务端将其解密并reuse之前的session 状态信息。废话不想多说,看下面两张图。

1 TLS full handshake

2 TLS session resumption without server state

 

 

分享到:
评论

相关推荐

    HTTPS的SSL证书在服务端TLS协议中启用TLS1.2的小工具,推荐配置:TLSv1 TLSv1.1 TLSv1.2

    TLS 1.2是目前广泛使用的标准,因为它提供了更好的安全性和性能,相较于早期的TLS 1.0和1.1版本,可以有效防止多种已知的安全漏洞。 在Windows服务器上启用TLS 1.2涉及以下步骤: 1. **检查当前TLS版本**:打开...

    [线上问题] “服务端长连接与客户端短连接引起Nginx产生大量\"TIME_WAIT\"状态的线程”的问题分析解决

    在分析“服务端长连接与客户端短连接引起Nginx产生大量‘TIME_WAIT’状态的线程”的问题之前,我们先来了解一下几个关键知识点:Nginx连接处理方式、长连接与短连接、TIME_WAIT状态以及TLS session重用(resumption...

    php面试题之SSL-TLS协议运行机制的概述

    php面试题 php面试题之SSL-TLS协议运行机制的概述

    mbedtls.zip

    9. **错误处理与调试**: Mbedtls 提供了丰富的错误处理机制和调试选项,帮助开发者识别和解决问题。 10. **移植性**: Mbedtls 设计成高度可移植,可以在各种操作系统和硬件平台上运行,包括嵌入式系统。 压缩包中...

    Linux web服务器的TLS 协议搭建.pdf

    TLS通过两个证书来实现服务端的身份验证及加密密钥的安全生成,这两个证书分别是CA(证书颁发机构)证书和TLS证书。 CA证书是浏览器或操作系统自带的,用于验证服务端的TLS证书签名是否可信,它包含了一个CA机构的...

    如何让Nginx快速支持TLS1.3协议详解

    【如何让Nginx快速支持TLS1.3协议详解】 Nginx 是一款广泛应用的高性能Web服务器和反向代理服务器,其对TLS(Transport Layer Security)协议的支持是保证网络安全的重要一环。TLS 1.3是最新且最安全的TLS协议版本...

    mbedtls_Kremlin_TLS移植_mbedtls_mbedtls移植_mbedtls库_

    Mbed TLS,原名mbedtls,是ARM公司开发的一个开源且高度可移植的加密库,主要为嵌入式系统提供安全套接层(SSL)和传输层安全(TLS)协议的支持。这个库的设计目的是小巧、高效,使得它非常适合在资源有限的设备上...

    xp添加对TLS1.1和TLS1.2的支持

    5. **启用TLS 1.1和1.2**:在`TLS 1.1\Client`和`TLS 1.2\Client`下,创建 DWORD 值 `DisabledByDefault`,设置其值为0(无加密)。同样,在`TLS 1.1\Server`和`TLS 1.2\Server`下也创建同样的DWORD值,设置其值为0...

    利用JARM指纹进行TLS服务端标记1

    1. **服务端指纹识别**: JARM可以帮助识别同一组服务器是否共享相同的TLS配置,这对于检测潜在的安全漏洞或统一管理非常有价值。 2. **公司归属判断**: 通过对比不同服务器的JARM指纹,可以推测服务器可能属于哪个...

    点对点通讯(服务端)

    10. **状态维护**:服务端需要记录和管理每个连接的状态,例如是否正在传输数据,以及客户端的上下文信息。 在提供的压缩包文件"server"中,可能包含VB源代码文件,展示了如何将上述概念应用于实际的P2P服务端开发...

    关于SSL和TLS的区别

    2. 安全机制:SSL 和 TLS 都使用加密技术来保护数据,但 TLSよりも安全。TLS 使用更强的加密算法和更好的密钥交换机制。 3. 认证机制:SSL 和 TLS 都支持服务器认证,但 TLS 也支持客户认证。TLS 的认证机制更加...

    tls.rar_ tls protocol_TLS_ssl_ssl/tls_tls pdf

    10. **性能优化**:在保证安全性的前提下,如何通过优化配置提高SSL/TLS连接的性能,例如使用session resumption和OCSP stapling等技术。 综上所述,这个"tls.pdf"文档很可能会深入探讨这些话题,对于理解SSL和TLS...

    Android TLS1.2双向认证demo

    本文将深入探讨如何在Android客户端和PC服务端之间实现基于TLS1.2的双向认证。TLS(Transport Layer Security)是一种网络安全协议,用于确保网络通信的安全性,防止中间人攻击和其他形式的数据篡改。 首先,我们要...

    XP支持TLS1.1和TLS1.2.rar

    标题中的“XP支持TLS1.1和TLS1.2.rar”指的是Windows XP操作系统的一个更新,目的是使其能够支持传输层安全(TLS)协议的1.1和1.2版本。TLS是一种网络安全协议,用于在互联网上提供加密通信和身份验证,确保数据在...

    服务端.rar

    服务端需要维护一个会话管理机制,确保正确地将消息路由到正确的客户端。 学习这个服务端模块,你需要掌握以下几个关键点: 1. **TCP连接**:理解TCP的三次握手和四次挥手过程,了解如何在服务端创建监听套接字并...

    android客户端+服务端

    - 日志记录有助于调试和监控系统的运行状态,如使用Logcat工具进行Android客户端的日志记录,服务端则可能使用如Log4j或ELK Stack(Elasticsearch、Logstash、Kibana)。 6. **性能优化**: - 使用缓存策略减少...

    TLS单、双向认证资料

    单向认证和双向认证是TLS中两种不同的身份验证机制。 **描述解析:** 描述中提到的几个关键点: 1. **TLS单向认证**:在单向认证中,服务器向客户端证明自己的身份,而客户端无需向服务器证实。这通常通过服务器...

    mbedtls开源sdk

    mbedTLS(前身 PolarSSL)是一个由 ARM 公司开源和维护的 SSL/TLS 算法库。其使用 C 编程语言以最小的编码占用空间实现了 SSL/TLS 功能及各种加密算法,易于理解、使用、集成和扩展,方便开发人员轻松地在嵌入式产品...

    MQTT服务端

    3. **持久连接(Persistent Sessions)**:MQTT支持持久连接,即使客户端断开连接,服务端也能记住其订阅状态,当客户端重新连接时,能继续接收到未读的消息。 4. **主题(Topics)**:主题是消息的路由标识,类似于...

    java制作的聊天工具服务端源码

    6. **异常处理**:服务端需要有良好的错误处理机制,以应对网络问题、解析错误等各种可能出现的异常情况。 7. **日志记录**:如Log4j或SLF4J等日志框架的使用,用于追踪和调试服务端的运行状态。 8. **单元测试**...

Global site tag (gtag.js) - Google Analytics