信号协议及其应用:以Viber为例的深入剖析
1. 信号协议的群组通信与状态存储
信号协议在群组通信方面有独特的实现方式。在信号协议的会话中,转发的消息与用户A最初提供的消息相同,这意味着用户B、C和D可以使用之前与A建立的端到端加密(E2EE)会话来解密这些消息。信号协议通过普通的E2EE消息以简单直接的方式模拟群组消息或群聊。
为了正确实现客户端的消息分发,所有群组成员的客户端必须共享或能够访问群组状态,其中包括群组标识符、名称、图像、群组成员信息等。群组状态可以采用去中心化或中心化的方式存储,各有优缺点:
| 存储方式 | 优点 | 缺点 |
| ---- | ---- | ---- |
| 去中心化(客户端) | 服务器无需知道用户所属的群组 | 难以维护状态的一致性 |
| 中心化 | 状态可以保持一致 | 服务器知道用户所属的群组 |
最近,信号协议的开发者提出了一种技术,该技术可以以中心化的方式存储群组状态,既能利用其易于维护一致性的优点,又能避免服务器知晓用户所属的群组。这一技术扩展了最初为信号协议群组消息提出的键验证匿名凭证(KVAC),目前只是一个提案,但很有可能在未来的版本中实现。
与许多支持群组消息和群聊的E2EE信使(如WhatsApp、Threema等)不同,信号协议实现的是非管理式群组,即所有群组成员地位平等,可以代表整个群组发言,并相应地管理群组信息。
2. 信号协议的安全分析
之前在TextSecure中使用的信号协议的前身曾被分析过。研究人员发现,消息内容的不可否认性不如最初预期的那么强,并且该协议存在一些细微的漏洞,可能会受到未知密钥共享攻
超级会员免费看
订阅专栏 解锁全文

181

被折叠的 条评论
为什么被折叠?



