我们很高兴地宣布,OnyxMesh,我们用于自主车队通信的实验性网络协议,现已完全开源,可在 GitHub 上获取。
什么是OnyxMesh?
OnyxMesh是一个统一的网络协议,专为自主设备间的车队通信而设计,包括无人机、机器人、地面车辆和边缘服务器。它将身份、发现、路由、传输和车队服务集成到一个单一的协议栈中,全程采用后量子密码学进行端到端保护。
当今的自主车队基础设施饱受碎片化之苦:团队通常需要组合使用独立的加密工具(WireGuard)、网状路由(batman-adv)和消息传递(MQTT),每个工具都有自己的信任模型和运维开销。OnyxMesh探索了从底层统一这些关注点后能实现什么。
OnyxMesh是实验性技术,是对未来自主系统的探索,而非生产就绪的产品。我们将其开源以促进合作并推动该领域的发展。
以后量子密码学为核心
OnyxMesh建立在OM-QR1密码套件之上,完全使用NIST标准化的后量子密码原语:
- ML-DSA-65 用于数字签名
- ML-KEM-768 用于密钥封装
- AES-256-GCM 用于流量加密
- SHA3-256 用于哈希
每个设备身份、每次握手和每个数据包都受到经典威胁和量子时代威胁的双重保护。
主要特性
自证明身份
设备直接从其公钥派生地址,无需外部证书颁发机构。五步Genome握手在数据交换前相互验证硬件、固件和车队成员身份。
智能网状路由
OnyxRoute将主动Dijkstra路由(3跳范围内)与远距离节点的响应式发现相结合,根据设备类别调整路由指标,从资源受限的嵌入式传感器到强大的计算节点。
车队原生服务
内置服务消除了对外部中间件的需求:
- OnyxTopics:基于Gossip的发布/订阅消息
- OnyxState:基于CRDT的分布式键值存储
- OnyxCall:用于远程过程调用的JSON-RPC
- OnyxSwarm:点对点容器编排
韧性与健康监控
免疫响应系统提供持续的健康监控,包括异常检测、基于车队共识的节点撤销和自动网络分区恢复。
多传输层支持
OnyxMesh通过可插拔适配器支持多种物理传输:UDP/IPv6、WiFi、BLE、LoRa和串行连接。上层保持传输无关性,便于适应不同的部署场景。
通过OnyxForge进行集成安全测试
OnyxMesh附带OnyxForge,一个集成的对抗性安全工具包,包括:
- 协议模糊测试和暴力分析
- 重放攻击和时序侧信道模拟
- DoS韧性测试
- 网络分区场景
开发期间使用的审计工具同样可用于每次部署。
为什么选择开源?
我们相信自主车队通信的挑战太重要、太复杂,不能孤立解决。通过开源OnyxMesh,我们旨在:
- 加速研究 后量子车队安全
- 促进合作 跨越机器人、无人机和边缘计算社区
- 提供参考架构 用于统一的自主通信栈
- 收集真实反馈 以指导协议的演进
参与贡献
OnyxMesh使用Go编写,支持ARM64、ARMv7和x86-64的交叉编译。入门很简单:
git clone https://github.com/technosec-dev/onyxmesh.git
cd onyxmesh
make build我们欢迎贡献、错误报告和反馈。无论您是在构建自主无人机、机器人车队还是边缘计算基础设施,我们都希望了解OnyxMesh如何融入您的愿景。
探索项目:github.com/technosec-dev/onyxmesh
对OnyxMesh感兴趣? 联系我们,了解更多详情、进行技术交流或探讨合作机会。
OnyxMesh体现了TechnoSec突破嵌入式和自主系统边界的承诺。我们期待以开放的方式,共同构建车队通信的未来。