slot deposit pulsa slot mahjong slot gacor slot gacor slot gacor resmi slot gacor 2025 slot gacor terpercaya slot gacor 2025 slot gacor hari ini slot gacor hari ini slot gacor hari ini
Google宣布支持使用Rust开发Chromium
17611538698
webmaster@21cto.com

Google宣布支持使用Rust开发Chromium

资讯 0 1861 2023-01-16 09:41:07
Google Chrome 安全团队昨天宣布,Chromium 将支持在项目中使用来自 C++ 的第三方 Rust 库。
目前Chrome团队正在积极寻求将可用于生产环境的 Rust 工具链添加到 Chromium 构建系统中,以实现在明年将 Rust 代码引入到 Chrome 二进制文件中。

图片

Google 根据 Chromium 的项目体量和自身需求,暂时只支持使用第三方 Rust 库,因为第三方库是作为独立组件编写的,它们不需要考虑有关 Chromium 实现的潜在需求。这意味着他们拥有更简单且专注于他们单一任务的 API。
根据 Google 的介绍,他们将 Rust 引入 Chromium 的目标是提供一种更简单(无 IPC)和更安全(整体复杂性比 C++ 低,沙箱中也没有内存安全错误)的方式来满足两个规则,以加快开发速度(更少的代码编写,更少的设计文档,更少的安全审查),并提高 Chrome 的安全性(增加没有内存安全错误的代码行数,降低代码的错误密度)。他们认为可以使用第三方 Rust 库来实现这一目标。
图片
他们还说,Rust 是由 Mozilla 开发的编程语言,在提供安全性的同时还具有高性能,最初专门被用于编写浏览器,因此 Chromium 依赖这项技术也非常合适。

这一决定将使谷歌能够在明年内将 Rust 代码包含在 Chrome 二进制文件中。“我们起步缓慢,并且对我们准备好后将考虑的图书馆设定了明确的期望。”

满足“二人法则”


“我们将 Rust 引入 Chromium 的目标是提供一种更简单(无 IPC)和更安全(整体 C++ 复杂度较低,沙箱中也没有内存安全漏洞)的方式来满足二元法则”,Jansens 解释道。


二人法则规定,在编写代码来解析、评估或以其他方式处理来自互联网的不可信输入时,应在以下三个风险因素中选择不超过两个:


(1) 不可信输入;

(2) 不安全的实现语言;

(3) 高特权。


Jansens 补充说,此举还有望加快 Chromium 的开发,因为要编写的代码和设计文档都变得更少。添加 Rust 也将提高安全性,Jansens 说,因为它增加了没有内存安全漏洞的代码行数,同时降低了漏洞密度。


“我们相信我们可以使用第三方 Rust 库来实现这一目标”,Jansens 宣称。“我们知道 C++ 和 Rust 可以很好地协同工作。” 但是,有一些限制。“我们可以预期这些限制的形式会通过新的或改进的工具及时改变,但这里的决定和描述是基于当前的技术状态。”


在 Chromium 项目中加入 Rust 应该不足为奇。自 2019 年以来,谷歌一直在用 Rust 编写 Android 代码。


众人的看法


一些人对这种转变持怀疑态度,例如引入了新的Bug和运行错误。


一位工程师 Lolinder在 Hacker News 上写道:


“对于任何给定的项目,用 Rust 重写都不一定是个好主意,而且几乎可以肯定,谷歌不会像 Mozilla 那样主动用 Rust 重写大量 Chrome。


原因是错误主要存在于新代码中,而不是长期未触及的代码中。虽然可以通过在 Rust 中重写来解决一些潜在的内存问题,但也可能会引入新的Bug回归,这可能会更糟。专注于用安全的语言编写独特的代码更有意义,并且只有在它们需要大量重写时才逐渐迁移。”


一位谷歌资深人士Jansen说道:“这是一件非常好的事情,并且在其他谷歌项目中经历过这一点,真诚地祝贺那些表现出坚韧不拔的人,尽管他们遇到了很多真正的难题,但我敢肯定被问到,还会有很多废话。从长远来看,这一结果对用户是一定有利的。”


Jansen 写道,从 C++ 到 Rust,目前只会在一个方向上支持互操作。有意思的是,谷歌已经投资了Crubit,这是一种“非常”实验性的 C++/Rust 双向操作工具,而贡献最大的是谷歌工程师。


Rust 是由 Mozilla 主导开发的通用、编译型编程语言。设计准则为“安全、并发、实用”,支持函数式、并发式、过程式以及面向对象的编程风格。Rust 语言原本是 Mozilla 员工 Graydon Hoare 的私人计划,而 Mozilla 于 2009 年开始赞助这个计划,并且在 2010 年首次公开。


作者:场长

相关链接:
https://security.googleblog.com/2023/01/supporting-use-of-rust-in-chromium.html

评论