近日,Discord 推出了 DAVE 协议,这是一个定制的端到端加密 (E2EE) 协议,旨在保护平台上的音频和视频通话免遭未经授权的拦截。
DAVE 是在 Trail of Bits 网络安全专家的帮助下创建的,该专家还对 E2EE 系统的代码和实施进行了审核。
新系统将涵盖用户在私人频道中的一对一音频和视频通话、小型群组聊天中的音频和视频通话、用于大型群组对话的基于服务器的语音频道以及实时流媒体。
Discord 在公告中写道: 他们将开始将 DM、群组 DM、语音频道和 Go Live 流中的语音和视频迁移至使用 E2EE。用户将能够确认通话何时进行了端到端加密,并对这些通话中的其他成员进行验证。
Discord 最初是为游戏玩家在游戏过程中进行交流而建立的,现在已发展成为世界上最流行的交流平台之一,满足了具有共同兴趣爱好的群体、创作者、企业和各种社区的需求。
DAVE 的推出是该平台加强数据安全和隐私保护的重要举措,该平台的使用人数已超过 2 亿。
最重要的是,Discord 决定将协议及其支持库开源,以便安全研究人员进行审查。此外,还发布了一份包含完整技术信息的白皮书,以确保对社区的透明度。
DAVE 技术概述
DAVE 使用 WebRTC 编码转换 API,允许在媒体帧(音频和视频)编码后和打包传输前对其进行加密。接收端对帧进行解密,然后解码。
只有特殊的编解码器元数据(如标题和保留序列)未加密。
DAVE 的运行概况,资料来源:Discord
在密钥管理方面,信息层安全(MLS)协议用于安全和可扩展的群组密钥交换,每个参与者都有一个按发送者计算的对称媒体加密密钥。椭圆曲线数字签名算法(ECDSA)则用于生成身份密钥对。
当一个群组的组成发生变化时,比如一个成员离开或一个新成员加入,这时候群组的加密状态会通过生成新密钥,这个过程应该在不会对参与者造成明显干扰的情况下完成。
Discord 表示,MLS 会增加密钥交换的延迟,但 DAVE 的设计能将延迟控制在几百毫秒以内,即使在大型群组通话中也是如此。
最后,在用户验证方面,有一些带外方法,如比较从群组的 MLS 时序状态得出的验证码(称为 “语音隐私码”)。
由于每次通话都会为用户分配一个新的密钥,因此通过使用短暂的身份密钥可以防止持续跟踪。
语音隐私代码屏幕,来源:Discord
分阶段推出
Discord 现已开始将所有符合条件的频道迁移到 DAVE,用户可以通过查看界面上的相应指示器来确认他们的通话是否经过端到端加密。
预计还需要一段时间,所有用户才能在所有设备和频道上完全访问新的 E2EE 系统。
用户除了升级到最新的客户端应用程序外无需做任何其他操作,老版本的客户端将仅限于传输加密。最初推出的版本将涵盖 Discord 的桌面和移动应用程序,网络客户端后续也将面世。
参考来源:Discord rolls out end-to-end encryption for audio, video calls (bleepingcomputer.com)