一种基于S盒的WSN动态复合混沌加密方法与流程

文档序号:17001339发布日期:2019-03-02 01:49阅读:362来源:国知局
一种基于S盒的WSN动态复合混沌加密方法与流程

本发明属于信息安全技术领域,具体涉及一种基于s盒的无线传感器网络(wirelesssensornetwork,wsn)的动态复合混沌加密方法。



背景技术:

随着信息产业的发展,数据安全性面临着巨大的挑战。加密方法是保证其安全性至关重要的手段。当前加密方法可分为两大类,一是流密码,一是分组密码。对于分组密码来说,应能抵抗各种各样的攻击,如线性攻击、差分攻击。s盒是分组密码中的唯一的非线性部件,它决定着加密系统的混淆特性。在des、aes以及sm4中,s盒是重要组成部分之一。在当前的研究中,所设计的s盒应满足许多的标准,主要有双射特性、非线性特性、严格雪崩效应、差分均匀性(等概率输入输出异或分布)、输出比特间独立性。由于其特殊性,研究并设计一个性能稳健的s盒是非常重要的。当前设计s盒的方法很多,混沌理论由于其特殊性和快捷性让人们接受。混沌理论依赖于自身的初值敏感性、伪随机性和遍历性等特征,在研究非线性、确定性和动态系统中起了很大的推动作用,主要的应用领域包括物理学、机器人学、生物学、金融学及密码学。由于混沌理论与密码学之间存在着某种天然的属性,近年来,在这方面的研究逐渐受到了人们的关注。

jakimoski和kocarev[1]提出了一种基于混沌映射的s盒的产生方法。tang[2]等提出了一种基于2d面包师映射的s盒产生方法。chen[3]等对此应用3d面包师映射改进了产生s盒的方法。yin[4]等提出了一种基于连续混沌迭代的s盒产生方法。在文献[5]中,作者应用lorenz系统和特殊移位的方法产生s盒。文献[6]中根据混沌系统的特征设计了一种动态s盒。wang[7]等提出了一种基于tent映射的动态s盒的产生方法。在文献[8]中,提出了一种基于混沌和遗传方法的启发式s盒设计方法。文献[9]中,扩展了多种加密方法,形成了一种随机的混沌s盒的产生方法。文献[10]中,作者基于猫映射和tderc系统设计了一个性能良好的s盒。文献[11]基于混沌映射并采用复合的方法提出了一种s盒的设计方法。文献[12]提出了一种基于无线传感器网络的有效安全的s盒设计方法,满足s盒的设计标准并能很好的提高了s盒的实现效率。但是这些方法所产生的s盒所应用到的混沌映射比较单一,实现方式主要体现在混沌序列的整型化和s盒的构建方面。



技术实现要素:

本发明基于这些特点提出了多混沌系统,首先找到了几个混沌方程并研究了其混沌特性,多混沌解决了混沌映射的单一性问题。并将图像置乱的思想引入到s盒的设计中来,对产生的数据序列利用面包师映射进行置乱,增加了其s盒的非线性特性,所产生的s盒性能将更加符合设计标准,安全性更好。同时,此方法既可以作为动态s盒来使用,也可以通过此方法找到性能良好的静态s盒。

本发明要求保护的是一种基于s盒的wsn动态复合混沌加密方法,包括其具体方法内容及具体实施方式。在该方法中,选取多个混沌方程,严格证明了各个方程以及复合混沌方程的混沌性、不变概率密度和相关性,混沌性证明包括初值敏感性、拓扑传递性和周期的稠密性。建立一种创新型的动态模型,形成了一种新的动态复合混沌系统。将设计的动态复合混沌系统与线性同余发生器结合,采用离散化的方法构造s盒并进行置乱。

1.复合混沌方程的建立

复合方程如下:

其在x∈i=[-1,1]上是混沌的。

2.s盒产生方法

2.1混沌序列的产生

本发明利用复合混沌方程建立如下的动态复合混沌系统,如下:

其中xi∈i=[-1,1]。本系统将动态的选择其中的一个函数来产生混沌序列。当得到迭代值小于0的时候选择函数f0,否则选择f1。其具体产生混沌序列的步骤如下:

(1)输入初值x0和y0。

(2)计算x=(x0+y0)/2,如果x<0,记录f0(x)迭代值作为混沌序列值,否则记录f1(x)迭代值,进行(3)。

(3)利用x0=f0(x0)和y0=f1(y0)更新x0和y0。

(4)直到产生足够的混沌序列,则结束。

