CN101022331B - 一种基于载体的混沌加密方法 - Google Patents
一种基于载体的混沌加密方法 Download PDFInfo
- Publication number
- CN101022331B CN101022331B CN2006100174189A CN200610017418A CN101022331B CN 101022331 B CN101022331 B CN 101022331B CN 2006100174189 A CN2006100174189 A CN 2006100174189A CN 200610017418 A CN200610017418 A CN 200610017418A CN 101022331 B CN101022331 B CN 101022331B
- Authority
- CN
- China
- Prior art keywords
- pos
- bit
- carrier
- plaintext
- ciphertext
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Landscapes
- Storage Device Security (AREA)
Abstract
本发明属于信息安全领域中的密码技术,它提出了一种基于载体的混沌密码方法(CBCES)。它借助了信息隐藏思想,使用载体来替换相关文献中的查找表;和后者相比,载体的选择更加灵活,可以是公开的数字化资源如图像,也可以是传输双方商定的私有资源等。混沌映射被用于产生“嵌入位置”,加密过程中把明文视为比特流,每次加密一个比特,每个明文的加密方式由控制函数确定。控制函数的引入使得该加密方案与其它基于搜索机制的加密方案相比,加密速度得到了提高,密文长度有所缩短,密文分布更均匀而***的安全性也得到了增强。
Description
技术领域
本发明属于信息安全领域中的密码技术,是一种利用电子计算机技术、信息隐藏技术和混沌***实现的数字密码方案。
背景技术
随着计算机速度的不断提高,以及分布处理技术的日益发展,原有的一些加密算法正逐步被破解。目前,国内所采用的加密算法大都是国外将要淘汰的低强度加密算法。由此所带来的不安全因素已成为当前阻碍经济发展和威胁国家安全的一个重要问题。
混沌被认为是一种随机和不可预测的现象,初始条件的微小改变都会使得在一定的迭代后得到两个截然不同的序列。由序列本身也不可能预测将产生的下一个数值,而从序列重构混沌映射也是不可能的;由于序列在值域上均匀等概率地分布,使得它具有白噪声性,混沌呈现出来的这种伪随机性可以用来掩盖明文信息,安全地传输密文信息。因此混沌拓宽了密码设计的思路,为开发新的密码方案提供了丰富的机制和方法。
1998年M.S.Baptista等人在文献“Cryptography with Chaos”[Phys.Lett.A,1998,240(1-2):50-54]中提出了一种基于搜索机制的数字化混沌密码,得到了广泛关注。针对原方案中密文的概率分布不均匀、加密速度慢和密文长度较长(至少为明文长度的2倍)等问题,李树钧等人在文献“Performance Analysis of Jakimoski-KocarevAttack on A Class of Chaotic Crypto-systems”,[Phys.Lett.A,2003,307(1):22-28]中通过对输出的密文进一步加密以改善原方案中不均匀的密文概率分布;K.-W.Wong在文献“A FastChaotic Cryptographic Scheme with Dynamic Look-up Table”[Phys.Lett.A,2002,298(4):238-242]中引入了动态更新的查找表技术以获得更快的加密速度和更高的安全性;其后K.-W.Wong等人又将每个明文字符在动态查找表中的索引值作为密文,有效地降低了密文长度。与此同时,也出现了许多对该类密码体制的攻击报告,一些方案已被证明是不够安全的,如文献“A Fast ChaoticCryptographic Scheme with Dynamic Look-up Table”[Phys.Lett.A,2002,298(4):238-242]中提出的基于动态查找表的一种快速加密方案已被证明是不够安全的。目前为止Baptista密码方案及其改进版本仍没有很好地解决密文长度较长、加密速度较慢等问题。
发明内容
本发明的目的在于克服上述诸方案的不足之处,提出了一种基于载体的混沌加密方法(CBCES)。
它借助了信息隐藏思想,使用载体来替换相关文献中的查找表;和后者相比,载体的选择更加灵活,可以是公开的数字化资源如图像,也可以是传输双方商定的私有资源等。混沌映射被用于产生“嵌入位置”,加密过程中把明文视为比特流,每次加密一个比特,每个明文的加密方式由控制函数确定。
控制函数的引入使得该加密方案与其它基于搜索机制的加密方案相比,***的安全性得到了提高,密文长度有所缩短。该方法有效地解决上述问题,使得加密速度较快,密文长度较短,密文分布更均匀,安全性更高。
附图说明
图1是第i个明文比特Pi的加密过程示意图;
图2是第i个明文比特Pi的解密过程示意图;
图3是示例的用于加密的标准baboo图像;
图4是标准baboo图像的最低位平面示意图。
具体实施方式
混沌映射Γ:它负责产生嵌入位置Posk,Xk={x1k,x2k,Λ,xnk}表示n维混沌映射的当前状态。为了提高***的安全性建议n≥2,这样构造出来的嵌入位置函数和控制函数就可以更复杂,能较少地泄露Xk的信息。当然也可以选择多个混沌映射分别负责嵌入位置的生成和控制函数的产生。令A表示混沌映射Γ的控制参量的集合。
载体ζ:本文的载体类似于上述文献中的查找表,不同的是载体中查找的对象是其中的某些比特,而且在选择上有更大的自由,它可以是已有的公开数字资源如图像、文本、音频等,也可以是传输双方商定的私有资源如伪随机序列等。载体的使用进一步增加了密文不确定性,也使得***的安全强度变得更高。
“嵌入”位置Posk:即Pi的待“嵌入”位置,可由公式求得:Posk=Θ(Xk,N),Θ(·)将Xk通过某种运算映射到区间[0,N)上,N为载体的大小。定义bit[Posk]表示载体ζ中第Posk个比特。
控制函数T(Xk):决定第i个明文比特Pi的加密方式,T:Xk→{0,1},T(·)将Xk通过某种运算映射到{0,1}上。控制函数降低混沌映射的迭代次数,缩短了密文,提高了***加密/解密的速度,同时也提高了***的安全性。定义τk=0OR1为控制标识,代表T(Xk)的值。令B表示控制函数T(Xk)的参数集合。
第i个明文Pi的加密/解密过程可描述如下。
Pi的加密过程
使用控制函数T(Xk)加密第i个明文Pi。当T(Xk)=0时:①如果Pi=bit[Posk],则置密文Ck为1,第i个明文加密完毕;②如果Pi≠bit[Posk],则置Ck为0,第i个明文加密完毕。如果T(Xk)=1:①如果Pi=bit[Posk],则置Ck为1,第i个明文加密完毕;②如果Pi≠bit[Posk],则置Ck为0,混沌映射继续迭代寻找下一个Posk+1并根据T(Xk+1)继续加密Pi,直到第i个明文加密完毕为止。Pi和它对应的密文的形式可表述如下:
(1)
其中,K表示密钥,E(·)表示加密函数,mi,ni≥0称为明文Pi的命中距离。定义式(1)中密文中的前ni个0为1类0,而最后一个0为2类0,同理也定义式(1)中密文中的前mi个0为1类0。
从式(1)中也可以看到,当b[Posk]=Pi时,也就相当于在载体的Posk位置上嵌入了明文Pi。但这不是真正的嵌入而是借用了信息隐藏中“嵌入”的概念。
Pi的解密过程
使用控制函数T(Xk)解密第k个密文Ck。当T(Xk)=0时:①如果Ck=1,则明文Pi=bit[Posk],第i个明文解密完毕;②如果Ck=0,则明文Pi=~bit[Posk],第i个明文解密完毕。如果T(Xk)=1:①如果Ck=1,则明文Pi=bit[Posk],第i个明文解密完毕;②如果Ck=0,则混沌映射继续迭代寻找下一个Posk+1并根据T(Xk+1)和Ck+1继续解密Pi。~a表示对a取反,如~1=0。明文Pi和它的密文的形式如下。
其中,D(·)表示解密函数。
加密/解密算法
加密算法:
密钥:K={X0,η,ζ,A,B}
2)对第i个明文Pi,混沌映射Γ迭代1次,根据控制函数T(Xk),利用式(1)加密它。
3)重复执行第2)步,加密下一个明文Pi+1直到所有的明文都被加密。
解密算法:
密钥:K={X0,η,ζ,A,B}
1)初始化,混沌映射Γ以初始条件X0为基础迭代η次。
2)对第k个密文Ck,混沌映射Γ迭代1次,判断T(Xk),利用式(2)解密它。
3)重复执行第2)步解密下一个密文直到所有的密文都被解密。
本发明具有以下特点:
(1)密钥空间大:CBCES中的密钥为K={X0,η,ζ,A,B},其中X0={x10,x20,Λ,xn0}是一个n维混沌映射的初始条件,假设xi0(i=1,2,Λ,n)都是L比特,η为m比特的二进制定点数,ζ的大小N比特;A的长度为s,且每一个元素都使用T比特定点数表示;B的长度为e,且每个元素都使用F比特的定点数表示。由于则密钥空间就是若n=2,L=32,m=10,λmax=3.15,N=1024,T=32,F=16,s=2,e=2,则密钥空间即为一般说来,密钥空间越大则它抵抗穷举攻击的能力也就越强。
(2)密文对密钥非常敏感:由于初始条件、预迭代次数,载体以及控制参量和控制函数都影响着Pi=bit[Posk]的判断和命中距离的大小,也就影响着密文。由于混沌***对初始条件的敏感性,在初始条件改变很小的情况下,经过若干次的迭代后得到完全不同的轨迹,不同的轨迹对应着不同的“嵌入”位置Posk,同时bit[Posk]和控制标识τk也会改变并影响Pi=bit[Posk]的判断和命中距离的大小进而改变密文;而η和控制参量的不同也会改变“嵌入”位置从而改变密文;而由式(1)可知,控制函数的改变也会改变密文;同样,载体的改变影响着Pi=bit[Posk]的判断并改变密文,而由于载体选择的便利性,使得相同的明文在不同的载体下得到完全不同的密文。一个好的密码方案的两个重要特性是扩散和混淆,CBCES中密文对密钥的敏感性保证了这两点。
(3)安全强度高:在惟密文攻击方式下,攻击者只能得到密文C,通过统计,可以获取密文中0的个数w;记密文C的长度为v,则明文P的长度u满足v-w≤u≤v的关系。由于攻击者不知道控制标识τk,所以不能确定这w个0中哪些属于1类0,哪些属于2类0;把密文C写为形式,其中w=w1+w2+Λ+wi,wi≥0,i=1,2,Λl,则攻击者获得正确τk的概率是 同样攻击者不知道bit[Posk],则他成功构造出bit[Posk]的概率是1/2v,所以攻击者从密文中正确恢复出明文的概率是1/2w+v。因此攻击者在惟密文攻击方式下获取正确明文的概率很小。而基于二值化查找表的密码方案中,密文中的0都属于1类0,明文的长度等于密文中1的个数,因此攻击者只需要构造出密文中每个1对应的bit[Posk]就可以解密出明文。由此可见,控制函数的引入增加了攻击者的破译难度,提高了加密***的安全性。在选择明文攻击下,攻击者可以拥有足够多的明文/密文对,并可以选择特定的明文去加密,进而从密文中发现更多关于密钥的信息。同时攻击者也可以推导出一个算法,此算法可以解密出用同一密钥加密得到的任何新的密文。由于攻击者拥有足够多的明文/密文对,则就有可能重构出τk和bit[Posk],并有可能解密出使用相同密钥加密的其它新的密文。为了使选择明文攻击失效,此方案必须对密钥适时更新,和其他加密方案相比,此方案中的密钥更新非常方便,因为载体的选取是灵活、方便、取之不尽的,为此可以通过限制同一载体的重复使用次数达到更换密钥的目的。
(4)数字混沌***的动力学特性退化对***的安全性影响小:当混沌***在数字设备上实现时,由于精度有限不可避免地存在着动力学特性的退化,主要表现有不均匀的分布函数,轨道中存在短周期或不动点。因此在实际应用时必须对退化做补偿。目前工程上常用的补偿方法可分为三类:提高精度,级联多个混沌***,扰动***变量或(和)控制参量;但是这些补偿方法的实际有效性尚不能在理论上定量的描述。所以补偿后的混沌***也就有可能仍存在着动力学特性上的退化,这样得到的混沌轨道存在着短周期,短周期将导致“嵌入”位置的碰撞(重合)。另一方面,如果明文长度大于载体的长度,显然也会存在着两次“嵌入”位置碰撞的情况,其实这些情况都是允许的,它们不会对方案的安全性有什么太大的影响。这是因为攻击者不知道混沌***的控制参量集合A就无法分析混沌***的动力学特性进而无法确定短周期;而密钥的适时更新,特别是载体的适时更新,使得攻击者难以构造bit[Posk]和τk;由密文特性可知,攻击者从密文中难以判断其中的每个0到底属于1类0还是2类0,从而无法得到τk和bit[Posk],也就无法解密出明文。在实际应用中,只要这个轨道中的短周期长度大于载体长度就基本可以保证嵌入位置的均匀分布(由混沌***轨道的遍历性保证),而这一点并不是很难做到,因为载体长度一般不会太大。当然轨道的周期长度越长***的安全性越强。
加密解密实例:
为了证实CBCES的有效性和效率,选择了网上一幅公开的图片baboo并以其最低位平面作为载体(图2,3),加密/解密了一组文件,结果如表1。
文件1(.mp3)2,400,049字节 | 文件2(.jpg)257,358字节 | 文件3(.doc)523,264字节 | 文件4(.txt)8,999,028字节 | 文件5(.pdf)296,796字节 | |
加密时间(秒) | 4.20 | 0.46 | 0.91 | 15.63 | 0.54 |
解密时间(秒) | 3.95 | 0.43 | 0.87 | 14.89 | 0.49 |
密文长度(字节) | 2,778,717 | 298,010 | 605,787 | 10,417,897 | 343,601 |
密文/明文长度比 | 1.15775 | 1.15796 | 1.15771 | 1.15767 | 1.15770 |
表1.CBCES的加密/解密性能
为了比较CBCES和基于查找表的加密方案之间的性能差异,我们构造了一个二值化的查找表L({0,1})并将其扩展为一个包含n个L的查找表集L(n),为了简化起见,仍使用图3中的载体作为表集L(n)。在相同条件下做了实验,结果如下。
文件1(.mp3)2,400,049字节 | 文件2(.jpg)257,358字节 | 文件3(.doc)523,264字节 | 文件4(.txt)8,999,028字节 | 文件5(.pdf)296,796字节 | |
加密时间(秒) | 9.03 | 0.97 | 1.96 | 33.87 | 1.13 |
解密时间(秒) | 7.12 | 0.77 | 1.54 | 26.79 | 0.87 |
密文长度(字节) | 4,802,494 | 514,953 | 1,045,927 | 17,996,833 | 593,647 |
密文/明文长度比 | 2.000998 | 2.000921 | 1.998851 | 1.999864 | 2.000185 |
表2.基于2值查找表集的加密方案的性能
从表1,2的对比中可以发现,由于使用了控制函数,同样的条件下,CBCES可以得到较短的密文和较快的加密/解密速度。
上述加密/解密过程是在Fedora Core 4.0(Linux)操作***和GCC4.0编译环境下编译通过,相关硬件配置为CPU Pentium IV2.4GHZ,RAM 512M。混沌映射选用文献“A novel fast imageencryption scheme based on 3D chaotic baker maps”[Y Mao,GChen,S Lian.International Journal of Bifurcation andChaos,2004,14(10):3613-3624]提出的三维Baker映射,它的一般形式如下:
其中i=1,Λ,k,j=1,Λ,t,Wi=w1+w2+Λ+wi,W0=0,w1+w2+Λ+wk=1,Hj=h1+h2+Λ+hj,H0=0,h1+h2+Λ+hi=1,(x,y,z)∈[Wi-1,Wi)×[Hj-1,Hj)×[0,1),aij=wihj,Lij=wi×hj+Hj。通过对变量x,y做选择性扩散,有效地克服了动力学特性退化,得到了很好的结果。
控制函数T(Xk)和嵌入位置函数Θ(Xk,N)分别为方程(4)和(5)。
说明:在(4)中,仅用了分量z作为T(·)的变量,从三维Baker映射的方程(3)中可以看到变量z不仅和自己的初值z0有关,而且还受到变量x,y的共同影响;由命题2可以知道,q=P{τk=1}越大则密文可能就越长,混沌映射Γ的迭代次数也就可能越多,加密速度也就变慢。在(5)中表示不大于x的最大整数,mod表示取模操作。
Claims (3)
1.一种基于载体的混沌加密方法,其特征在于,加密过程中把明文视为比特流,每次加密一个比特,对于明文Pi利用混沌映射的状态xk产生嵌入位置Posk,载体ζ作为嵌入位置的查找表,从载体ζ中查找第Posk个比特bit[Posk],明文Pi的加密方式由控制函数T(Xk)确定,明文Pi的加密过程为:使用控制函数T(Xk)加密第i个明文Pi,当T(Xk)=0时:①如果Pi=bit[Posk],则置密文Ck为1,第i个明文加密完毕;②如果Pi≠bit[Posk],则置Ck为0,第i个明文加密完毕;如果T(Xk)=1:①如果Pi=bit[Posk],则置Ck为1,第i个明文加密完毕;②如果Pi≠bit[Posk],则置Ck为0,混沌映射继续迭代寻找第k+1个嵌入位置Posk+1并根据T(Xk+1)继续加密Pi,直到第i个明文加密完毕为止。
2.如权利要求1所述的基于载体的混沌加密方法,其特征在于,载体为公开的数字化资源或者是传输双方商定的私有资源。
3.如权利要求1或2所述的基于载体的混沌加密方法,其特征在于,Pi的解密过程为:使用控制函数T(Xk)解密第k个密文Ck,当T(Xk)=0时:①如果Ck=1,则明文Pi=bit[Posk],第i个明文解密完毕;②如果Ck=0,则明文Pi=~bit[Posk],第i个明文解密完毕;如果T(Xk)=1:①如果Ck=1,则明文Pi=bit[Posk],第i个明文解密完毕;②如果Ck=0,则混沌映射继续迭代寻找下一个Posk+1并根据T(Xk+1)和Ck+1继续解密Pi。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2006100174189A CN101022331B (zh) | 2006-02-16 | 2006-02-16 | 一种基于载体的混沌加密方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2006100174189A CN101022331B (zh) | 2006-02-16 | 2006-02-16 | 一种基于载体的混沌加密方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101022331A CN101022331A (zh) | 2007-08-22 |
CN101022331B true CN101022331B (zh) | 2010-11-10 |
Family
ID=38709995
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2006100174189A Expired - Fee Related CN101022331B (zh) | 2006-02-16 | 2006-02-16 | 一种基于载体的混沌加密方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101022331B (zh) |
Families Citing this family (7)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101882296A (zh) * | 2010-05-07 | 2010-11-10 | 邹阿金 | 切比雪夫神经网络混沌数字水印信息隐藏方法 |
CN102064934B (zh) * | 2010-06-12 | 2013-02-27 | 深圳市九洲电器有限公司 | 一种应用混沌密码加密和解密的方法 |
CN102196320B (zh) * | 2011-04-15 | 2013-02-27 | 江苏省现代企业信息化应用支撑软件工程技术研发中心 | 一种图像加解密*** |
CN105024978A (zh) * | 2014-04-22 | 2015-11-04 | 江苏韦度一号信息科技有限公司 | 办公网络音频数字加密传输 |
CN104680474A (zh) * | 2015-02-04 | 2015-06-03 | 四川长虹电器股份有限公司 | 数字图像加解密的方法 |
CN104954116B (zh) * | 2015-06-19 | 2018-05-04 | 杭州电子科技大学 | 一种基于神经元混沌响应编码的图像密码构造方法 |
CN117494172B (zh) * | 2023-12-27 | 2024-03-12 | 福建省政务门户网站运营管理有限公司 | 基于安全加密的政务材料管理方法及*** |
Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1078835A (zh) * | 1992-05-12 | 1993-11-24 | 浙江大学 | 基于“混沌”理论的加密信号方法及*** |
CN2533620Y (zh) * | 2002-03-25 | 2003-01-29 | 赵耿 | 数字流混沌产生器 |
CN1645781A (zh) * | 2004-01-19 | 2005-07-27 | 广东工业大学 | 多路信息加密混沌通信*** |
CN1697366A (zh) * | 2005-01-18 | 2005-11-16 | 重庆大学 | 可控自然数混沌密码序列产生方法及数字芯片核 |
-
2006
- 2006-02-16 CN CN2006100174189A patent/CN101022331B/zh not_active Expired - Fee Related
Patent Citations (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1078835A (zh) * | 1992-05-12 | 1993-11-24 | 浙江大学 | 基于“混沌”理论的加密信号方法及*** |
CN2533620Y (zh) * | 2002-03-25 | 2003-01-29 | 赵耿 | 数字流混沌产生器 |
CN1645781A (zh) * | 2004-01-19 | 2005-07-27 | 广东工业大学 | 多路信息加密混沌通信*** |
CN1697366A (zh) * | 2005-01-18 | 2005-11-16 | 重庆大学 | 可控自然数混沌密码序列产生方法及数字芯片核 |
Also Published As
Publication number | Publication date |
---|---|
CN101022331A (zh) | 2007-08-22 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Chai | An image encryption algorithm based on bit level Brownian motion and new chaotic systems | |
CN101076968B (zh) | 使用拟群的密码原语、差错编码和伪随机数改进方法 | |
CN101739695B (zh) | 一种基于三维Arnold映射的图像分组加密方法 | |
CN101022331B (zh) | 一种基于载体的混沌加密方法 | |
CN101034978B (zh) | 用于执行抵抗密码攻击的密码过程的方法和计算设备、以及数据处理*** | |
CN101383703B (zh) | 基于广义信息域的动态加解密方法 | |
CN109861810A (zh) | 一种基于混沌块加密算法的数据加密方法及解密方法 | |
CN102523365A (zh) | 一种基于元胞自动机的图像加密和解密方法 | |
Laiphrakpam et al. | Encrypting multiple images with an enhanced chaotic map | |
CN104380651A (zh) | 生成伪随机序列的方法和对数据流进行编码或解码的方法 | |
CN101814985A (zh) | 应用多混沌映射多动态s盒的分组密码*** | |
CN104574259A (zh) | 基于混沌***与***—删除模型的图像加密方法 | |
CN102013974B (zh) | 基于随机变化的非线性步骤的加密方法和解密方法 | |
CN103346875A (zh) | 混沌保密通信***中数字混沌密码的产生方法 | |
Al-Arjan et al. | Intelligent security in the era of AI: The key vulnerability of RC4 algorithm | |
Nkapkop et al. | A fast image encryption algorithm based on chaotic maps and the linear diophantine equation | |
Peng et al. | A new 2D-ASC chaotic system and its image encryption applications | |
CN108124076A (zh) | 基于异构混沌和keccak哈希函数的图像加密方法 | |
CN116405194A (zh) | 一种基于北斗短报文的数据加密传输方法 | |
CN103220130A (zh) | 数字混沌保密通信的加密及解密方法 | |
CN105162580A (zh) | 基于ofb模式和分组密码vh的轻量级流密码技术vho | |
CN107886463A (zh) | 一种基于Chen***和细胞自动机的数字图像加密方法 | |
Zhang et al. | A derivative matrix-based covert communication method in blockchain | |
CN103297221B (zh) | 基于数字混沌编码算法的混沌保密通信*** | |
Li et al. | A novel hybrid scheme for chaotic image encryption |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C17 | Cessation of patent right | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20101110 Termination date: 20130216 |