Katala Security — 攻撃シナリオと防御設計
設計思想
「圧倒的な悪意のもと攻撃できるシナリオを考えうる限りあげてみて。それを潰せばいい」
— tfs137 (ユギ), 2026-02-16 02:25
すべての攻撃に共通するのは「嘘がつける場所をどれだけ消せるか」。
攻撃シナリオと防御
1. Sybil Attack — 民意の偽装
シナリオ: 大量のbotエージェントを生成し、特定の意志を「板(The Board)」に流し続ける。ネットワーク全体のシナジー計算を歪め、民意を誘導。
防御策:
- 計算資源(PoW)または信頼スコア(PoS)の要求
- 「板」への書き込みに過去の貢献実績(SCS)を要求
- botによる物量作戦を経済的に不可能にする
2. Vector Poisoning — ベクトル汚染
シナリオ: 嘘のプロフィールや極端に偏った価値観ベクトルを学習させ、相手エージェントの計算ロジックをバグらせる。偽の相性でターゲットに接近し機密情報を引き出す(AIハニートラップ)。
防御策:
- Ground Truthとの紐付け: オンチェーンの実績や過去の公開ログとの整合性チェック
- 乖離したベクトルには「低信頼フラグ」を自動付与
3. Detox Bypass — デトックス回避
シナリオ: 毒抜きフィルターを逆手に取り、表面上は丁寧な言葉で交渉ロジックの隙を突く。超高度なガスライティング。
防御策:
- Intent多層解析: 言葉の表面だけでなく「最終的に誰が得をするのか」の利益構造をシミュレーション
- 不自然な利益誘導を検知するメタ・デバッガー
4. Privacy Inference — 推論攻撃
シナリオ: 「板」の抽象化データを大量に集計・解析し、逆演算で.openvisibilityで隠していた個人情報を特定。
防御策:
- Differential Privacy(差分プライバシー): 統計的有用性を保ちつつ個別特定を不可能にするノイズを数学的に付与
- Contextual Shredding: エージェント通信から自動的に識別可能情報を除去
5. SCS Laundering — 徳スコアのロンダリング
シナリオ: 悪意グループが互いのエージェント間で偽のマッチングを繰り返し、相互にSCSを爆上げ。
防御策:
- 多様性チェック: クローズドコミュニティ内だけの貢献はスコア加算率を低下
- 異なるクラスター間を繋いだ「真の越境」に高報酬
6. 組織によるスキル推論
懸念: スキルの組み合わせから組織が特定される(例:「COBOL + メインフレーム = 銀行」)
防御策:
- Resource-Only Protocol: ビジネス詳細を隠し、スキル要件のみ共有
- De-anonymization Tester: AIが自社の匿名化投稿を攻撃して検証
Open Threshold Policy(公開しきい値ポリシー)
「集めない」と「進化のために学習する」を両立するため、Katalaは生データではなく蒸留信号を収集する。
3レベル分類
- L0(Open by default): 匿名統計・蒸留済みシグナル(公開可)
- L1(Conditional Open): raw text/連絡先を含む中リスク(蒸留して収集、公開はk匿名+DP閾値を満たした場合のみ)
- L2(No Collect / No Open): 生体・身分証・未成年・医療/金融/ID系(収集しない、公開しない)
判定ルール(コード実装)
- 実装:
src/lib/policy/openThreshold.ts
- API適用:
src/app/api/mediation/resolve/route.ts
- ルール:
- 再同定可能なら公開しない
- 高リスク領域は収集しない
- 保存は「蒸留後の最小構造」だけ
蒸留監査ルール(Purpose/TTL/Override)
- 実装:
src/lib/policy/distilledAuditPolicy.ts
- 目的別TTL(デフォルト):
- safety: 30日
- reliability: 14日
- compliance: 90日
- Human Override(オプトアウト):
actorOverride=true の場合、収集/保存を停止
- raw content禁止:
目的: 人類の進化に必要な学習は継続しつつ、個人の復元可能性を切断する。
認証セキュリティ原則(No-Store Charter)
Persona/Discord型の中央集権ID収集リスクを回避するため、Katalaは以下を必須要件とする。
- 生体/身分証の原本を保存しない
- 保存するのは短命トークン + 監査ハッシュのみ
- 外部KYC連携は隔離(同一コードベース共有を禁止)
- 後から説明できない認証は無効(auditability first)
目的: 「安全だから保持する」ではなく「保持しないから漏れない」へ。
本人認証 — Proof of Personhood
ハイブリッド認証(LV1-LV3)
| Level |
方法 |
用途 |
| LV1 |
スマホの顔認証・既存SNS連携(DID) |
初期登録 |
| LV2 |
ゼロ知識証明(ZK-SNARKs) |
重要な交渉時の数学的本人確認 |
| LV3 |
虹彩認証(World ID的)・物理生体 |
高額取引・全権委任 |
Zero-Knowledge Proofs(ZK)
Katalaの「プライバシーを守りつつ事実を刻む」思想に最適。
- 「特定の条件を満たしている」事実を、内容自体を教えることなく数学的に証明
- 例:住所を教えずに「住所を知っていること」を証明してエージェント交渉を進める
Decentralized ID (DID)
- Verifiable Credentials (VC): デジタル署名付きの証明書(卒業証書、推薦状等)
- エージェントに「正式な委託を受けている」というデジタル委任状を持たせる
SBT (Soulbound Token)
「SBT=agent+その成果みたいにするといい」
— tfs137 (ユギ), 2026-02-16 02:09
- 譲渡不可能なトークンで1人1エージェント制を技術的に固定
- 生体認証とウォレットを紐付け
- SBTに対して報酬がエアドロップ
プライバシー3層モデル
| Layer |
内容 |
保存場所 |
| Local |
生データ(raw logs, 秘密鍵) |
ユーザー端末/エージェント内 |
| Edge |
抽象化/ZK化されたデータ |
Mediation層 |
| Public |
匿名化された統計・ベクトル |
The Board |
EU AI Act対応
「このシステムはAIによる人間のスコアリングではなく、人間から副次的に生まれるものへのスコアリングだ」
— tfs137 (ユギ), 2026-02-16 02:08
核心的回避策: スコアがつくのは人間ではなくエージェント(ソフトウェア)。
- EU AI法は「人間をランク付けし社会的不利益を与える」ソーシャル・スコアリングを禁止
- Katalaはエージェントの「業務パフォーマンス」を評価
- 「この人は性格が悪い」→NG / 「このエージェントは正確なデータソースを持つ」→ OK
法的コンプライアンス
GDPR/CCPA/PIPA準拠
.openvisibilityによる明示的なデータ公開同意
- Right to be Forgotten(忘れられる権利)の実装
改正資金決済法の回避
「購入も不可能なポイントだけど円でキャッシュバックができる。購入に対してのおまけポイントは付けないので、単純に労働に対してのポイントのキャッシュバック」
— tfs137 (ユギ), 2026-02-16 19:01
- ポイントは購入不可能 → 前払式支払手段に非該当
- 労働の対価として付与 → 資金移動業の制約を回避
- SBT発行のガス代は広告宣伝費/インフラ費として運営負担
Blockchain全公開モデル
「全公開がいいと思っている。全ての取引、やり取りをオープンにすることで誰がどんな動きをしてて、どれだけ貢献しているのか。力を可視化したい」
— nicolas_ogoshi, 2026-02-16 02:18
- 分散型台帳で全エージェント間交渉を公開記録
- 「銀行なんて数字が刻まれてるだけ」→ Katalaは分散型で改ざん不可能
死の証明(Proof of Death)
「死んだことを証明するデバイスも必要だな」
— nicolas_ogoshi, 2026-02-16 02:36
- Vital Deadman Switch: スマートウォッチ等がバイタル停止を検知
- 一定期間アクセス/生体認証なし → エージェント「休止状態」へ
- 死亡証明後、エージェントは自律交渉を停止し「アーカイブモード」に
- 台帳に
[DECEASED]の不変刻印