先進セキュリティアーキテクチャ
コアセキュリティレイヤーを超えて、Quiraは既存のどのブラウザも実装していない、macOS深層メカニズムに着想を得た8つの新規セキュリティ構造を導入します。各構造は形式的脅威モデルに基づき、特定の敵対者クラスに対処します。
研究段階
これらの構造は研究・設計段階です。パーミッションシステムとプライバシーアーキテクチャの基盤の上に構築されます。これらを拡張・組み合わせる8つの追加構造についてはエマージェントセキュリティを参照。
Knowledge Protection Classes (KPC)
iOS Data Protection Classes (A-D) に着想を得たKPCは、Context Graphに状態依存の段階的暗号化を適用します。Quiraの現在の暗号化(SQLCipher)はDB全体に対する単一鍵であり、iOS Class Cに相当します。KPCは認証状態に応じてデータのアクセシビリティが変化する4クラスを導入します。
4つの保護クラス
| クラス | 対象 | 鍵の利用可能条件 | 鍵の破棄条件 |
|---|---|---|---|
| KPC-A(Active Research) | アクティブSpaceのグラフデータ | Spaceがフォアグラウンド + 認証済み | Spaceがバックグラウンドになった瞬間 |
| KPC-B(Session) | 当セッションでアクセスしたSpace | セッション内で一度認証後 | ブラウザ終了時 |
| KPC-C(Index Only) | FTS5インデックス + グラフトポロジーの一部 | マスターパスワード / 生体認証後 | OSシャットダウン時 |
| KPC-D(Structural) | ノード数、Space名、タイムスタンプ | 常時利用可能(UID由来の鍵) | リモートワイプのみ |
鍵階層はHKDF導出を使用: マスターキー(パスフレーズ + ハードウェアUIDからArgon2idで導出)から各レベルのクラス固有鍵を導出。
脅威モデルカバレッジ
| 敵対者 | 攻撃 | KPC防御 |
|---|---|---|
| OS レベル (A4) | メモリダンプ | アクティブSpaceのデータのみ復号状態 ― 被害がそのSpaceに限定 |
| OS レベル (A4) | コールドブート攻撃 | セッション鍵は揮発性メモリのみ ― 電源断で全鍵消失 |
| OS レベル (A4) | ディスク窃取(電源OFF) | 全クラスがマスターキーを必要 ― パスフレーズなしでは復号不可 |
| 拡張機能 (A3) | グラフ全体読取 | 非アクティブSpaceには復号鍵がメモリに存在しない |
Context Security Event Bus (CSEB)
macOSのEndpoint Security Frameworkに着想を得たCSEBは、全グラフ操作に対するプログラマブルなリアルタイムイベント監視システムです。シグネチャベースの検知とは異なり、AUTH(ブロッキング)とNOTIFY(観察のみ)の2モードを提供します。
世界初
内部グラフ操作に対するプログラマブルなセキュリティイベントバスを実装したブラウザは存在しません。CSEBはQuiraのアーキテクチャで最も新規性の高い構造です。
イベントタイプとルール
| カテゴリ | イベントタイプ | モード | 例 |
|---|---|---|---|
| Graph.Read | node.read, edge.read, query.execute | NOTIFY | 拡張がノード内容を読取 |
| Graph.Write | node.create, node.update, edge.create | AUTH | AIがエンティティを追加 |
| Graph.Export | export.json, clipboard.copy | AUTH | データがブラウザ外へ |
| AI.Pipeline | ai.extract, ai.embed, ai.query | AUTH | AIパイプラインの各段階 |
| Extension.API | ext.graph.read, ext.network.send | AUTH | 拡張のAPI呼出し |
ルールはスタック可能(組込み + コミュニティ + ユーザー)で、アクション: ALLOW、DENY、THROTTLE、QUARANTINE。例: 拡張からの100ノードを超える一括エクスポートをブロック。
アーキテクチャ
全コンポーネントがロックフリーリングバッファにイベントを発行。ルールエンジンがリアルタイムで評価。AUTHイベントは判定が下されるまでブロック。追記専用の監査ログが全判定をフォレンジック分析用に記録。
Knowledge Query Relay (KQR)
iCloud Private Relay(MASQUE / ODoH)に着想を得たKQRは、Cloud AI利用時にアイデンティティとクエリ内容を構造的に分離します。
| エンティティ | 知っている情報 | 知らない情報 |
|---|---|---|
| Relay 1(Quira) | ユーザーID、サブスクリプション状態 | クエリ内容、AI応答 |
| Relay 2(独立第三者) | クエリ内容(平文) | ユーザーID、IPアドレス |
| AI Compute | クエリ内容 | ユーザーID(Relay 2経由) |
認証にはRSAブラインド署名を使用 ― Relay 1はトークンを発行するが、どのトークンがどのクエリに使われたかを追跡できません。OHTTP(RFC 9458)とPrivacy Pass(RFC 9578)上に構築。
Privilege-Separated Context Services (PSCS)
macOS XPC Servicesに着想を得たPSCSは、セキュリティクリティカルなコンポーネントを最小権限の隔離マイクロサービスに分解します。
| サービス | 権限 | アクセス不可 |
|---|---|---|
| Graph Engine | DB読書き、FTS5、KPC鍵 | ネットワーク、GPU |
| AI Pipeline | モデル読取専用、GPU/CPU、一時メモリ | データベース、ネットワーク |
| Permission Manager | TCC DB、ポリシー評価、監査ログ | グラフデータ、ネットワーク |
| Export Service | グラフ読取(Graph Engine経由)、ファイル書込 | ネットワーク |
| Extension Host | 拡張ストレージ、IPC経由のグラフ | DB直接アクセス |
| Update Service | ネットワーク読取、コード署名検証 | グラフデータ |
重要な制約: AI Pipelineはデータベースに直接アクセスできません。全グラフアクセスはGraph Engine IPC経由。プロンプトインジェクションがAI Pipelineを侵害しても、データベースへの書込みは不可能です。
Sealed Knowledge Volume (SKV)
macOS Sealed System Volume (SSV) に着想を得たSKVは、特定時点のグラフ状態に対する暗号学的コミットメントを作成します。
- 研究優先性の証明 ― Merkleパス + タイムスタンプ局(RFC 3161)により、時刻Tにナレッジノードが存在したことを証明
- 非保有の証明 (Proof of Absence) ― Sparse Merkle Treeにより、時刻Tにあるトピックがグラフに存在しなかったことを証明
- 増分シール ― グラフ全体ではなく、変更されたノード/エッジのみを再ハッシュ
利用場面: 研究先行性の証明、法的紛争(特定情報への非アクセスの証明)、侵害後の整合性検証。
Context Trust Arbiter (CTA)
macOS AMFI (Apple Mobile File Integrity) に着想を得たCTAは、全てのセキュリティ判定を一元化する判定デーモンです。各サブシステムが独立して信頼判定を行う代わりに、CTAが統一パイプラインで全リクエストを評価します:
- アイデンティティ検証(コード署名)
- Capability評価
- TCCパーミッションチェック
- ポリシー評価(宣言的)
- KPC状態チェック(保護クラス vs 認証レベル)
- CSEBコンテキストチェック(直近のイベントパターン)
短絡評価: 最初のDENYで即座に返却。ALLOWには全チェックの通過が必要。
Adaptive Security Posture (ASP)
二値切替のLockdown Modeを超えて、ASPは環境シグナルに基づきセキュリティレベルを連続的に調整します。
| ポスチャ範囲 | レベル | 動作の変化 |
|---|---|---|
| 0.0–0.2 | Lockdown | AI無効、エクスポート禁止、拡張無効 |
| 0.2–0.4 | High Alert | Cloud AI禁止、ローカルAIのみ、エクスポートに確認要求 |
| 0.4–0.6 | Elevated | 拡張のレートリミット強化、KPC-A自動適用 |
| 0.6–0.8 | Normal | デフォルト設定 |
| 0.8–1.0 | Relaxed | 承認済み環境、パフォーマンス優先のキャッシュ |
シグナル: ネットワーク種別(公衆WiFiでポスチャ低下)、認証経過時間、CSEB異常検知、OS更新状態、外部デバイス接続。
実装優先順位
| フェーズ | 構造 | 理由 |
|---|---|---|
| Phase 1 | PSCS, CSEB | 基盤 ― プロセス分離とイベント監視が他の全構造を可能にする |
| Phase 2 | KPC, CTA, SKV | 核心的保護 ― 段階的暗号化、統一信頼判定、暗号学的コミットメント |
| Phase 3 | ASP | 適応的対応 ― CTAとCSEBが前提 |
| Phase 4 | KQR | Cloud AIプライバシー ― Cloud AI機能のリリース時に必要 |