← 最新论文
💻 computer science

A Constant-Time Implementation Methodology for Activation Functions on Microcontrollers

本文提出并验证了一种针对 ARM Cortex-M4 微控制器的激活函数常数时间实现方法,该方法通过无分支选择、固定成本的帕德近似和周期对齐消除了时序侧信道漏洞,同时在多种函数类型上保持了高数值精度。

原作者: Andrii Tyvodar, Andreas Rechberger, Dirmanto Jap, Shivam Bhasin, Bernhard Jungk, Jakub Breier, Xiaolu Hou

发布于 2026-05-22
📖 1 分钟阅读☕ 轻松阅读

原作者: Andrii Tyvodar, Andreas Rechberger, Dirmanto Jap, Shivam Bhasin, Bernhard Jungk, Jakub Breier, Xiaolu Hou

原始论文采用 CC BY 4.0 许可(http://creativecommons.org/licenses/by/4.0/)。 这是对下方论文的AI生成解释。它不是由作者撰写或认可的。如需技术准确性,请参阅原始论文。 阅读完整免责声明

想象你有一个智能设备,比如健身追踪器或医疗传感器,它使用一个“大脑”(神经网络)来做出决策。这个大脑拥有特殊的开关,称为激活函数,它们决定如何处理信息。

问题在于,这些开关正在泄露秘密。就像一个人兴奋时脚会敲得更快、无聊时敲得更慢一样,这些软件开关根据所处理的数据不同,执行所需的时间也会有细微差别。一个躲在附近的神秘黑客可以监听这些“时间敲击”,从而推断出设备正在思考什么,甚至逆向工程出设备的“大脑”。

旧方法:掩盖噪声

此前,研究人员试图通过添加随机噪声来解决这个问题。想象一下,你试图通过大声喊出秘密代码来隐藏它,但随后在你的声音中加入随机的静电噪声,使无人能听出模式。论文将这种方法称为“去同步化”。

作者测试后发现,这种方法效果不佳。即使有静电噪声,如果黑客监听的时间足够长,并运用巧妙的统计技巧(如模板匹配),他们仍然可以找出模式。这就像试图用泥浆涂抹指纹来隐藏它;一位熟练的侦探仍然可以擦掉泥浆,找到指纹。

新方案:“恒定时间”工厂

作者提出了一种完全不同的方法:恒定时间实现

他们不是试图隐藏执行任务所需的时间,而是重新设计任务,使其无论输入是什么,都始终花费完全相同的时间。

想象一下工厂的装配线:

  • 旧方法:如果工人拿到一个小盒子,他们会在 2 秒内完成。如果拿到一个大盒子,则需要 5 秒。观察者只需看着时钟,就能判断盒子的大小。
  • 新方法:工厂被重新设计,使得无论盒子大小如何,每位工人都恰好花费 5 秒。
    • 如果盒子很小,工人在 2 秒内完成工作,然后静止等待 3 秒(进行“虚拟”工作)以填满时间。
    • 如果盒子很大,他们则工作满 5 秒。
    • 结果:对外部观察者而言,每一项任务都恰好花费 5 秒。时间秘密消失了。

他们是如何做到的(工具包)

为了在微型计算机芯片(微控制器)上构建这个“完美计时”的工厂,作者使用了四种主要工具:

  1. 无“如果/否则”分支:计算机通常会根据决策(例如“如果数字为负,执行 X;否则执行 Y")而变慢或加速。作者移除了这些决策。相反,他们计算两种可能性,并使用数学“掩码”瞬间选出正确的一项,无需停顿决策。
  2. “帕德”捷径:计算复杂曲线(如 Sigmoid 或 Tanh)既缓慢又耗时不一。作者用一种巧妙的、固定步长的数学捷径(有理近似)取代了这些繁重的计算,该捷径始终执行相同数量的步骤。
  3. 虚拟算术:对于最简单的开关(ReLU),它通常几乎不花时间,作者添加了“虚拟”数学步骤。这就像工人静止等待;它确保简单的开关花费与复杂开关相同的时间。
  4. 周期对齐:他们仔细计算计算机时钟的每一次“滴答”,以确保每个函数都在完全相同的时刻完成。

结果

该团队在 ARM Cortex-M4 芯片(嵌入式设备中常见)上测试了五种常见的激活函数(ReLU、Sigmoid、Tanh、GELU 和 Swish)。

  • 计时:在旧的未受保护版本中,时间变化剧烈。在新版本中,每一个输入都恰好花费108 个时钟周期(约 1.3 微秒)。时间曲线完全平坦。
  • 准确性:他们担心添加虚拟步骤和捷径可能会导致数学错误。然而,他们发现误差极小——小到对于实际目的而言,设备的“大脑”仍然能正确思考。
  • 速度:令人惊讶的是,对于复杂函数,新方法实际上比旧的标准方法更快,因为捷径更高效,尽管它们添加了虚拟步骤以匹配时间。

结论

该论文证明,你可以为小型设备构建一种“抗时间”的激活函数。通过强制每个计算花费完全相同的时间,你阻止了黑客通过监听设备的“心跳”来窃取秘密。这是一种实用且高效的方法,可以在不破坏设备性能的情况下提高嵌入式 AI 的安全性。

您所在领域的论文太多了?

获取与您研究关键词匹配的最新论文每日摘要——附技术摘要,使用您的语言。

试用 Digest →