2、基础知识:模型知识产权(IP)保护的基本概念、威胁模型与常见攻击类型

TinyML 模型的知识产权(IP)保护,本质上是在资源极度受限的嵌入式环境中,为模型权重、架构设计、训练数据分布等核心资产建立一套“可识别、可追踪、可举证”的防护机制。与云端大模型不同,TinyML 模型一旦部署到终端设备(如 MCU、传感器节点、边缘 NPU),其二进制权重文件就完全暴露在物理可接触的环境中。攻击者可以通过串口调试、JTAG 接口、Flash 读取甚至侧信道分析等手段,将模型权重完整提取出来。因此,理解模型 IP 保护的基本概念、威胁模型与攻击类型,是设计水印与指纹方案的前提。

TinyML 模型 IP 保护威胁模型总览 模型核心资产 权重参数 网络结构 训练数据分布 推理逻辑 攻击者行为 ① 逆向工程(提取权重) ② 模型窃取(黑盒/白盒) ③ 篡改/投毒(后门注入) ④ 非法分发/重部署 保护目标 版权归属可证明 非法使用可追踪 篡改行为可检测 授权版本可管理 常见攻击类型分类 白盒攻击 直接读取 Flash JTAG/SWD 调试 内存转储 黑盒攻击 API 查询窃取 模型蒸馏 侧信道分析 篡改攻击 权重位翻转 后门注入 模型替换 分发攻击 非法复制 未授权转售 固件提取

上图展示了 TinyML 模型 IP 保护的整体威胁模型框架。从左侧的模型核心资产出发,经过中间的攻击者行为路径,最终到达右侧的保护目标。底部则细化了四类常见攻击类型。这张图的核心逻辑是:先明确要保护什么,再分析谁会攻击、如何攻击,最后确定保护措施应达到的效果。在实际工程中,威胁建模往往需要结合具体部署场景(如智能家居设备、工业传感器、可穿戴设备)来动态调整。

2.1 模型 IP 保护的核心概念与范畴

模型 IP 保护并非单一技术,而是一套覆盖模型全生命周期的综合治理体系。在 TinyML 场景下,由于算力、存储和功耗的限制,传统的加密和混淆手段往往难以直接应用,因此需要更轻量级的方案。

核心概念包括三个层面:

  • 版权归属(Ownership): 证明“这个模型是谁训练的”。通常通过嵌入水印(Watermark)实现,水印可以是模型权重中的特定模式、训练数据中的特殊样本,或输出结果中的特定触发行为。
  • 身份指纹(Fingerprint): 用于识别“这个模型是从哪个设备/哪个版本泄露的”。指纹通常与设备硬件信息(如芯片唯一 ID)绑定,实现设备级追踪。
  • 版本追踪(Version Tracking): 记录模型的迭代历史、授权范围和使用期限。在 TinyML 中,版本追踪常与 OTA 升级机制结合,防止旧版本被恶意保留或降级攻击。

这三者并非互斥,而是相互补充。例如,水印解决“是谁的”问题,指纹解决“从哪来”的问题,版本追踪解决“是否合法”的问题。一个完整的保护方案通常需要组合使用。

工程视角: 在 MCU 上实现模型 IP 保护时,必须考虑 存储开销 和 推理延迟。例如,一个 100KB 的模型,如果水印嵌入导致体积增加 5%,在 Flash 容量紧张的设备上可能无法接受。因此,水印算法需要设计为“零额外存储”或“极低额外存储”,例如利用已有权重的量化噪声来编码水印信息。

2.2 威胁模型:谁在攻击,攻击什么?

威胁模型(Threat Model)是安全分析的起点。在 TinyML 场景中,攻击者画像与云端 AI 有显著差异。云端模型通常由服务商托管,攻击者只能通过 API 交互;而 TinyML 模型部署在用户可控的物理设备上,攻击者拥有完全的控制权,包括硬件调试接口、电源管理、通信总线等。

根据攻击者的能力和目标,可以将威胁模型分为以下四类:

