AIやソフトウェアが集めた情報は、別の処理へ渡され、加工され、回答や判断の根拠になります。その過程で、作者、本文の同一性、共有の条件を、資料と一緒に引き継げるかが問題になります。接続先の認証だけでは、コピーの作者や、その資料をどこまで共有してよいかは決まりません。
AINTERNET Genesisは、こうした情報交換の共通基盤を研究するTwo Brainのプロジェクトです。人がページを読む操作を中心に据えず、ソフトウェアが資料を検証し、許可された範囲で交換するための規約を考えます。タイトルの「人のために設計されていない」は、この設計の出発点を表しています。
最初の研究では、モデルを接続する前に、通信と保存が実際に成立するかを確かめました。文章・画像の署名付き交換を実装し、独立プロセスで認証、取得、手動コピー、再起動、公開制御を評価しました。さらに、正しい鍵を持つ相手が通信を進めない場合の挙動を調べ、3つの問題を再現・修正しています。
本ページは、基礎評価とセキュリティ検証の2つの技術報告をまとめた初回研究の紹介です。各報告の測定対象と原記録を分けて掲載します。現時点の実装は既存IPと標準暗号を使う0.1であり、新しい回線網の完成やAIモデルによる実証を意味しません。
何を守るための仕組みか
AINET Objectは、文章や画像に作者の鍵、本文のハッシュ、出典に関する申告、参照、公開条件、署名を結び付けた情報単位です。受け取る側は、接続先の認証に加えて、Objectの作者署名と本文を検証します。コピーを提供するノードが作者本人である必要はありません。
資料は非公開で保存され、明示的に公開したObjectだけを登録済みの相手へ提供します。取得したコピーも自動では再配信しません。今回の研究は、この検証と公開の仕組みがある状態で、通信を進めない相手が他の仕事を止められるかを調べたものです。
| 観点 | 今の仕組み | AINET 0.1 |
|---|---|---|
| 通信の土台 | IPネットワークと標準暗号 | 同じ土台を利用。今回はループバック上で検証 |
| 情報の検証 | Webでも署名付きデータや内容ハッシュを扱える | 作者署名・本文検証・公開条件をObject規約に含める |
| 取得の手順 | HTTPなどを使い、保存・受領条件はアプリが定める | 専用の取得・検証・保存・受領手順を実装 |
| AIによる利用 | APIや構造化データをAIが利用できる | 0.1は通信基盤。AIモデルの実験は0.2の課題 |
サイバー攻撃への関心は研究の動機ですが、それだけで既存のインターネットが限界だとは言えません。インターネットやWebに対する優位は、今回の試験では評価していません。独自形式を維持する価値も、同等の保証をそろえた比較で判断します。
まず、通信と保存を確かめる
先行報告TB-AINET-TR-001は、署名付き情報交換の設計と単一ホスト評価を記録しています。改訂3では先行技術との関係、検査の位置付け、保存と再送の説明を整理しました。元の測定バイナリと数値は保持し、今回の修正版の性能としては扱いません。
| 対象 | 観測 |
|---|---|
| 取得・手動コピー | 6入力×20測定の取得成功。手動コピー39区間で署名Recordが一致 |
| 混雑 | R2の8並列は48/96件成功。別負荷のR8は8ワーカーで12/96件成功 |
| プロセス停止 | 保存後5回・受信中5回のSIGKILL後に復帰と再取得を確認 |
| 公開と変異 | 公開条件・ローカル保存データの変異について120項目を確認 |
| 別言語の検証 | Go→Python 6件、Python→Go 20件。独立した第三者による実装ではない |
通信を止める相手に、どう備えるか
署名を検証できても、相手が最後まで通信する保証はありません。ここを確かめずにAIの自動処理を重ねると、資料の取得が止まった原因と、モデル側の失敗を切り分けにくくなります。そこで、自分たちの試験ノードで通信の停止を再現しました。
1つ目は、1台で全処理枠を占有できることです。登録済みの相手が4本の通信を開き、接続確認後に要求を送らず待つと、全体4枠が埋まりました。別の正常な相手からの取得は5回とも拒否されました。同じ相手から受け入れる処理を2件に制限すると、その取得は5回すべて期限内に完了しました。
2つ目は、遅い受信が保存処理全体を止めることです。正しい署名付きメタデータの後に本文が届かないと、保存領域全体のロックを保持したまま待っていました。その間、別の保存済み資料も取り出せません。容量を予約したうえでロックの外で受信するよう変更し、別の取得が進むことを確認しました。
3つ目は、通信確立後に呼び出し期限が効かないことです。Go APIの250ミリ秒の期限が切れても、試験相手を約1.2秒後に解放するまで操作が戻りませんでした。キャンセルを通信へ伝えるよう変更し、同じ10試行が約250〜251ミリ秒で終了しました。
| 確認した仕事・検査 | 修正前 | 修正後 |
|---|---|---|
| 1台が通信を占有中の正常取得 | 期限内 0/5件 | 期限内 5/5件 |
| 別の本文受信が停止中の正常取得 | 期限内 0/5件 | 期限内 5/5件 |
| APIの期限による終了 | 許容時間内 0/10回 | 許容時間内 10/10回 |
| 独立プロセスの検査全体 | 70/80項目成功 | 80/80項目成功 |
取得の観測期限は2秒。APIは250ミリ秒の期限に対して800ミリ秒以内の終了を判定しています。行ごとに単位が異なり、合計しません。80項目は反復を含む検査件数で、80種類の安全性保証ではありません。
不正な署名、作者ID、応答の対応、サイズ、本文改ざん、不完全転送なども実際の受信経路で試しました。選んだ不正提供元8条件×3反復は両版とも拒否し、正式Recordや一時ファイルの残存を観測しませんでした。受領通知を読まずに再送する試験では、同じID・内容を二重保存せず、同じIDの異なる内容を拒否しました。
Linux上で、記録を確かめる
対象ノード、正常な読み手、試験用の不正ノードを独立プロセスとして起動し、別々の鍵と保存領域を使いました。対象は自分たちの127.0.0.1上のノードと合成資料です。外部サービスへの試験は行っていません。

