降低量子随机数偏置的高效后处理方法及系统技术方案

技术编号:39655912 阅读:11 留言:0更新日期:2023-12-09 11:24
本发明专利技术公开一种降低量子随机数偏置的高效后处理方法及系统,方法包括将量子随机源产生的原始随机序列拆分为多个子序列;遍历多个子序列,并对遍历到的当前子序列,使用滑动窗口覆盖当前子序列之前的子序列,并将当前子序列与滑动窗口中的子序列逐一比对;在当前子序列与滑动窗口中的子序列未重复时,输出当前子序列;在当前子序列与滑动窗口中的子序列存在重复时,从置换备选序列中选择置换序列替换当前子序列,并输出置换序列;本发明专利技术结合滑动窗口算法对原始随机序列拆分的子序列进行置换,打破原有随机序列的自相关性,得到偏置降低,随机性提高的随机数

【技术实现步骤摘要】
降低量子随机数偏置的高效后处理方法及系统


[0001]本专利技术涉及量子随机数后处理
,具体涉及一种降低量子随机数偏置的高效后处理方法及系统


技术介绍

[0002]随机数所具有的不可预测性使得随机数广泛应用于密码学

模拟仿真

统计研究等多种领域,随机数的随机性直接影响着应用过程的安全性

有效性与公平性

[0003]量子随机数发生器(
Quantum Random Number Generator

QRNG
)是一种物理随机数发生器,可基于量子力学原理实现随机数的生成,量子力学的不确定性基本原理保证了量子随机数发生器的绝对随机性

由于量子随机源在实现过程中可能存在器件的不理想性和电路引入的非均匀电子噪声,量子随机数发生器一般使用后处理方法对原始随机序列进行随机性提取

目前,量子随机数发生器所使用的后处理方法一般为经过量子证明的无条件安全的提取器:基于
Toeplitz
矩阵的泛2杂凑函数以及
Trevisan
提取器

这两类提取器都需要额外使用一段随机数种子来构建随机矩阵,若要防止攻击者的逆后处理操作,需要定期对随机数种子进行更替,这会消耗大量的生成随机数,严重影响最终随机数的生成速率

[0004]相关技术中,公布号为
CN110472739A
的专利申请文献所提出的某个可能的设计中,避开了
Toeplitz
矩阵的使用,但正向编码需要预先设定随机数编码表,且正向编码根据子序列的占比生成,需要对整段随机数序列进行存储评估,占据大量存储空间,且无法实时输出随机数

公布号为
CN116107541A
的专利申请文献中利用预设的伪随机源对输入的熵数据进行加扰运算,对运算后的熵数据进行加密处理,加密处理后的熵数据再通过置换处理调整数据顺序,最后对置换处理后的熵数据再引入新的伪随机源进行加扰运算;该方案要求真随机数发生器依赖伪随机源生成随机数,且使用
SM4
算法作为加密算法,运算复杂度较高,影响随机数输出速率


技术实现思路

[0005]本专利技术所要解决的技术问题在于如何得到偏置降低,随机性提高的随机数

[0006]本专利技术通过以下技术手段解决上述技术问题的:第一方面,本专利技术提出了一种降低量子随机数偏置的高效后处理方法,所述方法包括:将量子随机源产生的原始随机序列拆分为多个子序列;遍历多个子序列,并对遍历到的当前子序列,使用滑动窗口覆盖当前子序列之前的子序列,并将当前子序列与滑动窗口中的子序列逐一比对;在当前子序列与滑动窗口中的子序列未重复时,输出当前子序列;在当前子序列与滑动窗口中的子序列存在重复时,从置换备选序列中选择置换序列替换当前子序列,并输出置换序列

[0007]进一步地,所述将量子随机源产生的原始随机序列拆分为多个子序列,包括:
将所述原始随机序列拆分为多个长度均为
m
的子序列,且子序列之间无重叠

[0008]进一步地,长度
m≥3
且为奇数

[0009]进一步地,所述滑动窗口的初始长度为一个子序列长度;在遍历到第一个子序列时,滑动窗口为空,直接输出第一个子序列;在遍历到第二个子序列时,将滑动窗口覆盖第一个子序列

[0010]进一步地,在所述在当前子序列与滑动窗口中的子序列未重复时,输出当前子序列之后,或在所述在当前子序列与滑动窗口中的子序列存在重复时,从置换备选序列中选择备选子序列替换当前子序列,并输出备选子序列之后,所述方法还包括:遍历到下一个子序列作为当前子序列,判断所述滑动窗口的长度是否达到最大;若否,则将所述滑动窗口的长度增大设定位,以覆盖到当前子序列的上一个子序列;若是,则将所述滑动窗口向后滑动设定位,所述设定位与子序列长度相同

[0011]进一步地,所述滑动窗口的长度最大为,,
m
为子序列的长度

