为了提高通信的安全性,提出一种利用时空混沌同步的计算机网络数字加密通信方案,那么,接下来,我们就来给大家讲讲如何利用时空混沌同步进行数字加密通信。

一、时空混沌同步系统

本文采用的时空混沌系统是一种时间离散、空间离散、状态连续的单向耦合映射格点(OCOML)系统,两个参数完全相同但初始条件不同的OCOML系统可由下述方程来描述:

xi(n+1)=(1-εi)f(xi(n))+εif(xi-1(n)),  i=1,2,…,L          (1)

x0(n)=D(n);

yi(n+1)=(1-εi)f(yi(n))+εif(yi-1(n)),  (2)

i=1,2,…,L(2)y0(n)=D(n)

式中n代表离散时间,i代表空间格点位置,L代表OCOML的长度,εi为耦合参数,且满足0<εi<1,D(n)为驱动信号时间序列,函数f(x)的形式:

f(x)=4x(1-x)      (3)

理论和实验证明,若εi>0.75,i=1,2,…,L,被驱系统(1)和(2)在任何相同驱动信号D(n)的驱动下可以达到同步状态,即两系统各空间单元的均方根误差

e(n)=1L∑Li=1[yi(n)-xi(n)]21P2      (4)

随离散时间n增大而趋于零。在本文中,系统的同步精度规定为e(n)<10-16,Pn>TS,这里TS是达到同步所需的时间。

当系统(1)和(2)同步时,OCOML各空间单元输出信号{xi(n),i=1,2,…,L}的自相关和互相关特性与驱动信号D(n)的自相关特性有关。当D(n)取自单向耦合映射格点环(OCRML)[8]时,由于D(n)各数据点互不相关,序列{xi(n),i=1,2,…,L}在时间上互不相关,而且每隔一空间单元(即|j-i}≥2),序列xi(n)与xj(n)也互不相关。若D(n)为取自蔡(Chua)系统或Lorenz系统的取样时间序列,D(n)各数据点具有一定的相关性,本文的数值计算发现,只要εi∈[0185,1),i=1,2,…,L,除了最前面的L0个空间单元外,上述结论仍然成立,即序列{xi(n),i>L0}在时间上互不相关,若|j-i|≥2,i,j>L0,序列xi(n)与xj(n)也互不相关。

由于时空序列{xL0+2j(n),j=1,2,…,J}在计算机的精度范围内是混沌的,而不是周期的,它们又互不相关,故可将它们用作加密密钥序列,应用于密码通信。

二、如何利用时空混沌同步进行数字加密通信

1、加密方案

现在利用OCOML系统构成一个如图所示的数字加密通信系统。

如何利用时空混沌同步进行数字加密通信它由一个驱动系统、两个产生密钥的OCOML系统和计算机网络组成。

2、系统的工作过程

系统的工作过程如下:

在驱动序列D(n)的驱动下,发送端和接收端的OCOML系统达到同步状态,发送端OCOML(1)输出的时空混沌信号经某种变换后用作加密密钥序列k1(n),k2(n),…,kJ(n),接收端OCOML(2)相应的输出信号经相同的变换后用作解密密钥序列k′1(n),k′2(n),…,k′J(n),待传数据(明文)M经密钥加密变为密文C,驱动序列D(n)和密文C经混合后送入计算机网络而传到接收端,接收端用解密密钥将密文C转换为明文M′。当两OCOML系统同步时,ki(n)=k′i(n),i=1,2,…,J。因此,M′=M,消息被无失真地还原。

下图中的驱动系统独立于产生密钥的OCOML系统,它可以是时间连续的混沌或超混沌系统,也可以是时空离散的超混沌系统,其功能是产生驱动序列D(n)(当采用连续混沌系统时,其输出混沌信号经适当的取样可形成驱动序列)。

发送端OCOML(1)的输出信号xL0+2(n),xL0+4(n),…,XL0+2J(n)是在区间(0,1)取值的实数序列,通过下述变换可将它们转换为加密密钥序列,即:

kj(n)=INT[xL0+2j(n)×1015]mod2b,j=1,2,…,J,     (5)

式中INT[ _ _ ]表示取整,b是每个密钥的长度,在我们的实验中,b=32,kj(n)是在区间[0,232-1]取值的整数。

同样,接收端OCOML(2)相应的输出信号yL0+2j(n)通过相同的变换被转换为解密密钥序列,即:

k′j(n)=INT[yL0+2j(n)×1015]mod2b,j=1,2,…,J,     (6)

待传输的消息可以是语音、文字和图像。先对这类信号进行取样和量化,使消息(明文)变为以字节为单位的数据序列,然后选取一种加密算法,将其变换为密文。

加密和解密算法可采用多种算法,作为一个例子,我们采用如下简单加密算法:

设明文M={m1m2…}的每个数据m和密文C={c1c2…}对应的数据c均为q位(q=8,16,32),加密变换为

c=(m+k)mod2q,        (7)

解密变换为

m′=(c-k′)mod2q,      (8)

式中k、k′分别取自密钥集

{kj(n),j=1,2,…,J}和{k′j(n),j=1,2,…,J}

本方案的主密钥是OCOML的一组耦合参数,{ε1,ε2,…,εL},发送端与接收端事先约定一组参数,通信结束时,该组参数被舍弃。

上述密码模式在密码学中是一种按字节或q位的字进行加密的序列密码。下面我们来讨论系统的安全性和传输效率。

三、混沌加密通信方案安全性

在上述序列加密算法中,若密钥的数目不少于明文样本的数目,每个明文样本数据恰有一个不同的密钥将其加密成密文数据,且所有密钥的选取是等概率的,这种加密算法是安全的。因此,对密码系统的要求是:

1、由密钥序列组成的密钥集应足够大,以满足大量明文文件加密的要求,且保证解密密钥与加密密钥相一致;

2、密钥应等概率地随机产生。在上述方案中,密钥是由时空混沌系统产生的,两OCOML系统的同步精度很高(同步误差小于10-16),可以提供一个大的密钥集,而且该方案依靠同步来保证解密密钥与加密密钥相一致,可以避免大量密钥的传输或存储。为了检查密钥的概率分布,我们将系统运行时的所有密钥进行统计,获得如图2所示的密钥概率密度函数。

如何利用时空混沌同步进行数字加密通信由图可知,无论驱动信号取自Chua系统还是OCRML系统,密钥都等概率地分布在一个大的密钥集上。只要明文样本数小于密钥集的密钥数,密钥序列不重复使用,这种加密方法是相当安全的。

四、混沌加密通信方案传输效率

传输密文的同时需要传输驱动信号,造成传输效率低下,或传输码率过高。在我们的加密方案中,每个驱动信号样本可以驱动OCOML系统同时产生J个密钥,对J个明文数据进行加密编码,因此,每传输一个驱动信号样本数据可同时传输J个密文数据,和已有的混沌同步通信方案相比,消息样本数和驱动信号样本数之比由1∶1提高到J∶1,对于相同长度的消息来说,驱动信号样本数将减少至原来的1J。当J足够大时,由于传输驱动信号而造成的数据增量变得很小。传输效率获得极大的提高。

小知识之耦合

耦合指一程式的模组之间资讯或参数流动的程度。