已阅读5页,还剩53页未读, 继续免费阅读
(信号与信息处理专业论文)数字混沌加密算法研究与实现.pdf.pdf 免费下载
版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
大连理工大学硕士学位论文 摘要 随着多媒体技术和数字通信技术的飞速发展,人们所拥有的信息量越来越大,相互 之间的通讯越来越容易,为了保护数据信息不被恶意窃取,对大量数据的加密处理是非 常必要的。虽然在不同的应用领域对加密算法要求不同,但是对于安全性高和加密速度 快的要求是共通的。 动力学中的混沌系统对初始值高度敏感,其轨道呈现出类似噪声的随机状态,无法 对其进行预测。这样的特点使它和加密算法有了紧密的联系,混沌系统在加密领域有了 广泛的应用前景。但是直接将混沌系统用于加密存在很多不足,并且在数字环境下无法 实现真实的混沌系统,因为混沌系统都是定义在连续域中的,所以在数字环境下实现的 只能称为数字混沌系统。本文通过对混沌系统特性的研究,来设计一种安全性高、加密 速度快的密码实现方案。为了构造加密算法,本文傲了以下工作: 首先介绍了混沌系统的特性,并对混沌系统用于加密的可行性和目前提出的一些数 字混沌加密算法的缺陷进行了分析,这些都是随后设计数字混沌系统的依据。 其次研究了数字混沌系统迭代所产生的伪随机序列的特性,根据数字混沌序列的特 性对混沌的迭代过程进行改进,以克服单纯的数字混沌序列所存在的序列周期太短、统 计特性不够好、迭代运算速度太慢等缺陷。 最后结合目前在通信、信息处理领域应用相当广泛的d s p 芯片实现了一套数字加 密系统。该系统通过u s b 接口对主机的数据进行加密处理,并可以很方便的移植到各 类多媒体、通信等应用领域当中,以实现信息的安全性要求。 通过分析和实验结果表明,该加密算法的处理速度和安全性都基本符合实际应用的 需要。 关键词:混沌系统:数据加密;伪随机序列;o s p 处理器 墼兰型! 查兰鲨堑塞皇塞垫 s t u d y a n dr e a l i z a t i o no n d i g i t a l c h a o t i c e n c r y p t i o ns y s t e m a b s t r a c t w i t ht h e d e v e l o p m e n t o f t h em u l t i m e d i aa n d d i g i 协lc o m m u n i c a t i o n ,p e o p l eh o l dm o r ea n d m o r ei n f o r m a t i o na n dc o m m u n i c a t em u c hm o r e e a s i l y f o rt h es e c u r i t yo f i n f o r m a t i o n ,i ti s n e c e s s a r y t o p r o t e c t i tf r o m e a v e s d r o p p e r a l t h o u g h t h e r ea r ed i f f e r e n td e m a n df o rt h e c i p h e r i n d i f f e r e n ta p p l i c a t i o n , b u ts e c u r i t ya n d s p e e d i n e s sa r e t h ee s s e n t i a l d y n a m i c a l c h a o t i cs y s t e mw i t h i n s t a b i l i t ya n dn o i s y - l i k eo r b i t i sd i f f i c u l tt op r e d i c t , s o m e r e s e a r c hh a v ep o i n t e do u tt h a tt h e r ee x i s t s 廿曲t r e l a t i o n s h i pb e t w e e n c h a o sa n d c r y p t o g r a p h y b u ti ti si n s e c u r i t yt oc o n s t r u c tt h ec r y p t o g r a p h yw i t hc h a o t i cs y s t e m d i r e c t l ya n d f o rd i g i t a l s y s t e m ,i ti si m p o s s i b l e t or e a l i z et h er e a lc h a o t i c s y s t e mb e c a u s e t h a tt h ec h a o si sd e f i n e di n c o n t i n u o u sr e a ln u m b e r nd i g i t a ls y s t e m ;i ti sc a l l e dd i g i t a lc h a o t i cs y s t e m t oc o n s t r u c ta c i p h e r m e t h o d w i t h h i 出s p e e d a n d s e c u r i t y , t h i s p a p e r w o r k e d o n t h e f o l l o w i n g a s p e c t s : f i r s t l y ,i np a p e r i n t r o d u c et h ec h a r a c t e ro f t h ec h a o t i c s y s t e ma n da n a l y z e t h ef e a s i b i l i t yt o d e s i g nc i p h e r b a s eo nt h e d i g i t a lc h a o t i cs y s t e m a n d s o m ew e a k n e s si sp o i n t e do u ti n d i g i t a l c h a o t i cc i p h e r sh a v eb e e n p u b l i s h e d a n d t h e n ,t h ep a p e rs t u d y t h e p s e u d o r a n d o mn u m b e r g e n e r a t e db yd i g i t a lc h a o t i cs y s t e m a n dm a k es o m em o d i f i c a f i o mo nt h ec h a o t i ck e m t i o n t h e s em o d i f i c a t i o n sc a n i m p r o v e t h e w e a k n e s so f d i g i t a lc h a o t i cs y s t e m e f f e c t i v e l y ,s u c h a ss h o r t - c y c l ea n d b e y o n dc o n t r o lo f d i g i t a l c h a o t i cs e q u e n c e ,s t a t i s t i c a ld e g r a d a t i o no f c h a o t i cs y s t e m ,c o n c e a l i n g s y s t e mi n f o r m a t i o na n d l o w p r o c e s s i n gs p e e d l a s ub a s e do nt h ed i g i t a ls i g n a lp r o c e s s o r ( d s p ) ,t h ep a p e rr e a l i z ea na p p l i e de n c r y p t i o n s y s t e m i tc o n n e c t e d w i t hh o s tb yu n i v e r s a ls e r i a lb u s ( u s b ) i n t e r f a c e t h ep r o j e c tc a nb e i n t e g r a t e d w i t ho t h e r a p p l i c a t i o n so f m u l t i m e d i a a n d d i g i t a lc o m m u n i c a t i o ne a s i l y t oe n s u r et h e s e c u r i t yo f i n f o r m a t i o n w i t ht h e p r i m a r ya n a l y z e a n dt h ee x p e r i m e n t a t i o n ,t h ep r o j e c to f t h i sp a p e ro b t a i n st h e g o o dp u r p o s eo f d i g i t a l c h a o t i cc i p h e r k e y w o r d s :c h a o t i cs y s t e m ;d i g i t a lc i p h e r ;p s e u d or a n d o mn u m b e r ;d s p 一 大连理工大学硕士学位论文 1 绪论 1 1 混沌系统 1 1 1 什么是混沌 经典力学中的运动,都可以用相空间中的轨道来表示。若运动方程中不含随机项, 那它描述一种确定性的运动。混沌运动是确定性系统中局限于有限相空间的高度不稳定 的运动。所谓轨道高度不稳定,是指临近的轨道随着时间的发展会指数的分离。这种由 系统参数或初始条件所造成的不同的演化轨道随时间的平均发散率用l y a p u n o v 指 数来测度。两个靠近的初值所产生的轨道,随时间推移按指数方式分离,l y a p u n o v 指 数就是描述这一现象的参量【1 】。 在一维动力系统矗+ 。= f ( ) 中,初始两点迭代后是互相分离的,还是靠拢的,关 键取决于导数吲的值。若吲 1 ,则迭代使得两点分开;若吲 1 ,则迭代使得 点靠拢。但是在不断的迭代过程中,i 孕i 的值也随之而变化,使得时而分离时而靠拢。 l 出1 为了从整体上描述相邻两状态分离的情况,必须对时间取平均,因此l y a p u n o v 指数可 写为 五= 熄i 1 蔷n - i h l 掣l l y a p u n o v 指数的值越大表明轨道的平均发散速率越快,反之则小。工程上常用 最大l y a p u n o v 指数来测度轨道的平均发散速率,而且它也可以作为系统是否是混沌 系统的判据,当l y a p u n o v 指数大于0 时,系统就进入了混沌状态 2 。 由于混沌系统的不稳定性,系统的长时间行为会显示出某种混乱性。混沌是一种貌 似无规则的运动,不需附加任何随机因素亦可出现类似随机的行为,混沌系统的最大特 点在于系统的演化对初始条件十分敏感,从长期意义上讲系统的未来行为是不可预测 的。混沌不是简单的无序,而是没有明显的周期和对称,但却是具有丰富的内部层次的 有序结构。混沌运动在相空间的轨迹具有复杂的拉伸、折叠和收缩的结构,但每一根轨 迹即不自我重复,且局限于有限集合,将此称之为奇怪吸引子。 数字混沌加密算法研究与实现 1 1 2 混沌系统的特性 与其它复杂现象相区别,混沌运动有着自己独有的特征 5 : ( 1 )有界性。混沌是有界的,它的运动轨线始终局限予一个确定的区域,这个区 域称为混沌吸引域,从整体上来说混沌系统是稳定的。 ( 2 ) 遍历性。混沌运动在其混沌吸引域内是各态历经的,郎在有限时间内混沌轨 道经过混沌区内每个状态点。 ( 3 )内随机性。混沌的内随机性实际就是它的不可预测性,对初值的敏感性造就 了它的这一性质。 ( 4 )分维性。分维性表示混沌运动状态具有多叶,多层结构,且叶层越分越细, 表现为无限层次的自相似结构。 ( 5 )标度性。指混沌运动是无序中的有序态,它仍是确定性迭代。 ( 6 )普适性。是指不同系统在趋向混沌态时所表现出来的某些共同特征,它不依 具体的系统方程或参数而变。普适陛是混沌内在规律的一种体现。 1 1 3 混沌系统举例 人们对自然规律和社会现象的认识最初都是从一些具体的事物开始的,混沌的发现 和确定也不例外。混沌系统是确定性的非线性系统出现的类随机行为,其中非线性系统 可以用微分方程或者差分方程来简化,下面我 f 介绍两种研究比较深入的混沌系统,以 便进一步说明混沌系统的特性。 1 1 3 。l 虫口模型- - l o g i s t i c 映射: 虫口模型是昆虫变化的简单数学模型。设是某种昆虫第n 年的个体数目,这个 数目与年份有关,n 只取整数值,第n + 1 年的数目为x 。l ,两者关系可用差分方程 墨,j = x x o ,f n = l 2 ) 描述。最简单的虫口模型是l o g i 氲i c 方程【3 : 沌: k + 。= ( 卜)伽= 1 2 一) ( 1 2 ) 随着参数“取不同的值,l o g i s t i c 映射所产生的序列逐渐由倍周期分岔过渡到混 1 n o 1 时,t 牛t f ( x ) = x ( 1 _ x ) 所决定的离散动力系统的动力学形态十分 简单,除了不动点x 0 = o 外,再也没有其它的周期点,且翔为吸引不动点。 2 大连理工大学硕士学位论文 2 n l x ,( f ) ,伪随机序列发生器输出1 ;如 果x 。( i ) x :( f ) ,伪随机序列发生器输出o ;如果z ( i ) = x 2 ( 耽伪随机序列发生器无输 出。这种方式使得密钥空间增大,序列的复杂度也增大,提高了密码算法的实用性和灵 活性。 2 1 2 基于数字混沌系统的分组加密算法 基于数字混沌系统构造分组加密算法最早由t h a b u t s u 在【1 7 】中提出。设混沌系统 f ( x ) ,它的逆函数为f 。( x ) ,首先将明文块p 作为f 。( z ) 的输入经过厅次迭代计算 出密文c ,如式( 2 1 ) : c = f ”( p ) 恢复明文时将密文代入f ( x ) n 次,如式( 2 2 ) p = f ”( c ) = f ”( f ”( 尸) ) ( 2 1 ) ( 2 ,2 ) 这种分组加密操作每加密一块都从明文开始迭代栉次,玎不能取太大,会影响加密 效率,但是太小的话密文和明文之间的相关性会很大,体现不出混沌迭代的置乱性。而 且分组加密算是按块对数据进行操作的,现在的数据通信中大部分数据传输率部不固 定,这对加密算法的实现带来了难度。 2 2 数字混沌系统的特性 在第一章里我们已经分析了混沌系统对于实现加密算法的优越性,例如混沌运动轨 道的内随机性、遍历性、对初值的敏感性等。但是这些结论都是在混沌系统的连续域得 到的,在数字加密算法中使用的混沌系统,不可能是真实的定义在连续域上的混沌映 射,所有的运算都是在有限精度下进行的。因此在这类加密算法中所采用的混沌系统经 数字混沌加密算法研究与实现 过迭代产生的混沌序列已经不是理论上的混沌系统运行轨道了,它也不具有混沌系统在 连续域的理论分析中得到的那些属性了。例如连续域的混沌序列周期无限大,有限精度 下的伪混沌序列由于精度的限制周期最大为2 ”一1 ( ”是系统所采用的实现精度) ;连 续域的混沌序列分布函数和有限精度下的伪混沌序列分布函数也不相同:由于混沌系统 对初始值的敏感性,使得在系统迭代几次之后,伪混沌序列和真实的混沌运行轨道就毫 无相似之处了。正是由于这些原因,才使得许多基于混沌理论设计的加密算法很轻易的 就被破解掉t 1 9 ,例如上一节所介绍的数字混沌块加密算法。因此在设计数字混沌加 密算法时,首先应该仔细分析有限精度下的数字混沌序列的特性,了解真实混沌系统经 过数字化之后的退化情况。 2 2 ,l 混沌系统的数字化 当我们在数字系统中实现混沌迭代运算时,混沌系统的时域和值域都被离散化了, 也就是说,在每一次迭代运算的时候都引入了量化误差,实现精度高,则平均量化误差 小,反之,则平均量化误差大。 设混沌运动x 。= f ( x 。) ,在数字系统中,从最初的计算x 就引入了量化误差 晶,并且每迭代一次,上次的误差都会传递下来,这样迭代几次之后,得到的数字混 沌序列与真实的混沌轨道就已经相去甚远了。当然这个相去甚远是指运动趋势,而不是 指计算出的x 。与真实值的距离。混沌系统都是有界的,离散化之后的伪混沌序列也不 会超出原来混沌系统的值域,因此两个值之间的差也是有限的。虽然在实现混沌迭代的 数字系统精度不同时,所得到的伪混沌序列完全不同,但是不同的精度都可以体现出混 沌系统数字化之后的一些特性。为了说明数字系统下的伪混沌系统仍可作为加密算法的 研究对象,下边我们来分析一下数字系统下的混沌序列的特性。 2 2 2 数字混沌序列的特性 设数字系统精度为一6 打,那么数字混沌序列的元素就是2 ”个,显然无论什么样 的混沌系统,在数字系统下迭代结果都将使数字混沌序列进入周期状态,并且周期最大 为2 “。下图是一个典型的数字混沌序列,系统初始值x 。,经过,次迭代之后得到x , 而再经过n 次迭代之后又得到了一,这样,伪混沌序列就进入了周期态。注意这里z 。 与蜀。不相等。 1 2 大连理工大学硕士学位论文 图2 1 数字混沌序列 f i g 2 1d i g i t a lc h a o t i cs e q u e n c e 一个混沌系统在不同的初始值,不同的参数下经过迭代得到的伪混沌序列都是类似 于上图的。特别的,当,= 0 且”= 0 时,伪混沌序列将是一个固定值;当玎= 0 时。 伪混沌序列看起来好像被吸引到了一个固定值五。 根据上图,我们还可以看到伪混沌序列已经不具备真正混沌系统轨道的属性了。混 沌系统具有遍历性,无论初始值是多少,迭代的结果将是无周期的,遍历整个相空间 的,而在上图中,如果初始值选为那么系统将至少无法运行到至= u x t 。这几个状 态,而且序列周期还远远小于2 “。由于混沌系统本身的特性,人们现在还无法对伪混 沌序列进行理论上的深入分析,只是从经验中得出了一些统计意义上的结论。例如伪混 沌序列的周期数、最大最小周期长度等与实现精度之间的关系,伪混沌序列l y a p u n o v 指数与真实混沌系统的关系等,但这些经验值对于严格的加密算法来说没什么意义,不 能以此为基础来讨论加密算法的安全性能,因此有必要对数字混沌迭代过程进行改进, 使之既保持真实混沌系统的属性,又不会出现过短的序列周期。 2 3 数字混沌序列用于加密的缺陷及补救措旃 尽管混沌系统有很好的密码特性,但是根据上一节的分析可知,基于数字混沌系统 设计加密算法是无法得到在真实混沌系统中所拥有的密码安全性能的。因此在设计数字 混沌加密算法时如果不考虑混淹系统的具体情况和数字化之后伪混沌序列的特殊属性, 那么这种加密算法的安全性能无法分析,不可能是一种实用的加密技术。以下是对数字 混沌系统进行的分析和相应的改进措施。 2 3 1 数字混沌序列的有限精度问题 如上节所述,在实际数字系统当中实现混沌迭代的时候,由于有限精度引起混沌序 列的退化,使得单纯由数字混沌迭代得到的伪随机序列周期很短且无法控制,序列的统 1 3 数字混沌加密算法研究与实现 计特性也不够好,而且存在很多弱的密钥( 数字混沌迭代有时甚至根本不进入到周期状 态,见2 2 2 节) ,因此直接使用数字混沌系统迭代产生的伪随机序列设计加密算法是 很不安全的,无法抵抗普通的序列密码攻击方法。人们提出了以下几种建议 1 4 】来改善 伪混沌序列的特性,延长并且控制数字混沌序列的周期: 增大实现精度。精度越高,所引起的量化误差也越小,也就越接近真实的混沌系 统,而且实现精度高,数字混沌的状态也多,一6 打精度下有2 ”个状态; ( 1 ) 使用多个或者多维混沌系统。几个混沌系统产生的序列经过非线性组合之后 也可以延长输出序列的周期; ( 2 ) 使用其它伪随机序列对混沌系统进行扰动,例如在1 2 1 节所介绍的几种产生 随机数的方式; ( 3 ) 利用混沌反控制的方法产生伪随机序列 2 0 。 这些方法虽然都不能完全解决有限精度问题,一下子得到理想的伪混沌序列,但是 在实际应用中它们都可以用来提高算法的安全性,在随后的分析中本文还会提到这些方 法并指出它们的优缺点。 2 3 2 混沌映射内在确定性问题 虽然混沌轨道呈现出复杂的状态,但它仍然是确定性的迭代式,有其内在的规律和 确定性,只要知道系统参数和一步迭代值,那么整个伪随机序列就是已知的了,即使对 序列进行信息隐藏处理,例如对序列二值化,或者多步迭代后截取序列等,仍然会留下 一些混沌系统的信息。例如在文献【2 l 】中所指出的,一维t e n t 映射和一维l o g i s t i c 映射 之间存在拓扑共轭关系。其中t e n t 映射迭代式为: f r ( x ) = l 1 1 2 x i ,x 【o ,1 】 ( 2 _ 3 ) 设单调连续函数z = ( 工) ,它存在唯一的可逆函数 “( x ) ,对映射,( x ) 作如下变换 g ( z ) = 而( ,( ( 一1 ( z ) ) ) ) ( 2 4 ) 则称( 2 3 ) 式为,( x ) 到g ( z ) 的拓扑共轭变换。t e n t 映射与l o g i s t i c 映射之间的变换 函数为 一1 4 大连理工大学硕士学位论文 ( 工) = s i n 2 ( r , x 2 ) ,x 0 ,1 】。 它们利用共轭对应的初始值所产生的伪随机序列经过二值化之后 种b e m o u u i 映射: f b ( x ) = ( 2 x ) m o d l ,x 【0 , 1 它和t e n t 映射同属于移位映射,二者的二进制序列的逻辑关系为 f o = b o ,r 。= b 。o b 。一l ( 2 5 1 完全一样。另外 ( 2 6 ) ( 2 7 ) 在有限精度的数字环境下,b e m o u l l i 映射经过很短几次迭代就会收敛至0 ,只有初 始值是无限不循环小数时,产生的序列才是混沌的。因此在数字环境下可以很容易的根 据”一6 打二进制序列( n 是实现精度) 得到b e m o u l l i 映射的初始值6 n ,同时这也是t e n t 映射的初始值,再经过( 2 5 ) 式的变换,就得到了对应的l o g i s t i c 映射的初始值。当然还 有其它一些映射和t e n t 映射有拓扑共轭关系,这样在选取混沌映射、对数字混沌序列 进行二值化等步骤时就要注意克服这类缺陷。 2 4 利用混沌系统设计数字加密算法 没有任何一种加密算法是不可破解的。自从密码研究者们开始尝试利用混沌系统设 计加密算法以来,密码分析者们就不断的寻找每一种混沌加密算法的安全漏洞和破解方 法。由于上节所指出的一些在实际应用中实现混沌加密算法的障碍,使得目前大部分基 于混沌系统的数字加密算法都不符合实际的要求。但正是这些加密者和解密者不断努 力,推动了数字混沌加密走向成熟,使之逐渐成为一种有实际意义的加密手段。本节总 结了一些以前人们对各种加密算法的分析结论,以及一些关于如何设计更加安全高效的 加密算法的建议,依照这些原则设计加密算法,至少可以保证所设计的算法能够抵抗已 知的一些攻击手段。 2 4 1 如何选取混沌系统 设计数字混沌加密算法,当然得有混沌系统。可不可以不去考虑具体的混沌映射而 直接去设计一种在任何混沌映射迭代式( 或大部分混沌映射迭代式) 之下都可行的加密 算法呢( 也就是说在算法框架之内无论选取何种混沌映射迭代,都不会影响算法的安全 性) ? 这个目标很难实现的。首先,虽然已经有了几种对混沌系统的定义,但这些定义 1 5 数字混沌加密算法研究与实现 都不能完全准确的描述混沌系统的本质,没有统一的定义,所以也不能进行统一的处 理;其次,不同的混沌系统轨道属性相差很远,由此数字化之后的伪混沌序列的属性更 是千差万别,如果想提高安全性,只能是针对某类数字混沌序歹进行改进,很难设计出 一种可以改进任何数字混沌序列的算法。这样就出现了如何选取混沌系统的问题。选择 混沌系统,首先应能满足实际应用的安全需求,其次也应该考虑到算法的实现效率。下 面举几个例子来说明。 l o g i s t i c 映射形式简单,生成的伪随机序列统计特性好,而且它是人们非常熟悉的 一种混沌映射,因此有许多混沌加密算法采用l o g i s t i c 映射。但是l o g i s t i c 映射的分布 函数不是均匀的( 1 ,一个均匀分布的随机变最经过l o g i s t i c 映射之后就不再是均匀分布 的了,并且当它的参数变化时,该映射有可能由混沌状态变到周期状态,即使没有进入 到周期状态,那么它的混沌轨道的属性也已经改变,这样如果不固定参数的话,将很难 设计稳定、安全的加密算法。分段线性混沌映射 2 2 】和l o g i s t i c 映射相比,具有均匀的 分布函数,并且参数变化不会导致系统进入到非混沌状态,实现起来迭代式也非常简 单,可以获得很快的加密速度。这种映射的缺点就是采用了线性的分段函数,处理不 当,很容易被破译者利用这一点破解加密算法。针对这一缺陷,桑涛提出了一种分段非 线性混沌映射 2 3 】,这种混沌映射避免了线性迭代式的缺陷,但是在实现过程中需要涉 及到开方等运算,实现效率很低,在安全性要求很高的场合下可以采用这种混沌映射。 尽管混沌系统呈现出种杂乱的随机的状态,但它仍然是确定性的随机态,有时候 人们可以根据混沌轨道预测出混沌系统的参数、初值,从而得到整个混沌系统,所以为 了隐藏一维混沌映射的信息,可以采用两个或者多个混沌系统共同作用来设计加密系 统。这样各个混沌系统之间不仅可以相互隐藏各自的信息。而且增加了密码设计的灵活 性,可以采用不同的方法将几个混沌系统组合起来产生加密算法。 2 , 4 2 如何提高加密效率 设计一种实用的加密算法,不仅要考虑到抵抗各类攻击,具有很高的安全性,而且 还应该易于实现,加密速度快,占用系统资源少。现代的信息传输应用中,数据量越来 越大,实时性要求越来越高,尽管软件、硬件的运算速度也在大幅度提高,但是算法的 高效性仍然是需要特别关注的一个方面。以下是一些提高加密算法效率的建议: ( 1 ) 加密相同数据量的情况下,大部分块加密法需要迭代的次数都要比流加密法 迭代的次数多,因此基于数字混沌设计流加密算法在加密效率上要优于块儿加密法,而 且目前大部分数据通信都不是按照固定速率进行传输的,采用流加密的算法更容易简化 算法,实现对数据流的实时处理: ,1 6 大连理工大学硕士学位论文 ( 2 ) 数字混沌流加密算法的大部分运算都是关于混沌迭代的,因此减少每- 次迭 代的运算量是提高加密效率的关键。在满足安全性要求的前提下,应尽量选择简单的混 沌映射,例如分段线性混沌映射虽然存在可能的漏洞,但是如果设计得当,则可以弥补 这个缺陷,这比直接使用分段非线性混沌映射的效率要高很多,而安全性能不会比后者 的差多少; 。 ( 3 ) 避免使用浮点运算。浮点运算的速度要比定点运算慢很多,加密算法应该尽 量由定点运算完成,而且为了增大数字混沌序列的周期采用过高运算精度也是不可取 的,即使数字混沌迭代的实现精度增大一倍,对于延长序列周期,减少弱密钥都没太大 帮助,但是无论是在软件还是硬件环境下,实现精度增大一倍将大大消耗系统资源,降 低运算速度,总的来说是得不偿失,例如在3 2 位定点运算器上实现6 4 位的定点除法需 要的加减指令数大约是3 2 位定点除法的6 倍左右: ( 4 ) 当存在并行运算时可以考虑用硬件实现。例如在选择多个混沌系统时,就可 以利用硬件系统的并行性设计算法,虽然这样比软件实现困难一些,但处理速度会成倍 增长。 2 。5 小结 本章在对目前已有的一些数字混沌加密算法的分析基础之上,阐明基于混沌理论设 计数字加密算法的最大障碍是数字环境下的有限精度运算导致的混沌系统退化,数字混 沌序列失去了部分混沌轨道的属性,例如遍历性,、无周期性等;混沌系统迭代式的确 定性也可能导致利用很少的信息就推断出系统状态。因此基于混沌系统设计数字加密算 法时不能参照混沌系统的属性来讨论加密效果,必须对数字混沌序列的产生过程进行改 进。在本章最后,列出了一些研究人员对设计数字混沌加密算法的一些建议,这对本文 要实现和改进的算法有很大帮助。 1 7 数字混沌加密算法研究与实现 3 基于数字混沌系统的加密算法设计 3 1 引言 密码学是- - i - j 实用科学,在设计加密算法的时候如果不考虑实际的实现手段和应用 环境,那么设计出来的算法将很难得到应用,整个设计过程也就可能毫无意义了。因此 密码的设计过程也是安全性与实用性权衡的过程。本章基于目前的数字处理器的运算能 力,面向多媒体、数字通信等应用场合对数字混沌加密算法进行研究和改进。设计过程 大致按照第二章的分析结果进行,分别论述混沌系统的选取、数字混沌序列的特性以及 对迭代过程的改进。 3 2 混沌系统的选取 基于混沌系统设计加密算法,首先要根据实际需要选取具体的混沌系统。在这里, 我们选用了分段线性混沌映射【2 2 ,其迭代式为: fx p ,x o ,p ) h t 力= ( x - p ) ( 0 5 - ,功:嚣君 其中参数0 p 0 5 。 根据l y a p u n o v 指数定义式( 1 1 ) ,以上系统的l y a p u n o v 指数为: ( 3 1 ) 五= ! 骢吉( 2 咖刍砌( 0 5 - p ) l n 南= 2 p l n l p + ( 1 - 2 p ) l n 志( 3 2 ) 由于。 o ,得加o ,因此映射m p ) 在o p 0 时,五的精度范围是1 h ; b 系统迭代值为0 。当z = 2 ”。1 时,z 。= 2 ”1 ,继续迭代的结果就是x 2 = 0 。 例如在表3 1 中,当p = l + 0 0 6 2 5 = 1 1 6 时,参数精度为4 b i t s ,x 。经过迭代之后x l 的 取值空间为 1 ,3 ,5 ,7 ,9 ,1 1 ,1 4 ) ;当p = 4 + o 0 6 2 5 = 1 4 时,参数精度为2 b i t s ( 由于参数p 1 2 ,因此这是p 的最低精度) ,经过迭代之后x 的取值空间为 l , 4 ,8 ,1 2 。 ( 3 ) 将( ,p ) ,作为密钥空间时,其中存在很多无效的或者很弱的密钥,也就 是说有的( x 。,p ) 作为密钥使用时,对明文起不到加密作用。例如当 x 。= 8 + 0 0 6 2 5 = 1 2 时,迭代的结果都是x i = 1 6 o 0 6 2 5 = 1 ,当 ( 工。,p ) = ( i ,1 ) ,( 3 ,2 ) ,( 1 0 ,3 ) ,( 1 l ,7 ) 时,都会出现伪混沌序列被吸引到某个固定值的情 况,这些组合都不能作为固定不变的加密密钥来使用。 ( 4 ) 虽然在参数固定不变的情况下,( 3 1 ) 式的数字混沌系统将不具有遍历性和均 匀分布函数,但是在参数可变的情况下,系统的遍历性会有很大的改进,尽管不是完 全的遍历,迭代系统也不会很快被吸引到某个值。 2 0 大连理工大学硕士学位论文 ( 5 ) 0 值过多。当= p 或者x 。= 2 ”,时,都会导致随后的输出序列为、0 ,此 时的数字混沌序列就不可能作为伪随机序列用于加密算法了,因此有必要减少0 :值出现 的次数,增大输出序列的随机性。 从以上分析可知,由( 3 1 ) 式所产生的数字混沌序列特性与系统参数和初始值都有 很大关系,直接使用数字混沌系统设计加密算法是很不安全的,有必要结合数字混沌系 统本身的特点,在系统迭代过程和具体产生密文过程中加入特殊的处理,以保证加密算 法的健壮性。 3 4 数字混沌迭代过程的改进 本节针对3 3 节所述数字混沌序列的特性,在不过多增加运算量的前提下,对数字 混沌迭代过程加以改进,使整个系统所产生的伪随机序列更加类似噪声,并且减少弱密 钥的比例,扩大可用密钥的空间,使密钥的选取具有更大的随机性。改进的方法包括对 混沌迭代系统的扰动、对弱密钥的判别及修正等。 3 4 1m 序列扰动法i 由于数字混沌系统迭代所产生的伪混沌序列周期不可预测,难于精确分析,。并且远 远小于2 ”( n 是实现精度) 。即使提高了实现精度,伪混沌序列的平均周期仍然不会 有大的提高,并且还是会存在如3 3 节中所述的序列被吸引到某个固定值的情况。为了 改进伪混沌序列的周期特性,延长并且控制其序列周期,周红等人在文献【2 4 】中提旷f 利用m 序列对混沌迭代系统进行扰动的方法。扰动的结构如图3 1 所示: 输入r 图3 1m 序列扰动法 f i g 3 1p e r t u r b i n g w i t hu l - s e q u e n c e 2 1 数字混沌加密算法研究与实现 首先利用产生的掰序列通过如下方法形成扰动向量,( f ) p ( f ) = ( 一1 ) 加2 。d ( t - + 1 ) ,t 2 ( 3 3 ) 然后每经过1 次迭代之后对数字混沌系统的轨道进行扰动,过程如下式,其中 x ( ,) 是数字混沌系统的输出( 其中的异或运算也可采用其它扰动运算) : x ( r ) = p 0 ) o 一( r ) ( 3 4 ) 桑涛在文献 2 5 中大致估算了输出序列的周期,如果m 序列的周期为r ,则经过扰 动后得到的输出序列的周期p 是: t = 盯t ( 3 5 ) 其中盯是正整数,盯1 。虽然混沌系统的周期不可预测,但是m 序列的周期是
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 2023年锡林郭勒盟辅警招聘考试题库带答案详解(完整版)
- 2024年宣城辅警协警招聘考试真题附答案详解(考试直接用)
- 2024年大庆辅警协警招聘考试真题含答案详解(完整版)
- 2024年定西辅警招聘考试真题带答案详解
- 2023年鹤岗辅警招聘考试真题及1套完整答案详解
- 2023年荆州辅警协警招聘考试真题及答案详解(易错题)
- 浙江省杭州市萧山三中2025年高二化学第一学期期末质量跟踪监视试题含解析
- 陕西省西安一中2025年高二化学第一学期期末质量检测模拟试题含解析
- 陕西省重点初中2025年数学高二上期末检测试题含解析
- 吉林省乾安七中2025-2026学年生物高一上期末联考试题含解析
- 5G通信模块设计项目分析方案
- 汽车维修入股协议合同
- 教育家精神课件
- SolidWorks-全套基础培训教程
- 冰袋包装机安全操作及保养规程
- 2023年国家公务员考试行测真题及答案(省级)
- 民营医院经营管理民营医院经营年度总结
- 艾默生空调技术手册PEX
- 公务员制度教案
- GB/T 7064-2017隐极同步发电机技术要求
- GB/T 40356-2021厨用刀具
评论
0/150
提交评论