威胁类型 攻击者能力 主要目标 典型场景
被动窃取者 可物理接触设备,能读取 Flash/外部存储 提取模型权重,用于复制或转售 拆解智能音箱,读取 SPI Flash 中的模型 bin 文件
主动篡改者 可修改固件或注入恶意代码 植入后门,使模型在特定输入下产生错误输出 攻击工业视觉检测设备,使缺陷检测失效
黑盒查询者 仅能通过正常输入输出接口与设备交互 通过大量查询构建替代模型(蒸馏攻击) 利用智能门锁的指纹识别接口,尝试伪造指纹
内部泄露者 拥有合法访问权限(如代工厂、调试人员) 将模型副本非法提供给第三方 OEM 代工厂员工将固件拷贝给竞争对手

值得注意的是,侧信道攻击在 TinyML 中尤为突出。攻击者可以通过测量设备运行时的功耗曲线(SPA/DPA)、电磁辐射或执行时间,推断出模型的结构信息(如层数、激活函数类型)甚至部分权重值。这是因为 MCU 在执行乘加运算时,功耗与操作数相关。

风险提示: 不要假设“设备外壳密封”或“固件加密”就能阻止攻击。对于有经验的硬件黑客,拆解芯片、使用探针直接读取 Flash 引脚是常规操作。因此,模型 IP 保护必须假设攻击者最终能拿到二进制文件,保护的重点应放在“拿到之后无法证明归属”或“无法合法使用”上。

2.3 常见攻击类型详解与判断方法

在实际工程中,我们需要能够识别不同类型的攻击行为,并采取相应的防御策略。以下是四类最常见的攻击类型及其判断方法。

2.3.1 白盒攻击:模型提取与逆向

白盒攻击是指攻击者已经获得了模型的完整二进制文件(如通过读取 Flash),可以直接分析权重和结构。这种攻击的破坏力最强,因为攻击者可以完全复制模型。

判断方法:

  1. 检查设备是否存在未禁用的调试接口(如 JTAG、SWD)。
  2. 检查固件中是否包含明文模型权重(可通过 strings 命令或 hexdump 快速扫描)。
  3. 评估 Flash 读保护(RDP)等级是否设置为最高级别(如 STM32 的 Level 2)。

防御白盒攻击的核心思路是增加提取成本,例如使用安全芯片(SE)存储密钥、对权重进行加密存储、在运行时解密到 SRAM 中执行。但完全阻止提取是不现实的,因此需要配合水印实现事后追溯。

2.3.2 黑盒攻击:模型蒸馏与功能复制

黑盒攻击中,攻击者没有模型文件,但可以通过设备的正常接口(如 UART、BLE、Wi-Fi)发送输入并获取输出。通过收集大量输入-输出对,攻击者可以训练一个功能相似的替代模型。

判断方法:

  • 监控设备接口的请求频率:如果某个接口在短时间内收到大量异常查询(如每秒超过 10 次),可能存在蒸馏攻击。
  • 分析输入数据的分布:如果输入数据明显偏离正常使用场景(如随机噪声、边界值),可能是攻击者在探索模型边界。

防御黑盒攻击的常用手段包括:限制接口调用频率、增加查询成本(如要求签名认证)、在输出结果中加入微小噪声(使蒸馏模型精度下降)。

2.3.3 篡改攻击:后门注入与权重扰动

篡改攻击是指攻击者修改模型权重或结构,使模型在特定条件下产生错误行为。例如,在工业质检模型中植入后门,使带有特定标记的缺陷产品被判定为合格。

判断方法:

  1. 对模型进行完整性校验(如计算 SHA-256 哈希),与出厂值比对。
  2. 使用测试向量集验证模型精度:如果精度在未更新版本的情况下突然下降,可能存在篡改。
  3. 检查权重分布:如果某些层的权重出现异常极值(如超出正常范围 3 个标准差),可能是注入后门。

防御篡改攻击需要建立可信启动链(Secure Boot),确保模型在加载前经过签名验证。同时,可以在模型中嵌入自校验水印,定期检查关键权重是否被修改。

