主要观点:不建议使用名为 Session 的 Signal 分叉应用,因其存在多个安全问题和令人不满之处。
关键信息:
- Session 移除了前向保密,易受 Key Compromise Impersonation (KCI) 攻击。
- 使用 Ed25519 生成密钥时熵不足,仅 128 位,易受批量攻击。
- 消息签名的带内协商方式错误,使 Ed25519 签名形同 CRC32,浪费资源。
- 使用 X25519 公钥作为 AES-GCM 密钥,导致任何人都可解密消息。
- 助记词解码非恒定时间,不安全。
- 在 Android 上不安全地使用 SHA1PRNG 生成随机数。
重要细节: - Session 开发者在诸多方面的决策存在问题,如代码中存在可强制 Android 客户端运行昂贵 Argon2 KDF 的组件。
- Session 对作者的发现未恰当引用其博客进行回应。
总结:Session 在加密安全方面存在诸多缺陷,从密钥生成到消息处理等环节都存在隐患,不应被使用。
**粗体** _斜体_ [链接](http://example.com) `代码` - 列表 > 引用
。你还可以使用@
来通知其他用户。