Skip to content
KitploitKITPLOIT
ツールブログ
提出
ツールブログ
提出

ハッキング、侵入テスト、サイバーセキュリティツールをあなたのセキュリティアーセナルに!

Kitploitはハッキング、サイバーセキュリティ、ペネトレーションテストのツールディレクトリです。最新のプロジェクトアップデートを見つけて、脆弱性の発見、システム分析、テストの自動化、セキュリティの強化を行いましょう。

··フィード·お問い合わせ·プライバシー·© 2026 Kitploit

ツールディレクトリ

カテゴリ

すべてのカテゴリを見る
Loading categories
aimp — 断片化された低帯域幅ネットワークにおける自律エージェント間の耐障害性のある状態同期のために設計されたサーバーレスネットワーキングプロトコル | Kitploit
ツール/GitHubGitHub/fabriziosalmi/aimp
組み込みシステムセキュリティIoTセキュリティネットワークセキュリティ暗号化ハードウェアセキュリティ脅威インテリジェンス機械学習論文と研究学習と教育
GitHubfabriziosalmi/aimp

aimp

断片化された低帯域幅ネットワークにおける自律エージェント間の耐障害性のある状態同期のために設計されたサーバーレスネットワーキングプロトコル

518日前未レビュー

人気

すべて見る →

コミュニティで最も使われているツールを見つけましょう。

すべてのツールを探索

ツールコレクションを閲覧

すべてのツールを見る →
共有
リポジトリを見る
ウェブサイト

AIMP — AIメッシュプロトコル

CI License: MIT Rust ResearchGate ResearchHub

実験的なサーバーレスネットワーキングプロトコルで、断片化された低帯域ネットワークにおける自律エージェント間の耐障害性のある状態同期を実現します。 Merkle-CRDTと暗号化IDに基づいて構築されています。中央機関、グローバルDNSは不要で、常に書き込み可能です。


論文

#バージョンタイトルリンク
1v0.1.0Merkle-CRDTプロトコル (L1/L2)ResearchGate
2v0.2.0認識層 (L3)ResearchGate
3v0.3.0相関認識集約 (L3)ResearchGate
4v0.4.0決定論的意味トポロジー (L3)ResearchGate

著者プロフィール: ResearchGate · ResearchHub


プロトコルスタック


新機能

v0.4.0 — 決定論的意味トポロジー

L3 v0.3.0では、アプリケーションが手動で知識グラフ(Support/Contradictエッジ)を構築する必要がありました。v0.4.0では自律エッジ生成によりこのボトルネックを解消します。

  • クレームはオプションの QuantizedEmbedding([u64; 4]) を持つことができます。これはアプリケーション側で正規の埋め込みモデルから計算された256ビットのSimHashです。
  • 各エポック境界で、プロトコルはペアごとのハミング距離(XOR + popcount、ペアあたり約1 ns)を計算し、近いペア(d <= 30ビット)に対してSupportsエッジを、遠いペア(d >= 200ビット)に対してContradictsエッジを発行します。
  • エッジの強度は、距離に比例してベーシスポイントで線形にスケーリングします(d=0 → 10000 bps、d=30 → 1000 bps)。
  • max_k_nearest 上限により、エッジ密度をO(N)に制限し、信頼伝播の爆発を防ぎます。
  • embedding_version: u32 は、プロトコルレベルのモデルアップグレードのために異なる潜在空間を分離します。
  • 自動エッジはL2ゴシップを介して具体化され、ホログラフィックルーティングによりGCを生き延びます。
  • デッドゾーン(31-199ビット)は曖昧なクレームを孤立させます — 認識論的に正しい分離です。
root@kitploit:~
// 自律的真実発見: 10,000件のクレーム → 50msスキャン、O(N)エッジ
// 浮動小数点なし、調整なし、中央機関なし
let edges = auto_edge_generator.generate_edges(&epoch_claims);

v0.3.0 — 相関認識信念集約

L3 v0.2.0では、すべてのエビデンスソースが統計的に独立していると仮定していました(ナイーブベイズ)。これにより、物理的に相関のあるセンサー(例:同じ屋上にある100のIoTデバイス)や意味的に相関のあるエージェント(例:同じデータセットでファインチューニングされたLLM)が一致した観測を報告した場合、病的な過信頼が生じます。

