买专利,只认龙图腾
首页 专利交易 科技果 科技人才 科技服务 商标交易 会员权益 IP管家助手 需求市场 关于龙图腾
 /  免费注册
到顶部 到底部
清空 搜索

【发明公布】面向Kyber的高性能拒绝采样硬件电路_宁波大学_202311270951.6 

申请/专利权人:宁波大学

申请日:2023-09-27

公开(公告)日:2024-01-05

公开(公告)号:CN117349211A

主分类号:G06F13/40

分类号:G06F13/40;G06F7/58

优先权:

专利状态码:在审-实质审查的生效

法律状态:2024.01.23#实质审查的生效;2024.01.05#公开

摘要:本发明公开了一种面向Kyber的拒绝采样硬件电路,包括总线宽度转换模块、四个拒绝采样核心采样模块和四个缓冲区,总线宽度转换器将每个数据处理周期接入的随机数进行均等划分为四个8位随机数一一对应输出至四个拒绝采样核心模块处,不需要采用复杂的结构来按周期分配和分割接入的随机数,四个拒绝采样核心模块利用基于二进制数的位权值特征设计的高效率比较器实现拒绝采样过程,在拒绝采样过程中利用随机数的再组合和二进制数的位权值特性,只需对三个有效随机数组合而成的随机数组中其中一个随机数进行拒绝判断,其余两个随机数直接接收;优点是既不会资源浪费随机数资源,采样时间短,采样效率高,且可以降低拒绝率,减少硬件开销。