2.2伪随机序列的产生

(1)首先,设定混沌系统的初值状态为x0和y0,通过动态复合混沌系统,得到作为即将要处理的混沌序列。

将混沌吸引域[-1,1]划分为n=65536个子域πi,i=0,1,…,n-1。πi=[ti,ti+1)(i=0,1,...,n-2),πn-1=[tn-1,tn],如式(3):

将得到的65536个子域从左到右依次标记为0,1,…,65535。判断zk落到[-1,1]对应的0到65535的哪个区间,取得这个大于等于0小于65536的整数值作为混沌二进制字节序列如式(4):

(2)对于正弦混沌序列进行如下处理

迭代正弦混沌方程产生混沌实值序列利用式子(5):

s2(k)=[floor(yk·108)]mod65536(5)

通过式子可产生离散化的混沌序列

(3)线性同余随机数发生器

在数学计算中,线性同余法随机数发生器(lcgs)是最常见的、最简单的随机数生成的方法。其一般的形式为:

xi=(axi-1+b)mod(m)(6)

其中:初始值x0必须满足0≤x0<m,m>0;a为乘子,0<a<m;b为增量,0≤b<m。通常用lcgs(m,a,b,x0)表示。当b=0时,称为乘同余法;当b≠0时,称为乘加同余法。由于在wsn节点上的效率问题,模m一般取为2的整数次方,这样使得式子可以直接应用移位操作代替。在本发明中,采用非常有名的―lewis-goosman-miller”最小标准[18](取a=16807、b=0及m=231-1),并且知道此时lcgs的周期为231-1。通过这种方式产生的随机序列记为

2.3s盒设计方法

通过3.2中产生混沌序列的方式可以产生离散混沌序列其产生s盒序列的方法如下:

通过上式产生一系列的整数值,然后由mod(s(k),256)转换为相应的位于0~255值,直到产生所有的0~255值,否则就继续进行构造。将最后输出的序列,转制成16×16的表格,即为所构造的8×8s盒。2.4将8×8s盒进行重构

本发明提出了一种新的方法,将所产生的8×8s盒利用图像置乱的方法,重新将所形成的s盒中的数据进行置乱,形成一个更加混乱,非线性度更好的s盒。baker映射是图像加密方法中常用的置乱方法。连续的baker映射是混沌双射,如式子(8)。

面包师映射的两个操作为:拉伸和折叠。但在使用baker映射进行置乱之前,首先应对其进行离散化处理。本发明离散化式子为:

其中m,n是s盒数据的行和列数,在这里m=n=16,(x,y)是原始数据在表格中的位置坐标,(x',y')是同一数据在新表格中的位置坐标。

通过猫映射置乱后的8×8s盒将具有更好的随机性,更加安全可靠。

3s盒实现及测试

3.1s盒产生举例

本发明由于初值的不同产生许多不同的s盒,这种方法可以是形成一种动态的s盒方法。当取不同的初始值的时候,将会形成不同的8×8s盒。在本发明的研究中我们测试多组初值所产生的s盒,均能满足s盒的性能安全要求。现令初值为x0=0.123,y0=0.456,z0=0.789,linear1=12,linear2=365,所产生的s盒如表2。同时,选择文献[2][5][8][15]中产生的s盒进行对比,从而了析本发明方法的优良特性。性能强健的分组密码应该能抵抗各种攻击,例如线性攻击、差分攻击。在sp结构中,所设计的s盒应满足许多的标准,主要有双射特性、非线性特性、严格雪崩效应、差分均匀性(等概率输入输出异或分布)、输出比特间独立性。

表2构造的8×8s盒

3.2双射特性

文献[16]提出了s盒满足的双射的充分必要条件:s盒中各个分量布尔函数是双射fi的线性运算之和为2n-1,即

其中ai∈{0,1},(a1,a2,…an)≠(0,0,…0);wt()表示汉明重量。只要满足上述的式子,即可知道fi是0,1平衡的,且是双射的。换句话说,在区间[0,2n-1]中n×n的s盒对于不同的输入有不同的输出值。通过观察,很容易知道本发明所提出的s盒中数据正好是0~255之间的所有数据,故满足双射的性能。

3.3非线性特性

令f(x):为n元布尔函数,f(x)的非线性度nf被定义为如下形式

其中,ln表示仿射函数集,dh(f,l)为f与l的汉明距离。

在本发明中,应用walsh谱来表示f(x)的非线性度,其表达式为:

walsh谱能用以下式子表示:

