传输加密
本文约需 2 分钟阅读
传输中加密 (Encryption in Transit) 是指对在网络上流动的数据进行加密,以防止窃听和篡改的技术。TLS (Transport Layer Security) 是其代表性协议,被用于保护 HTTPS 通信、邮件收发、 VPN 隧道等各种网络通信。最新版本 TLS 1.3 于 2018 年 8 月作为 RFC 8446 标准化,减少了握手的往返次数并废除了旧式加密套件。
现场使用案例
例如,可能存在这样的结构:对外通信用 HTTPS 保护,而微服务之间的内部通信仍是明文。在这种状态下,一旦有人侵入同一网络就能直接读取内部通信内容,因此常见的对策是利用服务网格 (如 Istio) 将 mTLS 也应用于服务间通信,把认证和加密交给基础设施层自动完成,而不是交给各个应用自行实现。
通信加密流程
与静态加密的区别
静态加密保护的是存储在磁盘和数据库中的数据,而传输中加密保护的是数据从发送方移动到接收方的过程。二者是互补关系,仅靠任何一方都不够充分。例如,即使对数据库进行了加密,如果与应用服务器之间的通信是明文,数据仍可能在中间人攻击中被截获。
主要协议与实现
TLS 1.3 是 RFC 8446 所定义的最新版本,它减少了握手的往返次数,兼顾了安全性与速度。 SSH 加密服务器管理的通信, IPsec 在 VPN 隧道中提供网络层加密。在云环境中,推荐对服务间通信也应用 mTLS (双向 TLS 认证) 的设计。在公共 Wi-Fi 环境下,传输中加密尤为重要,配合使用 VPN 还能保护未加密的通信。
运维要点
TLS 证书都有有效期,一旦忘记续期,浏览器就会显示警告,服务实际上将无法使用。请利用 Let's Encrypt 的自动续期或证书管理工具来防止过期。此外, TLS 1.0/1.1 存在已知漏洞, IETF 也已在 2021 年 3 月的 RFC 8996 中正式宣布弃用,因此需要将其禁用。将强随机密码与传输中加密相结合,可以避免认证信息以明文形式流经通信路径。
这篇文章对您有帮助吗?