① 论文翻译
This paper first introced the chaotic system theory and image encryption related knowledge, and discusses the application of the theory of chaotic systems. Research based on chaotic system image encryption algorithm, this paper proposes an image encryption scheme, through the confusion and change the position of the pixel grayscale value of the combination of the way to confuse the ciphertext image and expressly image. First of all, Arnold transform is used to disturb image pixels position, and logistic gray transform is grey value of image preprocessing, both together, through the experiments, the various its performance is analyzed. Experimental results show that the algorithm has huge key space, to key very sensitive ciphertext, and has good statistical properties, and at the same time show the algorithm is strong security.
② 什么是混沌算法
针对地图的存储特性 ,提出了一个混沌序列加密算法 该算法首先用单向Hash函数把密钥散列为混沌映射的迭代初值 ,混沌序列经过数次迭代后才开始取用 ;然后将迭代生成的混沌序列值映射为ASCII码后与地图数据逐字节进行异或运算 考虑到实际计算中的有限精度效应 ,随步长改变混沌映射参数 采用实际的地图数据 ,经与DES及A5算法的比较表明 ,该算法效率高、保密性好、使用简单
③ 混沌密码学的分类和特征
混沌流密码研究
胡汉平1 董占球2
(华中科技大学图像识别与人工智能研究所/图像信息处理与智能控制教育部重点实验室
中国科学院研究生院,)
摘要:在数字化混沌系统和基于混沌同步的保密通信系统的研究中存在一些亟待解决的重要问题:数字化混沌的特性退化,混沌时间序列分析对混沌系统安全性的威胁等,已严重影响着混沌流密码系统的实用化进程。为此,提出了通过变换的误差补偿方法克服数字混沌的特性退化问题;构建混沌编码模型完成对混沌序列的编码、采样,由此得到满足均匀、独立分布的驱动序列;引入非线性变换,以抵抗对混沌流密码系统安全性的威胁。
关键词:混沌流密码系统;特性退化;非线性变换;混沌时间序列分析
1. 引言
随着以计算机技术和网络通信技术为代表的信息技术的不断发展和迅速普及,通信保密问题日益突出。信息安全问题已经成为阻碍经济持续稳定发展和威胁国家安全的一个重要问题。众所周知,密码是信息安全的核心,设计具有自主知识产权的新型高性能的密码体制是目前最亟待解决的重要问题。
混沌是确定性系统中的一种貌似随机的运动。混沌系统都具有如下基本特性:确定性、有界性、对初始条件的敏感性、拓扑传递性和混合性、宽带性、快速衰减的自相关性、长期不可预测性和伪随机性[1],正是因为混沌系统所具有的这些基本特性恰好能够满足保密通信及密码学的基本要求:混沌动力学方程的确定性保证了通信双方在收发过程或加解密过程中的可靠性;混沌轨道的发散特性及对初始条件的敏感性正好满足Shannon提出的密码系统设计的第一个基本原则――扩散原则;混沌吸引子的拓扑传递性与混合性,以及对系统参数的敏感性正好满足Shannon提出的密码系统设计的第二个基本原则――混淆原则;混沌输出信号的宽带功率谱和快速衰减的自相关特性是对抗频谱分析和相关分析的有利保障,而混沌行为的长期不可预测性是混沌保密通信安全性的根本保障等。因此,自1989年R.Mathews, D.Wheeler, L.M.Pecora和Carroll等人首次把混沌理论使用到序列密码及保密通信理论以来,数字化混沌密码系统和基于混沌同步的保密通信系统的研究已引起了相关学者的高度关注[2]。虽然这些年的研究取得了许多可喜的进展,但仍存在一些重要的基本问题尚待解决。
1.1 数字混沌的特性退化问题
在数字化的混沌密码系统的研究方向上,国内外学者已经提出了一些比较好的数字混沌密码系统及其相应的密码分析方法:文献[3]提出基于帐篷映射的加解密算法;文献[4]1998年Fridrich通过定义一种改进的二维螺旋或方形混沌映射来构造一种新的密码算法;文献[5,6]提出把混沌吸引域划分为不同的子域,每一子域与明文一一对应,把混沌轨道进入明文所对应的混沌吸引域子域的迭代次数作为其密文;在文献[7]中,作者把一个字节的不同比特与不同的混沌吸引子联系起来实现加/解密;文献[8]较为详细地讨论了通过混沌构造S盒来设计分组密码算法的方法;文献[9,10]给出了混沌伪随机数产生的产生方法;英国的SafeChaos公司将混沌用于公钥密码体制,推出了CHAOS+Public Key (v4.23)系统[11];等等。但是,这些数字混沌系统一般都是在计算机或其它有限精度的器件上实现的,由此可以将混沌序列生成器归结为有限自动机来描述,在这种条件下所生成的混沌序列会出现特性退化:短周期、强相关以及小线性复杂度等[12-15],即数字混沌系统与理想的实值混沌系统在动力学特性上存在相当大的差异。它所带来的混沌密码系统安全的不稳定性是困扰混沌密码系统进入实用的重要原因[16]。尽管有人指出增加精度可以减小这一问题所造成的后果,但其代价显然是非常大的。
1.2 对混沌流密码系统的相空间重构分析
目前,对混沌保密通信系统的分析工作才刚刚起步,主要方法有:统计分析(如周期及概率分布分析和相关分析等)、频谱分析(包括傅立叶变换和小波变换等)和混沌时间序列分析[17]。前两者都是传统的信号分析手段,在此就不再赘述,而混沌时间序列是近20年来发展的一门扎根于非线性动力学和数值计算的新兴学科方向。
从时间序列出发研究混沌系统,始于Packard等人于1980年提出的相空间重构(Phase Space Reconstruction)理论。众所周知,对于决定混沌系统长期演化的任一变量的时间演化,均包含了混沌系统所有变量长期演化的信息(亦称为全息性),这是由混沌系统的非线性特点决定的,这也是混沌系统难以分解和分析的主要原因。因此,理论上可以通过决定混沌系统长期演化的任一单变量的时间序列来研究混沌系统的动力学行为,这就是混沌时间序列分析的基本思想。
混沌时间序列分析的目的是通过对混沌系统产生的时间序列进行相空间重构分析,利用数值计算估计出混沌系统的宏观特征量,从而为进一步的非线性预测[18](包括基于神经网络或模糊理论的预测模型)提供模型参数,这基本上也就是目前对混沌保密通信系统进行分析或评价的主要思路。描述混沌吸引子的宏观特征量主要有:Lyapunov指数(系统的特征指数)、Kolmogorov熵(动力系统的混沌水平)和关联维(系统复杂度的估计)等[17]。而这些混沌特征量的估计和Poincare截面法都是以相空间重构以及F.Takens的嵌入定理为基础的,由此可见相空间重构理论在混沌时间序列分析中的重大意义。
1.3 对混沌流密码系统的符号动力学分析
我们在以往的实验分析工作中都是针对混沌密码系统的统计学特性进行研究的,如周期性、平衡性、线性相关性、线性复杂度、混淆和扩散特性等,即使涉及到非线性也是从混沌时间序列分析(如相图分析或分数维估计等)的角度出发进行研究的。然而,符号动力学分析表明,混沌密码系统的非线性动力学分析同样非常主要,基于实用符号动力学的分析可能会很快暴露出混沌编码模型的动力学特性。基于Gray码序数和单峰映射的符号动力学之间的关系,文献[20]提出了一种不依赖单峰映射的初始条件而直接从单峰映射产生的二值符号序列来进行参数估计的方法。分析结果表明,基于一般混沌编码模型的密码系统并不如人们想象的那么安全,通过对其产生的一段符号序列进行分析,甚至能以较高的精度很快的估计出其根密钥(系统参数或初始条件)。
上述结论虽然是针对以单峰映射为主的混沌编码模型进行的分析,但是,混沌流密码方案的安全性不应该取决于其中采用的混沌系统,而应该取决于方案本身,而且单峰映射的低计算复杂度对于实际应用仍是非常有吸引力的。因此,我们认为,如果希望利用混沌编码模型来设计更为安全的密码系统,必须在混沌编码模型产生的符号序列作为伪随机序列输出(如用作密钥流或扩频码)之前引入某种扰乱策略,这种扰乱策略实质上相当于密码系统中的非线性变换。
该非线性变换不应影响混沌系统本身的特性,因为向混沌系统的内部注入扰动会将原自治混沌系统变为了非自治混沌系统,但当自治混沌系统变为非自治混沌系统之后,这些良好特性可能会随之发生较大的变化,且不为设计者所控制。这样有可能引入原本没有的安全隐患,甚至会为分析者大开方便之门。
上述非线性变换还应该能被混沌编码模型产生的符号序列所改变。否则,分析者很容易通过输出的伪随机序列恢复出原符号序列,并利用符号动力学分析方法估计出混沌编码模型的系统参数和初始条件。因此,非线性变换的构造就成了设计高安全性数字混沌密码系统的关键之一。
2. 混沌流密码系统的总体方案
为克服上述问题,我们提出了如下的混沌流密码系统的总体方案,如图1所示:
在该方案中,首先利用一个混沌映射f产生混沌序列xi,再通过编码C产生符号序列ai,将所得符号序列作为驱动序列ai通过一个动态变化的置换Bi以得到密钥流ki,然后据此对置换进行动态变换T。最后,将密钥流(即密钥序列)与明文信息流异或即可产生相应的密文输出(即输出部分)。图1中的初始化过程包括对混沌系统的初始条件、迭代次数,用于组合编码的顺序表以及非线性变换进行初始化,初始化过程实质上是对工作密钥的输入。
在图1所示的混沌编码模型中,我们对实数模式下的混沌系统的输出进行了编码、采样。以Logistic为例,首先,以有限群论为基本原理对驱动序列进行非线性变换,然后,根据有限群上的随机行走理论,使非线性变换被混沌编码模型产生的驱动序列所改变。可以从理论上证明,我们对非线性变换采用的变换操作是对称群的一个生成系,所以,这里所使用的非线性变换的状态空间足够大(一共有256!种)。
3. 克服数字混沌特性退化的方法
增加精度可以在某些方面减小有限精度所造成的影响,但效果与其实现的代价相比显然是不适宜的。为此,周红等人在文献[22]中提出将m序列的输出值作为扰动加到数字混沌映射系统中,用于扩展数字混沌序列的周期;王宏霞等人在文献[23]中提出用LFSR的输出值控制数字混沌序列输出,从而改善混沌序列的性质;李汇州等人在文献[24]中提出用双分辨率的方法解决离散混沌映射系统的满映射问题。上述方法又带来新的问题:使用m序列和LFSR方法,混沌序列的性质由外加的m序列的性质决定;使用双分辨率时,由于输入的分辨率高于输出的分辨率,其效果与实现的代价相比仍然没有得到明显的改善。
为此,我们提出了一种基于Lyapunov数的变参数补偿方法。由于Lyapunov数是混沌映射在迭代点处斜率绝对值的几何平均值,所以,可以将它与中值定理结合对数字混沌进行补偿。以一维混沌映射为例,该补偿方法的迭代式为:
(1)
式中, 为Lyapunov数,ki是可变参数。
参数ki的选择需要满足下面几个条件:
(1)ki的选取应使混沌的迭代在有限精度下达到满映射;
(2)ki的选取应使混沌序列的分布近似地等于实值混沌的分布;
(3)ki的选取应使混沌序列的周期尽可能的长。
根据上述几个条件,我们已经选取了合适的80个参数,并且以Logistic为例对该变参数补偿方法输出的混沌序列进行了分析。在精度为32位的条件下,我们计算了混沌序列的周期,其结果如下:
除周期外,我们还对复杂度、相关性和序列分布进行了检测。从结果可知,该变参数补偿方法,使得在不降低混沌的复杂度基础上,增长其周期,减弱相关性,使其逼近实值混沌系统。该方法不仅非常明显地减小了有限精度所造成的影响,使数字混沌序列的密度分布逼近实值混沌序列的理论密度分布,改善数字混沌伪随机序列的密码学性质,而且极大地降低实现其方法的代价。
4. 非线性变换
为克服符号动力学分析对混沌密码系统的威胁,我们根据有限群上的随机行走理论提出了一种非线性变换方法,并对引入了非线性变换的混沌密码系统进行了符号动力学分析,分析结果表明,引入了非线性变换的模型相对一般混沌编码模型而言,在符号动力学分析下具有较高的安全性。以二区间划分的模型为例,我们选用Logistic映射作为图1中的混沌映射f,并根据符号动力学分析中的Gray码序数[20,21]定义二进制码序数,见2式。
(2)
二值符号序列S的二进制码序数W(S)∈(0, 1)。注意,这里的Wr(xi)并不是单值的,因为同样的状态xi可能对应不同的置换Bi。
图2 在2区间划分下产生的二值符号序列的Wr(xi)分析
图2中的Wr(xi)为参数r控制下从当前状态xi出发产生的二值符号序列的二进制码序数。图2(a)是未进行非线性变换时的情形,可以看出,其它三种进行非线性变换时的情形都较图2(a)中的分形结构更为复杂。由此可见,引入了非线性变换的混沌模型相对一般混沌编码模型而言,在符号动力学分析下具有较高的安全性。
5. 混沌流密码系统的理论分析和数值分析结果
5.1 理论分析结果
密钥流的性质直接关系到整个流密码系统的安全性,是一个极为重要的指标。我们对密钥流的均匀、独立分布性质和密钥流的周期性质给出了证明,其结果如下:
(1)密钥留在0,1,…,255上均匀分布。
(2)密钥流各元素之间相互独立。
(3)密钥流出现周期的概率趋向于零。
(4)有关密钥流性质的证明过程并不涉及改变非线性变换的具体操作,也不涉及具体的驱动序列产生算法,仅仅要求驱动序列服从独立、均匀分布,并且驱动序列和非线性变换之间满足一定的条件,这为该密码系统,特别是系统驱动部分的设计和改进留下余地。
总之,该密码系统可扩展,可改进,性能良好且稳定。
5.2 数值分析结果
目前,基本密码分析原理有:代替和线性逼近、分别征服攻击、统计分析等,为了阻止基于这些基本原理的密码分析,人们对密码流生成器提出了下列设计准则:周期准则、线性复杂度准则、统计准则、混淆准则、扩散准则和函数非线性准则。
我们主要根据以上准则,对本密码系统的密钥流性质进行保密性分析,以证明其安全性。分析表明:混沌流密码系统符合所有的安全性设计准则,产生的密钥序列具有串分布均匀、随机统计特性良好、相邻密钥相关性小、周期长、线性复杂度高、混淆扩散性好、相空间无结构出现等特点;该密码系统的工作密钥空间巨大,足以抵抗穷举密钥攻击。并且,由于我们采用了非线性变换,所以该密码系统可以抵抗符号动力学分析。
6. 应用情况简介
该混沌流密码系统既有效的降低了计算复杂度,又极大的提高了密码的安全强度,从而为混沌密码学及其实现技术的研究提供了一条新的途径。该系统已于2002年10月30日获得一项发明专利:“一种用于信息安全的加解密系统”(00131287.1),并于2005年4月获得国家密码管理局的批准,命名为“SSF46”算法,现已纳入国家商用密码管理。该算法保密性强,加解密速度快,适合于流媒体加密,可在银行、证券、网络通信、电信、移动通信等需要保密的领域和行业得到推广。该加密算法被应用在基于手机令牌的身份认证系统中,并且我们正在与华为公司合作将加密算法应用于3G的安全通信之中。
参考文献
[1] Kocarev L, Jakimoski G, Stojanovski T, Parlitz U, From chaotic maps to encryption schemes, In Proc. IEEE Int. Sym. CAS. 1998, 4: 514-517
[2] Kocarev L, Chaos-based cryptography: A brief overview, IEEE Circuits and Systems, 2001, 1(3): 6-21
[3] Habutsu T, Nishio Y, Sasase I, Mori S, A secret key cryptosystem by iterating a chaotic map, in Proc. Advances in Cryptology-EUROCRYPT’91, Springer, Berlin, 1991, 127-140
[4] Fridrich J, Symmetric ciphers based on two-dimensional chaotic maps, Int. J. Bifurcation Chaos, vol.8, no.6, 1998, 1259-1284
[5] Baptista M S, Cryptography with chaos, Phys. Lett. A., 1998, 240: 50-54
[6] Wai-kit W, Lap-piu L, Kwok-wo W, A modified chaotic cryptographic method, Computer Physics Communications, 2001, 138:234-236
[7] Alvarez E, Fernandez A, Garcia P, Jimenez J, et al, New approach to chaotic encryption, Phys. Lett. A, 1999, 263: 373-375
[8] Jakimoski G, Kocarev L, Chaos and cryptography: Block encryption ciphers based on chaotic maps, IEEE Tran. CAS-I, 2001, 48: 163-169
[9] Stojanovski T, Kocarev L, Chaos-based random number generators—Part I: Analysis, IEEE Tran. CAS-I, 2001, 48(3):281-288
[10] Stojanovski T, Pihl J, Kocarev L, Chaos-based random number generators—Part II: Practical Realization, IEEE Tran. CAS-I, 2001, 48(3):382-385
[11] http://www.safechaos.com/chpk.htm
[12] 王育民,信息安全理论与技术的几个进展情况,中国科学基金,2003,2,76-81
[13] Borcherds P.H., Mccauley G.P., The digital tent map and the trapezoidal map, Chaos, Solitons & Fractal, 1993, 3(4): 451-466
[14] Palmore L, et al, Computer arithmetic, chaos and fractals, Physica, 1990, D42:99-110
[15] Shujun L, Qi L, Wenmin L, Xuanqin M and Yuanlong C, Statistical properties of digital piecewise linear chaotic maps and their roles in cryptography and pseudo-random coding, Cryptography and Coding, 8th IMA International Conference Proceedings, LNCS, vol.2260, pp.205-221, Springer-Verlag, Berlin, 2001
[16] 王育民,混沌序列密码实用化问题,西安电子科技大学学报,1997,24(4):560-562
[17] 吕金虎,陆君安,陈士华,混沌时间序列分析及其应用,武汉大学出版社,2002
[18] 冯登国 着,密码分析学,北京:清华大学出版社,2000
[19] B.Schneier着,吴世忠等译,应用密码学-协议、算法与C原程序,北京:机械工业出版社,2000
[20] Xiaogang Wu, Hanping Hu, Baoliang Zhang, Parameter estimation only from the symbolic sequences generated by chaos system, Chaos, Solitons & Fractals, 2004, 22(2):359-366
[21] Hanping Hu, Xiaogang Wu, Zuxi Wang, Synchronizing chaotic map from two-valued symbolic sequences, Chaos, Solitons & Fractals, 2005, 24(4):1059-1064
[22] Zhou H., Ling X.T., Realizing finite precision chaotic systems via perturbation of m-sequences, Acta Electron. Sin, 1997, vol.25, no.7, 95-97
[23] 王宏霞,虞厥邦,Logistic-map混沌扩频序列的有限精度实现新方法,系统工程与电子技术,2002,vol.24, no.2
[24] Zhou L.H., Feng Z.J., A new idea of using one-dimensional PWL map in digital secure communications—al resolution approach, IEEE Tran. On Circuits and Systems—II: Analog and Digital Signal Proceedings, 2000, vol.47, no.10, Oct.
④ 混沌算法是什么
针对地图的存储特性
,提出了一个混沌序列加密算法
该算法首先用单向Hash函数把密钥散列为混沌映射的迭代初值
,混沌序列经过数次迭代后才开始取用
;然后将迭代生成的混沌序列值映射为ASCII码后与地图数据逐字节进行异或运算
考虑到实际计算中的有限精度效应
,随步长改变混沌映射参数
采用实际的地图数据
,经与DES及A5算法的比较表明
,该算法效率高、保密性好、使用简单
⑤ 混沌算法是什么
混沌算法是指混沌序列加密算法 。该算法首先用单向Hash函数把密钥散列为混沌映射的迭代初值 ,混沌序列经过数次迭代后才开始取用 ;然后将迭代生成的混沌序列值映射为ASCII码后与地图数据逐字节进行异或运算,考虑到实际计算中的有限精度效应 ,随步长改变混沌映射参数,采用实际的地图数据 。
⑥ 基于混沌影射的文件加密器的设计
这个比较难 你先得了解密码学 密码算法 应用
我建议你去一些相关论坛看看下载些资料 或者你可以发邮件给我要 我这里有一些IDEA RSA HASH MD5 等一些源程序 感兴趣可以给我信息 我的邮箱[email protected]
比如这些代码
# Begin Project
# PROP AllowPerConfigDependencies 0
# PROP Scc_ProjName ""
# PROP Scc_LocalPath ""
CPP=cl.exe
RSC=rc.exe
!IF "$(CFG)" == "En Decrypt - Win32 Release"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 0
# PROP BASE Output_Dir "Release"
# PROP BASE Intermediate_Dir "Release"
# PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 0
# PROP Output_Dir "Release"
# PROP Intermediate_Dir "Release"
# PROP Target_Dir ""
# ADD BASE CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
# ADD CPP /nologo /W3 /GX /O2 /D "WIN32" /D "NDEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /c
# ADD BASE RSC /l 0x804 /d "NDEBUG"
# ADD RSC /l 0x804 /d "NDEBUG"
BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386
# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /machine:I386
!ELSEIF "$(CFG)" == "En Decrypt - Win32 Debug"
# PROP BASE Use_MFC 0
# PROP BASE Use_Debug_Libraries 1
# PROP BASE Output_Dir "Debug"
# PROP BASE Intermediate_Dir "Debug"
# PROP BASE Target_Dir ""
# PROP Use_MFC 0
# PROP Use_Debug_Libraries 1
# PROP Output_Dir "Debug"
# PROP Intermediate_Dir "Debug"
# PROP Target_Dir ""
# ADD BASE CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c
# ADD CPP /nologo /W3 /Gm /GX /ZI /Od /D "WIN32" /D "_DEBUG" /D "_CONSOLE" /D "_MBCS" /YX /FD /GZ /c
# ADD BASE RSC /l 0x804 /d "_DEBUG"
# ADD RSC /l 0x804 /d "_DEBUG"
BSC32=bscmake.exe
# ADD BASE BSC32 /nologo
# ADD BSC32 /nologo
LINK32=link.exe
# ADD BASE LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
# ADD LINK32 kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib kernel32.lib user32.lib gdi32.lib winspool.lib comdlg32.lib advapi32.lib shell32.lib ole32.lib oleaut32.lib uuid.lib odbc32.lib odbccp32.lib /nologo /subsystem:console /debug /machine:I386 /pdbtype:sept
!ENDIF
# Begin Target
# Name "En Decrypt - Win32 Release"
# Name "En Decrypt - Win32 Debug"
# Begin Group "Source Files"
# PROP Default_Filter "cpp;c;cxx;rc;def;r;odl;idl;hpj;bat"
# Begin Source File
SOURCE=.\des.cpp
# End Source File
# Begin Source File
SOURCE=".\Encrypt-Decrypt 01.cpp"
# End Source File
# Begin Source File
SOURCE=.\key.cpp
# End Source File
# Begin Source File
SOURCE=.\stdafx.cpp
# End Source File
# End Group
# Begin Group "Header Files"
# PROP Default_Filter "h;hpp;hxx;hm;inl"
# Begin Source File
SOURCE=.\des.h
# End Source File
# Begin Source File
SOURCE=.\global.h
# End Source File
# Begin Source File
SOURCE=.\stdafx.h
# End Source File
# End Group
# Begin Group "Resource Files"
# PROP Default_Filter "ico;cur;bmp;dlg;rc2;rct;bin;rgs;gif;jpg;jpeg;jpe"
# End Group
# End Target
# End Project
⑦ 忆阻器混沌加密系统什么时间被提出的
在如今的信息时代中,计算机已成为人们必不可少的工具,但随之产生而来的信息安全问题已成为一个重要的挑战性课题。混沌对参数和初始值的极度敏感性使其具有不可预测性,这使得它具有传统密码的优良特性,混沌密码学已成为一种极具潜力的新型密码设计方法。忆阻器是一个具有记忆特性的非线性电阻,除在非遗失性存储器、人工神经网络等领域有着重要的应用前景外,它还能构成性能优良的非线性振荡电路。基于以上背景,本文研究复杂混沌系统的设计方法,构造了忆阻器混沌振荡电路和含有自然指数项的混沌系统,并利用它们产生的良好伪随机序列,设计了一个可以对计算机以及与计算机相连接的移动硬盘、U盘等存储设备中的文件进行加密的密码系统。本文主要的研究内容如下。 (1)基于惠普实验室的TiO2忆阻器建立了磁控记忆电导的数学模型,尝试利用两个TiO2忆阻器设计实现了一种忆阻器混沌振荡电路,对其进行了动力学分析,包括平衡点及其稳定性、耗散性、李氏指数和分岔图,对其进行了MATLAB仿真和DSP数字化实现。为了产生复杂的混沌序列,还设计了一个含有双指数项的混沌系统,对其进行了分析、仿真和数字化实现,与单指数混沌系统相比它较具有更复杂的动力学特性。 (2)研究了连续混沌系统的离散量化方法,建立了连续混沌系统的离散数学模型,分别利用门限阈值法和位抽取法对构造的构造的TiO2忆阻器混沌系统和双指数混沌系统进行量化,获得了混沌数字伪随机序列
⑧ 如何实现matlab 中基于混沌序列的文本加密。。。谢谢
如何实现matlab 中基于混沌序列的文本加密。。。谢谢
x(1)=0.1;
for i = 2 : 1000
x(i)=4*x(i-1)*(1-x(i-1));
end
L=1000;
NFFT = 1024;
Y = fft(x,NFFT)/L;
f = 1/2*linspace(0,1,NFFT/2+1);
plot(f,2*abs(Y(1:NFFT/2+1)))
title('功率谱')
xlabel('Frequency (Hz)')
ylabel('|Y(f)|')
百世岁月当代好 千古江山今朝新 万象更新
⑨ 在做图像处理时怎么把混沌系统转化成混沌序列
混沌序列密钥流产生方法及其理论 20世纪60年代人们发现了一种特殊的自然现象——混沌(chaos).混沌是确定性系统的伪随机性,它 对系统的参数和初始条件极端敏感[2].同时,它又具有确定性,其输出值由非线性系统的方程、参数和初始条件完全决定,只要系统参数及初始条件相同,就可以重构混沌信号.以上这些特征可被用于保密通信[3]. 为了利用混沌动力学模型产生混沌二值序列,并验证其伪随机性、敏感性、不可预测性,我们开发了实 验的软件平台[4,5] .该平台还可以将产生的混沌序列用在序列密码体制中,实现对多种对象的加