其中,ω∈gf(2n)和x·ω表示x与ω的点积,其表达式为

在线性密码分析中,其非线性度越大则说明s盒的抗线性分析性越好。如表3就是s盒非线性度的比较。与前人提出的s盒非线性特性比较,除文献8外其他所有s盒的非线性度的平均值和最小非线性度均小于本发明所提出的方法,满足基本的抗线性密码分析性,因此本发明的s盒在抵抗线性密码分析中是很好的。

表3s盒非线性度对比

3.4严格雪崩效应

在1986年,webster和tavares首先提出了严格雪崩效应这一准侧。其具体的定义为:如果一个函数满足严格雪崩效应准则,当输入值改变其中的一个比特,其输出值将有一半的比特随之改变,也即输出比特改变的概率为0.5.通常,我们用相关矩阵来描述s盒的严格雪崩效应。如果矩阵的每一个pi,j都接近于理想值0.5,这个s盒就几乎满足严格雪崩效应。

令ei=[δi,1,δi,2,...δi,n]t,其中

且(·)t表示矩阵的转置。则有

除此之外,式子可以用来表示相关矩阵的估计偏差。

本发明采用构造相关性矩阵的方式来验证s盒是否满足sac。如表4,为本s盒的严格雪崩效应的相关性矩阵。表5为几种s盒的相关性矩阵的平均值和估计偏差的比较。此s盒相关行矩阵的估计偏差是0.02976,比其他的s盒更小,平均值为0.4976,比其他的s盒更接近于理想值0.5。由此可以知道,本发明的s盒具有更好的严格雪崩效应。

表4s盒的相关性矩阵

表5几种s盒的sac性能比较

3.5输出比特间的独立性

输出比特间的独立性是密码学设计的另一个重要到的性能。这说明,对明文产生的雪崩向量集,所有的雪崩向量应该是两两相互独立的。为了计算每两个雪崩向量的独立性,可以计算其相关系数。对于给定的两个变量a和b,

其中,ρ{a,b}是a和b的相关系数;cov{a,b}=e{ab}-e{a}e{b}是a和b的协方差;σ2{a}=e{a2}-(e{a})2

这里我们采用另外一种由度量方法,此方法是c.adams和s.tavares所提出的。令f1,f2,...fn为s盒的布尔函数,若s盒满足输出比特间的独立性,应当有很高的非线性度并且满足严格雪崩效应。当满足严格雪崩效应时,则说明其能满足输出比特间独立性。

通过表6和表7,可以看出bic-非线性度大部分均为100以上且bic-sac均接近于0.5,则此s盒具有很好的输出比特间的独立性。表8同其他s盒的这一特性进行了比较,本发明所提出的方法bic-非线性度的值更大,且bic-sac的值均接近于0.5,此方法具有更好的输出比特间的独立性。

表6s盒输出比特间独立性(bic-非线性度)

表7s盒输出比特间独立性(bic-sac)

表8s盒的bic特性比较

3.6等概率输入输出异或分布

biham和shamir在文献[17]引入了差分密码分析,这种方法是基于输入输出异或分布表的不平衡性。对于s盒来说,输出的改变能从输入的改变获得,对每一个异或输入都能获得每一个等概率输出。也就是说,如果s盒能比较接近等概率输入输出分布,那么其就会具有抗差分攻击性。

令s(x)=(f1(x),…fm(x)):是一个多输出函数,令

称η是s(x)的差分均匀性。

在实际计算中,也可以利用差分逼近概率来表示等概率输入输出分布。一个输入差分δx唯一的映射到输入差分值δy,从而保证每一个x都有一个统一的映射概率。其表达式为:

其中,x是输入的集合,2n是输入集合元素的个数。dpf代表给定每一个差分值δx,其输出δy的最大可能性。

从表9和表10中可以看到最大的差分值是10,对于一个s盒,dpf值越小,则抵抗差分攻击的能力越强,通过dpf对比,说明这几种s盒都能够较好得抵御差分攻击。

表9等概率输入输出异或分布

表10s盒差分均匀性比较

3.7lp和melp

线性近似概率(lp)被定义为(21)

其中,a和b分别为输入输出标志,x为可能的输入集合,2n为元素的数量。

最大的线性概率是事件的最大的不平衡的值。最大预期线性概率(melp)被定义为:

表11列出了各个s盒的关于lp和melp的比较,通过此可以知道,本发明提出的s盒的lp值比其他s盒更小,且melp与其他s盒相近,则此方法所产生的s盒具有更好的性能。

