Telegram 真的是加密的吗?深入解析其协议,揭示安全性与隐私保护的真相。

Telegram 已经变得极为流行,尤其是在那些重视隐私和安全的用户中。该应用自称为安全的通讯工具,但这到底意味着什么呢?Telegram 真的是加密的吗?如果是,它的安全性如何?本文将探讨这些问题,借助约翰斯·霍普金斯大学著名密码学专家马修·格林的专业见解。
理解消息应用中的加密
在深入了解 Telegram 的加密之前,首先需要明白加密在消息应用中的含义。现代私人消息服务通常采用端到端加密(E2EE),确保只有发送者和接收者能够读取消息。即使是服务提供商(在这里指 Telegram)也无法解密这些消息,因为他们不持有解密密钥。这种加密级别被视为通信隐私和安全的黄金标准。
Telegram 的加密方式
Telegram 使用一种名为MTProto的自定义加密协议。根据 Telegram 的说法,该协议旨在保护客户端(用户)与服务器之间的通信安全。然而,事情从这里开始变得复杂。
Telegram 并未默认对所有消息使用端到端加密。相反,其标准聊天依赖于服务器-客户端加密。这意味着虽然消息在你的设备与 Telegram 服务器之间是加密的,但 Telegram 仍然有能力解密并读取这些消息。这种方式与其他消息应用(如 Signal 和 WhatsApp)所使用的更安全的端到端加密截然不同,后者即使服务提供商也无法读取消息。
如果你想在 Telegram 上实现真正的端到端加密,必须手动启用一个名为秘密聊天的功能。该功能仅适用于一对一对话,不支持群聊。正如马修·格林在分析中指出的,这是一个重大缺陷:“实际上,绝大多数一对一的 Telegram 对话——以及所有群聊——很可能都能被 Telegram 服务器看到。”
Telegram 秘密聊天的挑战
即使你选择使用秘密聊天,也存在一些限制。首先,秘密聊天是设备专属的,意味着如果你在手机上开始了秘密聊天,就无法在平板或电脑上继续。此外,启用秘密聊天的过程并不简单,需要多步操作,这可能会让技术水平较低的用户望而却步。
正如格林所说:“对于非专业用户来说,激活 Telegram 的端到端加密竟然如此困难。”这一复杂性与 Signal 等应用形成鲜明对比,后者默认开启端到端加密,无需额外设置。
Telegram MTProto 协议的安全性
Telegram 的自定义 MTProto 协议曾受到密码学家的审视。该协议使用了2048 位 Diffie-Hellman 密钥交换,这是一种允许双方在不安全通道上建立共享密钥的方法。虽然听起来安全,但格林和其他专家对其实现细节提出了担忧。例如,协议依赖服务器选择某些密码参数,如果服务器被攻破,可能引入潜在漏洞。
此外,MTProto 采用了一种名为无限混淆扩展(IGE)的独特加密模式,这在密码学界并不广泛采用。这种加密模式的选择引起了专家们的质疑,他们通常更倾向于使用更标准且经过充分验证的方法。
用格林的话说:“我在上文中每加一个‘*’的地方,都是专业密码学家在进行安全审计时会举手提出大量疑问的点。”换句话说,尽管理论上 MTProto 可能是安全的,但其非常规选择和缺乏透明度使其难以完全信任。
元数据问题
即使 Telegram 的加密无懈可击,还有另一个方面需要考虑:元数据。元数据包括你与谁通话、何时通话以及通话时长等信息。这些数据不受端到端加密保护,对第三方(包括广告商和政府