深入解析 Groove 共享空间及其安全机制
1. Groove 共享空间简介
在数据交换领域,传统方式难以满足用户构建高效、连贯且可复制的多应用工作空间的需求。而 Groove 的共享空间为我们提供了一个更优的解决方案。
共享空间本质上是一个 XML 对象存储的副本。对象的增量更改会以 Groove 增量消息的形式传输到参与共享空间的所有设备。这些消息可携带应用数据(如聊天中的一行文本、草图中的一笔)或管理数据(如加入共享空间的邀请、加密密钥)。分布式通信引擎确保增量消息能可靠地传递并存储在每个节点上。当遇到离线节点、无固定 IP 地址的节点或位于防火墙和 NAT 之后的节点时,它会根据需要进行调整,有时会借助中央中继服务。
用户无需了解这些底层机制,只需与名为收发器的查看器/编辑器进行交互。例如,在协作撰写文章时,我们使用的收发器就能展示共享空间。
共享空间由一组成员、一组工具以及成员使用这些工具创建的数据定义。在协作过程中,常用的工具包括持续聊天会话、多个线程讨论、多个记事本、日历和文件存档等。这些工具具备 Groove 感知能力,意味着在记事本、讨论或日历中所做的任何更改都会传播到共享空间的所有实例。对于单个成员而言,这种同步可能涉及两台或更多设备,如台式 PC 和笔记本 PC。
2. 共享空间的安全特性
在正常运行时,共享空间的成员数量通常是固定的。设备之间会交换增量消息,而管理这些消息的安全机制可能因两个原因而有所不同。
首先,Groove 系统可为每个共享空间支持不同的加密算法和密钥长度。默认的用于身份验证和密钥交换的非对称算法是 ElGamal,模数为 1536 位;默认的用于有线