物联网安全的特殊之处

服务器安全靠机房与补丁,物联网安全却要面对几十万台分布在外面的设备:它们算力弱、电池小、物理上你还碰不到。一旦被仿冒或劫持,轻则数据乱报,重则被当成僵尸网络打别人。所以安全必须从「设备出厂」就设计好。

物联网安全的两条主线:设备要能被认出是谁,通信要能防窃听防篡改。
要防的三件事
  • 仿冒设备别人造一个假设备混进你的平台。
  • 窃听篡改中间人偷看或改数据。
  • 越权控制别人远程指挥你的设备。
设备认证配图:中央发光盾牌轮廓内嵌图形钥匙孔,周围环绕验证光点环与若干小型设备徽章
盾牌代表身份校验,只有通过验证的设备才能入网。

设备身份:一机一密

每台设备出厂时写入一个唯一身份(设备 XID)和一把只属于它的密钥。平台侧预先登记这台设备的身份与公钥。设备联网时,不是「报个密码」,而是用私钥签一个名,平台验签——这就是一机一密。

认证流程

典型流程:设备连上网 → 平台下发一个随机挑战(nonce)→ 设备用私钥对挑战签名 → 平台用登记的公钥验签 → 通过才允许接入。这叫「挑战-响应」认证,能防重放,因为每次挑战都不一样。

// 伪代码
nonce = platform.issueNonce(deviceId);
sig   = device.sign(nonce);          // 用设备私钥
ok    = platform.verify(deviceId, nonce, sig);
if (!ok) reject();

传输加密

认证之外,通信本身要加密。轻量设备常用 DTLS(UDP 上的 TLS)或在 MQTT 上挂 TLS。这样即使报文被截,内容也解不开、改不了。别在明文通道里传密钥或控制指令。

密钥与证书管理

密钥写在哪、怎么换,是工程难点。产线要给每台设备烧入独立密钥;设备丢失或怀疑泄露时,平台要能远程吊销这台设备的身份。证书要有过期时间,到期要能远程轮换,别指望人到场。

密钥管理要点
  • 一机一密不要全机型共用一把密钥。
  • 可吊销平台能随时拉黑某设备。
  • 可轮换支持远程更新证书。