我正在开发一个M2M应用程序,其中数据量受到严格限制,移动客户端必须经常设置TLS连接。是否有标准的方法 - 或最佳实践 - 客户端缓存服务器证书链,以便服务器不需要在每个连接设置上发送整个链? 我可以想到一个不沿(可选)证书链发送的服务器。如果客户端将链保存在其本地缓存中,则客户端将照常进行。但是,一旦服务器证书过期,客户端必须以某种方式告诉服务器它必须沿新链发送。
是否有可能以上述方式在apache或ngix中配置流行的TLS实现?
非常感谢你的帮助! 乌利
答案 0 :(得分:2)
客户端无法按需从服务器请求链。有一种方法可以在证书中使用URL来获取颁发者证书,但是客户端必须提取此URL并按需下载证书。一些桌面浏览器会这样做,但大多数其他SSL堆栈都没有。
但是如果客户端和服务器支持会话重用,那么服务器只在会话中为第一个连接发送了证书和链,但在恢复会话时却没有。