DEF CON信息安全超级乐队“死牛教”发布了Veilid(发音为vay-lid),这是一个开源项目,应用程序可以使用它以点对点的去中心化方式连接客户端并传输信息。
(资料图片)
这里的想法是,移动、桌面、Web和无头应用程序可以在互联网上私密安全地找到彼此并进行交流,而无需经过集中且通常由公司拥有的系统。Veilid为应用程序开发人员提供了代码,以便他们的客户端可以加入并在点对点社区中进行通信。
在DEF CON演示中,Katelyn "medus4" Bowden和Christien "DilDog" Rioux介绍了该项目的技术细节,该项目显然花费了三年时间进行开发。
该系统主要使用Rust编写,还使用了一些Dart和Python,它借鉴了Tor匿名服务和点对点的星际文件系统(IPFS)的一些特点。如果一个设备上的应用程序通过Veilid连接到另一个应用程序,那么任何一方都不应该能够从该连接中了解到对方的IP地址或位置,这对于隐私来说是有益的。应用程序制造商也无法获得这些信息。
Veilid的设计文档和源代码,根据Mozilla公共许可证第2.0版提供。
“IPFS的设计并不考虑隐私问题,”Rioux告诉DEF CON的观众。“Tor考虑了隐私问题,但它并没有考虑性能。当NSA运行100个[Tor]出口节点时,它可能会失败。”
与Tor不同,Veilid不运行出口节点。Veilid网络中的每个节点都是平等的,如果NSA想要像对Tor用户那样监视Veilid用户,联邦机构将不得不监视整个网络,希望这对于“无此机构”来说是不可行的。Rioux将其描述为“就像Tor和IPFS发生了关系,产生了这个东西”。
Bowden补充道:“这里的可能性是无限的。所有的应用程序都是平等的,我们的强大程度取决于最弱的节点,而每个节点都是平等的。我们希望每个人都能在此基础上构建。”
使用核心Veilid库的每个应用程序副本都充当网络节点,它可以与其他节点进行通信,并使用256位公钥作为ID号。没有特殊节点,也没有单点故障。该项目支持Linux、macOS、Windows、Android、iOS和Web应用程序。
Veilid可以通过UDP和TCP进行通信,连接经过身份验证、时间戳、强大的端到端加密和数字签名,以防止窃听、篡改和冒充。所涉及的密码学被称为VLD0,并使用了已建立的算法,因为该项目不想冒险引入“自己的算法”的弱点,Rioux说。
这意味着加密使用XChaCha20-Poly1305,公私钥身份验证和签名使用椭圆曲线25519,DH密钥交换使用x25519,密码哈希使用BLAKE3,密码哈希生成使用Argon2。如果需要,这些机制可以被更强大的机制替换。
Veilid通过加密写入本地存储的文件,并为开发人员提供了加密表存储API。用于加密设备数据的密钥可以受到密码保护。
Bowden说:“该系统意味着没有IP地址、没有跟踪、没有数据收集和没有追踪-这是人们将你的互联网使用货币化的最大方式。”
Bowden继续说:“亿万富翁们图将这些连接货币化,很多人都上当了。我们必须确保这是可用的。”希望应用程序将包括Veilid并使用它进行通信,以便用户可以在不了解所有上述技术细节的情况下从网络中受益:它应该对他们来说只是起作用的。
为了展示该系统的功能,团队构建了一个基于Veilid的安全即时通讯应用程序,类似于Signal,名为VeilidChat,使用了Flutter框架。还需要更多的应用程序。
如果Veilid大规模推广,可能会对监控资本主义经济造成重大冲击。尽管此前尝试过,但结果好坏参半,不过“死牛教”以高效完成任务而闻名。