反对 XMPP+OMEMO - Dhole 时刻

主要观点:XMPP 是常用消息协议,其各种实现已在技术社区存在数十年,曾被许多大公司使用,但基本协议传输明文。OMEMO 试图为 XMPP 生态系统添加端到端加密,但其存在诸多问题,不推荐使用 XMPP + OMEMO。
关键信息

  • XMPP 基本协议传输明文,OMEMO 基于 Signal 协议早期版本,意在加密 XMPP 但未达 Signal 水平,不能成为 Signal 的可行竞争者。
  • OMEMO 存在协议冻结(多数实施版本落后)、加密设计随意(缺乏明确理由和变更说明)、市场渗透问题(可使用无加密的 XMPP,客户端可关闭 OMEMO)、相关应用(Conversations)复杂且依赖旧版本库等问题。
    重要细节
  • 最新 XEP - 0384 版本为 0.8.3 但多数实施仍为 0.3.0 及以前,很多实现缺少 AES - 256 - CBC,如 libomemo、Conversations 等。
  • OMEMO 从 0.3.0 到 0.7.0 协议不断变化,如加密算法从 AES - 128 - GCM 到 AES - 256 - CBC + HMAC - SHA - 256 再到截断 HMAC - SHA - 256 认证标签,且规范未清晰指导实施者。
  • Conversations 是最流行的带 OMEMO 支持的 XMPP 客户端,其代码中包含多种加密实现,如 OpenPGP、X.509 证书验证、SASL 实现及 OMEMO 实现等,且依赖旧版本的 Bouncy Castle 和 libsignal。
  • 如 CVE - 2023 - 33202 等安全漏洞在 Conversations 依赖的库中存在但未修复。

总之,XMPP + OMEMO 存在多方面问题,当前不建议使用,未来虽可能改进但不能以此赌个人安全。

阅读 14
0 条评论