エンドツーエンド暗号化クラウド同期

TL;DR:CookieVault の暗号化 Cookie 同期は libsodium の XChaCha20-Poly1305 と Argon2id 由来の鍵を使います。Cookie はブラウザを離れる前に端末側で暗号化され、同期サーバーは不透明な暗号文——CookieVault のエンジニアですら復号できない暗号文——しか保持しません。Pro のゼロ知識機能です。

エンドツーエンド暗号化 Cookie 同期は、クラウドサーバーが復号不能な暗号文しか保持しないことを保証しつつ、Cookie を端末間で同期させ続けるゼロ知識の仕組みを提供するものです。パスフレーズは Argon2id を使ってあなた自身の端末で暗号鍵を導出します。その鍵は CookieVault のインフラに一切触れないため、私たちのエンジニアも、サーバー侵害も、法的要求も、あなたの Cookie を明らかにできません。これは CookieVault Editor と CookieVault Guardian の両方が共有する Pro プランの基盤であり、暗号境界がオープンソースであるため、その主張は約束ではなく検証可能です。

暗号化の仕組み

要点:パスフレーズは端末側で Argon2id(メモリハードな鍵導出)にかけてマスター鍵を生成します。各 Cookie 記録はその後、ブラウザを離れる前に libsodium の XChaCha20-Poly1305 で封印されます。サーバーが受け取るのは暗号文と認証タグだけで、鍵は決して見ません。

このパイプラインは、独自暗号ではなく、よくレビューされたプリミティブから意図的に組み立てられています。Argon2id は Password Hashing Competition で勝利したメモリハードなアルゴリズムで、人間が記憶できるパスフレーズに対する GPU / ASIC の総当たり攻撃に耐えるという理由で選ばれました。XChaCha20-Poly1305 は 192 ビットの拡張ナンスを持つ認証付き暗号で——ナンスをランダムに選んでも実用上の衝突リスクがないほど広く、実装上の落とし穴の一群をまるごと取り除きます。

設計を定義する 6 つの性質:

応用暗号で広く支持される原則は、サーバーに暗号化を任せるのではなく、アップロードする前に暗号化せよ、というものです。CookieVault が強制するのはまさにその境界です——平文が存在しうる唯一の場所はブラウザです。

脅威モデル

要点:サーバーは完全に侵害されうると想定し、それでも問題にならないように設計します。サーバー侵害、ネットワーク傍受、召喚状はすべて「攻撃者は暗号文を持っている」に帰着します。平文を露出させる唯一のシナリオは、攻撃者があなたのアンロック済み端末を支配している場合で——これはどの同期システムも防げません。

Cookie はベアラートークンです。有効なセッション Cookie を持つ者は、宛先サイトにとってはあなたです。ブラウザのドキュメントは、Cookie がセッション識別子と認証状態を運ぶと明記しており1、だからこそそれを平文で第三者に同期するのは無謀です。脅威モデルはそれを真剣に扱います。

脅威シナリオ攻撃者が目にするもの結果
同期サーバーの完全侵害不透明な XChaCha20 暗号文使える Cookie なし。サーバーに鍵なし
ネットワーク中間者攻撃TLS で包まれた暗号文二重に保護。読めるものなし
法的要求 / 召喚状保存された暗号文のみ引き渡せる復号可能なものなし
悪意ある内部者他の全員と同じ暗号文ゼロ知識ゆえ特権的アクセスは存在しない
盗まれたロック済み端末暗号化されたローカル金庫アンロックにあなたのパスフレーズが必要
盗まれたアンロック済み端末アンロック後は平文対象外 —— 端末レベルのアクセスを守ること

正直な境界は最後の行です。エンドツーエンド暗号化は転送中とサーバー保存時のデータを守りますが、すでにあなたのアンロック済みブラウザに座っている攻撃者は守りません。それには端末ログイン、フルディスク暗号化、画面ロック——拡張機能より下の層に存在する防御に頼ります。

Free と Pro

要点:ローカルの Cookie 作業はすべて永久無料。暗号化されたデバイス間同期は Pro 機能(月 4 USD = 約 600 円、または年 36 USD)で、サーバーインフラを必要とする唯一の機能だからです。データを守る暗号はプランに関わらず同一です。

機能FreePro(月 4 USD / 年 36 USD)
ローカルの Cookie 表示 / 編集 / 削除ありあり
ローカルエクスポート(JSON / Netscape / HAR)ありあり
タブを閉じたときの自動削除(Guardian)ありあり
デバイス間暗号化同期なしあり
取り消し付き Cookie 履歴(30 日)なしあり
暗号化プロファイル同期なしあり
ゼロ知識アーキテクチャ該当なし(ローカル)あり

Pro が支払う価値を持つのは、2 台以上の端末を使って同期させ続けたい場合、または Cookie 履歴の取り消しという安全網が欲しい場合だけです。単一端末・ローカル専用のユーザーは、中核ワークフロー全体を無料で得られます。完全な Free / Pro / Team の内訳は 料金ページ を参照してください。

暗号化同期の設定方法

  1. CookieVault をインストール(Editor、Guardian、または両方)—— ダウンロードページ から
  2. 拡張機能のポップアップを開き「同期を有効化」をクリック
  3. Pro アカウントを作成 —— メールアドレスで。これは請求とルーティングだけを扱い、鍵は決して扱わない
  4. 強いパスフレーズを選び、パスワードマネージャーに保管する。これがデータを復号できる唯一のもの
  5. 端末側の鍵導出が走るのを確認(Argon2id の処理中、ポップアップに「鍵を導出中…」と表示される)
  6. 最初の暗号化スナップショットのアップロードを待つ —— 選択した全 Cookie が送信前に封印される
  7. 2 台目の端末に CookieVault をインストールし、同じパスフレーズを入力して同じ鍵をローカルで導出する
  8. 同期インジケーターが両端末で緑になるのを確認 —— 変更された記録が暗号化された塊として複製される

パスフレーズを変更すると、各端末は次の送信の前に新しい鍵を再導出し、ローカルの金庫を再暗号化します。サーバーは使える鍵を持たないため、サーバー側の再暗号化はありません。

監査と検証可能性

要点:暗号化コードはオープンソースで再現可能ビルドが可能なため、データ経路は今日でも検証できます。暗号スタックの独立した第三者監査は 2026 年第 3 四半期に予定しており、報告書と所見は全文公開します。

「信用してください」というセキュリティはセキュリティではありません。導出、暗号化、同期クライアントのコードが公開された MIT ライセンスのリポジトリにあるため、誰でも、鍵が端末を決して離れないこと、サーバーには暗号文しか届かないことを確認できます。Chrome の拡張機能モデルは、拡張機能が触れられる範囲をさらに制約し2、Cookie は独自チャネルではなく公式のブラウザ Cookie API1 を通じて読み書きされます。予定している外部監査は、独立した第二の目を加えることを意図しています。報告書が出たら セキュリティページ からリンクします。

関連ページ


Footnotes

  1. セッション Cookie と認証 Cookie を含むブラウザの Cookie ストアは MDN の https://developer.mozilla.org/en-US/docs/Web/HTTP/Cookies に記載されています。CookieVault は公式のブラウザ Cookie API を通じてのみ Cookie を読み書きします。 2

  2. Chrome 拡張機能の Cookie API とその権限モデルは https://developer.chrome.com/docs/extensions/reference/api/cookies に文書化されており、拡張機能がブラウザの Cookie ストアにアクセスするために使える唯一のインターフェースを定義しています。