v0.3.0ではグリッドセル相関割引を導入します。

  • 各クレームにはオプションの CorrelationCell(u64) — 空間的、意味的、または時間的近接性の離散座標が含まれます。
  • 各セル内では、エビデンスは強度でランク付けされ、幾何学的に割引されます:最強のソースは100%の重みを保持し、後続の各ソースは discount_bps^rank / 10000^rank を受け取ります(デフォルト30%)。
  • 30%割引の場合、N個の相関センサーは単一センサーの約1.42倍のエビデンスに収束します(Nに関わらず)。ナイーブなアプローチではN倍の増幅が生じます。
  • CRDTの結合律性の課題(幾何学的減衰は部分的なマージに対して非結合的)は、アーキテクチャ的に解決されます:エポック還元は (temporal_grid, fingerprint, correlation_cell) でバケット化し、完全なセットに対するアトミック計算を保証します。
  • correlation_cell: None のクレームはv0.2.0と同一に動作します(ゼロ回帰)。
  • すべての演算は整数のみ(i32/i64、ベーシスポイント)です。浮動小数点はありません。ZK対応です。
root@kitploit:~
// 100の同一場所センサー、各70%の確信度:
// v0.2.0(ナイーブ): 100 × 847 = 84,700 ミリ対数オッズ → 約100%(過信頼)
// v0.3.0(30%): 847 × Σ(0.3^i) ≈ 1,207 ミリ対数オッズ → 約77%(現実的)

アーキテクチャ

root@kitploit:~
aimp_node/          Rust参照実装(Cargoワークスペースメンバー)
  src/
    crdt/           Merkle-DAGエンジン、アクターモデル、アリーナアロケータ、クォーラム合意
    crypto/         Ed25519アイデンティティ、BLAKE3ハッシュ、ゼロトラストファイアウォール
    network/        UDPゴシップ、Noise Protocol XXセッション、ピアごとのレート制限
    protocol/       ワイヤフォーマット(MessagePack)、型付きペイロードenum
    epistemic.rs    L3認識層(v0.3.0):対数オッズ、信頼伝播、相関割引
    semantic_topology.rs  L3意味トポロジー(v0.4.0):SimHash埋め込み、自動エッジ生成
    decision_engine.rs  プラグイン可能な決定論的決定エンジン(トレイト+ルールエンジン+ホットリロード)
    error.rs        統合AimpError型階層
    dashboard/      Ratatui TUI
    config.rs       動的設定とバリデーション
    event/          構造化ログ+Prometheusメトリクス(カウンター+ヒストグラム)
  tests/            統合テスト
  benches/          Criterionベンチマーク
aimp_testbed/       Python SDK (aimp-client) + CLIツール + カオステスト
deploy/             Systemdサービス、FirecrackerマイクロVM、インストールスクリプト
formal/             TLA+収束+クォーラム安全性+信念収束仕様
docs/               論文1(Typstソース+PDF)
v0.2.0/             論文2:認識層(Typstソース+PDF)
v0.3.0/             論文3:相関認識集約(Typstソース+PDF)

戦略的優位性


主要機能

コアエンジン (v0.1.0)

  • tokio::mpscによるゼロ共有状態CRDTのアクターモデル
  • O(1)挿入とSoAレイアウトのSlab/Arena割り当て
  • ChaCha20Poly1305暗号化による保存時の耐久性永続化(redb)
  • ドメイン分離によるHKDF-SHA256鍵導出
  • キャッシュされたマークルルートと書き込み時無効化
  • スラブメモリ回収によるリアルマークアンドスイープGC
  • CRDTアクターに統合されたエポックベースのGC追跡

認識層 (v0.2.0 — v0.4.0)

  • 整数対数オッズ演算(i32、ミリ対数オッズ) — 浮動小数点なし、100%決定論的
  • 2パスマルコフ信頼伝播(Support → Contradiction、発振なし)
  • Sybil耐性レピュテーション:新規ノードは0から開始、委任が必要、レピュテーション消費
  • グリッド整列エポック還元と具体化された圧縮(サマリーはGCを生き残る)
  • サイクル検出(ソートDFS)により確信度インフレループを防止
  • v0.3.0: 相関認識集約 — 同一場所センサー/LLMの幾何学的割引
  • v0.3.0: アトミックセル還元 — (epoch, fingerprint, cell)によるバケット化でCRDT安全性を確保
  • v0.4.0: 決定論的意味トポロジー — SimHash埋め込み、自律エッジ生成
  • 主観論理/Dempster-Shaferより98-142倍高速(アーキテクチャ間でビット同一)