表11s盒的lp和melp比较

附图说明

图1是f(x)=πsinx序列的自相关和互相关函数示意图;

其中(a)是自相关函数,(b)是互相关函数;

图2是动态复合混沌系统序列产生流程图;

图3是动态复合混沌系统和lcgs混合设计流程图;

图4是f轮函数的结构示意图;

图5是方法加解密效果图;

其中(a)是加密前明文数据,(b)是加密后密文数据,(c)是错误解密后密文数据(k密钥加1),(d)是正确解密后的明文数据;

图6是加解密系统模块架构图;

图7是加解密实现的具体模块示意图;

图8是客户端加解密功能展示图;

图9是客户端实时解密功能展示图。

具体实施方式

为了更好地了解本发明的技术方案,以下结合附图对本发明的实施方式作进一步的描述。

第一步,搭建仿真测试环境。本文采用的ti公司的cc2430射频系统,其型号8051单片机,是常用的工业用的型号,主要的配置参数为:ram存储空间为8k,128k的flash,32mhz的稳定频率;

第二步,采用一个温度传感节点进行温度信息的采集加密测试,按照附图3、图5将密码方法嵌入到节点的数据处理模块;

第三步,设定采集间隔为每1s便采集处理发送一次信息,节点采集的数据是经过wsn进行分析过的,当wsn分析后的数据在节点中进行加密处理之后,发送给汇集节点,汇集节点主要任务及时将所接收到的数据传输给用户终端;

第四步,开始采集仿真,用户通过串口将采集到的密文信息存储到相应的目录当中;

第五步,用户打开客户端软件进行解密操作,如附图8、图9。

参考文献

[1]jakimoskig,kocarevl.chaosandcryptography:blockencryptionciphersbasedonchaoticmaps.ieeetranscircuitssysti2001;48:163.

[2]tangg,liaoxf,cheny.anovelmethodfordesignings-boxesbasedonchaoticmaps.chaossolitonsfractals2005;23:413–9.

[3]cheng,cheny,liaoxf.anextendedmethodforobtainings-boxesbasedon3-dimensionalchaoticbakermaps.chaossolitonsfractals2007;31:571–9.

[4]yinr,yuanj,wangj,shanx,wangx.designingkey-dependentchaotics-boxwithlargerkeyspace.chaossolitonsfractals2009;42:2582–9.

[5]ozkaynakf,ozerab.amethodfordesigningstrongs-boxesbasedonchaoticlorenzsystem.physletta2010;374:3733–8.

[6]tangg,liaox.amethodfordesigningdynamicals-boxesbasedondiscretizedchaoticmap.chaossolitonsfractals2005;23:1901–9.

[7]wangy,wongkw,liaox,xiangt.ablockcipherwithdynamics-boxesbasedontentmap.communnonlinearscinumersimul2009;14:3089–99.

[8]wangy,wongkw,lic,liy.anovelmethodtodesigns-boxbasedonchaoticmapandgeneticalgorithm.physletta2012;376:827–33.

[9]lambic′d,zˇivkovic′m.comparisonofrandoms-boxgenerationmethods.publicationsdel’institutmathematique2013;93(107):109–15

[10]hussaini,shaht,gondalma,etal.efficientmethodfordesigningchaotics-boxesbasedongeneralizedbaker’smapandtdercchaoticsequence[j].nonlineardynamics,2013,74(1-2):271-275

[11]d.anovelmethodofs-boxdesignbasedonchaoticmapandcompositionmethod[j].chaos,solitons&fractals,2014,58:16-21

[12]zaibig,peyrardf,kachouria,etal.efficientandsecurechaotics‐boxforwirelesssensornetwork[j].securityandcommunicationnetworks,2013.

[13]混沌动力学[m].上海翻译出版公司,1990:1-90.

[14]郝柏林.从抛物线谈起—混沌动力学引论.上海科学技术出版社,1993:100-13

[15]asimm,jeotiv.efficientandsimplemethodfordesigningchaotics-boxes[j].etrijournal,2008,30(1):170.

[16]a.f.webster,s.tavares,in:advancesincryptology:proceedingsofcrypto_85,lecturenotesincomputerscience,1986,pp.523–534

[17]bihame,shamira.adifferentialcryptanalysisofdes-likecryptosystems.jcryptol1991;4(1):3–72

[18]lewispaw,goodmanas,millerjm.apseudo-randomnumbergeneratorforthesystem/360[j].ibmsystemsjournal,1969,8(2):136-146.

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1