中文

$2^t$-ary RSA 预计算中的重复计数泄露秘密指数

密码学与安全 2016-09-01 v1

摘要

本文提出了一种针对经典 RSA 数字签名(即不使用中国剩余定理的 RSA)中2t2^t-ary 模幂预计算的新型故障攻击——重复计数攻击(Double Counting Attack, DCA)。2t2^t-ary 方法是加速 RSA 签名过程最流行且广泛使用的算法,开发者可通过选择最优tt值实现最快的签名过程;例如,对于 1536 位经典 RSA 实现,t=6t=6为最优值。2t2^t-ary 方法需要预计算以生成消息的小指数幂。尽管预计算可能成为故障攻击的目标,但传统的故障攻击研究对此关注甚少。所提出的 DCA 利用指令跳过(instruction skip)技术在预计算中诱导故障,这相当于在汇编语言中用空操作(no operation)替换一条指令。本文还提出了一种实用的“位置检查器”工具,用于基于故障预计算的签名来确定秘密指数的2t2^t-ary 系数的位置。研究表明,DCA 对于某些广泛使用的参数是一种有效的攻击方法。对于采用262^6-ary 方法的 1536 位 RSA 实现,DCA 可利用位置检查器在短时间通过63(=261)63(=2^6-1)个故障签名重构整个秘密指数。对于较小的公钥指数(如 65537),DCA 过程可进一步加速。据我们所知,所提出的 DCA 是首个针对经典 RSA 预计算的故障攻击。

关键词

引用

@article{arxiv.1407.7598,
  title  = {Double Counting in $2^t$-ary RSA Precomputation Reveals the Secret Exponent},
  author = {Masahiro Kaminaga and Hideki Yoshikawa and Toshinori Suzuki},
  journal= {arXiv preprint arXiv:1407.7598},
  year   = {2016}
}