中文

Sapphire:一种用于后量子格基协议的可配置密码处理器

密码学与安全 2019-10-28 v2 硬件体系结构

摘要

当大规模量子计算机建成时,RSA和椭圆曲线密码学等公钥密码协议将因Shor算法而变得不安全。密码学家正在研究抗量子算法,而格基密码学已成为主要候选方案。然而,这些算法的高计算复杂度使得在低功耗嵌入式设备上实现格基协议具有挑战性。为应对这一挑战,我们提出了Sapphire——一款参数可配置的格密码处理器。基于SHA-3的伪随机数生成器(PRNG)实现的高效采样,提供了两个数量级的能量节省;提出了一种基于单端口RAM的数论变换存储架构,节省了124k门的面积;而一个低功耗模算术单元则加速了多项式计算。我们的测试芯片采用TSMC 40nm低功耗CMOS工艺制造,Sapphire密码核心占据0.28 mm²面积,包含106k逻辑门和40.25 KB SRAM。Sapphire可通过自定义指令编程进行多项式算术和采样,并与一个低功耗RISC-V微处理器耦合,以演示NIST第二轮基于格的CCA安全密钥封装和签名协议Frodo、NewHope、qTESLA、CRYSTALS-Kyber和CRYSTALS-Dilithium,与最先进的硬件实现相比,性能和能效提升高达一个数量级。Sapphire的所有关键构建模块都是恒定时间的,并能抵御时序和简单功耗分析侧信道攻击。我们还讨论了如何在不更改硬件的情况下,在Sapphire核心上实现基于掩码的差分功耗分析(DPA)对策。

关键词

引用

@article{arxiv.1910.07557,
  title  = {Sapphire: A Configurable Crypto-Processor for Post-Quantum Lattice-based Protocols},
  author = {Utsav Banerjee and Tenzin S. Ukyab and Anantha P. Chandrakasan},
  journal= {arXiv preprint arXiv:1910.07557},
  year   = {2019}
}