1

谷歌开源 Rust Crate 审查结果:便于 Rust 开发者验证源码安全

 11 months ago
source link: https://www.51cto.com/article/755652.html
Go to the source link to view the article. You can view the picture content, updated content and better typesetting reading experience. If the link is broken, please click the button below to view the snapshot at that time.

谷歌开源 Rust Crate 审查结果:便于 Rust 开发者验证源码安全

作者:漾仔 2023-05-25 09:44:37
日前谷歌在 GitHub 上开源了对 Rust Crate 的审查结果,开发者可在自己的项目中导入这些审核结果,以证明所使用的 Rust Crate 的属性。
6412f2697da0d852aad25387a5765876e7a8c0.jpg

5 月 25 日消息,谷歌的许多开源项目都使用 Rust,这是一种现代系统语言,旨在构建可靠高效的软件。日前谷歌在 GitHub 上开源了对 Rust Crate 的审查结果,开发者可在自己的项目中导入这些审核结果,以证明所使用的 Rust Crate 的属性。

425f4ee54426032af6c804216f1cac3b9f75bb.jpg

▲ 图源 谷歌开源博客

Rust 社区中存在可用于供开发者发布自己所开发的 Crate 的名为 Crates.io 的服务,开发者利用 Crates.io 也能下载使用他人所开发的 Crate。但所有第三方代码都带有一定风险因素。对于本地编译器层面而言,对 Crate 的要求可能仅是不包含主动恶意代码、不侵犯隐私、泄露数据或是安装恶意软件即可,但是供客户端侧部署的代码则需要符合更严格的要求,例如确保没有内存安全问题,并需要还要符合系列标准和规范需求、并使用更新的加密技术。

因此通常在新项目开始之际,开发组成员会根据其安全性、正确性、测试等标准对源码进行彻底的审查,当几个不同的项目审查同一个 crate 时可能会导致重复工作,因此为了消除重复的工作及验证安全性,因此谷歌内部项目开始使用新的 Crate 之前一定会经过彻底审核。

而第三方开发者各自审查项目所使用的 Crate 时,可能会浪费资源执行重复的工作,因此谷歌宣布开源审核结果,以避免重复审核工作。谷歌将这些审核结果持续整合到供应链储存库中,并且使用 cargo vet 来快速验证项目所使用的 Crate。

开发者可以将谷歌开源的审核结果,包括代码质量、安全性和测试要求等属性,导入到自己的项目中,并且根据这些 Crate 属性,决定其是否符合项目需求。不同使用案例的需求不同,cargo vet 让用户能够对每一个相依项目独立配置要求。

日前谷歌的 ChromeOS 和 Fuchsia 项目都已经贡献 Crate 审核结果,其他谷歌项目也会逐渐加入,如此便可覆盖更多的 Crate 。目前这项工作仍在初期阶段,包括 cargo vet 执行和共享审核的运作细节,之后可能还会有所变动。

IT之家注:在 Rust 程序语言中,Crate 是 Rust 中的一个编译单位,Crate 可以编译成二进制文件或库,其包含 Rust 代码和其他相关资源,可以被编译成执行文件或是函数库。Rust 使得在 Crate 中封装和共享代码变得容易,就像其他语言的软件包,这些 Crate 是可复用的软件组件,因此具有相当广泛的普适性。

责任编辑:庞桂玉 来源: IT之家

About Joyk


Aggregate valuable and interesting links.
Joyk means Joy of geeK