基于量子随机数的ID生成方法及装置与流程

未命名 09-21 阅读:76 评论:0

基于量子随机数的id生成方法及装置
技术领域
1.本发明属于量子通信技术领域,更具体地,本发明涉及一种基于量子随机数的id生成方法及装置。


背景技术:

2.量子随机数发生器可基于真空涨落、放大自发辐射、量子隧穿效应等量子过程生成量子随机数,生成速率可达7gbps以上。量子随机数具备量子内禀的真随机特性,具有良好的不可预测性、不可重复性和无偏性等特征。量子随机数发生器可广泛应用于信息安全、金融、政务、博弈、科研等领域,为客户提供具有真随机特性的量子随机数。
3.信息系统,特别是分布式数据库系统,会有大量的id生成服务需求。信息系统会不停的产生或记录事件,比如消息、表单记录等等,并且每个事件或记录都需要唯一id,从而保障系统处理每个事件或记录时不会产生重复。数据库除了将生成的id作为主键外,还可以作为数据切片id用于分布式数据库的设计。目前,在信息系统在id生成方法基本上采用软件算法。生成随机数通常采用伪随机数生成算法,生成id通常包括自增id、uuid和snowflake算法等。但是随着数据量急速增长、分布式的发展需求等,生成随机数或生成id在随机性、效率、性能等方面都提出了更多更高的要求。采用自增id和snowflake算法产生的id不具有随机性,uuid算法通常采用伪随机数生成算法,虽然生成的id具有较好的随机性,但是占用了较多的系统计算资源,生成的速率偏低。


技术实现要素:

4.本发明提供一种基于量子随机数的id生成方法,旨在改善上述至少一个问题。
5.本发明是这样实现的,一种基于量子随机数的id生成方法,所述方法包括如下步骤:步骤1:配置量子随机数生成参数,包括:位宽n、数据总数量t;步骤2:量子随机数发生器基于量子随机数生成参数生成量子随机参数,将量子随机参数作为候选量子随机id;步骤3:检测候选量子随机id是否与量子随机id重复,若检测结果为是,则丢弃重复的候选量子随机id,若检测结果为否,则将候选量子随机id作为量子随机id。
6.进一步的,基于哈希算法来检测候选量子随机id是否与量子随机id重复。
7.进一步的,基于哈希算法来的候选量子随机id重复性检测过程具体如下:随机数发生器产生位宽为n的候选量子随机id;取候选量子随机id的前n比特数据为哈希index值,候选量子随机id的剩余(n-n)比特数据通过哈希函数运算得到哈希key值;候选量子随机id的哈希index值是否存在于量子随机id,若不存在,则对应候选量子随机id与量子随机id不重复,若存在,则检测相同哈希index值的哈希key值是否相同,若相同,则认定对应候选量子随机id与量子随机id重复,若不相同,则对应候选量子随机id与量子随机id不重复。
8.进一步的,哈希key值的获取方法具体如下:若候选量子随机id的剩余(n-n)比特数据《=16,将剩余(n-n)比特数据为哈希key值;若候选量子随机id的剩余(n-n)比特数据》16,对剩余(n-n)比特数据进行异或运算得到16比特的哈希key值。
9.进一步的,在步骤s3之后还包括:在将候选量子随机id作为量子随机id后,更新id哈希表,将量子随机id的哈希index值添加至id哈希表,将哈希key放入id哈希表对应的哈希桶中;其中,id哈希前表用保存历史量子随机id的index值,id哈希表用于保存近期量子随机id的index值。
10.进一步的,在id哈希表的数据总量t大于等于t时,清空id哈希前表中的历史量子随机id的哈希值, 将id哈希表中的量子随机id的哈希值迁移至id哈希前表。
11.进一步的,基于id哈希表和id哈希前表的候选量子随机id的重复性检测方法具体如下:检测候选量子随机id是否与id哈希表、id哈希前表中的量子随机id重复,若存在重复,则丢弃该候选量子随机id,若不存在重复,则候选量子随机id与量子随机id不重复。
12.本发明是这样实现的,一种基于量子随机数的id生成装置,所述装置包括:参数配置单元,输出端与随机数发生器通讯的输入端连接,随机数发生器的输出端与id生成单元连接,其中:参数配置单元用于配置子随机数发生器的量子随机数生成参数,包括:随机数位宽n、数据总数量t,将量子随机数生成参数发送至量子随机数发生器;量子随机数发生器基于量子随机数生成参数生成量子随机参数,将量子随机参数作为候选量子随机id,发送至id生成单元;id生成单元检测候选量子随机id是否与量子随机id重复,若检测结果为是,则丢弃重复的候选量子随机id,若检测结果为否,则将候选量子随机id作为量子随机id。
13.进一步的,id生成单元包括:哈希index值生成模块及哈希key值生成模块及重复性检测模块;哈希index值生成模块取候选量子随机id的前n比特数据为哈希index值;哈希key值生成模块取候选量子随机id的剩余(n-n)比特数据通过哈希函数运算得到哈希key值;重复性检测模块检测候选量子随机id的哈希index值是否存在于已有的量子随机id中,若不存在,则对应候选量子随机id与已有的量子随机id不重复,若存在,则检测相同哈希index值的哈希key值是否相同,若相同,则认定对应候选量子随机id与已有量子随机id重复,若不相同,则对应候选量子随机id与已有量子随机id不重复。
14.进一步的,重复性检测模块包括:存储子模块,用于存储id哈希表、id哈希前表以及id哈希表、id哈希前表对应的哈希桶,id哈希前表用保存历史量子随机id的index值,id哈希表用于保存近期量子随机id的index值,哈希桶用于存储id哈希表及id哈希前表中量子随机id的哈希key值;重复性检测子模块检测候选量子随机id的哈希index值是否于id哈希表、id哈希前表中,若均不存在,则候选量子随机id与量子随机id不重复,若存在,则基于哈希index值
检测对应哈希桶内是否存在候选量子随机id的哈希key,若存在,则候选量子随机id与量子随机id重复,若不存在,则候选量子随机id与量子随机id不重复。
15.本发明基于量子随机数发生器产生的量子随机数,结合去重算法提供高速id生成服务,生成的id具有id全局唯一、量子随机性、生成速率快、资源占用低、id位宽可配置等优点,能适应大数据、分布式信息系统对id生成的需求。
附图说明
16.图1为本发明实施例提供的基于量子随机数的id生成方法流程图;图2为本发明实施例提供的基于量子随机数的id生成装置的结构示意图。
具体实施方式
17.下面对照附图,通过对实施例的描述,对本发明的具体实施方式作进一步详细的说明,以帮助本领域的技术人员对本发明的发明构思、技术方案有更完整、准确和深入的理解。
18.图1为本发明实施例提供的基于量子随机数的id生成方法流程图,该方法包括如下步骤:步骤1:配置量子随机数生成参数,包括:位宽n、数据总数量t;步骤2:量子随机数发生器基于量子随机数生成参数生成量子随机参数,将量子随机参数作为候选量子随机id;步骤3:检测候选量子随机id是否与量子随机id重复,若检测结果为是,则丢弃重复的候选量子随机id,若检测结果为否,则将候选量子随机id作为量子随机id。
19.在本发明实施例中,基于哈希算法进行候选量子随机id的重复性检测,其检测过程具体如下:随机数发生器产生位宽为n的候选量子随机id,取候选量子随机id的前n比特数据为哈希index值,对候选量子随机id的剩余(n-n)比特数据通过哈希函数运算得到哈希key值;候选量子随机id的哈希index值是否存在于量子随机id,若不存在,则对应候选量子随机id与量子随机id不重复,若存在,则检测相同哈希index值的哈希key值是否相同,若相同,则认定对应候选量子随机id与量子随机id重复,若不相同,则对应候选量子随机id与量子随机id不重复。
20.在本发明实施例中,若候选量子随机id的剩余(n-n)比特数据《=16,将剩余(n-n)比特数据为哈希key值,若候选量子随机id的剩余(n-n)比特数据》16,对剩余(n-n)比特数据进行异或运算得到16比特的哈希key值。
21.为了更为快速的完成候选量子随机id的查重,本发明设置id哈希表和id哈希前表,定义id哈希表、id哈希前表的大小设置为2^n(2的n次方),其中n《n,id哈希前表用保存历史量子随机id的index值,id哈希表用于保存近期量子随机id的index值,id哈希表及id哈希前表中量子随机id的哈希key值存储于各自的哈希桶中,在将候选量子随机id作为量子随机id后,更新id哈希表,将量子随机id的哈希index值添加至id哈希表,将哈希key值放入id哈希表对应的哈希桶中。在id哈希表的数据总量t大于等于t时,清空id哈希前表中的
历史量子随机id的哈希值, 将id哈希表中的量子随机id的哈希值迁移至id哈希前表,基于id哈希表和id哈希前表的候选量子随机id的重复性检测方法具体如下:检测候选量子随机id是否与id哈希表、id哈希前表中的量子随机id重复,若存在重复,则丢弃该候选量子随机id,若不存在重复,则候选量子随机id与量子随机id不重复。其中,候选量子随机id与id哈希前表的量子随机id重复性检测方法具体如下:检测候选量子随机id的哈希index值是否存在于id哈希前表内,若不存在,则认定对应候选量子随机id与id哈希前表内的量子随机id不重复,若存在,则基于哈希index值检测id哈希前表的哈希桶内是否存在候选量子随机id的哈希key值,若存在,则认定对应候选量子随机id与id哈希前表内的量子随机id重复,若不存在,则对应候选量子随机id与id哈希前表内的量子随机id不重复。
22.候选量子随机id与id哈希表的量子随机id重复性检测方法具体如下:检测候选量子随机id的哈希index值是否存在于id哈希表内,若不存在,则认定对应候选量子随机id与id哈希表内的量子随机id不重复,若存在,则基于哈希index值检测id哈希表的哈希桶内是否存在候选量子随机id的哈希key值,若存在,则认定对应候选量子随机id与id哈希表内的量子随机id重复,若不存在,则对应候选量子随机id与id哈希表内的量子随机id不重复。
23.图2为本发明实施例提供的基于量子随机数的id生成装置的结构示意图,为了便于说明,仅示出与本发明实施例相关的部分,该装置包括:参数配置单元,输出端与量子随机数发生器通讯的输入端连接,量子随机数发生器的输出端与id生成单元连接;其中,参数配置单元用于配置子随机数发生器的量子随机数生成参数,包括:随机数位宽n、数据总数量t,将量子随机数生成参数发送至量子随机数发生器;量子随机数发生器基于量子随机数生成参数生成量子随机参数,将量子随机参数作为候选量子随机id,发送至id生成单元;id生成单元检测候选量子随机id是否与量子随机id重复,若检测结果为是,则丢弃重复的候选量子随机id,若检测结果为否,则将候选量子随机id作为量子随机id。
24.在本发明实施例中,id生成单元包括哈希index值生成模块及哈希key值生成模块及重复性检测模块;哈希index值生成模块取候选量子随机id的前n比特数据为哈希index值;哈希key值生成模块取候选量子随机id的剩余(n-n)比特数据通过哈希函数运算得到哈希key值;重复性检测模块检测候选量子随机id的哈希index值是否存在于已有的量子随机id中,若不存在,则对应候选量子随机id与已有的量子随机id不重复,若存在,则检测相同哈希index值的哈希key值是否相同,若相同,则认定对应候选量子随机id与已有量子随机id重复,若不相同,则对应候选量子随机id与已有量子随机id不重复。
25.若候选量子随机id的剩余(n-n)比特数据《=16,哈希key值生成模块将剩余(n-n)比特数据为哈希key值,若候选量子随机id的剩余(n-n)比特数据》16,哈希key值生成模块对剩余(n-n)比特数据进行异或运算得到16比特的哈希key值。
26.在本发明实施例中,重复性检测模块包括:存储子模块,用于存储id哈希表、id哈希前表以及id哈希表、id哈希前表对应的哈希桶,id哈希前表用保存历史量子随机id的index值,id哈希表用于保存近期量子随机id的index值,哈希桶用于存储id哈希表及id哈希前表中量子随机id的哈希key值;
重复性检测子模块检测候选量子随机id的哈希index值是否于id哈希表、id哈希前表中,若均不存在,则候选量子随机id与量子随机id不重复,若存在,则基于哈希index值检测对应哈希桶内是否存在候选量子随机id的哈希key值,若存在,则候选量子随机id与量子随机id重复,若不存在,则候选量子随机id与量子随机id不重复。
27.在本发明实施例中,重复性检测模块还包括:在将候选量子随机id作为量子随机id后,更新子模块更新id哈希表,将量子随机id的哈希index值添加至id哈希表,将哈希key放入id哈希表对应的哈希桶中。
28.在id哈希表的数据总量t大于等于t时,更新子模块清空id哈希前表中的历史量子随机id的哈希值, 将id哈希表中的量子随机id的哈希值迁移至id哈希前表。
29.本发明采用量子随机数为信息系统提供高速量子随机数服务,并结合id去重方法为信息系统提供高速、随机、全局唯一的id生成服务。量子随机数发生器产生的量子随机数具有良好的随机性和不可预测性,解决了id的随机性问题。由于量子随机数本身具有良好的随机性,可以设计轻量级的去重方法,生成的id具有全局唯一性,可用作信息系统的主键、数据切片id等。量子随机数发生器生成速度快,去重算法资源占用低,可实现高速率的id生成服务,客服了传统基于伪随机数算法生成id资源占用高、速率慢的性能瓶颈,能够适应大数据、分布式信息系统对id生成性能需求,提升信息系统效能。此外,该方法生成的id位宽可配置,能够灵活适应系统的不同需求。
30.本发明提供的基于量子随机数的id生成方法及装置具有如下有益技术效果:(1)基于高速量子随机数发生器产生的量子随机数,结合id去重算法,可以提供高速id生成服务,该方法具有id全局唯一、量子随机性、生成速率快、资源占用低、id位宽可配置等优点,能适应大数据、分布式信息系统对id生成的需求;(2)基于哈希表进行候选量子随机id的重复性检测,支持动态的更新哈希表数据,能够保证一定量的量子随机id的不重复性;哈希表的查重的cpu运算更为简单,速度更快;能够保证量子随机数的高性能输出。
31.(3)基于高速量子随机数发生器的量子随机数生成方法,可以提供高速随机数生成服务,该方法生成的随机数具有量子随机性、生成速率快、资源占用低等优点,能适应大数据、分布式信息系统对随机数生成的需求。
32.本发明进行了示例性描述,显然本发明具体实现并不受上述方式的限制,只要采用了本发明的方法构思和技术方案进行的各种非实质性的改进,或未经改进将本发明的构思和技术方案直接应用于其它场合的,均在本发明的保护范围之内。