ネットワーキングとセキュリティ

  • Noise Protocol XX暗号化セッション(デフォルト有効)
  • ピアごとのトークンバケットレート制限(整数演算)
  • HashSet + VecDequeによるO(1)ゴシップ重複排除
  • TTLリプレイ攻撃検出とサーキットブレーカー
  • セッションLRU退避(TTL + 最大数)
  • ローリングアップグレードのためのプロトコルバージョン範囲ネゴシエーション

決定エンジンと合意

  • RuleEngine実装を持つプラグイン可能な DecisionEngine トレイト
  • aimp_rules.jsonからホットリロード可能なルール(再起動不要)
  • 永続的な検証済み決定を持つBFTクォーラム投票
  • オペコードごとの型付き Payload enum(コンパイル時安全性)

観測性

  • Prometheusカウンター、ゲージ、レイテンシヒストグラム
  • サブチェックとHTTPステータスコードを持つ複合 /health エンドポイント
  • TUIダッシュボードによる構造化 SystemEvent ログ

運用

  • 統合 AimpError 型階層(Box<dyn Error> 不要)
  • 設定バリデーション(無効な組み合わせを拒否)
  • 5秒タイムアウトによるグレースフルシャットダウン
  • Systemd強化サービスファイル
  • CI/CD: lint、テスト、セキュリティ監査、ドキュメント、クロスコンパイルリリース

ベンチマーク

Apple Silicon (Mシリーズ)、シングルスレッド、fast-crypto モードでCriterion測定:

システムレベル

5ノードクラスタ、アンチエントロピー同期(インプロセス、Apple Silicon)でシミュレーション:

ネットワーク障害(netemシミュレーション)

パケットロス、レイテンシ、パーティション下での収束(5ノード、各ノード50ミューテーション):

AIMPは約80%のパケットロスまで、数ラウンドのアンチエントロピー内で収束し、優雅に劣化します。

クロスプラットフォーム(ARM64リソース制約)

Docker ARM64 Linux、RPiクラスのリソース制限:

RPi Zeroクラスのハードウェアでも、スループットはレート制限より3桁高いです。

Automerge v0.7との比較

同一ハードウェア、同一操作、シングルスレッド、target-cpu=native:

ring を使ったAIMPは、ミューテーションでAutomergeを1.37倍(書き込み毎にEd25519使用)、マージで2.4倍上回ります。Yrsはミューテーション最速(暗号化なし)ですが、AIMPのマージはYrsの26%以内です。

root@kitploit:~
# 最大スループットのためにringバックエンドを有効にする
RUSTFLAGS="-C target-cpu=native" cargo run --release --features fast-crypto,fast-alloc

ベンチマークをローカルで実行:

root@kitploit:~
cargo bench --manifest-path aimp_node/Cargo.toml             # マイクロベンチマーク
cargo run --release -p aimp_node --example bench_convergence  # システムベンチマーク
cargo run --release -p aimp_node --example bench_netem        # ネットワーク障害
docker build -f Dockerfile.bench -t aimp-bench . && \
  docker run --rm --memory=1g --cpus=1 aimp-bench             # ARM64制約

形式検証 (TLA+)

L2 — CRDT収束

プロパティ説明状態
収束2つのノードが同一のストアを持つ場合、同一のMerkleヘッドを計算する検証済み

TLCは、深さ16まで46,063状態(うち9,558が一意)を10並列ワーカーで1秒未満で探索し、違反はありませんでした。発見されたバグ: 2つの正しさのバグ(順序外れのヘッド、クォーラム二重投票)。両方修正済み。

L3 — 信念収束

プロパティ説明状態
BeliefDeterminism同一のクレーム+グラフ → 全ノードで同一のBeliefState

網羅的な有界検証: 199,902構成(5プロパティ、最大N=6ノード)。発見されたバグ: 1つの信頼伝播式のバグ(t_{k+1} = t_k + At_k が正解で、t_{k+1} = t_0 + At_k だった)。修正済み。


クイックスタート

1. ノードを実行

root@kitploit:~
cargo run -- --port 1337 --name node1

2. Python CLI

root@kitploit:~
cd aimp_testbed
pip install -e .
aimp-cli health --target 127.0.0.1 --metrics-port 9090
aimp-cli infer "Check valve pressure in sector north"

3. テストとベンチマークを実行

