【技术实现步骤摘要】
一种基于后量子数字签名的MDC
‑
NTT架构
[0001]本专利技术属于硬件安全
,具体地,涉及了一种基于后量子数字签名的MDC
‑
NTT架构。
技术介绍
[0002]随着科学技术的发展,信息在传输过程中的安全受到了越来越大的威胁。当今信息安全领域广泛使用的公钥密码加密方案主要是基于难以求解的数学难题所构造的,例如,李维斯特
‑
萨尔曼
‑
阿德曼算法(Rivest
‑ꢀ
Shamir
‑
Adleman,RSA)是基于大整数分解难题,Diffie
‑
Hellman和ElGamal是基于离散对数问题,椭圆曲线密码(Elliptic Curve Cryptography,ECC)是基于椭圆曲线离散对数问题。在经典的计算机架构下,这些加密技术所依赖的底层数学问题是足够困难而无法在有效时间内求解的。然而,随着量子计算机技术的不断发展,这些非多项式时间复杂度问题很容易受到量子计算机的攻击。其中,舒尔算法(Sho ...
【技术保护点】
【技术特征摘要】
1.一种基于后量子数字签名的MDC
‑
NTT架构,其特征在于,包括:随机数生成模块、采样模块、第一多项式乘法模块、第二多项式乘法模块、计算模块和数据存储模块,所述随机数生成模块的输出端与采样模块的输入端连接,所述采样模块的输出端通过数据选择单元与数据存储模块的输入端连接,所述采样模块的输出端还与stream Out连接;所述数据存储模块的输出端通过数据选择单元与第一多项式乘法模块的输入端连接连接,所述第一多项式乘法模块的输出端与计算模块连接,所述计算模块分别与stream Out、数据存储单元的输入端连接,所述数据存储单元通过数据选择单元与第二多项式乘法模块连接。2.根据权利要求1所述的一种基于后量子数字签名的MDC
‑
NTT架构,其特征在于,所述随机数生成模块包括:第一随机数生成单元Keccak0、第二随机数生成单元Keccak1、第三随机数生成单元Keccak2,所述第一随机数生成单元Keccak0的输入端、第三随机数生成单元Keccak2的输入端均与stream In连接;所述第一随机数生成单元Keccak0的输出端、第二随机数生成单元Keccak1的输出端、第三随机数生成单元Keccak2的输出端分别与采样模块连接。3.根据权利要求2所述的一种基于后量子数字签名的MDC
‑
NTT架构,其特征在于,所述采样模块包括:第一采样单元、第二采样单元、第三采样单元、第四采样单元,所述第一采样单元的输入端分别与第一随机数生成单元Keccak0的输出端、stream Out连接,所述第二采样单元的输入端与第二随机数生成单元Keccak1的输出端连接,所述第三采样单元的输入端、第四采样单元的输入端均与第三随机数生成单元Keccak2的输出端连接;所述第一采样单元的输出端、第二采样单元的输出端均通过第三数据选择单元与数据存储模块连接,所述第三采样单元的输出端、第四采样单元的输出端均通过第四数据选择单元与数据存储模块连接。4.根据权利要求3所述的一种基于后量子数字签名的MDC
‑
NTT架构,其特征在于,所述第一采样单元、第二采样单元采用均匀分布采样,第三采样单元、第四采样单元采用二项式采样。5.根据权利要求3所述的一种基于后量子数字签名的MDC
‑
NTT架构,其特征在于,所述数据存储模块包括:第一数据存储单元RAM0、第二数据存储单元RAM1、第三数据存储单元RAM2、第四数据存储单元RAM3、第五数据存储单元RAM4、第六数据存储单元RAM5、第七数据存储单元RAM6,所述第一数据存储单元RAM0的输入端通过第三数据选择单元分别与第一采样单元的输出端、第二采样单元的输出端、计算模块连接,所述第一数据存储单元RAM0的输出端通过第十数据处理单元与第一多项式乘法模块的输入端连接;所述第二数据存储单元RAM1的输入端通过第四数据选择单元分别与第三采样单元的输出端、第四采样单元的输出端、第一多项式乘法模块连接;所述第二数据存储单元RAM1的输出端通过第十数据处理单元与第一多项式乘法模块的输入端连接;所述第三数据存储单元RAM2设置于第一多项式乘法模块中,所述第四数据存储单元RAM3的输入端、第六数据存储单元RAM5的输入端、第七数据存储单元RAM6的输入端分别与第二多项式乘法模块的输出端、计算模块连接,所述第四数据存储单元RAM3的输出端、第六数据存储单元RAM5的输出端、第七数据存储单元RAM6的输出端均通过第九数据选择单元与第二多项式乘法模块的输入端连接;所述第五数据存储单元RAM4的输入端与计算模块连接,所述第五数据存储单元RAM4的输出端通过第九数据选择单元与第二多项式乘法模块连接,且所述第五数据存储单元RAM4的输出端与计算模块连
接。6.根据权利要求5所述的一种基于后量子数字签名的MDC
‑
NTT架构,其特征在于,所述第一多项式乘法模块包括:第一移位寄存器FIFO、第二移位寄存器FIFO、第一MDC
‑
NTT乘法器,所述第一移位寄存器FIFO的输入端通过第十数据选择单元分别与第一数据存储单元RAM0的输出端、第二数据存储单元RAM1的输出端、计算模块连接,所述第一移位寄存器FIFO的输出端与第一MDC
‑
NTT乘法器的输入端连接,所述第一MDC
‑
NTT乘法器的输出端与第二移位寄存器FIFO的输入端连接,且所述第一MDC
‑
NTT乘法器的输出端通过第四数据选择单元与第二输出存储单元RAM1的输入端连接,所述第二移位寄存器FIFO的输出端与第三数据存储单元RAM2的输入端连接,所述第三数据存储单元RAM2的输出端与计算模块连接。7.根据权利要求6所述的一种基于后量子数字签名的MDC
‑
NTT架构,其特征在于,所述计算模块包括:分解模块Decomposer、生成提示模块MakeHint、使用提示模块UseHint、编码模块Encoder和解码模块Decoder,所述分解模块Decomposer的输入端与第三数据存储单元RAM2的输出端连接,所述分解模块Decomposer的输出端通过第十数据选择单元与第一移位寄存器FIFO的输入端连接,且所述分解模块Decomposer的输出端通过第五数据选择单元与编码模块Encoder的输入端连接,所述分解模块Decomposer的输出端还与使用提示模块UseHint的输入端、第五数据存储单元RAM4的输入端连接;所述第五数据存储单元RAM4的输出端与生成提示模块MakeHint的输入端连接,所述生成提示模块MakeHint还通过第三数据选择单元与第一数据存储单元RAM0连接,且所述第五数据存储单元RAM4的输出端通过第九数据选择单元与第二多项式乘法模块连接;所述生成提示模块Make...
【专利技术属性】
技术研发人员:崔益军,徐天宇,郭术明,李梦雪,刘伟强,王成华,
申请(专利权)人:南京航空航天大学,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。