一种生成随机数的方法和装置制造方法及图纸

技术编号:17413393 阅读:29 留言:0更新日期:2018-03-07 09:14
本发明专利技术公开了一种生成随机数的方法和装置,属于计算机领域。所述生成随机数的方法包括:采集指定信源生成的数据;以预设的信源条件和泄密信道条件对已采集的数据序列在信息泄露情况下的信息量的置信区间进行估计;使用区间算法对所述采集的数据进行处理,输出二进制序列;使用置换函数对所述由区间算法输出的二进制序列进行处理,并根据所述对已采集数据序列信息量的置信区间的估计选择性地输出经置换函数处理后的二进制序列的部分比特。所述生成随机数的装置包括数据采集模块、信息估计模块、区间算法模块和置换函数模块。该发明专利技术能在一般的信源信息泄露情况下从一般信源生成的数据中以接近最优的效率提取高质量的均匀随机比特流。

A method and device for generating random numbers

The invention discloses a method and device for generating random numbers, which belongs to the field of computer. The method comprises the following steps: generating random numbers generated data acquisition source specified on the source and the preset conditions; leak channel conditions the confidence interval for the amount of information has been collected in the data sequence information disclosure under estimate; processed using interval algorithm for the data acquisition, the output of the binary sequence; processed by binary sequence interval algorithm output using permutation function, and estimate the selectivity of a confidence interval of the collected data on the amount of sequence information output by bit binary sequence permutation function after the treatment. The device for generating random numbers includes a data acquisition module, an information estimation module, an interval algorithm module and a replacement function module. The invention can extract high quality uniform random bit streams from near the optimal efficiency in the data generated by the general source under the general information leakage.

【技术实现步骤摘要】
一种生成随机数的方法和装置
本专利技术涉及计算机领域,特别涉及一种生成随机数的方法和装置。
技术介绍
随机数在计算机仿真和信息安全等领域具有广泛的应用。任何一种生成随机数的方法都需要从某个随机信源采集数据,进而从信源数据中提取随机性,生成服从目标分布的随机数。随机数的质量(即随机数真实分布与目标分布的统计距离)和生成随机数的效率(即生成相同随机数数量下消耗信源数据的多少)是评价随机数生成方法的重要指标。由于具有二元均匀分布的独立同分布随机序列(简称均匀随机比特流)可以方便地用于生成其它概率分布的随机数,随机数发生器通常设计为输出均匀随机比特流。在信源统计模型已知的条件下,区间算法(IntervalAlgorithm,如文献[1])不仅可以生成高质量的随机数,而且生成随机数的效率是各种已知方法中最高的。它的缺点是依赖信源统计模型的准确度。若信源统计模型与信源的真实概率分布有一定差异,即使信源携带了充足甚至更多的信息量,其输出的随机数质量仍无法得到保证。特别地,如果信源数据的部分信息经某个泄密信道泄露给随机数的使用方,则其随机数的质量急剧恶化。有种提取器(SeededExtractor,如文献[2])可以在信源信息泄露的情况下输出高质量的均匀随机比特流,只要信源数据在信息泄露情况下依然携带了足够的信息量。该方法在实施时,除了需要提供信源数据,还需要提供一个随机种子,即一个定长均匀分布的随机二进制串,且与信源数据统计独立。这种方法的缺点是定长输入定长输出,其效率是按最低信息量设计的,当信源数据含有较高的信息量时,其无法减少信源数据的消耗或生成更多的均匀随机比特。用于比特固定(Bit-Fixing)信源的(无种)提取器(如文献[3])是一类与有种提取器类似但专门用于信源信息泄露情形的随机数生成方法。该方法可以在随机数使用者知道信源数据的某些比特时依然输出具有较高质量的均匀随机比特串,只要使用者知道的比特数不超过设计的最大值。这种方法仅适用于独立同分布的二元均匀分布信源,且信息泄露方式也仅考虑每个比特为泄露或不泄露两种情形。而且,这种方法同样存在与有种提取器相似的固定生成效率的缺点。综上所述,对于一般信息泄露情况下的一般信源的随机数生成问题,现有的方法要么无法生成高质量的随机数,要么无法保证较高的随机数生成效率。参考文献:[1]UyematsuT,LiY.Twoalgorithmsforrandomnumbergenerationimplementedbyusingarithmeticoflimitedprecision[J].IEICETransactionsonFundamentalsofElectronics,CommunicationsandComputerSciences,2003,E86-A(10):2542-2551.[2]GuruswamiV,UmansC,VadhanS.UnbalancedexpandersandrandomnessextractorsfromParvaresh-Vardycodes[J].JournaloftheACM,2009,56(4):1-34.[3]KampJ,ZuckermanD.Deterministicextractorsforbit-fixingsourcesandexposure-resilientcryptography[J].SIAMJournalonComputing,2007,36(5):1231-1247.
技术实现思路
本专利技术要解决的技术问题是在一般的信源条件和信息泄露条件(即泄密信道条件)下从信源数据中以接近最优的效率提取高质量的均匀随机比特流。为解决上述问题,本专利技术提供了一种生成随机数的方法和装置。所述技术方案如下:一方面,提供了一种生成随机数的方法,所述方法包括:采集指定信源生成的数据,每采集一个数据样本,依次执行以下步骤:步骤一、以预设的信源条件和泄密信道条件对已采集的数据序列在信息泄露情况下的信息量的置信区间进行估计;步骤二、使用区间算法对所述新采集的数据进行处理,输出零个或多个比特的二进制序列,其中所述区间算法的参数设置为:输入序列概率分布为信源概率分布,输出序列概率分布为独立同分布且其分布为二元均匀分布;步骤三、使用置换函数对所述由区间算法输出的二进制序列进行处理,并根据所述对已采集数据序列信息量的置信区间的估计选择性地输出经置换函数处理后的二进制序列的部分比特,其中所述置换函数可以是固定的,也可以从一组预设的置换函数中以随机方式选取。优选地,所述以预设的信源条件和泄密信道条件对已采集的数据序列在信息泄露情况下的信息量的置信区间进行估计的步骤包括:设信源为平稳无记忆信源,信源字符集为信源符号x的概率为p(x);设泄密信道为平稳无记忆信道,信道输入字符集为信道输出字符集为当信道输入为x的条件下信道输出为y的概率为p(y|x);设接收到的信源数据为序列x1,x2,…,xn,使用以下公式估计该序列所含信息量的置信水平为α∈(0,1)的置信区间:式中,c=Φ-1((1+α)/2),优选地,所述使用置换函数对所述由区间算法输出的二进制序列进行处理,并根据所述对已采集数据序列信息量的置信区间的估计选择性地输出经置换函数处理后的二进制序列的部分比特的步骤具体为:步骤一、将所述由区间算法输出的二进制序列依次压入先进先出比特队列Q;步骤二、设所述置换函数的输入和输出为w比特,设队列Q的长度为v,若v≥w,则进入步骤三,否则,结束处理;步骤三、使用所述置换函数对队列Q的前w比特进行变换,并用变换后得到的w比特替换队列Q的前w比特;步骤四、设为预设的输出分组长度,T为预设的输出选择门限,o为已输出比特数,计算若则转至步骤五,否则转至步骤六,式中,h为所述对已采集数据序列信息量的置信区间估计的左端点,r为当前滞留在区间算法中的数据信息的等效比特数;步骤五、弹出队列Q的前比特并将其输出,更新变量o值为转至步骤二;步骤六、弹出队列Q的前比特并将其丢弃,转至步骤二。优选地,所述置换函数为f(x)=αxm,(2)式中,x,α∈GF(2w),GF(2w)表示包含2w个元素的有限域,α≠0,m=2k或2w-2k-1,k为小于w的非负整数,所涉及的运算均为GF(2w)上的算术运算。另一方面,提供了一种生成随机数的装置,所述装置包括:数据采集模块,用于采集指定信源生成的数据;信息估计模块,用于以预设的信源条件和泄密信道条件对已采集的数据序列在信息泄露情况下的信息量的置信区间进行估计;区间算法模块,用于对所述采集的数据使用区间算法进行处理;置换函数模块,用于对所述由区间算法输出的二进制序列使用置换函数进行处理,并根据所述对已采集数据序列信息量的置信区间的估计选择性地输出经置换函数处理后的二进制序列的部分比特。本专利技术提供的技术方案带来的有益效果是:本专利技术能在一般的信源条件和泄密信道条件下从信源数据中以接近最优的效率提取高质量的均匀随机比特流,其综合性能优于
技术介绍
中所述的现有方法,其技术优势主要源于以下技术特征:A.通过在泄密信道条件下对信源数据信息量的置信区间进行估计可以有效地确定信源数据在信源信息泄露情况下可提取出高质量随机比特数的上限,其精确度优于传统信息论的条本文档来自技高网
...
一种生成随机数的方法和装置

