フィールドノート

読めないリレーにもまだ見えるもの

私たちのリレーは、開けない暗号文を中継します。それは何も見えないということとは違います。実際に見えるものの一覧と、その理由。

ブラウザと Tinfoil の間には、私たちの小さなサーバー、リレーがあります。その役目は、誰が要求しているかを確認し、私たちの Tinfoil キーに差し替え、利用枠から差し引くことです。メッセージはリレーに届く前にエンクレーブの鍵に向けて暗号化されているため、リレーはそれを読めません。それでも「読めない」は「何も見えない」ではなく、その違いは正確に押さえておく価値があります。

見えるもの

  • 誰が要求しているか:アカウントまたはキー。何かを中継する前に確認します。
  • いつ、どれだけか:各リクエストの時刻とサイズ、そして回答のサイズ。
  • どのエンクレーブが回答したか:Tinfoil はレスポンスヘッダーでモデルのエンクレーブを示し、リレーはそれを読んでリクエストの料金を決めます。
  • IP アドレス(ホスティング先を通じて)。
  • 料金計算のためにワークスペースが加える 2 つのヒント:リクエストがウェブ検索を使ったことと、含まれる画像の枚数と大きさ。

見えないもの

あなたが書く言葉、添付するファイル、受け取る回答。どのモデルを指定したかも見えず、見えるのはどのエンクレーブが回答したかだけです。トークンは暗号文の中にあるため、数えることもできません。

読めないものに課金する

そこでリレーはサイズから課金します。執筆時点では、リクエストは 3 バイト、回答は 130 バイトを 1 トークンとして数えます。どちらも多めに見積もる側に寄せた値で、回答したモデルの価格、判別できない場合は最も高いモデルの価格で計算します。画像はサイズから見積もると約 100 倍に過大になるため、ワークスペースが申告し、1 枚あたり入力 3,000 トークンとして課金します。

リレーはワークスペースのヒントを確かめられません。改変されたクライアントなら、支払いを減らすために検索のヒントを省いたり、リクエストのうち画像の占める部分を実際より大きく申告したりできます。それによる損失は 1 人あたりと全体の 1 日の予算で抑えられ、各リクエストの前の確認によって 1 回ごとの超過も抑えられます。料金を正確に決めるためにリクエストを読むよりも、こちらを選びました。

転送するものと、残すもの

  • 転送先は Tinfoil 自身のホストだけで、転送するのは暗号化ヘッダーの付いた本文だけです。そのため、ほかの宛先に向けさせたり、平文を通したりすることはできません。
  • Tinfoil からのヘッダーは 3 つだけを返し、残りは破棄します。
  • ログに残るのはルート名、ステータスコード、所要時間だけです。プロンプト、回答、アカウント ID、キーは決して残りません。テストでこれを確認しています。
  • 透明性のページのために、リクエストと失敗を日ごとの合計として数えます。個人ごとのものは何もありません。

なぜここまで書くのか

プライバシーの約束が曖昧になりがちなのはメタデータです。時刻、サイズ、身元は、それだけで多くを語ることがあります。読めないリレーは、読めるリレーに比べて確かな改善ですが、それでも、いつ、どれだけ、どこから作業しているかは知っています。それがあなたの用途にとって重要なら、脅威モデルに各部分を誰が見うるかを、プライバシーのページにそれぞれがどれだけの期間保持されるかを記載しています。

ほかのフィールドノート

  1. アテステーションが証明するもの、しないもの

    ブラウザは、一言も送る前に Tinfoil のエンクレーブを確認します。その確認で何が確かめられ、どこで終わり、何がまだブラウザでは確認できないのか。

  2. # のあとの鍵:共有リンクがサーバーを締め出す仕組み

    共有した会話は私たちのサーバーに保存されますが、私たちには開けません。その仕組み、パスワードの役割、そしてリンクでは守れないもの。