Mirage Vaultの安全性と暗号化:写真を守るしくみ
Mirage Vaultは、すべての写真をiPhone上でAES-256-GCMにより暗号化し、ファイルごとにランダムな鍵を1つ使い、金庫の鍵をSecure Enclaveで保護します。アカウントもサーバもありません。入る方法はパターン、Face ID、リカバリーフレーズだけで、ファイルをコピーしても、ほかの場所で推測して開くことはできません。
誰が見ようとして、何を得るか
各行は、のぞき見する可能性のある人、その人がMirage Vaultで得られるもの、そしてあなたを守るものを示しています。
| 誰が | 見えるもの | 守るもの |
|---|---|---|
| ホーム画面をちらっと見たり、肩越しにのぞいたりする人 | ありふれたアイコン。ロック画面は何もない砂色の画面で、アプリ名もグリッドもない | パターングリッドは指の下にだけ現れ、指を離すと消える。Appスイッチャーには何も写っていないスナップショットが表示される |
| ロックを解除したiPhoneを手にしている人 | 金庫の何もないロック画面 | Face IDまたはパターン。5回間違えると30秒の待ち時間が始まり、最大1時間まで倍々に延びる。離れたときのロック、伏せたときのロック |
| あなたのiPhoneのパスコードを知っている人 | 同じ何もないロック画面 | 金庫には専用の鍵がある。iPhoneのパスコードでは開かず、金庫のFace IDは登録済みの顔に結びついている。iPhoneに新しい顔を追加すると、パターンでロックを解除してFace IDを再びオンにするまで、金庫のFace IDはオフになる |
| ファイルやiCloudバックアップのコピーを持っている人 | ランダムな名前の、ランダムに見えるデータ | ファイルごとの鍵によるAES-256-GCM。金庫の鍵はコピーできないSecure Enclaveの鍵でラップされているため、パターンをオフラインで推測することはできない。バックアップは8単語のリカバリーフレーズでしか開かない |
| ロックを解除するよう強要する人 | あなたが見せることにした金庫 | 2つ目のパターンで開くダミー金庫と、Wipe Key:その場で本物の金庫の鍵を消去し、代わりにダミー金庫を開くパターン(どちらもMirage Pro)。Face IDはMirageを開くとすぐに本物の金庫を開くため、どちらもFace IDをオフにしておく必要がある |
| Mirage、またはMirageに問い合わせる誰か | 何も得られない:アカウントもサーバも鍵のコピーもない | リカバリーフレーズは一度だけ表示され、保存されない。Mirageの担当者がフレーズを尋ねることは決してない |
Mirage Vaultの暗号化の実際
以下は要約ではなく、アプリのソースコードにあるパラメータです。
- パターンまたはPINは、PBKDF2-HMAC-SHA256で600,000回以上反復処理されます。反復回数は、お使いのiPhoneで250 ms以上かかるように調整されます。その結果が金庫の鍵そのものになることはありません。
- Secure Enclaveがその結果をラップします。方式は、Secure Enclave内のP-256の鍵を使ったECIESです。秘密鍵はSecure Enclaveの中で作成され、読み出すことはできないため、ファイルとキーチェーンをコピーしても、別のマシンでパターンを試すことはできません。
- 金庫の鍵(256ビットの乱数、金庫ごとに1つ)は、正しいパターン、Face ID、リカバリーフレーズのいずれかを使ったあとに、メモリ上でのみアンラップされます。
- 各ファイルには専用のランダムな鍵があり、金庫の鍵でラップされます。写真、動画、メモ、スキャン、サムネイル、プレビューはすべて別々のオブジェクトです。
- 各ファイルは1 MiBのチャンク単位でAES-256-GCMにより暗号化されます。チャンクごとに新しいノンスを使い、チャンクをそのファイル、その位置、最後のチャンクかどうかに結びつける認証データを付けます。変更、切り詰め、入れ替えが行われたチャンクは検出され、復号されません。
フォーマットについてのそのほかの事実:ディスク上のファイル名はランダムな128ビットの識別子です。コンテナはNSFileProtectionCompleteで保護され、デバイスのバックアップから除外されています。ヘッダーには同じ長さの鍵スロットが8つあり、使われていないスロットはランダムなバイトで埋められているため、スロットからはダミー金庫やWipe Keyがあるかどうかはわかりません。ただし、インデックスファイルからは、フォレンジック解析で2つ目の金庫の形跡がわかる可能性があります。これはアプリの監査で未解決の項目です。Face IDには、現在登録されている顔の組み合わせで作成された専用のSecure Enclaveの鍵があり、iPhoneのパスコードに切り替わることはありません。動画は暗号化されたリソースローダーを通じてチャンクごとに再生され、復号された一時ファイルは作られません。侵入の記録は、金庫がロックされている間にHPKE(P-256、HKDF-SHA256、AES-256-GCM)で暗号化されるため、あとから開けるのは本物の金庫の鍵だけです。
バックアップと復元
暗号化されたiCloudバックアップは誰でも無料で使え、初期設定でオンになっています。同じ暗号化されたオブジェクトを、あなた自身のiCloudアカウントのプライベートデータベースにアップロードします。Appleに見えるのは暗号文だけで、Mirageには何も見えません。バックアップを開けるのはリカバリーフレーズだけです。フレーズはBIP-39の単語リストから選ばれた8つの単語(88ビット)で、一度だけ表示され、保存されません。ほかのすべての鍵は作成したiPhoneのSecure Enclaveに結びついているため、別のiPhoneで使える鍵はこのフレーズだけです。


何を、誰が確認したか
コンテナ形式とアプリ層は2026-10-31にレビューされました。コードの精読、別のレビュー担当者によるフォーマットの2回目のレビュー、そして並行処理、改ざん、ファジング、平文漏えいを確認するストレステスト用ターゲットです(パッケージ内の71件のテストはすべて合格し、Thread Sanitizer下でも合格)。ファイルの暗号化は、ビット反転、ランダムな変異、あらゆる境界での切り詰め、ファイル間でのチャンクの入れ替えに耐え、誤った平文が返されることは一度もありませんでした。指摘事項は金庫とスロットのロジック、そしてiCloudバックアップにあり、重大度が「緊急」と「高」のものは同日中に修正されました。監査文書には、各指摘事項とその状況が記録されています。
コンテナ形式と鍵を定義するMirageCryptoモジュールは、GitHubで公開できるよう独立したパッケージとして書かれています。公開されたら、このページからリンクします。
アプリの1段落の紹介文と、記事用のアイコンとスクリーンショットはプレスキットにあります。
セキュリティのページ
- 写真金庫アプリは安全か?信頼する前に確認すべき7つのこと
暗号化された金庫と、PIN画面付きの隠しフォルダを見分ける7つのチェック項目。
- 電卓で写真を隠すアプリは安全か?偽装で守れるもの、守れないもの
電卓による偽装の価値、その奥で確認すべきこと、そしてMirageがほかのアプリを装わずに隠れる方法。