Arti 1.0 发布,Tor 的官方 Rust 实现

当在 2001 年开始研究 Tor 时,C 是一个合理的选择,但也一直受到它的限制,C 语言的开发速度一直比 Tor 官方希望的要慢。更重要的是,现有的 C 语言实现经过多年的发展,已经有了一个不那么模块化的设计。几乎所有的东西都与其他东西相连,这使得分析代码和进行安全改进变得更加困难。

因此从 2020 年起,Tor 官方就开始尝试以 Rust 编程语言对 Tor 进行新的实现。而现在,随着最新版本的发布,Arti 已经达到了 1.0.0 的里程碑。

重大变化

  • arti crate 中的大部分 API,现在都隐藏在 experimental-api 功能的后面,以标明它们是不稳定的和不支持的。
  • default_config_file 函数已被替换为 default_config_files,因为现在有一个默认目录和一个默认文件使用了上述名称

低级 crate 中的重大变化

  • NetDirProvider 特性中新增了 params() 方法,以暴露最新的参数,即使没有一个完整的目录
  • 对代表一个中继的身份集的特征进行了大规模的重构
  • 要求我们的 TcpStream 类型实现 Send

更多详情可查看:https://gitlab.torproject.org/tpo/core/arti/-/blob/main/CHANGELOG.md

展开阅读全文
发表评论

相关文章