一般ユーザ向けのセキュア、且つ、プライベートな Android 端末。 CalyxOS をインストールする方法

Android 端末である程度のプライバシーを保護してくれる OS が最近増えてきまし た。代表として GrapheneOS がよく挙げられていますが、ほとんどの人には極端す ぎます。Google Play services がないため、多くのアプリが正しく動作しなかった り、通知が届かなかったりして、必要としている人は不便に感じるでしょう。

そんな人に CalyxOS をおすすめしたいです。インストー ルが楽で、 microG を含めるため Google が (ゆでガエル のように) Android に必要不可欠にしたプロプライエタリアプリとライブラリーと API を再現することができます (つまり、通知や正確な位置情報が使えるようにな ります)。なお、 microG のインストールは任意です。

CalyxOS のロゴ

インストール後に設定できる背景画像。もっと見る

CalyxOS は GrapheneOS からフォークされたセキュリティ機能は多少緩めた Androidの OS です。一番大きな違いは前者の hardened_malloc を含みませ ん。これはメモリ解放時のヒープコラプションの脆弱性を防ぐメモリ領域を確保す る関数です。一種のメモリ脆弱性をほぼ無くす一方、適合性を破壊するため一般的 なユーザのワークフローでは導入しにくい機能です。

つまり、 CalyxOS はセキュリティとユーザビリティのトレードオフを行っていま す。とはいえ、一般に購入できる Android 標準 OS に比べては安全でプライベー トです1

また、上記も書きましたが、 CalyxOS は microG を含みます。その仕組みを理解す るのは重要だと思います。 microG が動作するため、端末の OS はインストールし たアプリに microG が Google Play services であることと騙さなければいけませ ん。つまり、「Signature spoofing」 (電子シグネチャのスプーフィング) を行っ ています。

電子シグネチャのスプーフィングの問題は、悪意のあるアプリが同じスプーフィン グを使用してれば気づかない間に悪いことが起きる可能性があります。こんなこと が発生しないように CalyxOS の開発者はスプーフィングできる範囲と権限をできる だけ狭く制御しています。僕の知っている限り、スプーフィング攻撃の報告が今ま でありません。なお、そのリスクの存在すら気にする場合は microG を無効化した 方が安全です。

その他、プライバシー重視 OS として、必要最低限のアプリのみを標準搭載し、 Google アプリを全部排除しました。初起動時に、プライバシー業界で推奨されてい るアプリの選択と自動インストールがあります。

さて、インストール方法を見てみましょう。実はとても簡単で驚きました2

インストール方法

まず、セキュリティのベースラインを保つため、対応している端末の機種が限られ ています。サイトから現在対応している機種を確認 しましょう。

自分の端末に合ったバージョンをダウンロードします (サイトからクリックしても ダウンロードできます)。ダウンロード後、SHA256 のハッシュを必ず確認しま しょう。

以下の手順は Linux から実行しています。

curl --tlsv1.2 --location --remote-header-name https://release.calyxinstitute.org/CODENAME-factory-X.X.X.zip --output CODENAME-factory-X.X.X.zip

sha256sum CODENAME-factory-X.X.X.zip

次に、デバイスフラッシャー (端末へ OS をインストールしてくれるソフトウェア) をダウンロードします。 Linux, macOS と Windows のバージョンがあります。同じく、 SHA256 を必ず確認しましょう。

curl --tlsv1.2 --location --remote-header-name https://release.calyxinstitute.org/device-flasher/1.0.3/device-flasher.linux --output device-flasher.linux

sha256sum device-flasher.linux

SHA256 がサイトにあるハッシュと一致していることを確認したら、任意の名前の 新しいフォルダを作ってダウンロードした上記2つのファイルをそのフォルダに入 れます。

なお、Android 端末を一度起動したことがない場合は起動して、ホーム画面が表示 されるまで設定をすべてスキップスキップスキップ。

SIM カードを入れません! 入っていたら取ります。

Wi-Fi を設定して、端末の「システム アップデート」を最新版にしましょう。数回 繰り返さなければならない可能性があります。アプリは初期化されるため、更新を 無視しても良い (と思います)。

インストールを実行する前に、念の為充電が十分 (80%以上) であることを確認しま す (100%まで待つことに越したことがない)。

前提準備ができたら、デバイスフラッシャーを実行します (実行不可の場合は権限 を確認)。

chmod +x ./device-flasher.linux; ./device-flasher.linux

device-flasher を実行すると、ターミナルに次のステップが表示されます。基本 はその情報をフォローします。

インストールするため、4つのステップを済ませるべきです。

  1. SIM カードが入っていないことと、安定した WiFi に接続していること
  2. 開発者モードになっている
  3. 「USB デバッグ」 有効化
  4. 「OEM ロック解除」 有効化

Android 端末を USB で接続してターミナルにてエンターキーと押下。

スマホが自動的に動作しますが、 unlock the bootloader の選択と確認は人が行 わないといけないので、音量ボタンで選択して起動ボタンで確認します。

Android のブートローダー設定

ブートローダーのロックを解除したら、スマホの画面が暗くなったり、明るくなっ たりしますが、しばらく触らないでおきましょう

ターミナルにて何やっているかが表示されますので情報を読んでもいいですが、や ることは基本的にないはずです。

デバイスフラッシャーの実行

数分間立ちますと、インストールが終わります。先程解除したブートローダーを ロックしなければなりませんので lock the bootloader を選択します。

このステップを必ず実行します! 無視すると端末のセキュリティを保証できません!

すると、端末が CalyxOS に起動します! 終わり!

CalyxOS の起動

初期設定

初めて CalyxOS を起動するのは一般的な Android 端末と大きく変わりません。 Google にしつこく「データをよこせ!」、「Google アカウントにログインしろ!」 と言われないくらいの差。

冒頭に出てきた microG を有効化・無効化できます。別途で変更できません。 普段使っているアプリが Google サービスをよく使うなら、有効にしてください。

CalyxOS はプライバシー業界で推奨されているアプリをいくつか勧めてくれます。 別途でインストール・アンインストールができますので大きく迷うことはありませ ん。

CalyxOS の起動

それだけです!

Google フリー世界へようこそ!陰ながら監視されている感がなくなる以上、追跡が ないため CalyxOS はバッテリーに優しいです。

Google フリー世界はいくつかの習慣を変えなければなりませんが、乗り越えられな いことはありません。一番大きいのは Play Store の代わりに F-Droid (オープン ソースアプリの見のストア) と Aurora Store (Play Store からアプリを引っ張る ストア3) を使います。両方のストアについて日本語での記事もありますので少し検 索してみてください。

ジャパニーズは?

気づいたと思いますが、英語です。初期化のとき日本語を設定することができますが、翻訳ができていない文字列がほとんどです。日本語訳にご協力ください!

私はわかる範囲ですでに少し翻訳しました。


  1. 標準 Android はセキュアなシステムです。よく耳にする Android の多くの脆弱性はあらゆるメーカーによるだらしない導入と変更の影響です。 ↩︎

  2. Windows の場合は Android 用のドライバーをインストールするのが少し厄介 みたいです。うまく行かない場合は Linux のライブ USB から手順をフォローする と良いです。 ↩︎

  3. ほしいアプリが見つからない場合、設定から Networking を開いて Insecure anonymous session を有効化した上でアプリを再起動して再度検索してください。ダウンロード後、設定を再度無効化してください。 ↩︎