root@kitploit:~
make test                     # プロパティベース+統合テスト
make bench                    # Criterionベンチマーク
make lint                     # フォーマット+clippy
make docs                     # rustdoc生成

エッジデプロイ

AIMPは単一の静的バイナリとして動作するように設計されており、ランタイム依存関係はゼロです。Docker、コンテナランタイム、JVMは不要です。

クイックデプロイ(ベアメタル)

root@kitploit:~
# アーキテクチャに合わせたバイナリをダウンロード
curl -LO https://github.com/fabriziosalmi/aimp/releases/latest/download/aimp_node-aarch64-linux
chmod +x aimp_node-aarch64-linux

# systemdサービスとしてインストール
sudo deploy/install.sh ./aimp_node-aarch64-linux

# 起動
sudo systemctl start aimp-node
curl localhost:9090/health

ソースからクロスコンパイル

root@kitploit:~
make install-cross-targets   # 初回のみ:muslターゲットをインストール
make edge-arm64              # ARM64 (RPi 4/5, Jetson, Graviton)
make edge-armv7              # ARMv7 (RPi 2/3, 産業用PLC)
make edge-x86                # x86_64 (エッジゲートウェイ)
make edge-all                # すべて

FirecrackerマイクロVM(マルチテナント分離)

複数の信頼できないワークロードを実行するエッジゲートウェイ向け:

root@kitploit:~
sudo make microvm-rootfs     # AIMPを含む約15MBのAlpineルートファイルシステムをビルド
firecracker --no-api --config-file deploy/firecracker/vm-config.json

起動時間:約125ms。メモリ:64MB。vCPU:1。

Systemdサービス

同梱のサービスファイル (deploy/systemd/aimp-node.service) は以下を提供します:


設定

設定は次の優先順位で読み込まれます(高いものから順に):

  1. CLI引数 (--port, --name)
  2. 環境変数 (AIMP_PORT, AIMP_NOISE_REQUIRED, AIMP_PEER_RATE_LIMIT, ...)
  3. aimp.toml ファイル(オプション)
  4. ハードコードされたデフォルト値

データフロー

root@kitploit:~
graph TD
    UDP[UDP Socket] -->|Envelope| RL[Rate Limiter]
    RL -->|Allowed| NP[Noise Protocol]
    NP -->|Decrypt| FW[Security Firewall]
    FW -->|Valid| BP[Backpressure Semaphore]
    BP -->|Permit| Parser[Protocol Parser]
    Parser -->|AimpData| CRDT[CRDT Actor]
    CRDT -->|Mutation| DAG[Merkle-DAG + redb]
    DAG -->|Prune| GC[Epoch GC]
    CRDT -->|Evaluation Req| DE[Decision Engine]
    DE -->|Decision + Evidence| CRDT
    CRDT -->|Quorum Vote| QM[QuorumManager]

関連研究

AIMPは、分散システム研究の以下の分野の概念に基づいています:

  • CRDT — Shapiro et al., "A Comprehensive Study of Convergent and Commutative Replicated Data Types" (INRIA, 2011)
  • Merkle-CRDT — Kleppmann & Howard, "Byzantine Eventual Consistency and the Fundamental Limits of Peer-to-Peer Databases" (2022)
  • BFT合意 — Castro & Liskov, "Practical Byzantine Fault Tolerance" (OSDI, 1999)
  • ベイズ集約 — Jaynes, "Probability Theory: The Logic of Science" (2003); 信念融合のための対数オッズ算術
  • 信頼ネットワーク — Kamvar et al., "The EigenTrust Algorithm for Reputation Management in P2P Networks" (WWW, 2003)
  • 主観論理 — Jøsang, "Subjective Logic: A Formalism for Reasoning Under Uncertainty" (Springer, 2016)
  • Copulas — Nelsen, "An Introduction to Copulas" (Springer, 2006); 依存エビデンスのための相関モデリング
  • Noise Protocol — Perrin, "The Noise Protocol Framework" (2018); snow クレートを介してXXハンドシェイクパターンに使用
  • ゴシッププロトコル — Demers et al., "Epidemic Algorithms for Replicated Database Maintenance" (1987)
  • Merkle木 — Merkle, "A Digital Signature Based on a Conventional Encryption Function" (CRYPTO, 1987)
  • ベクトルクロック — Mattern, "Virtual Time and Global States of Distributed Systems" (1988)

ライセンス

