您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

SSL 协议与 TLS 协议

在软件发展过程中,有很多东西一开始都只是某个技术能力突出的公司研发出来的,在被大众认可取得一定市场后有可能被官方收编,成为行业内的一种标准。SSL 最早是 公司研发的,后来被采纳成为标准后取名为 TLS。

SSL 是网景()公司设计的主要用于 Web 的安全传输协议,后来致力于互联网标准开发与推动的组织(IETF)认为在 SSL3.0 的基础上将该协议进行并标准化(RFC 2246),并命名为 TLS(Transport Layer S)。

握手协议(SSL Handshake Protocol):它建立在 SSL 记录协议之上,用于在实际的数据传输开始前,通讯双方进行身份认证、协商加密算法、交换加密密钥等。内部SSL握手协议(SSL HandShake Protocol)、SSL密码参数协议(SSL Change Cipher Spec Protocol)和SSL告警协议(SSL Alert Protocol)。

记录协议(SSL Record Protocol):它建立在可靠的传输协议(如TCP)之上,为高层协议提供数据封装、压缩、加密等基本的。

目前大家依然比较习惯用 SSL 称呼,但是 SSL 系列的所有版本都已经弃用了。TLS 可以认为是 SSL 的后续版本,低版本的 TLS 有存在较为明显的漏洞,所以并不是选择了 Https 就是决定安全的,建议至少选择 TLS 1.2 以上版本。

近年来各个大厂都不留余力的推动 Https ,腾讯更是要求全站启用 Https 。在选择了 Https 的情况下我们要明白一点,Https 与 Http 相比,需要更多的 资源去计算加密算法的。我们的架构在设计的时候我是比较建议网关对外部分用 Https 算法,内部的服务间通信用 Http 或 Rpc 协议。

TLS 是传输层与应用层之加密协议,对于应用层来说他是透明的,也就是不用关心他的具体实现,不管有没有 TLS 对应用层的软件来说都是一样的。多了这一层的话可能在浏览器侧察觉不到,我们在浏览器 F12 查看的接口出入参都还是铭文的,其实底层传输的过层已经是加密处理了。


联系我
置顶