用于实现后量子密码Saber算法的处理器制造技术

技术编号:32571950 阅读:13 留言:0更新日期:2022-03-09 16:59
本发明专利技术实施例涉及信息安全技术领域,并公开了一种用于实现后量子密码Saber算法的处理器,该处理器由硬件实现,并且包括:存储模块,用于存储数据和指令,其中处理器使用自定义的精简指令集,且存储模块中存储的指令为指令集中的指令;功能模块,用于执行后量子密码Saber算法涉及的操作,且功能模块包括以下子模块:第三代安全散列算法SHA3子模块、二进制采样子模块、多项式乘法器、加解密子模块、验证子模块和数据位宽转换子模块;以及控制模块,用于根据存储模块中存储的指令,控制功能模块中的各子模块执行对应的操作,以实现后量子密码Saber算法中的密钥生成、密钥封装和密钥解封中的至少一个。本发明专利技术实施例,能够在实现高效性的同时,节约资源开销。节约资源开销。节约资源开销。

【技术实现步骤摘要】
用于实现后量子密码Saber算法的处理器


[0001]本专利技术涉及信息安全
,尤其涉及一种用于实现后量子密码Saber算法的处理器。

技术介绍

[0002]在信息安全
中,为了保证信息的安全性,发送端在信息发送前需要对信息进行加密,接收端在接收到信息之后,需要使用相应的密钥对信息进行解密。
[0003]随着技术的发展,密码技术正在由传统的基于公钥的密码技术向PQC(Post

Quantum Cryptography,后量子密码)技术方向发展,所谓PQC技术是指可以抵抗量子计算机攻击的密码技术,因此也被称为“抗量子密码技术”。其中的“后”是指在大规模稳定的量子计算机出现后,现有的绝大多数公钥密码算法(诸如RSA、Diffie

Hellman、椭圆曲线等)将会被攻破,只有能抵抗这种攻击的密码算法才能够在进入量子计算时代之后存活。
[0004]在PQC技术中,后量子密码Saber算法是其中一种,其具有公钥长度短和易于实现等优点,该算法是由Jan

Pieter等人提出的基于MLWR(Machine Learning with Rounding)问题的密码学原语,其包含了公钥加密(Saber.PKE)和密钥封装(Saber.KEM)两种方案。其中,Saber.PKE是一种具有选择明文攻击下不可区分性(Indistinguishability under Chosen Plaintext Attack,IND

CPA)的公钥加密方案。而Saber.KEM是一种具有选择密文攻击下不可区分性(Indistinguishability under Chosen Ciphertext Attack,IND

CCA)的密钥交换机制。其中,Saber.PKE到Saber.KEM的转换通过Fujisaki

Okamoto变换即可完成。
[0005]在针对后量子密码Saber算法的研究中,如何提高后量子密码Saber算法的效率,即高效性,是当前的主要研究方向,即当前研究主要关注于高效性问题上。但是,当后量子密码Saber算法用硬件实现时,资源消耗也会成为一个重要问题,而现有对此则鲜有研究。

技术实现思路

[0006]有鉴于此,本专利技术的目的在于提供一种用于实现后量子密码Saber算法的处理器,能够在使用硬件实现后量子密码Saber算法的方案中,同时兼顾高效性和资源消耗的问题。
[0007]为了实现上述专利技术目的,本专利技术实施例提供了一种用于实现后量子密码Saber算法的处理器,所述处理器由硬件实现,所述处理器包括:存储模块,用于存储数据和指令,其中所述处理器使用自定义的精简指令集,且所述存储模块中存储的指令为所述指令集中的指令;功能模块,用于执行后量子密码Saber算法中涉及的操作,且所述功能模块包括以下子模块:第三代安全散列算法SHA3子模块、二进制采样子模块、多项式乘法器、加解密子模块、验证子模块和数据位宽转换子模块;以及控制模块,用于根据所述存储模块中存储的指令,控制所述功能模块中的各子模块执行对应的操作,以实现所述后量子密码Saber算法中的密钥生成、密钥封装和密钥解封中的至少一个。
[0008]在一种实施方式中,所述自定义的精简指令集中各指令的长度和格式均相同,且
每条指令包括:控制部分,用于指示欲启动的子模块及该子模块的工作模式;读地址部分,用于指示输入数据的存储地址;以及写地址部分,用于指示输出数据的存储地址。
[0009]在一种实施方式中,所述SHA3子模块和所述多项式乘法器均具有多个工作模式,所述控制部分包括:7位,其中所述7位中的其中2位用作所述SHA3子模块和所述多项式乘法器的启动标志位,剩余的5位用作剩余子模块的启动标志位和所述SHA3子模块和所述多项式乘法器的模式控制位。
[0010]在一种实施方式中,所述读地址部分包括:第一读地址部分,用于指示第一输入数据的存储地址;以及第二读地址部分,用于指示第二输入数据的存储地址。
[0011]在一种实施方式中,所述每条指令的长度均为37位,且所述控制部分由第0~6位实现,所述第一读地址部分由第7~16位实现,所述第二读地址部分由第17~26位实现,所述写地址部分由第27~36位实现。
[0012]在一种实施方式中,所述SHA3子模块仅支持实现SHA3

