PCのポートを開けない
PC版QUTRITからCloudflareへ外向きに接続します。ルーターのポート開放や、PCを直接インターネットへ公開する設定は不要です。
QUTRIT スマホ遠隔操作は、外出先のスマホから、起動中のPC版QUTRITを安全に操作するための仕組みです。 会話履歴、ローカルRAG、APIキー、AI処理の入口は、引き続きPC側に保存されます。
PC版QUTRITからCloudflareへ外向きに接続します。ルーターのポート開放や、PCを直接インターネットへ公開する設定は不要です。
会話内容はPCとペア済みスマホ間でエンドツーエンド(E2E)で暗号化され、通信途中での解読を防ぎます。
Firebaseへのサインインに加えて、PCに表示したQRコードを使ったペアリングと、端末固有の暗号鍵が必要です。
中継サーバーやスマホを無条件に信用せず、PC側がペアリング済み端末と許可コマンドを確認してから処理します。
スマホとPCの間には、Cloudflare WorkersとDurable Objectsを使った中継経路があります。 ただし、中継されるチャット本文は暗号化され、鍵のかかった「封筒」のような状態です。
中継側は、どのPCへ届けるか、データ量が上限内か、といった配送に必要な情報は扱いますが、 封筒の中にある質問や回答を復号する鍵は持ちません。
中継サーバーはAI処理を行いません。暗号化された命令をPCへ届け
暗号化された結果をスマホへ戻す役割に限定されています。
アカウント認証、ペアリング状態、公開鍵、端末名、有効期限などのメタデータを管理します。会話本文や秘密鍵は保存しません。
| コンポーネント | 主な役割 | 会話内容の復号 | 会話内容の永続保存 |
|---|---|---|---|
| スマホ側 | 表示、入力、暗号化、復号 | 可能 | しない |
| Cloudflare Worker / Durable Object | 認証済みWebSocketの中継、接続状態、サイズ確認 | 不可 | しない |
| PC版QUTRIT | 復号、権限確認、AI処理、履歴管理 | 可能 | PC内に保存 |
| Firebase Auth / Firestore | 認証、端末・ペアリングのメタデータ管理 | 不可 | しない |
中継サーバーから見えるのは、ユーザーID、ホストID、端末ID、ジョブID、メッセージ種別、暗号文サイズ、時刻など、配送と運用に必要なメタデータです。
PC版QUTRITがCloudflare RelayへWSS接続を開始します。PC側で待受ポートを公開しないため、 インターネットから自宅・社内PCへ直接接続する経路を作りません。
PCとスマホはFirebase ID Tokenを、WebSocket接続後の最初の認証メッセージとして送信します。 トークンをURLのクエリ文字列へ載せないため、URLログやブラウザ履歴へ残る範囲を減らします。
PCが表示するQRコードには、PC公開鍵、その指紋、5分で期限切れになるペアリングトークンが含まれます。 スマホはQR内の公開鍵から指紋を再計算し、一致しなければペアリングを拒否します。
暗号鍵はスマホとPCで保持し、中継サーバーへ渡しません。コマンド本文と結果本文は、 正規化したJSONを暗号化してからWebSocketへ送ります。
スマホの秘密鍵はWeb Crypto APIで非抽出可能なCryptoKeyとして生成し、ブラウザのIndexedDBへ保存します。 PCの秘密鍵は、利用可能な環境ではElectronのOS連携暗号化機能で保護します。
未知のコマンドや危険な操作は、復号後にPC側で拒否します。
PCがメッセージを復号した後は、通常のQUTRITと同様に、選択したAIサービスへ必要なデータを送信します。 セルフサービスモードではPCからAIサービスへ直接接続し、おまかせモードではQUTRITのクラウド中継を経由します。 各AIサービスでのデータ取扱いは、契約・プラン・設定にも依存します。