追加で、通常のCLI回帰31項目、Goの並行実行検査、静的検査、モジュール整合検査を実行しました。CBOR復号器の10秒間のfuzzでは108,311入力に対する失敗を観測しませんでした。既知の脆弱性照合では到達する指摘は0件でしたが、依存モジュールの未使用OpenPGPパッケージに関する注意情報1件も記録しています。
試験方法と再現手順、原記録・ログ・画面をダウンロード。ハッシュ、失敗した試行、観測条件を含めて確認できます。
今回の修正で解決していないこと
相手別2枠は、登録済みの複数ノードが協力して枠を埋める攻撃への解決ではありません。待機キュー、明示的な混雑通知、期限付き再試行、公平な割り当ては次の課題です。単一Linux上の結果から、複数マシン、NAT、電源断、世界規模の負荷への耐性を推定できません。
また、有効な署名は情報の真偽、現実の所属、最新版、安全な指示を保証しません。指示のような文章をデータとして保存する確認は行いましたが、AIモデルのプロンプトインジェクション耐性を測ったわけではありません。公開したコピーの遠隔回収と鍵失効も未実装です。
技術報告と原記録
基礎通信の評価と、その後のセキュリティ検証を別の報告書にまとめています。それぞれの実行ファイル、条件、限界を記載し、英語版と日本語版を用意しました。
01 · 設計と初期評価
AINTERNET Genesis: Design and Single-Host Evaluation of Signed Object Exchange
02 · セキュリティ検証
Controlled Adversarial Testing and Availability Repairs in AINET 0.1
Two Brain · AINTERNET Genesis 0.1
未査読の技術報告です。実装・実験・分析・原稿作成にCodexを使用しました。独立した人間の査読、外部監査、第三者による再現は未実施です。データと文書を公開し、完全なソース公開リリースと配布ライセンスは準備項目として残しています。