2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

【Rust】GoogleがRustでAndroidの安全性を強化する理由

Last updated at Posted at 2025-10-28

はじめに

— メモリ安全性を取り戻すための静かな革命 —

Androidは長年、C/C++で書かれた巨大なシステムです。
高性能で柔軟な一方、C/C++には避けがたい課題がありました。
それが——

メモリ安全性(Memory Safety)の欠如

Googleの調査によると、
Androidのセキュリティ脆弱性のうち 約70〜76%
「メモリ関連のバグ(use-after-free、バッファオーバーフローなど)」によるものでした。

これを根本的に解決するため、Googleは新しい選択をしました。

その名は Rust


Rustとは何か

RustはMozilla Researchが生み出した
高性能かつ安全なシステム言語」。

特徴を一言で言えば:

“Cのように速く、Pythonのようにモダン、しかも安全”

Rustはコンパイル時に
メモリの所有権(Ownership)と借用(Borrowing) を厳格に管理し、
「メモリ安全なコードしかコンパイルできない」ように設計されています。

つまり——
クラッシュも、ダブルフリーも、NULLポインタ参照も、コンパイル時に防止されるのです。


GoogleがRustを導入した理由

1. メモリ安全性をコンパイル時に保証

Androidではセキュリティバグの大半が
「C/C++によるメモリ破壊」から生まれていました。

GoogleはRustによって、この構造的問題を根本から排除。

結果:
Androidのメモリ安全関連の脆弱性は
2022年時点で約24%まで減少(以前は76%)


2. 既存C/C++との親和性

Rustは FFI(Foreign Function Interface) により、
C/C++コードと安全に相互運用できます。

これにより、
Android内の「安全性が特に重要な部分」だけをRustで置き換え、
他の部分はそのまま利用可能です。

つまり、段階的移行が可能なのです。


Rustが使われているAndroidの主なコンポーネント

コンポーネント 導入バージョン 役割
Keystore2 Android 12 システムの鍵管理をRustで再設計(KeyMint連携)
AVF (Android Virtualization Framework) Android 13〜 Rustで実装されたpVM(protected VM)基盤。セキュリティ境界の強化
DoH3 (DNS over HTTP/3) Android 13 Rust実装のHTTP/3クライアントで安全通信
UWBスタック Android 13 超広帯域通信のRust実装
安全ライブラリ (libavf, libkeymint) 継続中 C++からRustへの段階的置き換え中

構成イメージ


Rust導入の効果(Google発表より)

年度 Rust比率(新規ネイティブコード) メモリ関連バグ比率
2019 0% 約76%
2021 約15% 約45%
2023 約21% 約24%

Rustの導入が増えるにつれ、
バグの根本的な原因が消えていったのです。


Google内部の開発体制の変化

Googleは現在、AOSP(Android Open Source Project)で
Rustを正式サポート言語として導入しています。

  • build/soong システムでRustビルドが統合済み
  • Bazel / Soong 両方でRustターゲットが定義可能
  • Android Security チームがRustガイドラインを整備

Rustはもはや実験ではなく、Android開発の一等市民になりました。


これからの展望

GoogleはRustをさらに以下の領域へ広げる計画です:

  • ドライバーレイヤー(HAL層)への導入
  • ネットワークスタックの再設計
  • IoT / Auto / Wear OS の安全コンポーネント

また、LinuxカーネルもすでにRustサポートを開始しており、
AndroidカーネルもRust製ドライバが登場する日は近いでしょう。


まとめ

Rustは「安全なAndroid」を支える新たな基盤言語。

  • C/C++の性能を維持しながら
  • GCなしでメモリ安全を保証し
  • セキュリティ事故を根本から減らす

そしてGoogleは、Rustを通じて
Androidの未来をより安全・高信頼なものに作り変えています。


💡関連リンク

2
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
0

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?