技术特征:
1.一种基于量子随机数的id生成方法,其特征在于,所述方法包括如下步骤:步骤1:配置量子随机数生成参数,包括:位宽n、数据总数量t;步骤2:量子随机数发生器基于量子随机数生成参数生成量子随机参数,将量子随机参数作为候选量子随机id;步骤3:检测候选量子随机id是否与量子随机id重复,若检测结果为是,则丢弃重复的候选量子随机id,若检测结果为否,则将候选量子随机id作为量子随机id。2.如权利要求1所述基于量子随机数的id生成方法,其特征在于,基于哈希算法来检测候选量子随机id是否与量子随机id重复。3.如权利要求2所述基于量子随机数的id生成方法,其特征在于,基于哈希算法来的候选量子随机id重复性检测过程具体如下:随机数发生器产生位宽为n的候选量子随机id;取候选量子随机id的前n比特数据为哈希index值,候选量子随机id的剩余(n-n)比特数据通过哈希函数运算得到哈希key值;候选量子随机id的哈希index值是否存在于量子随机id,若不存在,则对应候选量子随机id与量子随机id不重复,若存在,则检测相同哈希index值的哈希key值是否相同,若相同,则认定对应候选量子随机id与量子随机id重复,若不相同,则对应候选量子随机id与量子随机id不重复。4.如权利要求3所述基于量子随机数的id生成方法,其特征在于,哈希key值的获取方法具体如下:若候选量子随机id的剩余(n-n)比特数据<=16,将剩余(n-n)比特数据为哈希key值;若候选量子随机id的剩余(n-n)比特数据>16,对剩余(n-n)比特数据进行异或运算得到16比特的哈希key值。5.如权利要求1至4任一项所述基于量子随机数的id生成方法,其特征在于,在步骤s3之后还包括:在将候选量子随机id作为量子随机id后,更新id哈希表,将量子随机id的哈希index值添加至id哈希表,将哈希key放入id哈希表对应的哈希桶中;其中,id哈希前表用保存历史量子随机id的index值,id哈希表用于保存近期量子随机id的index值。6.如权利要求5所述基于量子随机数的id生成方法,其特征在于,在id哈希表的数据总量t大于等于t时,清空id哈希前表中的历史量子随机id的哈希值, 将id哈希表中的量子随机id的哈希值迁移至id哈希前表。7.如权利要求6所述基于量子随机数的id生成方法,其特征在,基于id哈希表和id哈希前表的候选量子随机id的重复性检测方法具体如下:检测候选量子随机id是否与id哈希表、id哈希前表中的量子随机id重复,若存在重复,则丢弃该候选量子随机id,若不存在重复,则候选量子随机id与量子随机id不重复。8.一种基于量子随机数的id生成装置,其特征在于,所述装置包括:参数配置单元,输出端与随机数发生器通讯的输入端连接,随机数发生器的输出端与id生成单元连接,其中:参数配置单元用于配置子随机数发生器的量子随机数生成参数,包括:随机数位宽n、数据总数量t,将量子随机数生成参数发送至量子随机数发生器;
量子随机数发生器基于量子随机数生成参数生成量子随机参数,将量子随机参数作为候选量子随机id,发送至id生成单元;id生成单元检测候选量子随机id是否与量子随机id重复,若检测结果为是,则丢弃重复的候选量子随机id,若检测结果为否,则将候选量子随机id作为量子随机id。9.如权利要求8所述基于量子随机数的id生成装置,其特征在于,id生成单元包括:哈希index值生成模块及哈希key值生成模块及重复性检测模块;哈希index值生成模块取候选量子随机id的前n比特数据为哈希index值;哈希key值生成模块取候选量子随机id的剩余(n-n)比特数据通过哈希函数运算得到哈希key值;重复性检测模块检测候选量子随机id的哈希index值是否存在于已有的量子随机id中,若不存在,则对应候选量子随机id与已有的量子随机id不重复,若存在,则检测相同哈希index值的哈希key值是否相同,若相同,则认定对应候选量子随机id与已有量子随机id重复,若不相同,则对应候选量子随机id与已有量子随机id不重复。10.如权利要求9所述基于量子随机数的id生成装置,其特征在于,重复性检测模块包括:存储子模块,用于存储id哈希表、id哈希前表以及id哈希表、id哈希前表对应的哈希桶;id哈希前表用保存历史量子随机id的index值,id哈希表用于保存近期量子随机id的index值,哈希桶用于存储id哈希表及id哈希前表中量子随机id的哈希key值;重复性检测子模块检测候选量子随机id的哈希index值是否于id哈希表、id哈希前表中,若均不存在,则候选量子随机id与量子随机id不重复,若存在,则基于哈希index值检测对应哈希桶内是否存在候选量子随机id的哈希key,若存在,则候选量子随机id与量子随机id重复,若不存在,则候选量子随机id与量子随机id不重复。

技术总结
发明属于量子通信技术领域,提供了一种基于量子随机数的ID生成方法及装置,该方法包括如下步骤:配置量子随机数生成参数,包括:位宽N、数据总数量T;量子随机数发生器基于量子随机数生成参数生成量子随机参数,将量子随机参数作为候选量子随机ID;检测候选量子随机ID是否与量子随机ID重复,若检测结果为是,则丢弃重复的候选量子随机ID,若检测结果为否,则将候选量子随机ID作为量子随机ID。基于量子随机数发生器产生的量子随机数,结合去重算法提供高速ID生成服务,生成的ID具有ID全局唯一、量子随机性、生成速率快、资源占用低、ID位宽可配置等优点,能适应大数据、分布式信息系统对ID生成的需求。生成的需求。生成的需求。


技术研发人员:凌杰 金添 樊迪 肖云松 叶程广 乔旺龙 赵琳
受保护的技术使用者:天云融创数据科技(北京)有限公司
技术研发日:2023.08.22
技术公布日:2023/9/20
版权声明

本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)

航空之家 https://www.aerohome.com.cn/

飞机超市 https://mall.aerohome.com.cn/

航空资讯 https://news.aerohome.com.cn/

分享:

扫一扫在手机阅读、分享本文

相关推荐