【技术保护点】
一种生成随机数的方法,其特征在于,所述方法包括:采集指定信源生成的数据,每采集一个数据样本,依次执行以下步骤:步骤一、以预设的信源条件和泄密信道条件对已采集的数据序列在信息泄露情况下的信息量的置信区间进行估计;步骤二、使用区间算法对所述新采集的数据进行处理,输出零个或多个比特的二进制序列,其中所述区间算法的参数设置为:输入序列概率分布为信源概率分布,输出序列概率分布为独立同分布且其分布为二元均匀分布;步骤三、使用置换函数对所述由区间算法输出的二进制序列进行处理,并根据所述对已采集数据序列信息量的置信区间的估计选择性地输出经置换函数处理后的二进制序列的部分比特,其中所述置换函数可以是固定的,也可以从一组预设的置换函数中以随机方式选取。

【技术特征摘要】
1.一种生成随机数的方法,其特征在于,所述方法包括:采集指定信源生成的数据,每采集一个数据样本,依次执行以下步骤:步骤一、以预设的信源条件和泄密信道条件对已采集的数据序列在信息泄露情况下的信息量的置信区间进行估计;步骤二、使用区间算法对所述新采集的数据进行处理,输出零个或多个比特的二进制序列,其中所述区间算法的参数设置为:输入序列概率分布为信源概率分布,输出序列概率分布为独立同分布且其分布为二元均匀分布;步骤三、使用置换函数对所述由区间算法输出的二进制序列进行处理,并根据所述对已采集数据序列信息量的置信区间的估计选择性地输出经置换函数处理后的二进制序列的部分比特,其中所述置换函数可以是固定的,也可以从一组预设的置换函数中以随机方式选取。2.根据权利要求1所述的生成随机数的方法,其特征在于,所述以预设的信源条件和泄密信道条件对已采集的数据序列在信息泄露情况下的信息量的置信区间进行估计的步骤包括:设信源为平稳无记忆信源,信源字符集为信源符号x的概率为p(x);设泄密信道为平稳无记忆信道,信道输入字符集为信道输出字符集为当信道输入为x的条件下信道输出为y的概率为p(y|x);设接收到的信源数据为序列x1,x2,…,xn,使用以下公式估计该序列所含信息量的置信水平为α∈(0,1)的置信区间:式中,c=Φ-1((1+α)/2),

【专利技术属性】
技术研发人员:杨胜天毛松志
申请(专利权)人:浙江工商大学
类型:发明
国别省市:浙江,33

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

1