スワーム分散通信セキュリティ技術仕様書(耐量子・ハッキング対策)
1. 概要
本ドキュメントは、UAV / AUV スワーム制御(uav_swarm_control)、マルチドメインシミュレータ(EvoMobilitySim)、およびエッジ通信クライアント(EvoDeviceClient)における、機体同士(P2P)および地上管制塔(Ground Control Tower)間の通信ハッキング対策・耐量子セキュリティ(Post-Quantum Resilience)の設計と実装仕様を定めます。
2. 脅威モデルとセキュリティ要件
空中(UAV)、水中(AUV)、陸上(UGV)の自律移動体群と地上管制塔が分散協調する環境において、以下の脅威に対処します。
flowchart TD
subgraph Threats["想定されるサイバー脅威"]
T1["なりすまし / 不正機体侵入<br/>(Spoofing / Sybil Attack)"]
T2["メッセージ改ざん / MITM<br/>(Tampering / Man-in-the-Middle)"]
T3["リプレイ攻撃<br/>(Replay Attack)"]
T4["不正管制コマンド注入<br/>(Unauthorized Command Injection)"]
T5["将来の量子コンピュータによる解読<br/>(Quantum Grover/Shor Attacks)"]
end
subgraph Defense["防御アーキテクチャ (Comm.security)"]
D1["相互ノード・ロール認証<br/>(KeyStore & Role Authorization)"]
D2["正準JSON決定論的署名<br/>(HMAC-SHA256/512 Integrity)"]
D3["時間窓 + Nonceスライディングキャッシュ<br/>(AntiReplayCache)"]
D4["管制塔専用署名 + 権限強制<br/>(Control Tower Signature Enforcement)"]
D5["耐量子ハイブリッドトークン<br/>(SHA3-512 Sponge Lattice Guard)"]
end
T1 --> D1
T2 --> D2
T3 --> D3
T4 --> D4
T5 --> D5
3. 通信シーケンスと検証フロー
機体から地上管制へのアップリンク、および地上管制からの航路指示・緊急回避コマンドの送受信シーケンスは下図の通りです。
sequenceDiagram
autonumber
participant A as UAV / AUV (Edge)
participant C as Ground Control Tower
participant S as SQLite Security Audit Store
A->>A: Canonicalize JSON & Sign (HMAC-SHA256/512 + PQC Token)
A->>C: POST /api/v1/swarm/state (with security header)
Note over C: Validate Timestamp Drift (|Δt| <= 10s)<br/>Check Nonce in AntiReplayCache<br/>Verify HMAC Signature & PQC Token
alt Verification Success
C->>C: Ingest into AOI Read-Model
C->>C: Generate & Sign Coordination Commands
C-->>A: Return Response (HTTP 200 OK)
else Signature Mismatch or Replay Detected
C->>S: Log security_tamper_detected / security_replay_rejected
C-->>A: Reject Payload (403 Forbidden or Non-Ingested)
end
4. セキュリティヘッダー仕様
すべての DeviceStateEnvelope、TrajectoryUpdateEnvelope、および CoordinationCommand に付与される security ヘッダー構造です。
{
"node_id": "uav-tokyo-01",
"role": "aircraft",
"plan_generation": 4,
"battery_percent": 88.5,
"link_quality": 0.94,
"payload": {
"area_id": "Tokyo Central AOI",
"run_id": "run-20260916-001",
"position": {"x_m": 120.0, "y_m": 250.0, "altitude_m": 65.0},
"velocity_mps": {"x_mps": 12.0, "y_mps": 0.0, "z_mps": 0.0}
},
"security": {
"version": "1.0",
"key_id": "evospikenet-swarm-default-key-v1",
"algorithm": "PQC-HYBRID-SHA256",
"timestamp_ns": 1758000000000000000,
"nonce": "9f8e7d6c5b4a3120efcdab8967452301",
"sender_id": "uav-tokyo-01",
"role": "aircraft",
"signature": "3a7b9c1d2e3f405162738495a6b7c8d90123456789abcdef0123456789abcdef",
"pqc_token": "a1b2c3d4e5f60718293a4b5c6d7e8f901a2b3c4d5e6f7a8b9c0d1e2f3a4b5c6d"
}
}
5. 耐量子暗号(PQC)ハイブリッド設計
- Grover 耐性 (Quantum Search Attack Resistance):
- 256ビットおよび512ビットの秘密鍵を採用。Grover の量子検索アルゴリズムに対しても、最低 \(2^{128}\) 以上の有効計算量を確保。
- 耐量子スポンジガード(SHA3-512 Sponge Lattice Guard):
- PQC シードと正準データ、タイムスタンプ、Nonce を SHA3-512 スポンジ構成でミキシングしたガードトークン(
pqc_token)を生成・検証。 - クリプトアジリティ(Crypto Agility):
- 将来の NIST PQC 標準(ML-DSA / CRYSTALS-Dilithium, Falcon, SPHINCS+)への移行が可能なプラグイン構造。
6. 各プロダクトでの設定環境変数
| 環境変数 | 対象プロダクト | デフォルト値 | 説明 |
|---|---|---|---|
EVODEVICE_SECURITY_ENABLED |
EvoDeviceClient | true |
セキュリティ機能の有効化 |
EVODEVICE_SECURITY_STRICT |
EvoDeviceClient | false |
厳格モード(未署名メッセージの完全遮断) |
EVODEVICE_SECURITY_ALGO |
EvoDeviceClient | PQC-HYBRID-SHA256 |
暗号アルゴリズム(PQC-HYBRID-SHA256 / PQC-HYBRID-SHA512 / HMAC-SHA256) |
EVODEVICE_SECURITY_KEY_ID |
EvoDeviceClient | evospikenet-swarm-default-key-v1 |
鍵識別子 |
EVODEVICE_SECURITY_MAX_DRIFT_S |
EvoDeviceClient | 10.0 |
リプレイ防止用の許容最大時刻ズレ(秒) |
UAV_SECURITY_ENABLED |
uav_swarm_control | 1 |
地上管制セキュリティ機能の有効化 |
UAV_SECURITY_STRICT |
uav_swarm_control | 0 |
地上管制厳格モード |
EVOMOBILITYSIM_SECURITY_ENABLED |
EvoMobilitySim | true |
シミュレータセキュリティの有効化 |