写真保管庫における「もっともらしい否認」
この言葉が実際に意味すること、Obscura Photo Vaultがそれをどう実現しているか、そして保護が及ばなくなる具体的なポイント。
Obscura Photo Vaultでの「もっともらしい否認」とは、確かめられる1つの具体的なことです。アプリは常にロックされた保管庫の枠を10個置いていて、10個とも外からは同じに見えます。そのため、iPhoneからファイルをコピーした人でも、どの枠が使われているかは見分けられないと想定しています。見せても構わない写真を入れた2つ目の保管庫は、1つ目とまったく同じように動作します。バナーも、保管庫の一覧も、数の表示もありません。
これはあなたに有利なあいまいさを生むもので、保証ではありません。保護が及ばなくなる既知のポイントは4つあります。iPhone上の写真ファイルの数、11個目の保管庫、iCloudキーチェーン、そして見えたままのアプリそのものです。4つとも以下で説明します。
1. この言葉と、私たちが実際に主張していること
「もっともらしい否認」(plausible deniability)は借りてきた言葉です。アプリの宣伝では、たいていわざとあいまいなまま使われます。私たちは、何を意味しているのかを正確に言いたいと考えています。正確な主張は確かめられ、あいまいな主張は確かめられないからです。
正確な主張はこうです。Obscura Photo Vaultは、iPhoneに常にロックされた保管庫ファイルを10個置いています。それらのファイルをコピーし、読むことしかできない人には、どれが本物の保管庫で、どれが一度も使われていないのかを突き止められないと想定しています。技術的には、オフラインでの枠の列挙への耐性と呼ばれます。わかりやすく言えば、ファイルからは保管庫をいくつ使っているかがわからない、ということです。
「これが生むのはあいまいさであって、確実さではありません。ファイルシステム上の証拠からユーザの保管庫を列挙する攻撃者の能力を弱めますが、強要に耐える保証になるわけではなく、明確に定義された限界があります。」
このページの内容はすべて、この一文から導かれます。いちばん注意深く読んでほしいのはセクション4です。保護が及ばなくなるところだからです。
2. どう作られているか
「隠された」2つ目の保管庫を作るよくある方法は、フラグです。フラグとは、アプリのデータのどこかにある、この保管庫は本物、これはダミー、という目印です。それは誰かがデータを読んだ瞬間に破綻します。フラグそのものが答えだからです。
ここにはフラグはありません。代わりに:
10個の枠はすべて本物の保管庫
アプリを初めて開くと、使われていない枠のすべてに、完全で有効な保管庫ファイルが作られます。それぞれが独自のランダムなデータ、独自のロックされた鍵、独自の本物の空のデータベース、独自のランダムなパディングを持ちます。ダミーの枠と呼んでいるのは、あなたがパスワードを設定していないからにすぎません。iPhone上では、毎日使っている保管庫と同じに見えます。
使われていない枠にも本物のパスワードがある
使われていない枠はそれぞれ、iPhoneに保存された秘密からアプリが作ったパスワードでロックされています。大切なのは、「空」であることが何かの欠落で示されることはない、という点です。あなたが選んだかどうかにかかわらず、どの枠にもパスワードがあります。
ファイルサイズはランダム
保管庫のデータベースはどれも、2〜15メガバイトのランダムなサイズまでパディングで調整されます。これがなければ、ファイルサイズだけで、どの保管庫に写真が入っているかがわかってしまいます。
アプリは保管庫の一覧を表示しない
アプリの中には、保管庫の一覧も、数の表示も、保管庫を切り替える方法もありません。パスワードで開くのは1つの保管庫で、見えるのはその保管庫だけです。これは大切です。どんなに良い設計でも、画面に「保管庫 2/4」と表示されたら台なしです。
写真は1つの共有の場所に保存される
すべての保管庫の暗号化された写真とビデオは、ランダムなファイル名で1つのフォルダにまとめて保存されます。フォルダの中は保管庫ごとに分かれていません。各ファイルは、いずれか1つの保管庫の鍵でロックされています。そのため、ダミーの保管庫が自分のものではない写真を取り込んだり、表示させられたりすることはありません。
3. ロック解除がわざと遅い理由
かかる時間から答えが漏れることがあります。仮にアプリが枠を順に試し、最初に一致したところで止まるとします。すると、枠2の保管庫は枠9の保管庫より早く開きます。ロック解除の時間を何度か測った人なら、配置を突き止められるかもしれません。
そのため、アプリは途中で止まりません。ロック解除のたびに、使われていないものも含めてすべての枠を試し、10個すべてを終えてから判断します。
ロック解除に少し時間がかかるのはこのためです。この遅れは意図したものです。パスワードを鍵に変える処理も同じで、こちらもわざと遅くしてあります。どちらの遅れも、上に挙げた保護の目に見える代償です。
4. 及ばなくなるところ
既知の限界は4つあります。これを知らなければこの機能が自分に合うかどうかを判断できないので、公開しています。
4.1 写真ファイルの数
保管庫のファイルはどれも同じに見えます。写真のファイルはそうではありません。iPhoneのストレージを直接読める人を想像してください。iPhoneのフォレンジックコピー、暗号化されていないバックアップ、脱獄したデバイスなどを使う人です。さらにその人が、あなたからダミーのパスワードを聞き出したとします。その人はダミーを開いて中の写真を数え、それをiPhone上の暗号化された写真ファイルの総数と比べられます。数が違えば、ほかの保管庫に写真が入っているはずです。
ダミーに写真を追加しても、これは解決しません。比べるのは総数で、個々のファイルの照合ではないからです。この限界が関係するのは、iPhoneのストレージに直接アクセスできる人だけです。アプリの中からは、これを見る方法はありません。開いたダミーには自分の写真が表示されるだけで、ほかの枠については何も表示されません。
4.2 10個を超える保管庫
枠は常に10個あります。11個目の保管庫を作ると、アプリは11個目のファイルを作る必要があります。その余分なファイル自体が目印になります。保管庫のファイルを数える人には、ふつうは10個のはずが11個見えるからです。
これは現実のトレードオフで、アプリはそれをあなたに任せています。この保護より整理のしやすさが大切なら、保管庫をもっと作れます。この保護がアプリを選んだ理由なら、10個以内にとどめてください。
4.3 iCloudキーチェーン
使われていない枠のパスワードを作るための秘密は、iCloudキーチェーンを通じてデバイス間で共有されます。それにより、iPhoneとiPadで使われていない枠が一致した状態に保たれます。その代償はこうです。iCloudキーチェーンがオンの状態で、あなたのAppleアカウントにサインインできる人は、別のデバイスを使ってそれらのダミーのパスワードを割り出せる可能性があります。その人に対しては、この保護は成り立ちません。
私たちは、デバイス間の一貫性のためにこのトレードオフを選びました。心配している相手がその人なら、セキュリティ文書では、そのデバイスでiCloudキーチェーンをオフにすることを勧めています。
4.4 アプリは見える
ここで説明したことはどれも、Obscura Photo Vaultがインストールされていることを隠しません。アプリはホーム画面と、Appleアカウントの購入履歴に表示されます。この保護はiPhone上のファイルについてのものです。プライベートな写真を持っていること自体は隠しません。
5. 実際に役立つ場面
これが解決する日常的な場面は、よくあるものです。誰かがロックを解除したあなたのiPhoneを持っている、あるいは写真を見せてほしいと言われて、断るよりも何かを見せたいという場面です。
アプリには保管庫の一覧も数の表示もないため、別のパスワードで2つ目の保管庫を開くと、本物の写真が入った本物の使える保管庫が表示されます。空の画面も、「ダミーモード」の表示も、ほかの保管庫があることをほのめかすものも画面にはありません。相手に見えるのは、ふつうに使われているアプリです。実際にそうだからです。
それがすべてです。多くの人が実際に直面する場面に役立つ保護です。それ以上のものではありません。
6. これは何ではないか
ここははっきり言っておきたいところです。保管庫アプリが多くをほのめかしながら、何も約束しないことが多い分野だからです。
しつこく迫る人への防御ではありません。これはiPhone上のファイルの性質です。入力しているところを見ている人、アプリに複数の保管庫があると知っている人、ただ求め続ける人には役に立ちません。そうした状況をソフトウェアで解決することはできません。できるとほのめかすアプリは、誇張しています。
法的な助言ではなく、法的な状況のための道具でもありません。この機能が、どこの国のどんな法的手続きとどう関係するかについて、私たちは何も主張しません。ここに書いたことを、その手引きとして読まないでください。法的な疑問があるなら、アプリ開発者のWebサイトではなく、弁護士に相談してください。
暗号化の代わりではありません。本当に働いている保護は、あなたが選んだパスワードから作った鍵でファイルが暗号化されていることです。保管庫の枠は、その上に乗っているものです。どちらか1つしか残せないなら、暗号化を残してください。
7. よくある質問
写真保管庫アプリの「もっともらしい否認」とは何ですか?
iPhoneに保存されたデータから、本物の写真が入った保管庫がいくつあるかがわからない、という意味です。Obscura Photo Vaultでの正確な主張はもっと限定的です。常に10個の保管庫ファイルがあり、すべてが有効なファイルなので、それらのファイルを読んだ人でも、どれが使われているかは見分けられないと想定しています。これはあなたに有利なあいまいさを生むもので、保証ではなく、既知の限界もあります。
ダミーの保管庫はどう機能しますか?
別のパスワードで2つ目の保管庫を作り、見せても構わない写真を入れておきます。アプリには保管庫の一覧も数の表示もありません。そのため、そのパスワードで開くと、本物の写真が入った本物の使える保管庫が表示され、ほかの保管庫があることをほのめかすものは何もありません。それは偽物ではなく本物の保管庫です。だからこそ機能します。見破られるような偽物が、そもそも存在しないからです。
ダミーの保管庫ですべてを隠せますか?
隠せません。そしてその限界は公開しています。iPhoneのストレージを直接読める人は、開いたダミーの保管庫の写真を数え、それをiPhone上の写真ファイルの総数と比べることができます。数が違えば、ほかの保管庫に写真が入っているということです。保管庫を10個より多く作ると、それ自体が目印になる余分なファイルも増えます。そして、アプリ自体が隠れることは決してありません。
保管庫はいくつ作ればいいですか?
ふつうは2つです。いつも使うものと、見せても構わない写真を入れたものです。この保護がアプリを選んだ理由なら、10個以内にとどめてください。
アプリはどの保管庫が本物かを知っていますか?
知りません。アプリの中にそういうものは存在しません。パスワードは、それに合う枠を開けるだけです。これが本物だという目印はなく、だからこそファイルを読む人が見つけられるものも何もないのです。
アプリを見れば、私がいくつ保管庫を使っているかわかりますか?
アプリそのものからはわかりません。一覧も、数の表示も、保管庫どうしを行き来する方法もありません。それを突き止める既知の方法はセクション4にあり、どれもiPhoneのストレージへの直接のアクセスが必要です。
なぜ弱点を公開するのですか?
知らない限界には備えられないからです。そして限界が示されていない主張は確かめられません。限界については、セキュリティ文書でより技術的に詳しく説明しています。
出典
- Obscura Photo Vault セキュリティ文書 5.6(区別できないという性質の限界)
- セキュリティ文書 5.5(追加の枠で区別できなくなる性質が崩れること)
- セキュリティ文書 5.4(デバイスの秘密)
- セキュリティ文書 11.5(iCloudキーチェーン内のデバイスの秘密)
- AES-256-GCMと60万回のPBKDF2をわかりやすく解説
Obscura Photo Vault
iPhone用の暗号化された写真保管庫です。写真とビデオはデバイス上でAES-256-GCMにより暗号化されます。アカウント、サーバー、分析はなく、ネットワーク接続も必要ありません。パスワードを忘れると、私たちを含め誰も中身を復元できません。
App Storeで見る →