← 最新论文
💻 computer science

Trojan-Resilient NTT: Protecting Against Control Flow and Timing Faults on Reconfigurable Platforms

本文提出了一种面向可重构平台的安全数论变换(NTT)架构,该架构在保持后量子密码实现中低面积与时间开销的同时,能够有效检测并纠正由硬件木马引发的控制流中断、非典型时序延迟以及软分析侧信道攻击(SASCA)。

原作者: Rourab Paul, Krishnendu Guha, Amlan Chakrabarti

发布于 2026-04-28
📖 1 分钟阅读☕ 轻松阅读

原作者: Rourab Paul, Krishnendu Guha, Amlan Chakrabarti

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

想象你正在运营一座高安全级别的银行金库(即NTT,数论变换)。这座金库是一种新型数字锁——后量子密码学(如 Kyber 系统所用)——的引擎室。它的职责是极快地执行极其复杂的数学运算,以保护你的数据免受未来超级计算机的威胁。

然而,坏人有两种主要方式可以闯入:

  1. “特洛伊木马”破坏者:一个微小的、隐藏在金库机械内部的硬件组件(硬件特洛伊木马)。它不直接窃取资金,而是通过干扰开关和杠杆(控制信号)来阻止金库正常工作、使其运行过慢,或强迫它打开错误的门。
  2. “窃听间谍”:一个通过观察金库开启所需时间或功耗来猜测密码的间谍(侧信道攻击)。

本文提出了一种名为抗特洛伊木马 NTT的全新、超安全版金库引擎。以下是其工作原理,使用简单的类比说明:

1. “双重检查”系统(控制流完整性)

想象金库有一位主要经理(控制单元),负责下达诸如“打开 A 门”或“开始计算”之类的指令。

  • 问题:破坏者可能潜入并篡改经理的指令,命令金库跳过步骤或按错误顺序运行。
  • 解决方案:作者构建了一位影子经理(一个轻量级的备用寄存器)。这位影子经理不执行任何实际工作,只是监视主要经理。
    • 如果主要经理说“打开 A 门”,影子经理会预期在同一时刻看到“打开 A 门”。
    • 如果主要经理突然说“打开 B 门”或陷入停滞,影子经理会立即发出红色警报:“嘿!指令与计划不符!”
    • 为何出色:影子经理与主要机械完全分离。即使破坏者攻陷了主要经理,由于影子经理的构建方式不同且位于不同位置,他们也无法轻易攻陷它。

2. “秒表”(时钟周期计数器)

想象金库处理一笔交易本应恰好耗时 10 秒。

  • 问题:破坏者可能试图通过卡住齿轮来减缓金库速度,使其耗时 15 秒。这种延迟可被用来窃取秘密,或直接导致系统崩溃。
  • 解决方案:金库内置了一个秒表(时钟周期计数器),它计算每一次时钟滴答。
    • 如果金库在 10 个滴答内完成,一切正常。
    • 如果耗时 11 个滴答(因为破坏者卡住了齿轮),秒表会大喊:“太慢了!出问题了!”
    • 这能捕捉任何试图延迟处理的行为,无论是意外还是蓄意攻击。

3. “魔法面具”(局部掩码)

想象金库正在处理一个秘密数字。外面的间谍正通过观察功率表,根据机器的工作强度来猜测这个数字。

  • 问题:间谍通过观察功耗模式中的规律,推断出秘密。
  • 解决方案:金库使用魔法面具。每次写入一个秘密数字时,它会先将其与一个随机的虚假数字混合。
    • 对间谍而言,功耗看起来像是随机噪声。由于秘密始终被一层“静电”掩盖,他们无法辨别真正的秘密。
    • 金库知道如何在最后移除面具以获得真实答案,但间谍看到的只有混乱。

4. “自愈”机制(自适应故障纠正)

这是最独特的部分。如果金库检测到问题(来自影子经理或秒表的红色警报),它不会直接关闭,而是尝试通过三个层级的“修复”来自我恢复:

  • 层级 1:“让我们再试一次。”
    如果错误只是微小的故障,金库会直接丢弃错误结果,并立即重新运行该特定步骤。这就像一名跑步者被小石子绊倒,起身后继续跑完这一圈,无需停顿。
  • 层级 2:“重启同一房间。”
    如果故障再次发生,金库会将自身的指令(比特流)重新加载到芯片上的完全相同位置。这就像电脑崩溃后重新启动同一程序以清除临时错误。
  • 层级 3:“搬到一个新房间。”
    如果问题在同一个位置持续发生,金库会意识到芯片的该特定区域可能已被破坏者“投毒”。它会获取一套全新的指令,并将整个操作迁移到芯片上完全不同的、干净的区域。
    • 智能之处:系统为芯片中的每个“房间”维护一个“风险评分”。如果某个房间有故障历史,系统会避开它;如果某个房间是干净的,系统会将工作发送过去。

结果

作者在真实芯片(FPGA)上使用 Kyber 加密标准测试了该系统。

  • 成功率:他们模拟了数千次攻击(如卡住齿轮或更改开关)。该系统检测到了**100%**的问题。
  • 成本:“影子经理”、“秒表”和“魔法面具”仅使金库体积略微增大(约增加 20% 的空间),并略微降低速度(极少量的能耗)。
  • 结论:他们证明,你可以建造一座不仅锁住大门,还能监视自己的守卫、计时自己的动作,并在当前房间被攻陷时迁移到新房间的金库,且这一切都不会导致破产。

简而言之,本文构建了一个具备自我意识、能够自愈的数学引擎,它拒绝被试图干扰其控制或计时的破坏者所欺骗。

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

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

试用 Digest →