该论文系统化了针对密码学实现中时序攻击的防御手段——恒定时间(Constant Time)编程模型。尽管恒定时间编程是抵御时序攻击的主要防线,但学术界和工业界对“恒定时间”的定义和模型理解存在差异。本文首先回顾并整理了恒定时间模型的历史演化,识别出模型所保护的安全属性与密码规范所假设的威胁模型之间存在长期被忽视的差距。作者进一步提炼了一套攻击方法论,用于发现源自密码原语边界之外(例如上层应用或密钥加载流程)的时序漏洞。利用该方法,作者定位了一个与私钥加载过程相关的规范级(specification-level)漏洞。该漏洞存在于OpenSSL和BoringSSL两个流行密码库中,并成功在实验中确认了信息泄露。一个反直觉的发现是:尽管BoringSSL采用了更严格的威胁模型,但其单次观测产生的信号强度反而比OpenSSL高出数个数量级。研究贡献包括:1) 对恒定时间模型进行系统化分类与演化分析;2) 提出可用于发现跨界时序漏洞的通用攻击方法论;3) 发现并验证了OpenSSL和BoringSSL中此前未知的时序泄露点。该论文适合密码库开发者、侧信道安全研究人员以及所有关注密码学实现安全性的工程师阅读。
💡 推荐理由: 该工作揭示了常量时间模型的理论假设与实际实现之间的鸿沟,并展示了一种系统化的方法来发现此前被忽视的时序漏洞,对提升密码库安全性具有重要参考价值。
🎯 建议动作: 研究跟进