- 1、原创力文档(book118)网站文档一经付费(服务费),不意味着购买了该文档的版权,仅供个人/单位学习、研究之用,不得用于商业用途,未经授权,严禁复制、发行、汇编、翻译或者网络传播等,侵权必究。。
- 2、本站所有内容均由合作方或网友上传,本站不对文档的完整性、权威性及其观点立场正确性做任何保证或承诺!文档内容仅供研究参考,付费前请自行鉴别。如您付费,意味着您自己接受本站规则且自行承担风险,本站不退款、不进行额外附加服务;查看《如何避免下载的几个坑》。如果您已付费下载过本站文档,您可以点击 这里二次下载。
- 3、如文档侵犯商业秘密、侵犯著作权、侵犯人身权等,请点击“版权申诉”(推荐),也可以打举报电话:400-050-0827(电话支持时间:9:00-18:30)。
- 4、该文档为VIP文档,如果想要下载,成为VIP会员后,下载免费。
- 5、成为VIP后,下载本文档将扣除1次下载权益。下载后,不支持退款、换文档。如有疑问请联系我们。
- 6、成为VIP后,您将拥有八大权益,权益包括:VIP文档下载权益、阅读免打扰、文档格式转换、高级专利检索、专属身份标志、高级客服、多端互通、版权登记。
- 7、VIP文档为合作方或网友上传,每下载1次, 网站将根据用户上传文档的质量评分、类型等,对文档贡献者给予高额补贴、流量扶持。如果你也想贡献VIP文档。上传文档
查看更多
基于多混沌映射的信息加密算法
混沌在信息加密中的应用是目前的研究热点之一,为了增强混沌加密的安全性,我们提出一种基于多个混沌离散映射的动态加密算法。
利用多个混沌映射的信息加密算法
一、三个混沌映射
(1)Logistic映射
Logistic映射是一个自治一维映射:
当μ=2时,系统为满映射的混沌态。文中使用μ=2的Logistic映射。
(2)Cubic映射
当3.2≤r≤4时,输出为混沌序列(-1≤xn≤1)。文中Cubic映射的r值与输入的密钥有关。
(3)ArnoldCat映射
ArnoldCat映射是一个保面积混沌映射:
该映射虽然没有吸引子,但它利用矩阵相乘增大x和y来实现“ 拉伸”,又通过取模使x和y发生 “折叠”,而拉伸和折叠是产生混沌运动的两个典型因素,使其输出为混沌序列(0≤xn≤1,0≤yn≤1)。其Lyapunov指数为:
文中提出的加密算法使用Logistic和Cubic映射构成两个级联混沌子系统a和b,并根据密文反馈及ArnoldCat映射的输出改变两个子系统a和b的迭代次数,两个子系统的输出和明文经加密函数处理后得到密文。
二、基于多混沌映射的信息加密算法描述
文中提出的混沌加密系统框图如图所示。它由混沌级联子系统a和b、ArnoldCat映射和加密函数f(_)构成。子系统a和b都是由两级离散混沌映射联接构成:子系统a的第一级和第二级依次是Logistic映射和Cubic映射;子系统b的第一级和第二级则依次是Cubic映射和Logistic映射。
在对第i个明文mi加密时,子系统a和b各迭代ηi次和_i次后,分别输出ui和wi。ui、wi及明文mi经加密函数f(_)处理后,产生密文ei。同时利用ei的值改变ArnoldCat映射下次迭代运算的初值,进行若干次迭代后,根据所得结果相应地改变子系统a和b下一轮的迭代次数,为第i+1个明文mi+1的加密做准备。
加密系统中各混沌映射的初值和初始迭代次数均与密钥有关。密钥K分为K1、K2和K3三部分,其中实数K1,K2∈[3.2,4],K3是由n(n_16)个字符构成的字符串(K3=k1k2%kn)。
将子系统a和b中Cubic映射的参数r分别设置为K1、K2。其余混沌映射的初值和和初始迭代次数根据K3确定。加密函数:
加密算法步骤如下:
(1)根据密钥k1k2%kn(二进制数)生成初始值:
子系统a的初值:
子系统a的迭代次数:
子系统b的初值:
子系统b的迭代次数:
Arnold Cat映射的初值:
(2)子系统a和b分别经ηi(i=1,2,3,%)次和_i次迭代后,输出ui和wi;
(3)ui、wi以及第i个明文mi经加密函数后,生成第i个密文ei;
(4)计算△=ei/256,并将
作为Cubic映射的迭代初值,经3次迭代运算后,得到xC,i+1和yC,i+1;
(5)根据xC,i+1和yC,i+1计算子系统a和b下一轮的迭代次数ηi+1和_i+1。
然后重复以上步骤(2)~(5),直至所有明文均加密完毕。解密是加密的逆过程,解密函数为:
该解密算法的步骤与加密算法相似。
三、基于多混沌映射的信息加密算法说明
从根本上来说,混沌加密主要是利用混沌系统生成不可预测的类随机信号,来阻止非法攻击者得到系统的确定特性,以保证系统的安全性。或者说,混沌加密实际上是利用信号的不可预测性隐藏混沌系统的确定性。为此,上图所示的加密系统中使用了混沌映射的级联和混沌映射迭代次数的动态变化,将混沌映射的输出和明文文件加密函数进行非线性处理,以提高密文的不可预测性。
设计过程中,在保证算法安全性的前提下,为降低算法复杂度,选用了三个运算较简单的混沌映射。其中,构成级联混沌子系统的Logistic映射和Cubic映射,其值域相同,便于直接级联。而且参数μ=2的Logistic映射处于满映射混沌态,避免了Logistic映射在某些μ值下存在无限窗口的缺点。级联混沌子系统的迭代次数根据ArnoldCat映射的输出动态改变,ArnoldCat映射是保面积映射,没有吸引子,有助于提高算法的安全性,且易于实现。
另外,图中的密文反馈是必不可少的。若没有密文反馈,则在明文中有重复字符时,其密文会呈现明显的规律性,使系统易被非法攻击者破译。加了密文反馈之后,即使明文中有连串的重复字符,对应的密文仍然是类随机的。实际上,密文反馈使明文中的任意字符均影响到其后字符对应的密文,加强了算法的安全性。
由于算法处理的是一个字节的明文字符(0~255),因此在算法中使用了取模256的运算。子系统a和b的迭代次数μ_的下限值取为3,以减小混沌系统前后状态之间的关联性。同时,设置了迭代次数的上限值,增大上限值,有利于提高算法的安全性,但会降低算法的运行速度。实际应用中,可根据需要对迭代次数的上限
文档评论(0)