GoogleはRustコミュニティーをどう支援しているのか? 最新支援策から見える狙いとは:「Rustエコシステムをより安全で安心できるものに」
Googleは、プログラミング言語「Rust」の開発者コミュニティーに対して行ったRustクレートの監査結果の共有について報告した。
Googleは、2023年5月23日(米国時間)、プログラミング言語「Rust」の開発者コミュニティーに対して行ったRustクレート監査結果の共有について報告した。
Googleは以前からRustコミュニティーへ投資を行い、Rust Foundation設立に協力したり、Google社員が仕事の一環としてRustの上流開発に取り組んだりするなど、主要なRustプロジェクトを財政的にサポートしている。
Rustは、他の言語でいうパッケージのような再利用可能なソフトウェアコンポーネントであるクレートを使用して、コードのカプセル化と共有を容易にしている。Googleでは、Googleの外部で書かれたクレートを活用するだけでなく、Googleが開発した独自のクレートを幾つか公開することによって、オープンソースのRustクレートエコシステムの構築を支援しているという。
サードパーティーのコードを利用するにはリスクが伴うため、プロジェクトが新しいクレートを使用する前に、開発者は通常、セキュリティ、正確性、テストなどの基準に対し徹底的な監査を行う。Googleではオープンソースプロジェクト全体で同じ依存関係を多く使用しており、異なるプロジェクトが同じクレートを監査すると重複した作業が発生することがあるという。その作業の重複を解消すべく、Googleはプロジェクト間で監査結果の共有を開始した。
Rustの依存関係が信頼できるエンティティによって監査されているかどうかを確認するのに役立つツール「cargo vet」を使用することで、各依存関係の要件を独自に設定することができる。
しかし、ユーザーに展開されるコードは通常、より厳しい要件を満たす必要がある。メモリ安全性の問題を引き起こさず、最新の暗号化を使用し、規格と仕様に準拠していることを確認する必要がある。
監査結果を確認し、共有する際には、監査中に記録された事実とプロジェクトの要件がどのように関連するかを考慮することが重要だ。つまり、監査結果を受け入れる前に、プロジェクトの要件と監査結果の一致を慎重に検討する必要がある。そこで、Googleがこれまでに実施したプロジェクト間での監査結果の共有が有用となる。
Googleは「自社の取り組みをオープンソースコミュニティーと共有することで、Rustのエコシステムをより安全で安心できるものにしたいと考えている」と述べている。
cargo vetを通じて監査を実施し、結果を共有する取り組みは初期段階に当たり、現在もツールの開発が活発に行われているという。
Copyright © ITmedia, Inc. All Rights Reserved.
関連記事
Rust バージョン1.70.0、30以上のAPIが安定化
オープンソースのプログラミング言語「Rust」の新バージョン1.70.0がリリースされた。「PHP」「Rust」の順位がじわり上昇、首位のPythonは? 2023年5月言語人気ランキング
プログラミング言語の人気ランキング「TIOBEインデックス」の2023年5月版が公開された。2023年3月から5月まで、1〜7位は「Python」「C」「Java」「C++」「C#」「Visual Basic」「JavaScript」で、PythonとCは小差が続き、8位以降では「PHP」と「Rust」が順位を上げつつある。Rustの導入で「Android」のセキュリティバグが低減か――Googleが報告
Googleは公式ブログで、モバイルOS「Android」の開発にメモリ安全なプログラミング言語「Rust」を導入する取り組みを進めてきた2019〜2022年の間に、同OSにおけるメモリ安全性の脆弱性が大幅に減少し、それに伴って深刻な脆弱性も減少していることを報告した。