4. 密码学基础
无线仪表通常部署在开放或半开放的工业现场,报文经空中接口传输,任何具备相应射频能力的设备都可能截获、重放或篡改数据。密码学不是单一算法,而是一组按目标分工的工具:机密性靠对称/非对称加密,完整性靠哈希与消息认证码,身份真实性与不可否认性靠数字签名。理解它们各自“保护什么、不保护什么”,是后续密钥管理设计的前提。
一、五类密码学原语的核心原理
对称加密使用同一密钥完成加密与解密,典型算法有 AES-128/256、SM4。其优势是速度快、适合资源受限的无线仪表;难点在于密钥分发——n 台仪表两两通信需要 n(n-1)/2 个密钥。工作模式上,无线仪表应优先选用带认证的 AEAD 模式(如 AES-GCM、AES-CCM),一次运算同时得到密文和完整性标签,避免“先加密再单独算 MAC”的拼接错误。
非对称加密使用公钥加密、私钥解密(或私钥签名、公钥验签),典型算法有 RSA、ECC(如 secp256r1)、SM2。它解决了密钥分发问题,但运算开销大、密文膨胀明显,通常不直接加密业务数据,而是用于加密“会话密钥”或做密钥协商(ECDH)。
哈希函数把任意长度输入压缩为固定长度摘要,具备单向性和抗碰撞性,如 SHA-256、SM3。它本身不提供机密性,也不带密钥,因此单独使用只能检测“意外损坏”,无法抵御主动篡改。
消息认证码(MAC)是带密钥的哈希,如 HMAC-SHA256、CMAC-AES。它同时保证完整性和来源真实性,但通信双方共享同一密钥,因此无法向第三方证明“消息只可能由某一方发出”。
数字签名用私钥签名、公钥验签,兼具完整性、真实性和不可否认性,适合固件升级包、配置下发、审计日志等场景。
二、无线仪表场景下的选型方法
无线仪表普遍存在 MCU 主频低、RAM 小、电池供电、带宽窄等约束,选型不能只看“算法强度”,而要看“单位能耗下的安全收益”。建议按以下流程决策:
- 明确保护目标:是防窃听、防篡改、防伪造,还是防抵赖?目标不同,原语不同。
- 评估资源预算:列出可用 RAM、Flash、单次通信能耗上限与允许时延。
- 优先复用 AEAD:AES-CCM/GCM 一次完成加密与认证,减少一轮运算和报文长度。
- 非对称只用于控制面:入网认证、密钥协商、固件验签,避免逐包使用。
- 签名用于低频高价值操作:固件升级、参数下发、审计存证。
三、典型场景:固件升级与遥测上报
某化工厂无线压力变送器通过 802.15.4 接入网关。遥测上报路径采用 AES-128-CCM,每包附带 8 字节 MIC,网关用共享会话密钥校验并解密;会话密钥由 ECDH(secp256r1)协商生成,有效期 24 小时。固件升级包则由厂商用 ECDSA 私钥签名,仪表用预置公钥验签后才写入 Flash。
遥测上报帧结构(简化):
| 帧头 | 计数器 | 密文载荷 | MIC(8B) |
2B 4B n B 8B
固件升级校验流程:
1. 读取升级包 + 签名值
2. 计算 SHA-256(package)
3. ECDSA_Verify(pubKey, hash, signature)
4. 校验通过 → 写入;失败 → 丢弃并告警
该方案中,对称加密保护了数据面机密性,MAC 保证逐包完整性,非对称仅用于密钥协商和固件验签,整体能耗可控。
四、常见误区与复盘
- 误区一:用哈希代替 MAC。 哈希无密钥,攻击者可同时篡改数据和摘要,无法防主动攻击。
- 误区二:逐包使用 RSA 签名。 运算开销大、报文膨胀,电池仪表可能数天耗尽。
- 误区三:忽略计数器与随机数。 仅加密不防重放,攻击者可原样重发旧报文触发误动作。
- 误区四:自创“加密+哈希”拼接。 顺序、密钥复用处理不当会引入可证明的安全缺陷,应直接使用 AEAD 或 Encrypt-then-MAC。
五、五类原语适用性对照清单
| 原语 | 保护目标 | 典型算法 | 仪表侧开销 | 推荐用途 |
|---|---|---|---|---|
| 对称加密 | 机密性 | AES-GCM、SM4 | 低 | 遥测/控制报文加密 |
| 非对称加密 | 密钥分发 | ECC、RSA、SM2 | 高 | 会话密钥协商、入网认证 |
| 哈希函数 | 完整性(非对抗) | SHA-256、SM3 | 低 | 摘要比对、口令派生 |
| 消息认证码 | 完整性+来源真实性 | HMAC-SHA256、CMAC | 低 | 逐包防篡改 |
| 数字签名 | 真实性+不可否认性 | ECDSA、SM2 | 高 | 固件升级、配置下发、审计 |
综上,无线仪表的密码学设计应遵循“对称为主、非对称为辅、哈希与 MAC 贯穿、签名守关键”的分层原则:数据面用 AEAD 保证机密性与完整性,控制面用非对称完成密钥协商与身份认证,高价值低频操作用数字签名实现不可否认。只有把原语选型与密钥管理、计数器防重放、资源预算结合起来,才能形成真正可落地的无线仪表安全方案。