针对后量子密码Kyber算法在AVX2上的高吞吐实现方法技术

技术编号:43136940 阅读:41 留言:0更新日期:2024-10-29 17:41
本发明专利技术公开了一种针对后量子密码Kyber算法在AVX2上的高吞吐实现方法,其特征在于,设计n路多项式实现多路Kyber计算;每路多项式包括256个系数;本发明专利技术充分利用了AVX2的并行能力,减少了置换操作,有效加速与SHA3相关的计算,提高了整体性能和吞吐量。在性能方面,与AVX2上Kyber的单路实现相比,本发明专利技术提出的AVX2上的16路Kyber实现中的密钥生成、封装和解封装分别实现了36.0%,54.6%和25.9%的速度提升。本发明专利技术非常适合需要同时处理大量加密计算的服务器环境中的应用程序。

【技术实现步骤摘要】

本专利技术属于后量子密码,尤其涉及一种针对后量子密码kyber算法在avx2上的高吞吐实现方法。


技术介绍

1、随着量子计算机的发展,目前的主流公钥密码系统都将变得不再安全。为了应对量子时代潜在的量子攻击,现有技术启动了后量子密码(pqc)的标准化项目,来征集、评估和标准化能够抵抗潜在量子攻击的后量子算法。目前nist已经完成了第三轮筛选,选择了四个后量子候选方案进行最终标准化,其中kyber是唯一一个密钥封装算法(kem)。kyber是基于使用改进的fujisaki-okamoto变换构建在ind-cpa安全的公钥加密之上的,其安全性来源于一个基于格的困难问题,称为模学习错误(mlwe)问题。kyber是在多项式环rq=zq[x]/(xn+1)上进行计算的,其中维度n=256,模数q=3329,支持7层不完整ntt变换。

2、使用单指令多数据(simd)指令的kyber多路实现不仅是一个很少被探索的课题,更是一个有效的优化方法。intel的avx2指令集是x86-64的扩展,旨在通过扩展寄存器和高级的simd指令来提供高性能。现有使用avx2本文档来自技高网...

【技术保护点】

1.针对后量子密码Kyber算法在AVX2上的高吞吐实现方法,其特征在于,设计n路多项式实现多路Kyber计算;每路多项式包括256个系数。

2.根据权利要求1所述的针对后量子密码Kyber算法在AVX2上的高吞吐实现方法,其特征在于,n=16,则16路多项式的原始形式为:[a0,b0,…,p0,a1,b1,…,p1,…,p255]。

3.根据权利要求2所述的针对后量子密码Kyber算法在AVX2上的高吞吐实现方法,其特征在于,当在Kyber计算进行NTT或者INTT计算时,需要对n路多项式进行格式转换,具体为:

4.根据权利要求3所述的针对后量子密码...

【技术特征摘要】

1.针对后量子密码kyber算法在avx2上的高吞吐实现方法,其特征在于,设计n路多项式实现多路kyber计算;每路多项式包括256个系数。

2.根据权利要求1所述的针对后量子密码kyber算法在avx2上的高吞吐实现方法,其特征在于,n=16,则16路多项式的原始形式为:[a0,b0,…,p0,a1,b1,…,p1,…,p255]。

3.根据权利要求2所述的针对后量子密码kyber算法在avx2上的高吞吐实现方法,其特征在于,当在kyber计算进行ntt或者intt计算时,需要对n路多项式进行格式转换,具体为:

4.根据权利要求3所述的针对后量子密码kyber算法在avx2上的高吞吐实现方法,其特征在于,所述系数重排函数具体...

【专利技术属性】
技术研发人员:于璇周璐
申请(专利权)人:南京航空航天大学
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1