256函数、SHA3

512函数和SHAKE128函数。
[0013]在一种实施方式中,所述SHA3

256函数、SHA3

512函数和SHAKE128函数均基于轮函数而实现,且所述SHA3子模块采用展开系数为1,不插入流水线的方式来实现所述轮函数。
[0014]在一种实施方式中,所述指令集由以下17条指令构成:用于程序结束的指令;用于启动二进制采样子模块的指令;用于启动加密子模块的指令;用于启动解密子模块的指令;用于启动验证子模块的指令;用于启动数据位宽转换子模块的指令;用于启动多项式乘法器且指示执行一次A
T
·
s中的多项式矢量乘法的指令;用于启动多项式乘法器且指示执行一次A
·
s

中的多项式矢量乘法的指令;用于启动多项式乘法器且指示执行一次b
·
s中的多项式矢量乘法的指令;用于启动SHA3子模块且指示执行SHAKE128函数并输出256位消息的指令;用于启动SHA3子模块且指示执行SHAKE128函数并输出29925位消息的指令;用于启动SHA3子模块且指示执行SHAKE128函数并输出6144位消息的指令;用于启动SHA3子模块且指示执行SHA3

256函数并吸收8704位消息的指令;用于启动SHA3子模块且指示执行SHA3

256函数并吸收512位消息的指令;用于启动SHA3子模块且指示执行SHA3

256函数并吸收256位消息的指令;用于启动SHA3子模块且指示执行SHA3

256函数并吸收7936位消息的指令;以及用于启动SHA3子模块且指示执行SHA3

512函数的指令。
[0015]在一种实施方式中,所述存储模块包括:程序存储器,连接至所述处理器的指令修改接口,所述处理器透过所述指令修改接口接收修改的指令并保存至所述程序存储器中。
[0016]在一种实施方式中,所述存储模块包括:程序存储器和数据存储器;所述控制模块包括:指令读取单元,用于从所述程序存储器中读取指令;以及指令解析与总线管理单元,用于解析所述读取的指令,并基于解析的结果控制相应的子模块工作,并且控制仅当前工作的子模块能够使用所述数据存储器。
[0017]本专利技术的有益效果是:
[0018]本专利技术实施例的处理器,基于硬件而实现(硬件比软件更高效),因此天然具有高效性本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种用于实现后量子密码Saber算法的处理器,所述处理器由硬件实现,其特征在于,所述处理器包括:存储模块,用于存储数据和指令,其中所述处理器使用自定义的精简指令集,且所述存储模块中存储的指令为所述指令集中的指令;功能模块,用于执行后量子密码Saber算法涉及的操作,且所述功能模块包括以下子模块:第三代安全散列算法SHA3子模块、二进制采样子模块、多项式乘法器、加解密子模块、验证子模块和数据位宽转换子模块;以及控制模块,用于根据所述存储模块中存储的指令,控制所述功能模块中的各子模块执行对应的操作,以实现所述后量子密码Saber算法中的密钥生成、密钥封装和密钥解封中的至少一个。2.根据权利要求1所述的处理器,其特征在于,所述自定义的精简指令集中各指令的长度和格式均相同,且每条指令包括:控制部分,用于指示欲启动的子模块及该子模块的工作模式;读地址部分,用于指示输入数据的存储地址;以及写地址部分,用于指示输出数据的存储地址。3.根据权利要求2所述的处理器,其特征在于,所述SHA3子模块和所述多项式乘法器均具有多个工作模式,所述控制部分包括:7位,其中所述7位中的其中2位用作所述SHA3子模块和所述多项式乘法器的启动标志位,剩余的5位用作剩余子模块的启动标志位和所述SHA3子模块和所述多项式乘法器的模式控制位。4.根据权利要求2所述的处理器,其特征在于,所述读地址部分包括:第一读地址部分,用于指示第一输入数据的存储地址;以及第二读地址部分,用于指示第二输入数据的存储地址。5.根据权利要求4所述的处理器,其特征在于,所述每条指令的长度均为37位,且所述控制部分由第0~6位实现,所述第一读地址部分由第7~16位实现,所述第二读地址部分由第17~26位实现,所述写地址部分由第27~36位实现。6.根据权利要求1所述的处理器,其特征在于,所述SHA3子模块仅支持实现SHA3

256函数、SHA3

512函数和SHAKE128函数。7.根据权利要求6所述的处理器,其特征在于,所述SHA3

256函数、SHA3

512函数和SHAKE128函数均基于轮函数而实现,且所述SH...

【专利技术属性】
技术研发人员:刘冬生李翔胡昂李奥博杨朔陆家昊
申请(专利权)人:华中科技大学
类型:发明
国别省市:

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

1