Inborn
JA
Inbornを入手

AIアプリが何も送っていないことを証明する方法

アプリが何も送っていないことは、コードを1行も読まずに確かめられます。OSとネットワークがすでに与えている道具で、外から見ればいいのです。機内モード、Androidの権限一覧、iOSのApp のプライバシーレポート、アプリ自身のバイトカウンター、そしてファイアウォール。この5つで、アプリが行うすべての接続が見えます。見えないのは、あなたが試さなかった条件のもとでコードが何をするかです。

チェック1: 機内モード

すべての電波を切って、ふだんどおりに使ってみてください。同じ速さで答え続けるなら、答えのどの部分もサーバーから来ていません。いちばん速いテストで、チャットアプリについては決定打に近いものです。サーバーを必要とするアプリは、サーバーなしに全速力の返事を装えません。これで否定しきれないのは、オフラインで動いておいて、あとからログを送るアプリです。だからチェックはあと4つあります。

チェック2: Androidの権限一覧

Androidは、マニフェストで android.permission.INTERNET を宣言していないアプリに、ネットワーク接続を開かせません。そのマニフェストは、あなたがインストールしたパッケージに焼き込まれています。Playの配信ページを開き、「このアプリについて」、「アプリの権限」と進みます。「ネットワークへのフルアクセス」がなければ、そのアプリはネットワークに一切到達できません。開発者の約束ではなく、OSが強制する制約です。インストール済みのパッケージやAPKに対して、自分で確認できます:

adb shell dumpsys package com.inbornapp.mobile | grep INTERNET
aapt2 dump permissions inborn.apk

このリストの中でいちばん強いチェックです。不在を観察するのではなく、否定を証明できる唯一のものだからです。

チェック3: iOSのApp のプライバシーレポート

設定、プライバシーとセキュリティ、App のプライバシーレポート。iOSは各アプリが過去7日間に接続したドメインをすべて記録します。記録しているのはアプリではなくOSです。サーバーと通信するアプリは、認めていようといまいと、ここに行が出ます。知っておく価値のある注意点が1つ。自分で始めたモデルのダウンロードは本物の接続なので、ここに現れます。だからこそアプリは、何かを取得する前に接続先のホストを明かすべきです。

チェック4: アプリ自身のカウンター

OSのプロセスごとのバイトカウンターを表示するアプリもあります。その数値はアプリ自身の帳簿ではなくシステムから来るので、データを送りながらゼロと報告することはできません。インストールしてからずっと送信バイトがゼロのままなら、それは強い手がかりです。ただし証明ではなく、便利な目安として扱ってください。画面に数字を描いているのは、やはりアプリだからです。

チェック5: ファイアウォール

AndroidならNetGuard、macOSならLittle SnitchやLuLu、Windowsならファイアウォールの背後にアプリを置いて、何が許可を求めてくるかを見てください。何日使っても何も現れないことは、ふつうの利用者にできる継続的な監視としては、いちばん近いものです。アップデートのあとも効き続ける、ここで唯一のチェックでもあります。

これらで証明できないこと

3つあります。ビルドが特定のソースツリーから作られたことは証明できません。それには誰でも1バイトまで同じに再現できるビルドが必要で、それを持つアプリはごくわずかです。コードが見た目どおりに動くことも証明できません。それにはソースが必要です。第三者が実際に調べたことも証明できません。それには依頼した監査が必要です。プライバシーの主張が「検証済み」だと言う人は、この3つのどれを指しているのか言えるはずです。上のチェックを端末で動くほかのAIアプリに対して行った結果は、1つの表にまとめています。

Inbornのこの3つについての立場は、ほのめかしではなく書き記してあります。ソースは読んでビルドするために公開していますが、再配布はできません。外部の誰も、私たちのバイナリを1バイトまで同じに再現することはできません。監査は依頼していません。本当だと言えるのはチェック1から5のすべてで、その全部を今日の午後にでも試せます。Inbornから1バイトでも外に出る場合の完全な説明を含む一覧は、証明ページにあります。

次の記事AIがあなたの端末で動くべき理由 · 端末で動くAIモデルの選び方