[0012]进一步地,所述置换备选序列为一个大小为的循环队列,所述置换备选序列中每个元素均为长度为
m
的二进制数

[0013]进一步地,所述在当前子序列与滑动窗口中的子序列存在重复时,从置换备选序列中选择置换序列替换当前子序列,并输出置换序列,包括:判断所述置换备选序列中位于置换起始位置的置换序列是否与所述滑动窗口中的子序列存在重复;若是,则判断位于所述置换起始位置的下一置换序列是否与所述滑动窗口中的子序列存在重复;若否,则使用位于所述置换起始位置的置换序列替换当前子序列,并输出该置换序列

[0014]进一步地,在初次置换时,将所述置换备选序列的起始序列作为所述置换起始位置

[0015]进一步地,在完成至少一次置换后,将当前置换所选择的置换序列的下一置换序列作为所述置换起始位置

[0016]第二方面,本专利技术提出了一种降低量子随机数偏置的高效后处理系统,所述系统包括:序列拆分模块,用于将量子随机源产生的原始随机序列拆分为多个子序列;遍历比对模块,用于遍历多个子序列,并对遍历到的当前子序列,使用滑动窗口覆盖当前子序列之前的子序列,并将当前子序列与滑动窗口中的子序列逐一比对;序列输出模块,用于在当前子序列与滑动窗口中的子序列未重复时,输出当前子序列;以及在当前子序列与滑动窗口中的子序列存在重复时,从置换备选序列中选择置换序列替换当前子序列,并输出置换序列

[0017]本专利技术的优点在于:(1)本专利技术结合了滑动窗口算法的实现原理与最近最久未使用算法的替换思路,对量子随机源输出的原始随机序列进行拆分处理,在遍历到的当前子序列与滑动窗口中的子序列存在重复时,从置换备选序列中选择置换序列替换当前子序列,通过序列替换打破
原有随机序列的自相关性,得到偏置降低,随机性提高的随机数;且采用流式操作处理随机数序列,不需要占据大量空间对随机数进行存储与预处理,且处理过程无数学运算,可实时输出随机数

[0018](2)由于将原始随机序列拆分得到的多个子序列的长度设定为奇数,可有效调整原有序列中可能存在的
0/1
频数差距大的情况

[0019](3)本专利技术属于在线算法,减少了已生成原始数据的等待时间,缩短了原始数据的总后处理时间,不需要随机种子,提高了随机数的生成速率

[0020]本专利技术附加的方面和优点将在下面的描述中部分给出,部分将从下面的描述中变得明显,或通过本专利技术的实践了解到

附图说明
[0021]图1是本专利技术一实施例提出的一种降低量子随机数偏置的高效后处理方法的流程示意图;图2是本专利技术一实施例中随机本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.
一种降低量子随机数偏置的高效后处理方法,其特征在于,所述方法包括:将量子随机源产生的原始随机序列拆分为多个子序列;遍历多个子序列,并对遍历到的当前子序列,使用滑动窗口覆盖当前子序列之前的子序列,并将当前子序列与滑动窗口中的子序列逐一比对;在当前子序列与滑动窗口中的子序列未重复时,输出当前子序列;在当前子序列与滑动窗口中的子序列存在重复时,从置换备选序列中选择置换序列替换当前子序列,并输出置换序列
。2.
如权利要求1所述的降低量子随机数偏置的高效后处理方法,其特征在于,所述将量子随机源产生的原始随机序列拆分为多个子序列,包括:将所述原始随机序列拆分为多个长度均为
m
的子序列,且子序列之间无重叠
。3.
如权利要求2所述的降低量子随机数偏置的高效后处理方法,其特征在于,长度
m≥3
且为奇数
。4.
如权利要求1所述的降低量子随机数偏置的高效后处理方法,其特征在于,所述滑动窗口的初始长度为一个子序列长度;在遍历到第一个子序列时,滑动窗口为空,直接输出第一个子序列;在遍历到第二个子序列时,将滑动窗口覆盖第一个子序列
。5.
如权利要求1所述的降低量子随机数偏置的高效后处理方法,其特征在于,在所述在当前子序列与滑动窗口中的子序列未重复时,输出当前子序列之后,或在所述在当前子序列与滑动窗口中的子序列存在重复时,从置换备选序列中选择备选子序列替换当前子序列,并输出备选子序列之后,所述方法还包括:遍历到下一个子序列并作为当前子序列,判断所述滑动窗口的长度是否达到最大;若否,则将所述滑动窗口的长度增大设定位,以覆盖到当前子序列的上一个子序列;若是,则将所述滑动窗口向后滑动设定位,所述设定位与子序列长度相同
。6.
如权利要求5所述的降低量子随机数偏置的高...

【专利技术属性】
技术研发人员:刘驰
申请(专利权)人:中电信量子科技有限公司
类型:发明
国别省市:

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

1