system: [SYSTEM]

user: 2. 一类二维时变广义符号混沌系统 下面将通过例子来说明如何去构造具体的时变广义符号混沌系统。 设 I = Z q = { 0 ， 1 ， ⋯ ， q − 1 } ， ， f : N 0 × I 3 → I 和 g : N 0 × I 3 → I 定义如下： f ( m ， x 0 ， y 0 ， x 1 ) = a 0 ， m x 0 + a 1 ， m y 0 + a x 1 mod q = a 0 ， m x 0 ⊕ a 1 ， m y 0 ⊕ a x 1 ， (7) g ( m ， y 0 ， x 0 ， y 1 ) = b 0 ， m y 0 ⊕ b 1 ， m x 0 ⊕ b y 1 ， x 0 ， x 1 ， y 0 ， y 1 ∈ I 和 m ∈ N 0 ， (8) 其中， { a i ， m } m = 0 ∞ 和 { b i ， m } m = 0 ∞ 是两个周期非负整数列，即存在整数 p > 0 ，使得对任一 和 ，有 a i ， m = a i ， m + p 和 b i ， m = b i ， m + p ，a和b是两个正整数，且a与q互素，以及b与q互素。 显然，利用式(7)和(8)所定义的函数f和g可以生成如下二维时变广义符号动力系统 { x m + 1 ， n = f ( m ， x m ， n ， y m ， n ， x m ， n + 1 ) = a 0 ， m x m ， n ⊕ a 1 ， m y m ， n ⊕ a x m ， n + 1 y m + 1 ， n = g ( m ， y m ， n ， x m ， n ， y m ， n + 1 ) = b 0 ， m y m ， n ⊕ b 1 ， m x m ， n ⊕ b y m ， n + 1 (9) 其中， x m ， n ， y m ， n ∈ Z q ，对任意 m ， n ∈ N 0 。下面将系统(9)所等价的无穷维离散系统设为 x m + 1 = g m + 1 ( x m ) ， ， x m = { ( x m ， n ， y m ， n ) } n = 0 ∞ ， m ∈ N 0 ， (10) 其中， g m + 1 :     I 2 ∞ → I 2 ∞ 是由f和g所导出的唯一映射，即对任意 α = { ( u n ， v n ) } n = 0 ∞ ∈ I 2 ∞ ，有 g m + 1 ( α ) = { ( a 0 ， m u n ⊕ a 1 ， m v n ⊕ a u n + 1 ， b 0 ， m v n ⊕ b 1 ， m u n ⊕ b v n + 1 ) } n = 0 ∞ . (11) 参照文献 [ 6 ] [ 7 ] ，并利用已知条件，容易证明如下的两个引理及其推论，其证明过程省略。 引理1：式(10)所定义的 G = { g n } n = 1 ∞ 是周期为p的一列映射，即 G m = G m + p ， m ∈ N 1 。 推论1：设 是由式(10)所确定的一列映射，则对一切 m ， s ， t ∈ N 1 ，都有 g s + m p − 1 ∘ g s + m p − 2 ∘ ⋯ ∘ g s = g t + m p − 1 ∘ g t + m p − 2 ∘ ⋯ ∘ g t . (12) 引理2：对任一 、正整数m和 r ， v ∈ Z q ，一定存在 s ∈ Z q ，使得 r ⊕ u m s = v 。 定理1：时变广义符号系统(9)在度量空间 ( I 2 ∞ ， d ) 上是Devaney混沌的，其中， I = Z q 。 证明：由定义2，显然只需要证明系统(10)是 ( I 2 ∞ ， d ) 上的Devaney混沌系统就行了。 首先，将证明系统(10)在 ( I 2 ∞ ， d ) 上具有传递性。 对任意两个非空开子集 U ， V ⊆ I 2 ∞ ，以及对任一 α = { ( s n ， t n ) } n = 0 ∞ ∈ U 和 β = { ( u n ， v n ) } n = 0 ∞ ∈ V ，存在 θ > 0 ，使得 B θ ( α ) = { x = { ( x n ， y n ) } n = 0 ∞ ∈ I 2 ∞ | d ( x ， α ) < θ } ⊆ U 和 B θ ( β ) ⊆ V 。因此，根据式(4)所定义的度量d的性质可知，存在一个正整数M，使得 { x = { ( x 1 ， n ， y 1 ， n ) } n = 0 ∞ | x 1 ， i = s i ， y 1 ， i = t i ， i ∈ Z M ; x 1 ， j ， y 1 ， j ∈ I ， j ∉ Z M } ⊆ B θ ( α ) ， . (13) 对任意一点 x = { ( x n ， y n ) } n = 0 ∞ ∈ I 2 ∞ ，记 G 1 ( x ) = { ( a 0 ， 0 x n ⊕ a 1 ， 0 y n ⊕ a x n + 1 ， b 0 ， 0 y n ⊕ b 1 ， 0 x n ⊕ b y n + 1 ) } n = 0 ∞ = { x n ( 1 ) } n = 0 ∞ = x ( 1 ) ， 其中， x ( 1 ) = { x n ( 1 ) = ( f 0 ( x n ， y n ) ⊕ a x n + 1 ， h 0 ( x n ， y n ) ⊕ b y n + 1 ) } n = 0 ∞ ，且函数 f 0 : I 2 → I 和 h 0 : I 2 → I 满足 f 0 ( x n ， y n ) = a 0 ， 0 x n ⊕ a 1 ， 0 y n 和 h 0 ( x n ， y n ) = b 0 ， 0 y n ⊕ b 1 ， 0 x n 。 一般地，利用递推法，对任意 m = 1 ， 2 ， ⋯ 和 x = { ( x n ， y n ) } n = 0 ∞ ∈ I 2 ∞ ，都有 G m ( x ) = g m ( x ( m − 1 ) ) = g m ( ⋯ ( g 1 ( x ) ⋯ ) ) = { x n ( m ) } n = 0 ∞ = x ( m ) ， x ( 0 ) = x ， 其中， 由式(6)定义，且 x ( m ) = { x n ( m ) = ( f m − 1 ( x n ， ⋯ ， y n + m − 1 ) ⊕ a m x n + m ， h m − 1 ( x n ， ⋯ ， y n + m − 1 ) ⊕ b m y n + m ) } n = 0 ∞ ， (14) 和 h m : I 2 ( m + 1 ) → I 是按递推方式由G唯一决定的两列函数，对任意 m ， n ∈ N 0 。 由引理2可知，对任一整数 和 c ∈ I ，都存在 ，使得 f m − 1 ( x n ， ⋯ ， y n + m − 1 ) ⊕ a m r = c ， h m − 1 ( x n ， ⋯ ， y n + m − 1 ) ⊕ b m h = c . (15) 对于 α = { ( s n ， t n ) } n = 0 ∞ ∈ U 和 β = { ( u n ， v n ) } n = 0 ∞ ∈ V ，由式(13)，(14)和(15)，可找到一点 η = { ( r n ， k n ) } n = 0 ∞ ∈ I 2 ∞ ，满足 和 k n = t n ，对 ，且依次可选取的 r M ， r M + 1 ， ⋯ 和 k M ， k M + 1 ， ⋯ ，使得如下等式成立： f M − 1 ( r n ， ⋯ ， k n + M − 1 ) ⊕ a M r n + M = u n ， h M − 1 ( r n ， ⋯ ， k n + M − 1 ) ⊕ b M k n + M = v n ， n = 0 ， 1 ， 2 ， ⋯ . 因此， G M ( η ) = β ∈ V 和 η ∈ U 。这样，系统(10)在 ( I 2 ∞ ， d ) 上具有传递性。 其次，利用与上面传递性的相似证明方法，不仅可证明系统(10)具有周期点的稠密性，而且也能证明系统(10)具有初值敏感依赖性。由于证明过程是类似的，因此，省略它们的证明过程。这样，综合上面的证明过程可知，系统(10)在 ( I 2 ∞ ， d ) 上是Devaney混沌的。证毕。 例1：考虑如下时变离散时空系统 x m + 1 ， n = a 0 ， m x m ， n ⊕ a 1 ， m y m ， n ⊕ x m ， n + 1 ， y m + 1 ， n = b 0 ， m y m ， n ⊕ b 1 ， m x m ， n ⊕ 3 y m ， n + 1 ， (16) 其中， x 0 ， n ∈ I = { 0 ， 1 } ， q = 2 ， 和 a 1 ， m = ( 3 m ) mod ( 2 ) ， b 0 ， m = 2 + ( − 1 ) m + 1 ， b 1 ， m = ( m + 1 ) mod ( 2 ) ，对任意 m ， n ∈ N 0 ， ⊕ 和 mod ( 2 ) 表示模2加法运算。 由于系统(16)是时变广义符号系统，因此，现有的判断方法不能判断系统(16)是否具有Devaney混沌性。但是，由于 { a i ， n } n = 0 ∞ 和 { b i ， n } n = 0 ∞ 都是周期数列，对任一 i = 0 ， 1 ，且2与1、2和3都是互素的，因此，由定理1可知，系统(16)在 ( I 2 ∞ ， d ) 上是Devaney混沌的。 参见文献 [ 6 ] [ 7 ] [ 8 ] [ 9 ] [ 10 ] 的研究和分析方法，下面将对系统(16)的解序列伪随机性进行一些分析，并在此基础上，将构造一种流密码算法。 首先，系统(16)是Devaney混沌的，因而在理论上其解一般是混乱和几乎不相关的，因而下面就对解序列的混乱性和相关性进行数值计算，并与常用的Logistic系统的相应性质进行对比。仿真效果可参见图1，其中，(a)和(b)、以及(d)和(e)分别为本文符号系统解序列X和Y的混乱性和自相关函数，而(c)和(f)分别为Logistic系统解序列的混乱性和自相关函数。 图1. 解的混乱性和相关性图 由图1可以看出，系统(16)解具有很好的类随机性。由于广义符号系统解序列在三维空间中都很混乱，这比二维空间中的混乱性更加复杂和难以预测，因此，利用符号系统来设计密钥流序列所具有的安全性比Logistic系统就会更好一些。 其次，按照常见随机数检测方法 [ 10 ] ，再对解序列进行单比特、扑克和游程检验，参见表1。 从表1中数据可以看出，与Logistic系统的相应性能检测相比，本文符号系统大都会更容易通过上述3项随机性检测，因而它的解序列在单比特、连续多比特和游程总数的分布上都会接近均匀分布，因而其类随机性较为理想。 最后，参照现有混沌序列密码算法的设计方法，下面利用系统(16)的解序列来构造一种流密码系统： 1) 选择常见的一副数字灰度图像作为明文，利用Matlab语言可以将该图像表示为一个数字矩阵 I = ( m i j ) 256 × 256 ，其中，每个明文数值 m i j ∈ Z 256 = { 0 ， 1 ， ⋯ ， 255 } ； 2) 先选取某个JK触发器序列作为系统(16)的初始值，再利用系统(16)的某个解 x = { x m ， n } m ， n = 0 ∞ 计算出密钥流序列，其中，需要将二元解序列 { x m ， n } m ， n = 0 ∞ 转化为在0~255中取值的密钥流序列； 3) 加密变换： c i j = x i j ⊕ m i j ，其中， c i j 表示密文数值， ⊕ 表示逐比特异或运算； 4) 解密变换： m i j = x i j ⊕ c i j 。 将由上述方法所构造的流密码算法与基于Logistic系统所构造的流密码算法进行效果对比，它们的Matlab仿真效果可参见图2。 Table 1 Three common random number test result 检测方法 样本数量 本文符号系统X序列P值 本文符号系统Y序列P值 logistic系统P值 检测结果 单比特频数检测 40，000 bit 0.5419 0.3681 0.0488 通过 扑克检测 40，000 byte 0.7751 0.7391 0.2545 通过 游程总数检测 40，000 bit 0.4461 0.9156 0.2310 通过 表1. 三种常见随机数检测结果 图2. 加解密效果图 直观上，由图2可以看出，两种算法都能对原图像进行优良和正确的置乱加解密。下面继续再对图2中原图和两种算法加密效果图的3种方向的相邻像素值之间的相关性进行仿真计算，可见表2。 Table 2 Correlation between adjacent pixels between original and encrypted graph 方向 原图 logistic加密图 本文符号系统加密图 水平 0.9357 0.0038 0.0053 垂直 0.9682 0.0031 0.0027 对角 0.9084 0.0016 0.0005 表2. 原图与加密图相邻像素之间各方向的相关性 从表2中，可以看到原图在三个方向上相邻像素之间具有很高的相关性，在各个方向的相关系数都接近1。而经过加密后，Logistic加密图和本文符号系统加密图在各个方向的相关系数则都接近0，说明加密效果良好。而且，还可以看出，利用本文符号系统加密比利用Logistic系统加密后在多数方向上的相关性更小，加密效果会更好。