主权项:1.一种面向Kyber的拒绝采样硬件电路,其特征在于包括总线宽度转换模块、四个拒绝采样核心采样模块和四个缓冲区,将四个拒绝采样核心采样模块分别称为拒绝采样核心采样模块1、拒绝采样核心采样模块2、拒绝采样核心采样模块3和拒绝采样核心采样模块4,将四个缓冲区分别称为缓冲区1、缓冲区2、缓冲区3和缓冲区4,所述的总线宽度转换模块分别与所述的拒绝采样核心采样模块1、所述的拒绝采样核心采样模块2、所述的拒绝采样核心采样模块3和所述的拒绝采样核心采样模块4连接,所述的拒绝采样核心采样模块1与所述的缓冲区1连接,所述的拒绝采样核心采样模块2与所述的缓冲区2连接,所述的拒绝采样核心采样模块3与所述的缓冲区3连接,所述的拒绝采样核心采样模块4与所述的缓冲区4连接,所述的总线宽度转换模块用于接入硬件实现的Kyber算法的随机数生成模块产生的随机数,所述的总线宽度转换模块每次接入32位二进制随机数,每接入一个32位二进制随机数,就进入一个数据处理周期,在每个数据处理周期,所述的总线宽度转换模块将当前接入的32位二进制随机数按顺序分为四个8位随机数一一对应输出至所述的拒绝采样核心模块1、所述的拒绝采样核心模块2、所述的拒绝采样核心模块3和所述的拒绝采样核心模块4处,完成一个数据处理周期,然后接入下一个32位二进制随机数,进入下一个数据处理周期,周而复始,直至拒绝采样工作完成,将所述的总线宽度转换模块当前所处数据处理周期记为t,所述的总线宽度转换模块在第t个数据处理周期接入的32位二进制随机数记为hash_out[31:0]t,得到四个8位随机数分别为hash_out[7:0]t、hash_out[15:8]t、hash_out[23:16]t以及hash_out[31:24]t,将hash_out[7:0]t记为rejin1t、hash_out[15:8]t记为rejin2t、hash_out[23:16]t记为rejin3t、hash_out[31:24]t记为rejin4t;其中,随机数rejin1t输出至所述的拒绝采样核心模块1,rejin2t输出至所述的拒绝采样核心模块2,rejin3t输出至所述的拒绝采样核心模块3,rejin4t输出至所述的拒绝采样核心模块4;当rejin1t输出至所述的拒绝采样核心模块1时,所述的拒绝采样核心模块1利用基于二进制数的位权值特征设计的高效率比较器对所述的随机数rejin1t进行判断,具体过程为:S1、将rejin1t拆分为高4bits数据和低4bits数据,高4bits数据记为rejin1t[7:4],低4bits数据记为rejin1t[3:0],然后进入步骤S2;S2、将rejin1t[7:4]和rejin1t[3:0]分别与4’b1101比较大小,如果rejin1t[7:4]和rejin1t[3:0]中至少一个大于4’b1101,则拒绝接受rejin1t,并输出低电平信号至所述的缓冲区1,控制所述的缓冲区1不从所述的拒绝采样核心模块1处采集数据,完成一次拒绝采样,然后在所述的总线宽度转换模块在第t+1个数据处理周期输出随机数rejin1t+1至所述的拒绝采样核心模块1时,所述的拒绝采样核心模块1再返回步骤S1开始进行下一次判断;如果rejin1t[7:4]和rejin1t[3:0]均小于4’b1101,则接受并保存rejin1t,然后进入步骤S3,此时rejin1t为经过拒绝判断而保存的随机数;S3、所述的拒绝采样核心模块1判断其处当前是否存在被接受并保存的三个随机数,如果不存在,则输出低电平信号至所述的缓冲区1,然后在所述的总线宽度转换模块在第t+1个数据处理周期输出随机数rejin1t+1时直接接受并保存随机数rejin1t+1后再返回步骤S3开始进行下一次判断,此时rejin1t+1为直接保存的随机数;如果存在被接受并保存的三个随机数,三个随机数中会存在一个经过拒绝判断而保存的随机数以及两个直接接受并保存的随机数,将该三个随机数中经过拒绝判断而保存的随机数称为rejin1t1,直接接受并保存两个随机数按照接受先后顺序分别称为rejin1t2和rejin1t3,然后将rejin1t1的高4bits随机数作为高位与rejin1t3拼接为随机数validout11t,将rejin1t1的低4bits随机数作为高位与rejin1t2拼接为随机数validout12t,将validout11t、validout12t以及高电平输出至所述的缓冲区1,然后清空其内被接受并保存的三个随机数,完成一次拒绝采样,并在所述的总线宽度转换模块下一次输出随机数至所述的拒绝采样核心模块1时,所述的拒绝采样核心模块1再返回步骤S1开始进行下一次判断;所述的缓冲区1在所述的拒绝采样核心模块1控制下进行工作,当所述的拒绝采样核心模块1输出低电平时,所述的缓冲区1不从所述的拒绝采样核心模块1处采集数据,当所述的拒绝采样核心模块1输出validout11t、validout12t以及高电平时,所述的缓冲区1采集validout11t和validout12t,并先将validout11t作为高位数据、validout12t作为低位数据进行拼接,然后在最高位前补充8位0,得到一个样本进行保存并输出,然后清空其内保存的样本,并统计其内当前已经保存过的样本总数量是否为256个,如果不是,则表明所述的拒绝采样核心模块1拒绝采样工作未完成,输出低电平给Kyber算法的随机数生成模块,使Kyber算法的随机数生成模块继续输出随机数至所述的总线宽度转换模块;如果是,则表明所述的拒绝采样核心模块1拒绝采样工作完成,输出高电平给Kyber算法的随机数生成模块,之后所述的拒绝采样核心模块1进入非工作状态;所述的拒绝采样核心采样模块2和所述的缓冲区2、所述的拒绝采样核心采样模块3和所述的缓冲区3、所述的拒绝采样核心采样模块4和所述的缓冲区4的工作过程均与所述的拒绝采样核心采样模块1和所述的缓冲区1的相同;当所述的缓冲区1、所述的缓冲区2、所述的缓冲区3和所述的缓冲区4都输出高电平给Kyber算法的随机数生成模块时,所述的拒绝采样硬件电路进入非工作状态。

全文数据:

权利要求:

百度查询: 宁波大学 面向Kyber的高性能拒绝采样硬件电路

免责声明
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。

相关技术
相关技术
相关技术
相关技术