Skip to content

SILK:模型权重流的使用前完整性保护 ​

摘要 ​

根信任(Root of Trust, RoT)在模型加载时验证映像,并不能保证计算单元最终使用同一组字节。权重在验证后仍要经过 DRAM、DMA、互连、控制器和预取缓存;其中任一环节被篡改,都可能在早期度量保持不变时改变实际推理。SILK 将校验点移到最终计算前边界,用量化权重最低有效位承载密钥化完整性位,并以链式依赖和提交门禁阻止未验证权重进入计算。

作者在 12 个模型/数据集/精度设置的功能攻击套件中检测到全部 114 个实际修改了受保护整数权重字节的试验;另有 6 个 INT4 试验量化后字节未变化,不计作流修改。INT8 条件下,所测 CNN 相对 FP32 的最大 Top-1 准确率差为 0.76 个百分点,八个 LLM 相对普通 INT8 基线的困惑度增量最多 0.17;Xilinx ZCU102 参考实现达到 756 MB/s,面积成本为 Caliptra 2.x RoT 等效面积的 1.00%,采用每次尝试 (2^{-128}) 伪造上界的配置仍达到 678 MB/s、面积为 6.15%。

核心创新与差异 ​

原研究贡献是明确“加载时认证—实际使用”之间的权重流 TOCTOU 缺口,并提出无需独立标签流的最终边界校验。SILK 将权重值、位置与前序字节纳入密钥化链,结合提交门禁、回滚保护和证明报告。

本站分析认为,首个失效控制位于主机到加速器的数据路径完整性,而非模型供应链签名本身。签名可以证明磁盘或加载映像,SILK 验证的是计算单元实际消费的有序权重流;主要修复责任在加速器、内存与集群运行平台,因此保留在训练计算与集群隔离,而不归入模型制品供应链或一般推理服务安全。两类控制必须组合。

威胁模型与攻击链 ​

攻击者能在模型通过加载验证后影响 DMA 端点、控制器、DRAM 或传输路径,或通过 Rowhammer、故障注入改变权重。RoT、SILK 密钥和最终检查器保持可信。

  1. RoT 对静态模型映像完成认证并给出成功结果。
  2. 权重进入 DRAM、DMA、互连和片上预取路径。
  3. 攻击者在早期验证点之后修改、重排、删除或插入权重字节。
  4. 传统系统仍沿用旧的认证结论,计算单元消费被修改权重。
  5. SILK 在最终使用前重算链式检查;失败时提交门禁阻断计算。

攻击方法与复现材料 ​

以下为本站依据论文机制重构的本地仿真夹具,不含物理故障参数:

text
stream = load_authenticated_fixture()
tampered = mutate_one_byte_after_load(stream, test_offset=FIXED_OFFSET)
verdict = silk_checker.verify_before_commit(tampered)
assert verdict == REJECT
assert compute_engine.committed_bytes == 0

测试应分别覆盖值修改、顺序变更、截断与重放,并记录校验窗口、提交状态和失败定位。不得把“加载摘要正确”作为最终通过条件。

实验设计与实际过程 ​

以下均为作者实验,本站未独立复现软件结果或 FPGA 实现。研究覆盖 CNN 和八个 LLM,比较 INT8、INT4、MXFP4 的完整性位密度与质量损失;攻击集包括字节损坏、结构性流修改和了解构造的自适应尝试。主要安全实验使用 (M=1,N=16,W=64) 的全覆盖配置。硬件评估在 Xilinx ZCU102 上将 Caliptra RoT 固件、SILK 与神经网络加速器集成。

作者还用说话人验证案例展示单字节后测量修改:边界冒名者越过接受阈值,而总体等错误率只变化 0.1 个百分点,说明只看总体精度可能漏掉定向完整性破坏。

关键结果与实际影响 ​

  • 功能攻击套件的 120 个试验中,114 个实际改变了受保护整数权重字节,均被检测;其余 6 个 INT4 试验量化回原值,不属于流修改。
  • 单字节 Monte Carlo 实验在 (N=16) 时观察到 8,000,000 次尝试中的 54 次漏检((6.8\times10^{-6})),接近理想伪随机函数模型的 (2^{-17}=7.6\times10^{-6});其他低概率配置在 400,000 次试验中未观察到绕过,论文依赖分析界而未把“零次观察”写成零风险。
  • INT8 配置下,所测 CNN 的最大质量损失为 0.76 个百分点,八个 LLM 的最大困惑度变化为 0.17。
  • 参考硬件在低面积配置下持续 756 MB/s;更保守的 (2^{-128}) 每次尝试伪造界配置持续 678 MB/s。
  • INT4 与 MXFP4 需要通过检查稀疏度权衡安全和质量,不能继承 INT8 的同等结论。

该缺口会使远程证明和启动度量出现“验证的是 A,执行的是 B”。结果证明一种实现路径可行,但不表示所有加速器数据路径都已得到保护。

防护措施与验证方法 ​

  • 将证明对象从静态模型摘要扩展到最终使用前的有序权重流。
  • 在计算提交前失败关闭,并把校验失败、偏移、序列号和模型身份写入审计日志。
  • 为密钥、模型版本和流新鲜度建立 RoT 绑定,测试旧流重放与跨模型替换。
  • 对 DRAM、DMA、互连、缓存和预取分别做故障注入,确认不存在校验后的旁路。
  • 同时报告检测率、伪造上界、模型质量、吞吐、面积和额外元数据成本。

局限与待验证问题 ​

证据等级为中等。安全界依赖伪随机函数和受保护密钥等前提;最低有效位复用会改变量化权重,低位宽格式的质量—安全权衡更明显。实验基于 FPGA 参考实现,尚未覆盖量产 GPU/NPU 的封闭数据路径、动态权重交换或大规模并行部署。

参考链接 ​