2.3.4 分发攻击:非法复制与未授权转售

分发攻击是指攻击者将合法获取的模型固件复制到其他设备上,或者将模型用于超出授权范围的场景。这种攻击在 IoT 设备中非常普遍,例如将智能家居设备的固件刷入兼容硬件。

判断方法:

  • 在设备端采集硬件唯一 ID(如 MCU 的 96 位 UID),与模型中的指纹信息比对。
  • 通过 OTA 服务器记录设备激活信息,检测同一模型是否在短时间内被大量新设备激活。

防御分发攻击的有效手段是设备绑定:在模型加密时绑定目标设备的公钥或唯一 ID,使模型只能在指定硬件上运行。

经验总结: 在实际项目中,不要试图“一次性防御所有攻击”。正确的做法是:先通过威胁建模确定最可能发生的攻击场景(通常是被动窃取和分发攻击),然后优先投入资源解决这些问题。对于高价值模型,可以叠加多层防护,但每增加一层防护都会带来额外的功耗和延迟开销。

2.4 案例拆解:智能摄像头模型被克隆事件

为了更直观地理解上述概念,我们分析一个典型的 TinyML 模型泄露案例。

背景与约束: 某公司推出一款基于 Cortex-M7 的智能摄像头,用于家庭安防,内置一个人脸检测模型(约 300KB,INT8 量化)。设备通过 OTA 升级固件。公司未启用 Flash 读保护(RDP),也未对模型进行加密。

初始现象: 上市三个月后,市场上出现大量外观相似、功能相同的廉价摄像头,经检测,其运行的人脸检测模型与该公司模型在相同输入下的输出完全一致(包括错误输出)。

分析判断过程:

  1. 初步怀疑是固件被提取。使用 ST-Link 连接目标设备的 SWD 接口,成功读取了 Flash 内容(因为 RDP 未启用)。
  2. 在固件中直接搜索到模型权重数组(以魔数 0x55 开头),确认模型以明文形式存储。
  3. 进一步分析发现,攻击者不仅复制了模型,还通过修改设备启动代码绕过了原有的激活验证逻辑。

实际操作步骤(防御方复盘):

  • 立即发布固件更新,启用 RDP Level 1(禁止 SWD 调试访问)。
  • 在模型权重中嵌入 32 位水印(利用量化噪声),并记录水印与设备批次号的映射关系。
  • 在 OTA 升级包中加入设备唯一 ID 绑定,使固件只能在指定设备上运行。

结果对比: 更新后,攻击者虽然仍能通过物理手段读取 Flash,但无法直接获得可用的模型(因为权重已加密)。即使通过侧信道攻击提取到部分权重,水印的存在也使得公司能够在法律上证明版权归属。

风险与代价: 启用 RDP 后,生产测试阶段无法通过 SWD 进行调试,需要改用边界扫描或预留测试点。模型加密增加了约 5ms 的启动解密时间,对于安防摄像头(启动时间要求 < 2s)可以接受。

复盘经验: 该案例的核心教训是“安全措施必须在产品定义阶段就纳入设计”。事后补救不仅成本高,而且可能影响用户体验。对于 TinyML 设备,建议在硬件设计时预留安全芯片接口,并在固件开发初期就集成水印和加密模块。

2.5 常见误区与总结复盘

在模型 IP 保护的实施过程中,开发者常陷入以下误区:

  • 误区一:认为“固件加密”等于“模型安全”。 固件加密可以防止静态提取,但无法防止运行时内存转储或侧信道攻击。
  • 误区二:水印影响模型精度。 实际上,设计良好的水印(如基于正则化约束的权重水印)对精度的影响可以控制在 0.1% 以内,在 TinyML 场景中几乎不可感知。
  • 误区三:只防外部攻击,忽视内部泄露。 代工厂、调试人员等内部角色往往拥有更高的权限,需要额外的访问审计和权限控制。
  • 误区四:追求“安全”。 在资源受限的设备上,安全是不存在的。合理的做法是将攻击成本提升到高于模型本身价值。