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

来源: IT之家
作者:漾仔
时间:2023-05-26
1064
谷歌的许多开源项目都使用Rust,这是一种现代系统语言,旨在构建可靠高效的软件。日前谷歌在GitHub上开源了对Rust Crate的审查结果,开发者可在自己的项目中导入这些审核结果,以证明所使用的Rust Crate的属性。

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

077979ae-c407-4e29-a493-63dd3dbe5dd9.webp.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之家,本站不拥有所有权,不承担相关法律责任。文章内容系作者个人观点,不代表快出海对观点赞同或支持。如有侵权,请联系管理员(zzx@kchuhai.com)删除!
扫码登录
打开扫一扫, 关注公众号后即可登录/注册
加载中
二维码已失效 请重试
刷新
账号登录/注册
个人VIP
小程序
快出海小程序
公众号
快出海公众号
商务合作
商务合作
投稿采访
投稿采访
出海管家
出海管家