混沌加密的思想自提出以后,混沌加密算法得到广泛的研究,但其中绝大多数是基于单一混沌映射系统的加密算法,如一维的Logistic映射,二维的Smale映射、Henon映射或三维的Lorenz系统等。本文在对双混沌系统应用于加密算法进行了有益的尝试和分析后,提出了基于双混沌动力系统的加密算法。该算法能够被应用于文件加密、实时数据流加密和商品的防伪等。
一、两种离散混沌系统:Cat映射和Logistic映射
1、Cat映射
Cat映射具有较好的混沌特性,其几何学解释如图所示:
从图中可以看出,Cat映射每次的运算,都经历了以下过程:正方形的点空间首先被线性拉伸,然后通过模运算分割折叠。
Cat映射是一个二维的可逆混沌映射,其动力学方程由下式表示:
由于其线性转换矩阵行列式为1,所以Cat映射又被称为是区域保留的。其李雅普诺夫指数δ1,δ2为:当a,b均为1时,就是经典的ArnoldCat映射。
2、Logistic映射
Logistic映射为自治一维离散动态系统,用一维非线性迭代函数来表征混沌行为,通过这一混沌函数可以通过微小地改变调节参数的值来产生完全不同的伪随机序列。
Logistic映射动力学方程如下:
其中μ为控制参量,μ值确定后,由任意初值X0∈(0,1),可迭代出一个确定的时间序列。对于不同的μ值,系统(2)将呈现不同的特性,随着参数μ的增加,系统(1)不断地经历倍周期分叉,最终达到混沌。称当μ=4时由系统(1)产生的序列具有随机性、规律性、遍历性、对初值的敏感性等典型的混沌特征。针对Logistic映射自身存在的问题,又出现了了一种改进的Logistic映射动力学方程如(3):
其中μ为[1,4]之间的一个实数,X0∈(0,1)。
二、基于双混沌系统的数字混沌加密算法设计
基于单一混沌系统的数字混沌加密算法,其设计的关键是对混沌映射的选择,不同的混沌映射在算法实现复杂度,算法时间和空间复杂度以及安全性等方面都有较大差异。典型的一维混沌映射有Logistic映射,其算法实现简单,运算速度较快,但密钥空间较小,安全性差。而研究较多的三维混沌Lorenz系统,其算法实现复杂,运算速度较Logistic映射慢,但密钥空间很大,安全性较高。本文所提出双混沌加密算法就是从算法的实现、速度和安全性考虑,既能达到较小的时间和空间复杂度,又能有较大的密钥空间和较高的安全性,而且能避免单混沌系统可能出现的信息泄漏问题。
加密解密流程图如图:
可以选定Cat映射和Logistic映射的初始值x0,y0,x 0和三个内部参数a,b, 作为密钥,算法中的xn,yn,x n为Cat映射和Logistic映射的中间迭代结果,具体加密算法如下:
1、针对式(1)和(3),先选定a,b,三个参数和x0,y0,x’0三个初始值作为密钥。
2、各迭代200次,得到xn,yn,x’n。
3、计算xn×yn×xn’×100,并取乘积的第2,4,6,8,10位组成一个五位十进制数与256取余,得到一个8位密钥流,与明文做异或运算,就形成一个密文字节。
4、迭代5次(从运算速度考虑),得到xn+1,yn+1,x’n+1,反复执行3、4直到所有明文字节都加密完毕。
在此,对算法作一些说明,步骤2迭代200次的目的是使Cat映射和Logistic映射都进入混沌迭代状态。从加密算法的安全性和运算速度考虑,经过测试,步骤4在每次生成一个8位密钥之后迭代5次是比较合理的。
算法流程图如图:
三、基于双混沌系统的数字混沌加密算法分析
1、安全性分析
一个好的加密算法应该能够抵御已知的解密攻击,如选择(已知)明文攻击、唯密文攻击、统计分析攻击等。以下是我对该算法所做的一些安全性分析:
(1)密钥空间分析
加密算法选定三个内部控制参数和三个初始状态作为密钥,密钥空间是很大的。即使在已知加密算法使用Cat映射和Logistic映射的情况下,攻击绕过穷举密钥攻击转而通过穷举间接获得三个内部控制参数也是不可能实现的:因为a,b参数的选择并没有范围限制,而 是一个在[1,4]内的实数。
(2)密钥敏感性分析
对Cat映射和Logistic映射的迭代初始值x0,y0,x’0分别增加10-13,并观察其密钥序列,通过统计分析发现所得到的随机序列与原始随机序列平均有99.9999%不相同。通过Matlab绘制波形图,如下图所示。
进行测试时,各内部参数设置如下:a=1;b=1;a=3.835
左图的迭代初始值为:
Cat映射:X0=0.123456123456;
Y0=0.654321654321Logistic
映射:X0=0.492673492673
右图的迭代初始值为:
Cat映射:X0=0.1234561234561(增加10-13);
Y0=0.654321654321
Logistic映射:X0=0.492673492673
(3)统计学分析
根据香农理论,任何的加密密码都可以通过基于统计分析的方法来解密。加密算法的统计学特性可以通过对比加密前后的柱形图进行分析。通过分析可得:加密文本的统计学特性发生了很大的改变。如图所示。
左图原始文本如下:
右图加密文本如下:
由于字符在计算机中是以补码来表示,所以当计算的值大于01111111(127)时,就变为不可显示的字符。因此在进行统计学分析时,对应的负值要加256转换为实际值进行分析。
2、性能分析
通过对比基于Lorenz系统的三维连续混沌加密算法进行了以下性能分析:
(1)时间代价
基于Lorenz系统连续混沌加密算法由于其连续数值的量化过程是一种不可逆变换,因此具有较好的安全性。但是,其需要经过数值积分,量化处理,因此运算速度较慢,不适合应用于实时性较高的场合。基于双混沌系统的离散混沌加密算法,由于采用了Cat映射和Logistic映射,其动力学方程简单,计算机处理的都是简单的基本运算。其加密速度与单纯Logistic映射加密算法相当,而且加密强度很高。
(2)空间代价
空间代价分为算法实现的静止空间和运行态空间。静止空间指算法变成程序后本身所占用的空间,一般表现为执行代码的长度。混沌加密算法比一般对称或不对称加密算法占有更少的静止空间。而且,由于其主要运算过程是通过迭代完成的,因此实现运行态空间运行时占用的空间很少。在空间代价上,本算法也是比较优秀的。
本文提出了一种基于双混沌系统的数字混沌加密算法,并对算法的性能进行了分析。可以看出,数字混沌加密算法可以使用基于双混沌系统或多混沌系统的混合输出作为密钥生成器,尽可能不暴露混沌轨道的直观信息和统计信息,从而增强抵御选择(已知)明文攻击。从算法实现和运行速度考虑,混沌加密算法应该尽可能地使用简单的混沌系统。
小知识香浓定理
香农定理描述了有限带宽、有随机热噪声信道的最大传输速率与信道带宽、信号噪声功率比之间的关系。
实操指南:如何监控聊天中的敏感信息?这款秘籍软件,轻松掌握微信聊天动态
电影《摩登时代》里,流水线工人就连在吃饭时都要用“自动喂食机”提高效率,这样才能挤出更多时间投入工作。虽然现在打工人不至于此,但有些老板仍然放心不下……像企业聊天记录往往蕴含着大量的敏感信息。为了确保信息安全,监控聊天中的敏感信息成为了一项必要且重要的工作。以下是一款秘籍软件,帮助你轻松掌握微信聊天动态,确保信息安全。...
怎么监控员工上班情况?2024企业管理的四种方法,老板们不容错过
怎么监控员工上班情况?2024企业管理的四种方法,老板们不容错过员工上班在干什么?摸鱼?打游戏?老板该怎么管理?如何才能监视怎么监控员工上班情况?监控员工上班情况可以通过多种方式实现,但重要的是要确保这些措施既合法又合规,同时尊重员工的隐私权。以下是一些建议的方法:一、制定明确的行为规范与奖惩制度1、制定行为规范: 企...
怎么监控员工上班情况?快速监控员工状态
怎么监控员工上班情况?快速监控员工状态在企业管理中,如何有效监控员工上班情况,确保工作效率与团队协作,是每位老板都需面对的课题。本文为您揭秘五招快速监控员工状态的实用技巧,不仅能帮助您实时掌握员工动态,还能提升整体管理效率。作为老板,掌握这些技巧,将让您在企业管理中游刃有余,轻松应对各种挑战。一、使用安企神软件实时监控...
安企神桌管软件:提升企业管理效率的全能助力
安企神桌管软件:提升企业管理效率的全能助力在当今竞争激烈的商业环境中,企业必须不断优化管理和运营流程,以提高效率和盈利能力。安企神桌管软件正是这样一款面向中小企业的管理工具,能够帮助企业在多方面提升综合管理水平。本文将详细探讨安企神桌管软件给企业带来的多重价值。一、全方位的管理功能安企神桌管软件是一款集成了多种管理功能...
安企神:揭开终端安全管理软件的神秘面纱
安企神:揭开终端安全管理软件的神秘面纱在数字化日益普及的今天,企业的网络安全问题愈发显得重要。数据泄露、网络攻击等事件层出不穷,如何保障企业内部信息的安全性成为众多企业关心的焦点。安企神终端安全管理软件应运而生,作为一款专业的安全管理工具,它的功能与优势备受关注。本文将全面揭秘安企神软件的核心功能、应用场景及其在终端安...