专利名称:基于分组处理的伪随机序列的随机性检测方法
技术领域:
本发明属于信号检测领域,特别涉及伪随机序列的随机性检测方法,可广泛应
用于测量测距、扩频通信、软件测试、雷达导航和数据保密等领域。
背景技术:
通过随机数发生器产生的伪随机序列,其随机性直接影响到应用的安全有效 性,因此要判断该应用是否安全有效,必须要先保证该伪随机序列的随机性性能良好, 而对伪随机序列的随机性检测一直都是序列随机性检测中的难点。要检测一个序列是否 拥有真正随机序列的特性可以从几个方面进行检测
1)周期性特征; 2)序列中符号"0"禾P "1"出现的比例; 3)序列中的游程的分布情况; 4)序列的异相自相关函数; 5)序列的复杂度,例如线性复杂度; 6)序列的可压縮情况; 为了测试一个序列是否满足随机序列的这些性质而提出了多种具有针对性的随 机性检测方法,例如二元矩阵秩测试和频谱测试可以测试序列的周期特性;频率测试和 分块频率测试可以测试序列中符号"0"和"1"出现的比例;线性复杂度测试、最大阶 复杂度测试和二阶复杂度测试可以测试序列的复杂度。 目前序列的随机性测试已经有六十多种,它们都只能是针对随机性的某些性质 进行测试,如块内频数检验用来检验序列中符号"0"和"1"出现的比例是否均衡、累 加和检验判断待检序列的最大偏移是否过大、矩阵秩检验用来检验待检序列中给定长度 的子序列之间的线性独立性等,也就是说每个测试的通过只能说明该序列满足某个或者 某几个随机特性,但并不能确保此序列同时满足其他的随机特性,不能满足实际应用中 的安全有效的要求,即每一种随机性检测方法都存在局限性和片面性,影响检测的精确 度。
发明内容
本发明的目的在于针对目前所存在的随机性检测技术的不足,提出了一种基于
分组处理的伪随机序列的随机性检测方法,在不影响原序列的随机性的基础上,通过对 原序列进行分组处理来改变原序列的一些排列性质,以克服现有技术在随机性检测问题 上的局限性和片面性,使得对原序列的随机性检测结果更加全面、更加准确。 为实现上述目的,本发明根据随机序列经过如分组线性映射,分组模2加的处 理之后仍是随机序列的原则,对待测序列进行一系列分组处理后得到的检测结果和直接 检测的检测结果相比较,从而得出更加准确全面的检测结果,具体方案如下
技术方案一基于分组线性映射的伪随机序列的随机性检测方法,包括如下过程 1)设置待测二元序列为^, a2,…,an, n为序列长度; 2)对待测序列进行分组线性映射 设分组长度为整数d,分组后的序列记为b2, ..., bm, m = n/d,其中bt =
(ad(i—i)+i, ad(丄-"+2, …,ad(丄-"+d), l^i^m; 设向M:;T =(<,《,...,《),k = I, 2,…,2d-l, dk分别表示数值l, 2,…, 2d-l ;用向量7=0^,《,...,《)对151进行线性运算,得到2d-l个分组线性映射序列簇为
c,, c2k,…,cmk,其中《E (HH《,^^m, k二l, 2,…,2d-l;
i=t 3)设置标准随机序列S,并通过渗透测试法,对长度为m的标准随机序 列S进行统计,得到一组相对应的标准统计值DEV = H2,…,H,),其中
馬,S,:j MJ^— ,j对应不同的森林点火方式,l勾'd00, MAX"为由标
准序列S决定的第j种点火方式对应的layer燃烧树木的最大值,MEANla5J为由标准序列 S决定的第j种点火方式对应layer的燃烧树木的平均值,VARIANlayJ为由标准序列S决 定的第j种点火方式对应layer的燃烧树木的方差; 4)对2d-l个分组线性映射序列簇dk, c2k, ..., cmk, l《k《2d-l分别用渗透测 试的测试方法进行统计,得到第k个序列簇的一组统计值devlk二(hlk, p hlk, 2,...,
hlk,咖),叫,J^ :跑^ ,I傘IOO, maxlk, —J为由第k个分组线性映射
序列簇决定的第j种点火方式对应layer的燃烧树木的最大值,MEANla5J为由标准序列S 决定的第j种点火方式对应layer的燃烧树木的平均值,VARIANlayJ为由标准序列S决定 的第j种点火方式对应layer的燃烧树木的方差; 5)利用Kolmogorv-Smimov检测法将各个分组线性映射序列簇得到的统计值 devlk(1^^2d-l)分别与标准统计值DEV进行比较,得到分组线性映射序列devlk与标准统
计值dev之间的最大距离"1*円riax(化」—*Q (isa^2rf —i);6)选定分位点e ,计算距离标准值D^ =e(f) |fl±^ ,其中nl和n2分别表示参
与比较的两组数据的个数,C( e )为距离标准值因子系数的值; 7)将Dlk(l《k《2d-l)分别与De进行比较,若所有Dl^De,则待测序列^, a2,…,a。具有随机特性,反之若存在一个Dlk〉De,则待测序列ai, a2,…,an不具有 随机特性。 技术方案二基于分组二次非线性变换的伪随机序列的随机性检测方法,包括 如下过程 1>设置待测二元序列为&, a2,…,an, n为序列长度;
2>对待测序列进行二次非线性变换 设分组长度为奇整数d,分组后的序列记为^, b2,…,bm, m = n/d,其中bt—(ad(i—i)+i, ad(i—1)+2, …,ad(i—1)+d), lsi《m;
设向量二次函数为f(Xl, x2,...,
Xd) 一 XlX2+X3X4+'"+Xd-2Xd-l+Xd 将bi作为函数参数代入到二次函数f(x" x2,…,Xd)中,计算Cl = f(a辱,, a叫D+2,…,ad阿+d), i=l, 2,…,m,得到长度为m的二次非线性变换序列Cl, c2,…, 3〉设置标准随机序列S,并通过渗透测试法,对长度为m标准随机序 列S进行统计得到一组相对应的标准统计值DEV = (Hp H2,…,H,),其中
A = Z =pft<w.一,j对应不同的森林点火方式,l勾'《100, MAX"为由标
准序列S决定的第j种点火方式对应的layer燃烧树木的最大值,MEANla5J为由标准序列 S决定的第j种点火方式对应layer的燃烧树木的平均值,VARIANlayJ为由标准序列S决 定的第j种点火方式对应layer的燃烧树木的方差;4〉对二次非线性变换序列d, c2,…,Cm用渗透测试的测试方法进行统计,得到
42^ (max 2/ — Affi"/liV/ ): 一组统计值dev2:(h2" h22,…,h2l。。), ^.=2^——^^"A^附 ,^J《100,
max2layCTJ为由序列Cl, c2, ..., cm决定的第j种点火方式对应layer的燃烧树木的最大 值,MEANlayJ为由标准序列S决定的第j种点火方式对应layer的燃烧树木的平均值, VARIANlayJ为由标准序列S决定的第j种点火方式对应layer的燃烧树木的方差;
5>利用Kolmogorv-Smimov检测法将二次非线性变换序列得到的统计值dev2分
别与标准统计值DEV进行比较,得到dev2与DEV之间的最大距离^2 = maX(M,.-玛); 6>选定分位点e ,计算距离标准值1)£ = ^ff)J-^^^^ ,其中nl和n2分别表示参 与比较的两组数据的个数,C( e )为距离标准值因子系数的值; 7〉将D2与De进行比较,若D2《De,则待测序列a" a2,…,a。具有随机特 性,反之若D2〉De,则待测序列a" a2,…,a。不具有随机特性。
技术方案三基于分组大数表决的伪随机序列的随机性检测方法,包括如下过
程<1>设置待测二元序列为^, a2,…,an, n为序列长度;
<2>对待测序列进行分组大数表决 设分组长度为奇整数d,分组后的序列记为^, b2,…,bm,其中m二n/d, bt
—(ad(i-1)+1, ad(i—"+2, …,ad(i—"+d), lsi^m; 对分组序列bi(l《i《m)进行大数表决,得到长度为m大数表决序列d, c2,…,
Cm o"J^中C,=
O,若h,.中O的数量l
〗,若A,中()的数iX
<formula>formula see original document page 9</formula> 〈3〉设置标准随机序列S,并通过渗透测试法,对长度为m标准随机序列S进行 统计得到一组相对应的标准统计值DEV二(Hp H2,…,H,),其中
& = Z ^~—, j对应不同的森林点火方式,I勾SIOO,
MAXlayJ为由标准序列S决定的第j种点火方式对应的layer燃烧树木的最大值,MEANlayJ 为由标准序列S决定的第j种点火方式对应layer的燃烧树木的平均值,VARIANlayJ为由 标准序列S决定的第j种点火方式对应layer的燃烧树木的方差; <4>对分组大数表决序列(^, c2,…,Cm用渗透测试的测试方法进行统计,得到
一组统计值dev3二(h^, h32, ..., h3l。。), A3,J^(隨^^U "傘擺,
max3layCTJ为由序列Cl, c2, ..., cm决定的第j种点火方式对应layer的燃烧树木的最大 值,MEANlayJ为由标准序列S决定的第j种点火方式对应layer的燃烧树木的平均值, VARIANlayJ为由标准序列S决定的第j种点火方式对应layer的燃烧树木的方差;
<5>利用Kolmogorv-Smimov检测法将分组大数表决序列q, c2, ..., cm得 到的统计值dev3与标准统计值DEV进行比较,得到dev3与DEV之间的最大距离
鹏
厶"max"A- <6>选定分位点e ,计算距离标准值A. = c'U;.)」d^!i ,其中nl和n2分别表示 参与比较的两组数据的个数,C( e )为距离标准值因子系数的值; 〈7〉将D3与D,进行比较,若D3《D,,则待测序列an a2,…,a。具有随机特 性,反之若D3〉De,则待测序列不具有随机特性。 技术方案四基于分组逐位线性映射的伪随机序列的随机性检测方法,包括如 下过程(l)设置待测二元序列为a!, a2,…,an, n为序列长度; (2)对待测序列进行逐位线性映射 设窗口宽度为d,窗口从位l开始逐位移动,设第i个窗口中的数据为bi二^, a1+1,…,a^), l么n-d+l ; 设向量rf =(《,《,.,《),k=l, 2, ..., 2d-l, dk分别表示数值l, 2,..., 2d-l;对窗口中的数据bi二(a" a1+1,…,a^)用向量/..,《)进行线性运算 ^《,得到2d-l个逐位线性映射序列簇Clk, c2k, ..., cmk, m =
n-d+l, k = 1, 2, 3,…,2d-l ; (3)设置标准随机序列S,并通过渗透测试法,对长度为m标准随机序 列S进行统计得到一组相对应的标准统计值DEV = H2,…,H,),其中
^=乞>^=;f/<Af/ ,j对应不同的森林点火方式,l勾'《100, MAX"为由标
准序列S决定的第j种点火方式对应的layer燃烧树木的最大值,MEANla5J为由标准序列 S决定的第j种点火方式对应layer的燃烧树木的平均值,VARIANlayJ为由标准序列S决
10定的第j种点火方式对应layer的燃烧树木的方差;(4)对2d-l个逐位线性映射序列簇Clk, c2k,…,c^k分别用渗透测试的测试方法
进行统计,得到第k个序列簇的一组统计值dev4k二(h4k, p h4k, 2, ..., h4k, 1Q。),其中
腸(max 4''一緣4/V乂 )2 l《k《2d-l, 一 ,I傘IOO, max4k, —J为由第k个分组线性映
射序列簇决定的第j种点火方式对应layer的燃烧树木的最大值,MEANlayJ为由标准序列 S决定的第j种点火方式对应layer的燃烧树木的平均值,VARIANlayJ为由标准序列S决 定的第j种点火方式对应layer的燃烧树木的方差; (5)利用Kolmogorv-Smimov检测法将各个逐位线性映射序列簇得到的统计值 deV4k(l《k《2d-l)分别与标准统计值DEV进行比较,得到分组逐位线性映射序列dev4k与标
l節
准统计值DEV之间的最大距离|>4t = maX(MA,f —瑪)(1S S 2"* -1 ); (6)选定分位点e ,计算距离标准值£)£ =,其中nl和n2分别表示参 与比较的两组数据的个数,C( e )为距离标准值因子系数的值; (7)将D4k(1^^2d-l)分别与D,进行比较,若所有D4^De,则待测序列^, a2,…,a。具有随机特性,反之若存在一个D4k〉De,则待测序列ai, a2,…,an不具有 随机特性。 技术方案五基于分组模2加的伪随机序列的随机性检测方法,包括如下过 程A).设置待测二元序列为^, a2,…,an, n为序列长度;
B).将待测序列^, a2,…,a。进行分组模2加 设分组长度为整数d,分组后的序列记为b" b2,…,bm, m = n/d,其中bt =
(ad(i—i)+i, ad(丄-"+2, …,ad(丄-"+d), lsi^m; 将b^与bg逐位进行模2加得到分组序列Cj, l勾'《m/2,将c」级联得到总长度为 (m/2)Xd比特的分组模2加序列d, c2, ...Cm/2; C)设置标准随机序列S5,并通过渗透测试法,对长度为n/2标准随机序 列S5进行统计得到一组相对应的标准统计值DEV5 = (H5" H52,…,H51Q。),其中
奶,_:層 ,J舊稱勺纖狄拭I傘IOO, MAX5—J为
由标准序列S5决定的第j种点火方式对应的layer燃烧树木的最大值,MEAN5layJ为由标 准序列S5决定的第j种点火方式对应layer的燃烧树木的平均值,VARIAN5layJ为由标准 序列S5决定的第j种点火方式对应layer的燃烧树木的方差;D)对分组模2加序列用渗透测试的测试方法进行统计,得到一组统计值dev5
=(1^, h52,…,h510。), M尸Z 隨腿./^,1勾、100, max5;为由d,
c2, ..., Cm/2决定的第j种点火方式对应layer的燃烧树木的最大值,MEAN5layJ为由标准 序列S5决定的第j种点火方式对应layer的燃烧树木的平均值,VARIAN5layJ为由标准序
11列S5决定的第j种点火方式对应layer的燃烧树木的方差; E)利用Kolmogorv-Smimov检测法将分组模2加序列得到的统计值dev5与标准统计值DEV5进行比较,得到dev5与DEV5之间的最大距离<formula>formula see original document page 12</formula>
F)选定分位点e ,计算距离标准值<formula>formula see original document page 12</formula>,其中nl和n2分别表示参与比较的两组数据的个数,C( e )为距离标准值因子系数的值; G)将D5与D,进行比较,若D5《D。,则待测序列a" a2,…,a。具有随机特性,反之若D5〉D。,则待测序列a" a2,…,a。不具有随机特性。
本发明由于对待测序列先进行预处理,例如分组线性映射或逐位线性映射或二次非线性变换或大数表决或分组模2加,通过预处理得到新的序列,再对新序列进行渗透测试,因而能够检验待测序列更多的随机特性,弥补了已有方法检测随机特性时的单一性,提高了检测结果的全面性,同时避免了已有方法对序列随机性检测的误判的情况,提高了检测的准确度和可信度。
图1是本发明的检测流程图; 图2是本发明的分组线性映射子流程图; 图3是本发明的分组二次非线性变换子流程图; 图4是本发明的分组大数表决子流程图; 图5是本发明的分组逐位线性映射子流程图; 图6是本发明的分组模2加子流程图。 实施实例方式 实施例一,对待测序列进行分组线性映射后进行伪随机序列随机性检测。 参照图1和图2,本实例的实现步骤如下 步骤一,输入长度为n二 108的待测序列&, a2,…,an。 步骤二,取分组长度d = 100,将长度为108的原序列分成长度为106的100个小
分组h, b2,…,b膨其中^=(", 、,11^.,,."气(),—1HW《),KklOO,记m二106。 步骤三,对小分组b《l《i《100)分别用渗透测试方法进行统计 1)取一个标准随机序列S,对标准随机序列求标准统计数据DEV = (Hp
h2,…,Hl。。),其中<formula>formula see original document page 12</formula>MAx—j为标准随机序列
S决定的第j种点火方式对应的layer树木燃烧的最大值,MEANlayJ为标准随机序列S决定的第j种点火方式对应的layer树木燃烧的平均值,VARIANlayJ为标准随机序列S决定的第j种点火方式对应的layer树木燃烧的方差; 2)对小分组b夂l《i《100)分别用渗透测试的测试方法进行统计,得到一组统计值devlk = (hlk, !, hlk, 2,…,hlk, 100),
其中l《k《100, M4J= 2
隨《
1勾、10Q,maxlk, layJ为由第k个序列决定的的第j种点火方式对应的layer燃烧树木的最大值,MEANla5J为标准序列S决定的的第j种点火方式对应的layer燃烧树木的平均值,VARIANlayJ为标准序列S决定的的第j种点火方式对应的layer燃烧树木的方差;
3)利用Kolmogorv-Smimov检测法比较数据devlk = (hlk, !, hlk, 2, ..., hlk, 10。)
和dev = (Hp h2, ..., h100),得到最大距离顶i:max(w《v.一好,')'其中i《k《ioo。 步骤四,选定分位点e,计算距离标准值i5 =eU;) ,^H^i,其中nl和n2分别表示参与比较的两组数据的个数,c( e)为距离标准值因子系数的值,c("的值如表l
所示 表1 :不同分位点e对应的距离标准值因子系数C( e )值
0.100.050.0250.010.0050.001
1.221.361.481.631.731.95 例如选定e = 0.10, nl = 100, n2 = 100,则距离标准值因子系数c( e )=1.22,距离标准值为De = 0.172534;选定e =0.05, nl = 100, n2 = 100,则距离标准值因子系数c( e ) = 1.36,距离标准值为DE = 0.192333 ;选定e = 0.025, nl = 100,n2 = 100,则距离标准值因子系数c( e ) = 1.48,距离标准值为DE = 0.209303。
步骤五,将Dlk分别与选定e相应的距离标准值De进行比较,若所有Dlk《DE,则待测序列ap a2,…,a。满足随机特性,若存在一个Dlk〉D,,则待测序列ap a2,…,a。不满足随机特性。例如当选定e = 0.10时,距离标准值为DE =0.172534,若所有D1^0.172534时,待测序列aP a2,…,a。具有随机特性,否则若存在一个Dlk〉 0.172534,则待测序列ap a2,…,a。不具有随机特性。
实施例二,对待测序列进行二次非线性变换后进行伪随机序列随机性检测。
参照图1和图3,本实例的实现步骤如下
步骤l,输入长度为11= 1.01X1()8的待测序列^, a2,…,an。
步骤2,取分组长度(1=101,将长度为1.01X108的原序列分成长度为101的1Q6个小分组bp b2,…,bm,记m二106,将每 一 个小分组bt = (ai
l101(i-l)+2,
l101(i-l)+101
)作为函数系数带入二次非线性函数f(&, x2,
3
101(i-l)+"
3
101(i-l)+101
),
1, 2,
l101(i-l)+l
xioi),106
XlX2+X3X4+."+X99X100+X101 , Ci — f(ai'
得到长度为m = 106的序列Cl, c2, ..., cm。 步骤3,对二次非线性变换后的序列c^ c2,…,Cm用渗透测试方法进行统计
(3a)取一个标准随机序列S,对标准随机序列求标准数据DEV二 (Hp H2,...,h100);
13
其中碼=Z X諫 -,W《100。
MAXlayJ为标准随机序列S决
定的第j种点火方式对应的layer树木燃烧的最大值,MEANlayJ为标准随机序列S决定的第j种点火方式对应的layer树木燃烧的平均值,VARIANlayJ为标准随机序列S决定的第j种点火方式对应的layer树木燃烧的方差; (3b)对变换后的序列d, c2,…,Cm用渗透测试的测试方法进行统计,得到一组统计值dev2 = (h2p h22,…,h210。),
J么 隨碼;
max2—J为由序列q, c2, ..., cm决定的第j种点火方式对应的layer燃烧树木的最大值,MEANla5J为标准序列S决定的第j种点火方式对应的layer燃烧树木的平均值,VARIANlayJ为标准序列S决定的第j种点火方式对应的layer燃烧树木的方差;
(3c)利用Kolmogorv-Smimov检测法比较数据dev2 = (h2!, h22,…,h210。)和
DEV = (Hp H2,…,H1TO),得到最大距离i 2-max(峻—碼)。
I—=1步骤4,选定分位点e ,计算距离标准值D- = c") ,其中nl和n2分别
表示参与比较的两组数据的个数,c( e)为距离标准值因子系数的值,c("的值如表l所示。 步骤5,将D2与选定e相应的距离标准值De进行比较,若D2《De,则待测序列a" a2,…,a。满足随机特性,反之若D2〉De,则待测序列a" a2,…,an不满足随机特性。例如当选定e =0.05时,距离标准值为Ds = 0.192333,若D2幼.192333时,待测序列a" a2,…,a。具有随机特性,否则若D2 > 0.192333,则待测序列^, a2,…,a。不具有随机特性。实施例三,对待测序列进行大数表决后进行伪随机序列随机性检测。 参照图1和图4,本实例的实现步骤如下步骤A,输入长度为n = 1.01乂108待测序列&1, a2,…,an。 步骤B,取分组长度(1=101,将长度为1.01乂108的原序列分成长度为101的
1()6个小分组bp b2,…,bm,记m二106,对每一个小分组bi = (a卿—1)+1, ai。1(1—1)+2,…,
0, 若&中0的数量大于^^ = 50
2 , l化m,得到长度为m的序列d,
1, 若6,中l的数量大于i^ = 50
2
aioi(i-i)+ioi), 求C,..—
C2,…
H100),
步骤C,对大数表决后的序列d, C2,…,^用渗透测试方法进行统计
(C1)取一个标准随机序列S,对标准随机序列求标准数据DEV二 (Hp H2,…,
其中<formula>formula see original document page 14</formula>I傘IOO。 MAX—J为标准随机序列S决定的第j种点火方式对应的layer树木燃烧的最大值,MEANlayJ为标准随机序列S决定的第j种点火方式对应的layer树木燃烧的平均值,VARIANlayJ为标准随机序列S决定的第j种点火方式对应的layer树木燃烧的方差; (C2)对变换后的序列d, c2,…,Cm用渗透测试的测试方法进行统计,得到一组统计值dev3 = (h3" h32,…,h3100),其中X - .^:, l年亂max3layerJ为由序列Cl,
c2,…,Cm决定的第j种点火方式对应的layer燃烧树木的最大值,MEANlayJ为标准序列决定的第j种点火方式对应的layer燃烧树木的平均值,VARIANlayJ为标准序列决定的第j种点火方式对应的layer燃烧树木的方差;(C3)利用Kolmogorv-Smimov检测法比较数据dev3 = (h3p h32,…,h31TO)和DEV二(Hp H2,…,H1TO),得到最大距离1>3 = 11;;乂(力3, 步骤D,选定分位点e,计算距离标准值A^:'(V;)」?"'72 ,其中nl和n2分
£ ' \ ,/1/'2
别表示参与比较的两组数据的个数,c( e )为距离标准值因子系数的值,c("的值如表l所示。 步骤E,将D3与选定e相应的距离标准值De进行比较,若D3《De,则待测序列a" a2,…,a。满足随机特性,反之若D3〉De,则待测序列a" a2,…,an不满足随机特性。例如当选定e = 0.025时,距离标准值为De = 0.209303,若D3幼.209303时,待测序列^, a2,…,an具有随机特性,否则若D3 > 0.209303,则待测序列^, a2,…,a。不具有随机特性。实施例四,对待测序列进行分组逐位线性映射后进行伪随机序列随机性检测。 参照图1和图5,本实例的实现步骤如下第一步,输入长度为11 = 2乂106的待测序列&1, a2,…,an。第二步,取窗口宽度为(1=106,将长度为2乂106的原序列逐位截取成长度为106
的106个小分组A,~"..^rf ,其中4 =《《rfM+1,《M 2".-, ,c^ ) , ld《106,记m =106 ; 第三步,对小分组bi(l《i《106)用渗透测试方法进行统计 首先,取一个标准随机序列S。对该序列求标准数据DEV = H2,…,
H10。),其中巧=S — ,I傘IOO, MAX—J为标准随机序列S决定的
第j种点火方式对应的layer树木燃烧的最大值,MEANlayJ为标准随机序列S决定的第j种点火方式对应的layer树木燃烧的平均值,VARIANlayJ为标准随机序列S决定的第j种点火方式对应的layer树木燃烧的方差; 其次,对小分组b夂l勾、l()6;)分别用渗透测试的测试方法进行统计,得到一组统计值dev4k = (h4k, i, h4k, 2, ..., h4k, 10。), 其中l《k《106,
15a (irax4/, — A£E4i¥/ )2 = 2=層, ,l勾'"OO, max4k, layJ为由第k个序列决定的的第j种点
火方式对应的layer燃烧树木的最大值,MEANlayJ为标准序列S决定的的第j种点火方式 对应的layer燃烧树木的平均值,VARIANlayJ为标准序列S决定的的第j种点火方式对应 的layer燃烧树木的方差;然后,利用Kolmogorv-Smimov检测法比较数据dev4k = (h4k, :, h4k, 2,...,
l節
h4k,咖)和DEV = (H" H2,…,H,),得到最大距离IM「證ax(A4w-lf,.),其中
'『
l《k《106。 第四步,选定分位点e ,计算距离标准值iJ /"1:^:《,其中nl和n2分
ff 、 V 〃)"2
别表示参与比较的两组数据的个数,c( e)为距离标准值因子系数的值,c("的值如表l 所示。 第五步,将D4k分别与选定e相应的距离标准值De进行比较,若所有
D4k《DE,则待测序列^, a2,…,a。满足随机特性,若存在一个D4k〉D,,则待测序
列a" a2,…,an不满足随机特性。例如当选定e = 0.01时,距离标准值为D,=
0.2305168,若所有D4k復2305168时,待测序列ai, a2,…,a。具有随机特性,否则若存
在一个D4k〉 0.2305168,则待测序列a" a2,…,a。不具有随机特性。 实施例五,对待测序列进行分组模2加后进行伪随机序列随机性检测。 参照图1和图6,本实例的实现步骤如下第1步,输入长度为n = 2X1()6待测序列^ a2,…,an。 第2步,,取分组长度(1=100,将长度为2乂106的原序列分成长度为100的 2Xl()4个小分组bi, b2,…,bL—p bL,其中L:2X104, bj = (a10。G-1)+1, a10。G-1)+2,…,a10。G-1)+1。。), 1勾、L,将b2"与b2l
逐位进行模2加后级联,得到一个长度为m二 106的分组模2加序列d, c2,…,cm。第3步,对分组模2加序列d, c2,…,^用渗透测试方法进行统计 (3.1)取一个标准随机序列S,对标准随机序列求标准数据DEV二 (H" H2,…,
H100),
^ (MIX/ — ME/W/' )2
其中& = S ;:丽乂—,l傘亂MAXlayJ为标准随机序列S决
定的第j种点火方式对应的layer树木燃烧的最大值,MEANlayJ为标准随机序列S决定的 第j种点火方式对应的layer树木燃烧的平均值,VARIANlayJ为标准随机序列S决定的第 j种点火方式对应的layer树木燃烧的方差; (3.2)对变换后的序列d, c2,…,Cm用渗透测试的测试方法进行统计,得到一组 统计值devK叫,h52, ..., h5l。。),其中M,E( ,l傘跳
max5layCTJ为由序列Cl, c2, ..., cm决定的第j种点火方式对应的layer燃烧树木的最大值, MEANla5J为标准序列决定的第j种点火方式对应的layer燃烧树木的平均值,VARIANlayJ
16为标准序列决定的第j种点火方式对应的layer燃烧树木的方差; (3.3)利用Kolmogorv-Smimov检测法比较数据dev5 = (h5p h52,…,h5,)和 DEV二(Hp H2,…,H1TO),得到最大距离i 5:max(A5i— 第4步,选定分位点e ,计算距离标准值i^ = "£) /^ii^ ,其中nl和n2分
,《1 2
别表示 参与比较的两组数据的个数,C( e )为距离标准值因子系数的值,C("的值如表 l所示。 第5步,将D5与选定e相应的距离标准值De进行比较,若D^De,则待测序 列a" a2,…,a。满足随机特性,反之若D^D,,则待测序列a" a2,…,an不满足随机 特性。例如当选定e = 0.005时,距离标准值为Ds = 0.275772,若DE幼.275772时, 待测序列a" a2,…,a。具有随机特性,否则若DE > 0.275772,则待测序列a" a2,..., a。不具有随机特性。
1权利要求
一种基于分组线性映射的伪随机序列的随机性检测方法,包括如下过程1)设置待测二元序列为a1,a2,...,an,n为序列长度;2)对待测序列进行分组线性映射设分组长度为整数d,分组后的序列记为b1,b2,...,bm,m=n/d,其中bi=(ad(i-1)+1,ad(i-1)+2,...,ad(i-1)+d),1≤i≤m;设向量k=1,2,...,2d-1,dk分别表示数值1,2,...,2d-1;用向量对bi进行线性运算,得到2d-1个分组线性映射序列簇为c1k,c2k,...,cmk,其中1≤i≤m,k=1,2,...,2d-1;3)设置标准随机序列S,并通过渗透测试法,对长度为m的标准随机序列S进行统计,得到一组相对应的标准统计值DEV=(H1,H2,...,H100),其中j对应不同的森林点火方式,1≤j≤100,MAXlayerj为由标准序列S决定的第j种点火方式对应的layer燃烧树木的最大值,MEANlayerj为由标准序列S决定的第j种点火方式对应layer的燃烧树木的平均值,VARIANlayerj为由标准序列S决定的第j种点火方式对应layer的燃烧树木的方差;4)对2d-1个分组线性映射序列簇c1k,c2k,...,cmk,1≤k≤2d-1分别用渗透测试的测试方法进行统计,得到第k个序列簇的一组统计值devlk=(h1k,1,h1k,2,...,h1k,100),1≤j≤100,max1k,layerj为由第k个分组线性映射序列簇决定的第j种点火方式对应layer的燃烧树木的最大值,MEANlayerj为由标准序列S决定的第j种点火方式对应layer的燃烧树木的平均值,VARIANlayerj为由标准序列S决定的第j种点火方式对应layer的燃烧树木的方差;5)利用Kolmogorv-Smirnov检测法将各个分组线性映射序列簇得到的统计值devlk(1≤k≤2d-1)分别与标准统计值DEV进行比较,得到分组线性映射序列devlk与标准统计值DEV之间的最大距离6)选定分位点ε,计算距离标准值其中n1和n2分别表示参与比较的两组数据的个数,c(ε)为距离标准值因子系数的值;7)将D1k(1≤k≤2d-1)分别与Dε进行比较,若所有D1k≤Dε,则待测序列a1,a2,...,an具有随机特性,反之若存在一个D1k>Dε,则待测序列a1,a2,...,an不具有随机特性。
2. —种基于分组二次非线性变换的伪随机序列的随机性检测方法,包括如下过程 1>设置待测二元序列为&, a2,…,an, n为序列长度; 2>对待测序列进行二次非线性变换设分组长度为奇整数d,分组后的序列记为b" b2,…,bm, m = n/d,其中1^ =(ad(i—i)+i, ad(丄-"+2, …,ad(丄-"+d), lsi^m;设向量二次函数为f(X"X2,…,Xd) = XiX2+X3X4+…+Xd—2Xd—i+Xd ;将bi作为函数参数代入到二次函数f(&, x2,…,Xd)中,计算d = f(a辱,, ad(1-1)+2,…,ad(M)+d), i=l, 2,…,m,得到长度为m的二次非线性变换序列Cl, c2,…,3〉设置标准随机序列S,并通过渗透测试法,对长度为m标准随机序 列S进行统计得到一组相对应的标准统计值DEV = (Hp H2,…,H,),其中,j对应不同的森林点火方式,I傘IOO, MAX"为由标准序列S决定的第j种点火方式对应的layer燃烧树木的最大值,MEANla5J为由标准序列 S决定的第j种点火方式对应layer的燃烧树木的平均值,VARIANlayJ为由标准序列S决 定的第j种点火方式对应layer的燃烧树木的方差;4〉对二次非线性变换序列d, c2,…,Cm用渗透测试的测试方法进行统计,得到一组统计值dev2二(1^, h22,…,h210。), A2,五 =,max2layCTJ为由序列Cl, c2, ..., cm决定的第j种点火方式对应layer的燃烧树木的最大 值,MEANlayJ为由标准序列S决定的第j种点火方式对应layer的燃烧树木的平均值, VARIANlayJ为由标准序列S决定的第j种点火方式对应layer的燃烧树木的方差;5>利用Kolmogorv-Smimov检测法将二次非线性变换序列得到的统计值dev2分别与标准统计值DEV进行比较,得到dev2与DEV之间的最大距离i 2 = I^:x(A2 .-《): 6>选定分位点e,计算距离标准值Df =e(0、|ii±i^ ,其中nl和n2分别表示参与比较的两组数据的个数,C( e )为距离标准值因子系数的值;7〉将D2与De进行比较,若D2《De,则待测序列ai, a2,…,a。具有随机特性,反 之若D2〉De,则待测序列a" a2,…,a。不具有随机特性。
3. —种基于分组大数表决的伪随机序列的随机性检测方法,包括如下过程 <1>设置待测二元序列为&, a2,…,an, n为序列长度; <2>对待测序列进行分组大数表决设分组长度为奇整数d,分组后的序列记为b" b2,…,bm,其中m二n/d, b1 =(ad(i—i)+i, ad(丄-"+2, …,ad(丄-"+d), lsi^m;对分组序列bi(l《i《m)进行大数表决,得到长度为m大数表决序列d, c2,…,cm。<formula>formula see original document page 3</formula><3>设置标准随机序列S,并通过渗透测试法,对长度为m标准随机序 列S进行统计得到-组相对应的标准统计值DEV = H2,…,H,),其中<formula>formula see original document page 3</formula>对应不同的森林点火方式,l勾'《100, MAX"为由标准序列S决定的第j种点火方式对应的layer燃烧树木的最大值,MEANla5J为由标准序列 S决定的第j种点火方式对应layer的燃烧树木的平均值,VARIANlayJ为由标准序列S决 定的第j种点火方式对应layer的燃烧树木的方差;<4>对分组大数表决序列(^, c2,…,Cm用渗透测试的测试方法进行统计,得到一(max w — M£/IA^ r )2 组统计值dev3二(h3p h32,…,h3100), A3,五 ,一、100,max3layCTJ为由序列Cl, c2, ..., cm决定的第j种点火方式对应layer的燃烧树木的最大 值,MEANlayJ为由标准序列S决定的第j种点火方式对应layer的燃烧树木的平均值, VARIANlayJ为由标准序列S决定的第j种点火方式对应layer的燃烧树木的方差;<5>利用Kolmogorv-Smimov检测法将分组大数表决序列q, c2, ..., cm得到 的统计值dev3与标准统计值DEV进行比较,得到dev3与DEV之间的最大距离<6>选定分位点e ,计算距离标准值1^ =咖),其中nl和n2分别表示参与 比较的两组数据的个数,C( e )为距离标准值因子系数的值;〈7〉将D3与D,进行比较,若D3《De,则待测序列^, a2,…,a。具有随机特性, 反之若D3 > D E ,则待测序列不具有随机特性。
4. 一种基于分组逐位线性映射的伪随机序列的随机性检测方法,包括如下过程(1) 设置待测二元序列为a!, a2,…,an, n为序列长度;(2) 对待测序列进行逐位线性映射设窗口宽度为d,窗口从位l开始逐位移动,设第i个窗口中的数据为bi = (ai, a1+1,…,a^), l么n-d+l ;_*套 , ,设向量rf = ,《,.,《),k= 1, 2,…,2d-l, dk分别表示数值l, 2,…, 2d-l;对窗口中的数据bi:(^ a1+1,…,a她0用向量rf =(<,《,...,《)进行线性运算<=富~—",得到2d-l个逐位线性映射序列簇Clk, c2k,…,cmk, m = n-d+l, k = 1, 2, 3,…,2d-l ;(3) 设置标准随机序列S,并通过渗透测试法,对长度为m标准随机序 列S进行统计得到一组相对应的标准统计值DEV = (Hp H2,…,H,),其中H,S^=w—,jX寸,刚勺纖狄拭I傘IOO, MAX"为由标准序列S决定的第j种点火方式对应的layer燃烧树木的最大值,MEANla5J为由标准序列 S决定的第j种点火方式对应layer的燃烧树木的平均值,VARIANlayJ为由标准序列S决 定的第j种点火方式对应layer的燃烧树木的方差;(4) 对2d-l个逐位线性映射序列簇dk, c2k,…,c^k分别用渗透测试的测试方法进行统 计,得到第k个序列簇的一组统计值dev4k二(h4k, p h4k, 2, ..., h4k, 10。),其中l《k《2d-l,<formula>formula see original document page 0</formula> layJ为由第k个分组线性映射序列簇决定的第j种点火方式对应layer的燃烧树木的最大值,MEANlayJ为由标准序列S决定的第 j种点火方式对应layer的燃烧树木的平均值,VARIANlayJ为由标准序列S决定的第j种 点火方式对应layer的燃烧树木的方差;(5)利用Kolmogorv-Smimov检测法将各个逐位线性映射序列簇得到的统计值 deV4k(l《k《2d-l)分别与标准统计值DEV进行比较,得到分组逐位线性映射序列dev4k与标准统计值dev之间的最大距离"4;:」n;x(./m" --〃,.)( i<《y—n.(6) 选定分位点e,计算距离标准值化e(s、^t^,其中nl和n2分别表示参与比较的两组数据的个数,C( e )为距离标准值因子系数的值;(7) 将D4k(1^^2d-l)分别与Ds进行比较,若所有D4^De,则待测序列an a2,…, a。具有随机特性,反之若存在一个D4k〉De,则待测序列a" a2,…,a。不具有随机特 性。
5. —种基于分组模2加的伪随机序列的随机性检测方法,包括如下过程A) .设置待测二元序列为ai, a2,…,an, n为序列长度;B) .将待测序列a" a2,…,a。进行分组模2加设分组长度为整数d,分组后的序列记为bp b2,…,bm, m = n/d,其中1^ = (ad(i—i)+i, ad(丄-"+2, …,ad(丄-"+d), l^i^m;将bw与b^逐位进行模2加得到分组序列Cj, l勾'《m/2,将Cj级联得到总长度为 (m/2)Xd比特的分组模2加序列d, c2, ...Cm/2;C) 设置标准随机序列S5,并通过渗透测试法,对长度为n/2标准随机序列 S5进行统计得到一组相对应的标准统计值DEV5 = (H5" H52,…,H51Q。),其中i :H5/ ,j对应不同的森林点火方式,I傘IOO, MAX5—J为由标准序列S5决定的第j种点火方式对应的layer燃烧树木的最大值,MEAN5layJ为由标 准序列S5决定的第j种点火方式对应layer的燃烧树木的平均值,VARIAN5layJ为由标准 序列S5决定的第j种点火方式对应layer的燃烧树木的方差;D) 对分组模2加序列用渗透测试的测试方法进行统计,得到一组统计值dev5 =<formula>formula see original document page 0</formula>为由Cl,c2, ..., Cm/2决定的第j种点火方式对应layer的燃烧树木的最大值,MEAN5layJ为由标准 序列S5决定的第j种点火方式对应layer的燃烧树木的平均值,VARIAN5layJ为由标准序 列S5决定的第j种点火方式对应layer的燃烧树木的方差;E) 利用Kolmogorv-Smimov检测法将分组模2加序列得到的统计值dev5与标准统计值DEV5进行比较,得到dev5与DEV5之间的最大距离i 5 = n^x(A5,. -if5,.);F) 选定分位点e ,计算距离标准值D, pil"^ ,其中nl和n2分别表示参与比 wl/ 2较的两组数据的个数,C( £ )为距离标准值因子系数的值;G) 将D5与De进行比较,若D5^D。,则待测序列a,, a2,…,an具有随机特性,反 之若D5〉D。,则待测序列^, a2,…,a。不具有随机特性。
全文摘要
本发明公开了一种伪随机序列的随机性检测方法,它属于检测领域,主要解决现有的随机性检测方法中存在的检测随机特性受局限和片面的问题。其方法是首先对待测序列进行分组线性映射或分组逐位线性映射或奇整数分组二次非线性变换或分组大数表决或分组模2加,得到分组处理后的新序列;再采对选取的标准序列进行统计,得到标准统计值DEV;再对分组处理后的新序列进行统计,得到新序列统计值dev;再计算标准统计值DEV和新序列统计值dev之间的最大距离D;最后将最大距离D与距离标准值Dε进行比较,得出待测序列是否满足随机性。本发明具有检测结果全面、可靠有效的优点,可广泛应用于测量测距、扩频通信、雷达导航和数据保密领域。
文档编号H04L25/02GK101692616SQ200910024378
公开日2010年4月7日 申请日期2009年10月16日 优先权日2009年10月16日
发明者傅佩龙, 刘维博, 马文平 申请人:西安电子科技大学