Nexting Devices · 安全
Nexting 如何保护连接
准确说明加密在哪里结束、授权由谁负责、设备会收到什么,以及量产硬件还必须增加哪些保护。
Nexting 的安全方案是:加密的本地设备链路 + 可信 Host 隔离 + 最少披露 + 可撤销授权。本页明确列出公开 SDK 已实现的控制,以及量产设备仍需解决的边界。
信任边界
| 层 | 接收与决策 | 不接收或不直接信任 |
|---|---|---|
| 设备 | 有界 Profile 状态与物理意图 | 不接收 Agent 凭证或账号/会话路由 |
| 可信 Host | 授权、时效、风险策略与 Agent 映射 | 不接受未经认证的配件命令 |
| Agent | 只接收 Host 批准的动作 | 不直接信任配件输入 |
所有 Agent 集成都共用以下控制:
| 控制 | 已实现边界 |
|---|---|
| BLE LE Secure Connections | 本地设备链路使用 BLE LE Secure Connections,并要求控制流量使用加密 GATT 权限。 |
| opaque request ID | Agent 凭证及内部账号、会话路由留在可信 Host;固件只接收不透明请求 ID 等有界 Profile 数据。 |
| single consumption | Host 校验授权、有效期、序列或修订号、重复与重放状态,以及单次消费。 |
| state and partial-frame clearing on disconnect | 断开连接、重启、重新绑定、重置或 Host 撤销会清除相应的易失状态与残缺帧。 |
| voice/1 | voice/1 只控制 Host 麦克风生命周期,绝不承载音频字节或转写文本。 |
| Just Works | Developer Reference 的 Just Works 配对会加密链路,但量产设备需要经过认证的应用身份和签名固件。 |
数据流
Host 发送一条有界请求,已授权设备只返回一个选择。Host 验证并提交后,Agent 才继续运行。
{"v":1,"t":"present","id":"r1","sum":"Allow git push?","opt":["allow","deny"],"ttl":30000}
{"v":1,"t":"answer","id":"r1","ch":"allow"}
受保护的本地链路
公开 Zephyr 参考实现要求 BLE LE Secure Connections、绑定、控制器隐私、BT_SECURITY_L2以及控制流量使用 encrypted GATT 权限。
CONFIG_BT_SMP_SC_ONLY=y
CONFIG_BT_BONDABLE=y
CONFIG_BT_BONDING_REQUIRED=y
CONFIG_BT_PRIVACY=y
BT_SECURITY_L2
BT_GATT_PERM_WRITE_ENCRYPT
BT_GATT_PERM_READ_ENCRYPT授权与时效性
Host 会检查已授权身份、声明的 Profile、请求有效期、sequence 或 revision、重复与 replay 状态,以及 single consumption。未知、过期、乱序、已撤销或未声明的输入都会被拒绝。
| 检查 | 会被拒绝的例子 |
|---|---|
| 身份 | 只匹配名称或来自其他 bond |
| 时效 | 过期审批或旧配置 revision |
| 顺序 | 重复或重放的 sequence |
| 能力 | Device Info 未声明的按键、槽位或 Profile |
最少披露
固件只收到 opaque request ID、短摘要、固定选项、相对有效期、标签或易失状态等有界 Profile 数据;它不会收到 Agent 凭证、内部账号/会话路由、提示词历史或不受限工具载荷。
voice/1只传 start、stop 与 cancel 控制,绝不传音频字节或转写文本。麦克风权限、录音与转写由 Host 负责。状态与撤销
断开连接会清除残缺帧及易失的审批、状态、文本、用量、导航和语音状态。重启、重置、重新绑定或 Host 撤销会使相应授权与待处理工作失效;用户可以在 Host 中忘记设备并删除 bond。
参考实现与量产设备
Developer Reference 使用 Just Works 配对。它会加密本地链路,但无法在配对阶段提供经过认证的 active-MITM 防护。量产硬件需要 authenticated application identity、安全密钥存储、签名固件、回滚策略与受支持的撤销路径。
威胁与非目标
这不是设备到 Agent 的端到端加密:可信 Host 必须读取、授权并映射物理意图。公开契约不声称能够保护已失陷的 Host、不受保护配件上的物理提取,或供应链攻击。
| 威胁 | 当前边界 |
|---|---|
| 被动 BLE 抓包 | 加密绑定链路保护控制流量 |
| 重放或过期输入 | Host 校验 sequence、有效期、重复与单次消费 |
| 参考配对阶段的主动中间人 | Just Works 不认证;量产必须增加应用身份 |
| Host 已失陷 | 超出配件协议的信任边界 |
报告安全问题
请勿公开提交漏洞利用 Issue。按照公开 Nexting Devices SECURITY 文档中的私密报告渠道,附上 SDK 版本、开发板与 Host 版本、复现步骤及影响。