谷歌安全团队表示,将在 Chromium 项目中引入 Rust 支持,目的是为了防止长久以来的内存安全问题。目前正积极将生产 Rust 工具链添加到 Chromium 的构建系统中,在明年内将 Rust 代码包含在 Chrome 二进制文件中。
Chromium 项目中引入 Rust 支持
在 Android 12 中,谷歌将 Rust 编程语言作为 C/C++ 的内存安全替代方案。同时,在 Android 开源项目 (AOSP) 中 Rust 也得到了扩展和使用。
Android‘中的代码量占比
在 Android 13 中,大约 21% 的新原生代码是 Rust。AOSP 中大约有 150 万行 Rust 代码,迄今为止,在 Android 的 Rust 代码中发现的内存安全漏洞为零。这表明 Rust 在防止 Android 最常见漏洞(内存安全)上确实起到了作用。
随着 Linux 6.1 对 Rust 的支持,Rust 开始从内核驱动程序为内核带来内存安全。
在逐步接纳 Rust 代码之后,Chromium 项目将在未来支持使用来自 C++ 的第三方 Rust 库。目前正积极寻求将生产 Rust 工具链添加到 Chromium 项目的构建系统中。将在明年内将 Rust 代码包含在 Chrome 二进制文件中。
这就意味着不仅是Chrome 浏览器,所有基于 Chromium 开发的浏览器都可以获得这一更新,谷歌将 Rust 引入 Chromium 的目标是提高Chrome的安全性和加快开发速度(更少的代码,更少的设计文档,更少的安全审查)。
Rust 虽然是由 Mozilla 开发的,Google 也是 Rust 基金会的创始成员之一,因此 Chromium 最终也开始依赖这项技术是非常合适的,就目前来看,Rust 确实是一个在提供安全性的同时还具有高性能的可行的解决方案。
Rust语言
Rust 是由 Mozilla 主导开发的通用、编译型编程语言。最初是 Mozilla 员工 Graydon Hoare 的私人计划,于 2009 年开始获得 Mozilla 的赞助,于2015年5月15日发布首个稳定版本,Rust 1.0。
2021 年 2 月 9 日,Rust 基金会成立,Mozilla、Amazon、华为、谷歌、微软作为创始成员,共同推进 Rust 项目的开发、维护和推广。