MIT — Fabrizio Salmi, 2026.

ツールをダウンロード
レイヤーバージョン目的
L1/L2v0.1.0Merkle-DAG CRDT、Ed25519署名、Noise Protocolトランスポート、BFTクォーラム
L3v0.2.0認識層:整数対数オッズ、2パス信頼伝播、Sybil耐性レピュテーション
L3v0.3.0相関認識集約:相関センサー/LLMに対する幾何学的割引
L3v0.4.0決定論的意味トポロジー:256ビットSimHashによる自律エッジ生成
機能AIMP (Merkle-CRDT)従来 (Raft/Paxos)
トポロジーP2Pメッシュ/分散型リーダー/クォーラム
可用性AP(常に書き込み可能)CP(過半数が必要)
順序付け因果(ベクトルクロック)全体(逐次)
完全性暗号化(Merkle-DAG)ログベース
ハードウェアエッジ/IoT最適化データセンターグレード
操作時間スループット
append_mutation (100 ops)41.8 µs~2.4M mutations/sec
get_merkle_root (cached)4.8 nsO(1)
BLAKE3 hash (1 KB)925 ns~1.08 GB/s
MessagePack ser / de204 / 210 ns—
Ed25519 sign (ring)9.3 µs~108K ops/sec
Ed25519 verify25.0 µs~40K ops/sec
シナリオ結果
スループット(5ノード x 1000ミューテーション、Ed25519署名あり)96,289 mutations/sec
収束(5つの分岐ノード、各DAG 250)0.68 ms(1同期ラウンド)
パーティション/マージ(2グループ、各30ミューテーション、完全マージ)0.21 ms
クリプトホットパス(メッセージごとに署名+検証)45.0 µs → 22K msg/sec max
rate_limit=50/secでのクリプト予算0.23% 使用率
条件収束ラウンド数
ベースライン(0%喪失)はい1
10%パケットロスはい2
30%パケットロスはい2
50%パケットロスはい2
20%ロス + 100msレイテンシ + 30msジッタはい2
パーティション(10ラウンド)→マージはい1
パーティション(50ラウンド)→20%ロスでマージはい1
80%パケットロス(ストレス)はい4
メトリックmacOS ARM64Linux 1C/1GB (RPi 4)Linux 1C/256MB (RPi Zero)
スループット96,289 mut/s24,802 mut/s29,709 mut/s
収束0.68 ms3.06 ms1.30 ms
Ed25519署名8.7 µs16.2 µs15.1 µs
Ed25519検証20.5 µs34.6 µs45.2 µs
最大msg/sec34,32919,69516,573
@50/sのクリプト予算0.15%0.25%0.30%
ベンチマークAIMP (ring)AutomergeYrs (Yjs)
ミューテーション (1000 ops)129K ops/s94K ops/s632K ops/s
2レプリカマージ0.48 ms1.17 ms0.38 ms
5レプリカマージ2.16 ms3.89 ms—
状態サイズ (1000 ops)~18 KB4 KB—
QuorumSafetyプロンプトに対してクォーラムに達した場合、決定は一意である(矛盾する決定はない)検証済み
QuorumLivenessすべてのノードが同じ決定に投票した場合、最終的にクォーラムしきい値に達する検証済み
検証済み
NoOscillation信頼値は単調に収束する(Pass2 → Pass1フィードバックなし)検証済み
ContradictionSafety単一の矛盾でAccepted → Rejectedに1ステップで反転できない検証済み
強化値
ユーザー分離専用 aimp ユーザー、ログインシェルなし
ファイルシステムProtectSystem=strict, ProtectHome=yes
メモリ制限MemoryMax=128M
CPU制限CPUQuota=80%
特権NoNewPrivileges=yes, MemoryDenyWriteExecute=yes
システムコールフィルター@system-service ホワイトリスト
再起動失敗時に指数バックオフ
シャットダウンSIGTERM → 10秒猶予 → SIGKILL
パラメータデフォルト説明
port1337UDPリスンポート
metrics_port9090Prometheus HTTPポート
noise_requiredtrueNoise Protocol暗号化を強制
peer_rate_limit50ピアあたりの最大メッセージ数/秒
peer_rate_burst100トークンバケットバースト容量
gc_mutation_threshold1000GCスイープ前のミューテーション数
quorum_threshold2BFT合意に必要なノード数
dag_history_depth100GC後も保持する最大DAG深さ