设备平台不能只保存“最后在线时间”。它需要识别每台设备、理解云端期望状态和设备真实状态的差异,并安全地维护固件直到设备退役。

设备身份

每台设备应有稳定唯一标识和独立凭据:

1
2
3
4
device_id:业务与平台身份
certificate/key:加密身份材料
tenant/product:所属租户和产品
policy:允许连接、发布和订阅的范围

设备序列号不一定是秘密,不能单独作为认证凭据。生产写入、首次激活、轮换、吊销和报废都要有记录。

Digital Twin 或 Device Shadow

最实用的模型是区分期望状态与上报状态:

1
2
3
4
5
{
"desired": { "targetTemperature": 24 },
"reported": { "targetTemperature": 26, "online": true },
"version": 18
}
1
2
3
4
5
用户修改 desired
-> 平台生成命令
-> 设备执行
-> 设备重新上报 reported
-> 平台比较差异并确认收敛

Twin 不是设备数据库的漂亮别名。它要定义版本、冲突、过期、离线设备、权限和最终一致性。

OTA 完整流程

1
2
3
4
5
6
7
构建固件 -> 生成哈希和签名 -> 上传制品
-> 创建升级任务 -> 选择小批设备灰度
-> 设备校验型号、版本、空间和电量
-> 分块下载并验证签名
-> 安装、重启、自检
-> 上报结果
-> 指标正常后逐步扩大批次

安全启动和固件签名防止运行未经授权的代码。设备应保留可回滚分区或恢复模式,云端要有暂停、失败阈值和人工介入能力。

全生命周期安全

阶段 关键控制
设计 威胁建模、最小权限、安全更新能力
生产 每设备唯一身份、安全写入密钥
激活 引导凭据一次性或短期化
运行 TLS、授权、日志、异常检测、密钥轮换
更新 固件签名、灰度、回滚、防降级
报废 吊销凭据、清除数据、解除租户绑定

物联网安全还要考虑物理接触、调试口、弱网、长期无人维护和供应链,不能只套用普通 Web 登录方案。

延伸阅读

站内搜索

没有找到内容!