# Robust Chaos of Cubic Polynomial Discrete Maps with Application to Pseudorandom Number Generators

Authors: Dandan Han; Lequan Min; Hongyan Zang; Xiuping Yang
Journal: Mathematical Problems in Engineering
 (2019)

---

## Abstract

Based on the robust chaos theorem of S-unimodal maps, this paper studies a kind of cubic polynomial discrete maps (CPDMs) and sets up a novel theorem. This theorem gives general conditions for the occurrence of robust chaos in the CPDMs. By using the theorem, we construct a CPDM. The parameter regions of chaotic robustness of the CPDM are larger than these of Logistic map. By using a fixed point arithmetic, we investigate the cycle lengths of the CPDM and a Logistic map. The results show that the maximum cycle lengths of1000 chaotic sequences with length 3×107 generated by different initial value conditions exponentially increase with the resolutions. When the resolutions reach 10-7~10-13, the maximum cycle lengths of the cubic polynomial chaotic sequences are significantly greater than these of the Logistic map. When the resolution reaches 10-14, there is the situation without cycle for 1000 cubic polynomial chaotic sequences with length 3×107. By using the CPDM and Logistic map, we design four chaos-based pseudorandom number generators (CPRNGs): CPRNGI, CPRNGII, CPRNGIII, and CPRNGIV. The randomness of two 1000 key streams consisting of 20000 bits is tested, respectively, generated by the four CPRNGs. The result suggests that CPRNGIII based on the cubic polynomial chaotic generalized synchronic system has better performance.


---

## Body

## 1. Introduction

Chaos is one type of complex dynamic behaviors displaying similarly random happenings within a determined nonlinear system or process. Chaotic systems are mainly defined and analyzed in continuous or discrete phase spaces. And they exhibit properties such as sensitive dependent on initial conditions and system parameters and ergodicity and long time’s chaotic behaviors are not predictable [1]. In 1975, Li-Yorke first formally introduced the term chaos into mathematics [2]. They established a criterion for the existence of chaos in one-dimensional difference equations and the famous example is that “period three implies chaos”.Pseudorandom numbers have wide range of applications in many fields, such as physical systems simulation [3–6], information encryption [7–13], entertainment [14, 15], and computer simulation [16–20]. In the practical applications, pseudorandom algorithm has almost replaced the stochastic indicator and random number generator based on the hardware. John von Neumann was the first scholar who has made outstanding contributions to designing computer-based pseudorandom number generator. Currently, the known statistical test criterions of random number generator/pseudorandom number generators (RNGs/PRNGs) contain DIEHARD test [21] and FIPS 140 test [22] and SP 800-22 test [23] released by the National Institute of Standards and Technology (NIST).In order to construct a chaotic quadratic polynomial, Zhou and Song set up a necessary and sufficient condition to determine the 3-periodic points of a quadratic polynomial [24], based on Li-Yorke’s criterion. This research is a perfect application of Li-Yorke’s theorem, but it is not suitable for researching the chaotic properties of cubic polynomial. Based on the theorem given in [25], Andrecut and Ali derived some general conditions and practical procedures for generating robust chaos in smooth unimodal maps [26].Based on the robust chaos theorem of S-unimodal maps, this paper sets up a chaos criterion theorem for cubic polynomial discrete maps and constructs a novel cubic polynomial discrete map. Using this theorem and numerical simulations verifies that the parameter regions of chaotic robustness of the cubic polynomial discrete map are larger than these of Logistic map. The maximum cycle lengths of the cubic polynomial chaotic sequences are significantly greater than these of Logistic map, when the resolutions reach10-7~10-13. Using the cubic polynomial discrete map and Logistic map constructs two 6-dimensional chaotic generalized synchronic systems (6DCGSS). Four chaos-based pseudorandom number generators CPRNGI, CPRNGII, CPRNGIII, and CPRNGIV, respectively, are designed by the cubic polynomial discrete map, Logistic map, and two 6DCGSS. The results of pseudorandomness tests suggest that CPRNGIII has better performance.The rest of this paper is organized as follows. Section2 introduces the robust chaos theorem of S-unimodal maps, and sets up a chaos criterion theorem of cubic polynomial discrete maps. Section 3 constructs a novel cubic polynomial discrete map. Numerical simulations analyze bifurcation and cycle lengths of the novel cubic polynomial discrete map and Logistic map. Section 4 presents two 6DCGSS based on the GS theorem. Section 5 designs four chaos-based pseudorandom number generators CPRNGI, CPRNGII, CPRNGIII, and CPRNGIV and makes the statistic tests for the four CPRNGs. Finally, Section 6 concludes the article.


## 2. Robust Chaos of Cubic Polynomial Maps

Robust chaos refers that, during the system parameter disturbances in a certain range, the system can guarantee the characteristics of chaos and still does not change the overall performance of the system. The robust chaos theorem of S-unimodal maps is introduced as follows.Theorem 1 (see [26]).
Lettingφv(x):J=[a,b]→J be a parametric S-unimodal map with the unique maximum at c∈(a,b) and φv(c)=b, ∀v∈(vmin,vmax), then φv(x) generates robust chaos for v∈(vmin,vmax).Based on the above theorem, we set up the robust chaos theorem of cubic polynomial discrete maps.Theorem 2.
Let a kind of cubic polynomial discrete maps have the following general form:(1)fx=p3x3+p2x2+p1xIf the parameters set S={p3,p2,v} this satisfies one of the following cases:
Case (1)(2)p3>0p2<0v≥256p22=vp3p1p1=-271-1-4/vv·4-18/v-41-3/v3/2Case (2)(3)p3<0p2>0v<0p22=vp3p1p1=-271+1-4/vv·4-18/v+41-3/v3/2Case (3)(4)p3<0p2<0v<0p22=vp3p1p1=-271-1-4/vv·4-18/v-41-3/v3/2Then f:J=[0,b]→J is the S-unimodal map. And it has the unique maximum at c∈(0,b), and f(c)=b, b=(-p2-p22-4p3p1)/(2p3), c=(-p2-p22-3p3p1)/(3p3). f satisfies Theorem 1. That is, f is robust chaos. The proof progress is shown in the Appendix.Three cases of robust chaos, respectively, correspond to the three surfaces. The robust chaos regions of case (1), (2) and (3) of the cubic polynomial discrete map are shown in Figure1. The three surfaces are the robust chaos regions.Figure 1
The robust chaos regions of cubic polynomial discrete map.


## 3. Comparison of Bifurcation and Cycle Lengths between the Cubic Polynomial Chaotic Map and Logistic Map

Based on the case (1) of Theorem2, we construct a novel cubic polynomial discrete chaotic map: (5)xk+1=p3xk3+p2xk2+p1xkwhere v=5, p1=-{27(1-1-4/v)}/{v·[4-18/v-4(1-3/v)3/2]}, p2=-3, p3=p22/(vp1).We consider Logistic map:(6)yk+1=ayk1-ykwhere a=3.99.The evolution of state variablesk-xk of the novel cubic polynomial discrete chaotic map with v=5 is shown in Figure 2. The evolution of state variables k-yk of the Logistic map is shown in Figure 3. Extensive numerical simulations show that the dynamic behaviors of the chaotic map demonstrate chaotic attractor features.Figure 2
The evolution of state variablesk-xk.Figure 3
The evolution of state variablesk-yk.


### 3.1. Comparison of Bifurcation between the Cubic Polynomial Chaotic Map and Logistic Map

The calculated Lyapunov exponent of the chaotic maps (5) is 0.69135, which is bigger than 0.63927, and the Lyapunov exponent of Logistic map (6).The chaotic map (5) is robust chaos for parameter v>25/6 with p2=-3 from the case (1) of Theorem 2. The bifurcation diagram of the x as a function of the parameter v is shown in Figure 4.Figure 4
The bifurcation diagram showing thex as a function of the parameter v.In 2009, Zhou and Song set up a theorem for the necessary and sufficient condition of determination 3-periodic points of a quadratic polynomial.Theorem 3 (see [24]).
A quadratic polynomialf(x)=ax2+bx+c(a≠0) has real 3-periodic points if and only if b2-4ac-2b≥7.Now we use the theorem to determine the parameter regions of robust chaos of Logistic map.Proof.
Let Logistic mapf(x)=-ax2+ax, 0<a<4, and x∈I=[0,1]. Based on Theorem 3 and Li-Yorke’s criterion that period three implies chaos, Logistic map is chaos if and only if (7)a2-2a≥7⇔a<1-22ora>1+22
Thence Logistic map is chaos if and only if1+22<a<4.The bifurcation diagram of Logistic map about the parametera is shown in Figure 5. Logistic map is robust chaos for the parameter regions a∈(1+22,4). Compared with Logistic map, the bifurcation of chaotic map (5) is uniform distributed. And the cubic polynomial map is robust chaos for the parameter regions v∈(25/6,+∞) with p2=-3 from the case (1) of Theorem 2. Clearly, the parameter regions of robust chaos of the cubic polynomial discrete map are larger than these of Logistic map.Figure 5
The bifurcation diagram of Logistic map about the parametera.


### 3.2. Comparison of Cycle Lengths between the Cubic Polynomial Chaotic Map and Logistic Map

When chaotic systems are realized under finite precision, the periodic cycles will occur due to rounding errors. Reference [27] investigates the maximum cycle lengths of Logistic map with respect to different initial condition values.Using the algorithm proposed in [27] for fixed point realizations analyzes the cycle lengths of the cubic polynomial chaotic map (5) and Logistic map (6). During analysis, 1000 uniformly distributed random initial condition values are used to generate 1000 chaotic sequences with length 3×107, where the resolutions are from 10-6 to 10-14, and the rounding type selects rounded towards zero (fix) and regardless of the iteration to fixed point.The maximum, mean, and minimum of the cycle lengths for the cubic polynomial chaotic sequences and Logistic sequences are listed in Table1. The cycle lengths of chaotic sequences increase with the resolutions. When the resolution reaches 10-14, there is the situation without cycle for 1000 cubic polynomial chaotic sequences with length 3×107. That is, the maximum of the cycle lengths for 1000 cubic polynomial chaotic sequences is larger than 3×107.Table 1
Cycle lengths (CL) of the cubic polynomial chaotic map and Logistic map about resolutions.
resolutions  1 0 - 6 1 0 - 7 1 0 - 8 1 0 - 9 1 0 - 10 1 0 - 11 1 0 - 12 1 0 - 13 1 0 - 14 Max CL Map (5) 442 3,726 27,803 29,305 53,139 263,658 435,974 2,007,259 > 3 × 1 0 7 Map (6) 1,112 1,702 4,000 14,060 51,485 249,204 344,356 375,446 13,893,500  Mean CL Map (5) 428 1,315 26,991 25,708 46,6337 220,644 177,736 1,599,595 11,960,668 Map (6) 1,079 1,286 2,275 10,886 47,511 241,890 323,336 280,082 4,593,987  Min CL Map (5) 63 71 820 1,525 4,417 24,689 80,581 878,343 4,593,987 Map (6) 23 25 651 1,653 6,547 66,343 2,907 46,140 58,072The change diagrams of maximum, mean, and minimum of cycle lengths are shown in Figures6, 7, and 8, respectively. The red line represents the change of cycle lengths for the cubic polynomial chaotic map (5), and the blue line represents the change of cycle lengths for the Logistic map (6). According to the three figures, the maximum of cycle lengths exponentially increases with the resolutions. And the maximum of cycle lengths of cubic polynomial chaotic sequences is significantly larger than these of the Logistic sequences when resolutions are from 7 to 13.Figure 6
The change diagram of maximum of cycle lengths for different decimal resolutions from6 to 13.Figure 7
The change diagram of mean of cycle lengths for different decimal resolutions from6 to 13.Figure 8
The change diagram of minimum of cycle lengths for different decimal resolutions from6 to 13.


## 3.1. Comparison of Bifurcation between the Cubic Polynomial Chaotic Map and Logistic Map

The calculated Lyapunov exponent of the chaotic maps (5) is 0.69135, which is bigger than 0.63927, and the Lyapunov exponent of Logistic map (6).The chaotic map (5) is robust chaos for parameter v>25/6 with p2=-3 from the case (1) of Theorem 2. The bifurcation diagram of the x as a function of the parameter v is shown in Figure 4.Figure 4
The bifurcation diagram showing thex as a function of the parameter v.In 2009, Zhou and Song set up a theorem for the necessary and sufficient condition of determination 3-periodic points of a quadratic polynomial.Theorem 3 (see [24]).
A quadratic polynomialf(x)=ax2+bx+c(a≠0) has real 3-periodic points if and only if b2-4ac-2b≥7.Now we use the theorem to determine the parameter regions of robust chaos of Logistic map.Proof.
Let Logistic mapf(x)=-ax2+ax, 0<a<4, and x∈I=[0,1]. Based on Theorem 3 and Li-Yorke’s criterion that period three implies chaos, Logistic map is chaos if and only if (7)a2-2a≥7⇔a<1-22ora>1+22
Thence Logistic map is chaos if and only if1+22<a<4.The bifurcation diagram of Logistic map about the parametera is shown in Figure 5. Logistic map is robust chaos for the parameter regions a∈(1+22,4). Compared with Logistic map, the bifurcation of chaotic map (5) is uniform distributed. And the cubic polynomial map is robust chaos for the parameter regions v∈(25/6,+∞) with p2=-3 from the case (1) of Theorem 2. Clearly, the parameter regions of robust chaos of the cubic polynomial discrete map are larger than these of Logistic map.Figure 5
The bifurcation diagram of Logistic map about the parametera.


## 3.2. Comparison of Cycle Lengths between the Cubic Polynomial Chaotic Map and Logistic Map

When chaotic systems are realized under finite precision, the periodic cycles will occur due to rounding errors. Reference [27] investigates the maximum cycle lengths of Logistic map with respect to different initial condition values.Using the algorithm proposed in [27] for fixed point realizations analyzes the cycle lengths of the cubic polynomial chaotic map (5) and Logistic map (6). During analysis, 1000 uniformly distributed random initial condition values are used to generate 1000 chaotic sequences with length 3×107, where the resolutions are from 10-6 to 10-14, and the rounding type selects rounded towards zero (fix) and regardless of the iteration to fixed point.The maximum, mean, and minimum of the cycle lengths for the cubic polynomial chaotic sequences and Logistic sequences are listed in Table1. The cycle lengths of chaotic sequences increase with the resolutions. When the resolution reaches 10-14, there is the situation without cycle for 1000 cubic polynomial chaotic sequences with length 3×107. That is, the maximum of the cycle lengths for 1000 cubic polynomial chaotic sequences is larger than 3×107.Table 1
Cycle lengths (CL) of the cubic polynomial chaotic map and Logistic map about resolutions.
resolutions  1 0 - 6 1 0 - 7 1 0 - 8 1 0 - 9 1 0 - 10 1 0 - 11 1 0 - 12 1 0 - 13 1 0 - 14 Max CL Map (5) 442 3,726 27,803 29,305 53,139 263,658 435,974 2,007,259 > 3 × 1 0 7 Map (6) 1,112 1,702 4,000 14,060 51,485 249,204 344,356 375,446 13,893,500  Mean CL Map (5) 428 1,315 26,991 25,708 46,6337 220,644 177,736 1,599,595 11,960,668 Map (6) 1,079 1,286 2,275 10,886 47,511 241,890 323,336 280,082 4,593,987  Min CL Map (5) 63 71 820 1,525 4,417 24,689 80,581 878,343 4,593,987 Map (6) 23 25 651 1,653 6,547 66,343 2,907 46,140 58,072The change diagrams of maximum, mean, and minimum of cycle lengths are shown in Figures6, 7, and 8, respectively. The red line represents the change of cycle lengths for the cubic polynomial chaotic map (5), and the blue line represents the change of cycle lengths for the Logistic map (6). According to the three figures, the maximum of cycle lengths exponentially increases with the resolutions. And the maximum of cycle lengths of cubic polynomial chaotic sequences is significantly larger than these of the Logistic sequences when resolutions are from 7 to 13.Figure 6
The change diagram of maximum of cycle lengths for different decimal resolutions from6 to 13.Figure 7
The change diagram of mean of cycle lengths for different decimal resolutions from6 to 13.Figure 8
The change diagram of minimum of cycle lengths for different decimal resolutions from6 to 13.


## 4. 6-Dimensional Chaotic Generalized Synchronic Systems

Based on the cubic polynomial map (5) and the Logistic map (6), we consider the following 3-dimensional discrete chaotic map as the driving part: (8)Xk+1=x1k+1x2k+1x3k+1=p3x1k3+p2x1k2+p1x1kx1k-2sin⁡x2ksin⁡x3ksin⁡x1k+2sin⁡x2kx3k(9)Zk+1=z1k+1z2k+1z3k+1=3.99z1k1-z1kz1k-2sin⁡z2ksin⁡z3ksin⁡z1k+2sin⁡z2kz3kwhere v=5, p1=-{27(1-1-4/v)}/{v·[4-18/v-4(1-3/v)3/2]}, p2=-3, and p3=p22/(vp1).The calculated Lyapunov exponents of the chaotic map (8) are {0.69088,0.39203,-0.81092}. The calculated Lyapunov exponents of the chaotic map (9) are {0.63823,0.43349,-1.1883}.In order to construct a GS driven system, define an invertible transformation:R3→R3: (10)HX=AX≜h1X,h2X,h3X(11)HZ=AZ≜h1Z,h2Z,h3Zwhere (12)A=131124-5-316is an invertible matrix. Now let the driven part have the form: (13)Yk+1=y1k+1y2k+1y3k+1=AXk+1-17AXk-Yk(14)Wk+1=w1k+1w2k+1w3k+1=AZk+1-17AZk-WkFrom (13) and (14), it follows that the error equations q(X,Y) and q(Z,W) can be represented by e(k)/7=1/7(AX(k)-Y(k)) and e(k)/7=1/7(AZ(k)-W(k)). It guarantees that the zero solution of the error equation is asymptotically stable. From the chaos generalized synchronization (GS) theorem [28], systems (8) and (13) as well as (9) and (14) are GS with respect to the transformation H=A for any initial value (X(0),Y(0))∈R3×R3 and (Z(0),W(0))∈R3×R3. Since H is invertible, systems (13) and (14) are also chaotic.


### 4.1. Numerical Simulations

Select the following initial conditions:(15)X0=Z0=0.3,0.01,0.1T(16)Y0=AX0+1(17)W0=AZ0+1The chaotic orbits of the state variables{x1,x2,x3} for the first 5000 iterations are shown in Figures 9(a)–9(d). The evolutions of the state variables, k-x1(k), k-x2(k), and k-x3(k), are shown in Figures 10(a)–10(c). The chaotic orbits of the state variables {y1,y2,y3} for the first 5000 iterations are shown in Figures 11(a)–11(d). The evolutions of the state variables, k-y1(k), k-y2(k), and k-y3(k), are shown in Figures 12(a)–12(c). The dynamic behaviors of the chaotic map demonstrate chaotic attractor characteristics. Figures 13(a)–13(c) show that although the initial condition (16) has a perturbation, X(k) and Y(k) are rapidly converting into generalized synchronization as the chaos GS theorem predicts.Figure 9
Chaotic trajectories of variables: (a)x1(k)-x2(k)-x3(k), (b) x1(k)-x2(k), (c) x1(k)-x3(k), and (d) x2(k)-x3(k).
(a) (b) (c) (d)Figure 10
The evolution of state variables: (a)k-x1(k), (b) k-x2(k), and (c) k-x3(k).
(a) (b) (c)Figure 11
Chaotic trajectories of variables: (a)y1(k)-y2(k)-y3(k), (b)y1(k)-y2(k), (c) y1(k)-y3(k), and (d) y2(k)-y3(k).
(a) (b) (c) (d)Figure 12
The evolution of state variables: (a)k-y1(k), (b) k-y2(k), and (c) k-y3(k).
(a) (b) (c)Figure 13
The state vectorsX and Y are in generalized synchronization with respect to the transformation H: (a) h1(X(k))-y1(k), (b) h2(X(k))-y2(k), and (c) h3(X(k))-y3(k).
(a) (b) (c)The chaotic orbits of the state variables{z1,z2,z3} for the first 5000 iterations are shown in Figures 14(a)–14(d). The evolutions of the state variables, k-z1(k), k-z2(k), and k-z3(k), are shown in Figures 15(a)–15(c). The chaotic orbits of the state variables {w1,w2,w3} for the first 5000 iterations are shown in Figures 16(a)–16(d). The evolutions of the state variables, k-w1(k), k-w2(k), and k-w3(k), are shown in Figures 17(a)–17(c). The dynamic behaviors of the chaotic map demonstrate chaotic attractor characteristics. Observe that Figures 18(a)–18(c) show that although the initial condition (17) has a perturbation, Z(k) and W(k) are rapidly converting into generalized synchronization as the chaos GS theorem predicts.Figure 14
Chaotic trajectories of variables: (a)z1(k)-z2(k)-z3(k), (b) z1(k)-z2(k), (c) z1(k)-z3(k), and (d) z2(k)-z3(k).
(a) (b) (c) (d)Figure 15
The evolution of state variables: (a)k-z1(k), (b) k-z2(k), and (c) k-z3(k).
(a) (b) (c)Figure 16
Chaotic trajectories of variables: (a)w1(k)-w2(k)-w3(k), (b) w1(k)-w2(k), (c) w1(k)-w3(k), and (d) w2(k)-w3(k).
(a) (b) (c) (d)Figure 17
The evolution of state variables: (a)k-w1(k), (b) k-w2(k), and (c) k-w3(k).
(a) (b) (c)Figure 18
The state vectorsZ and W are in generalized synchronization with respect to the transformation: (a) h1(Z(k))-w1(k), (b) h2(Z(k))-w2(k), and (c) h3(Z(k))-w3(k).
(a) (b) (c)


## 4.1. Numerical Simulations

Select the following initial conditions:(15)X0=Z0=0.3,0.01,0.1T(16)Y0=AX0+1(17)W0=AZ0+1The chaotic orbits of the state variables{x1,x2,x3} for the first 5000 iterations are shown in Figures 9(a)–9(d). The evolutions of the state variables, k-x1(k), k-x2(k), and k-x3(k), are shown in Figures 10(a)–10(c). The chaotic orbits of the state variables {y1,y2,y3} for the first 5000 iterations are shown in Figures 11(a)–11(d). The evolutions of the state variables, k-y1(k), k-y2(k), and k-y3(k), are shown in Figures 12(a)–12(c). The dynamic behaviors of the chaotic map demonstrate chaotic attractor characteristics. Figures 13(a)–13(c) show that although the initial condition (16) has a perturbation, X(k) and Y(k) are rapidly converting into generalized synchronization as the chaos GS theorem predicts.Figure 9
Chaotic trajectories of variables: (a)x1(k)-x2(k)-x3(k), (b) x1(k)-x2(k), (c) x1(k)-x3(k), and (d) x2(k)-x3(k).
(a) (b) (c) (d)Figure 10
The evolution of state variables: (a)k-x1(k), (b) k-x2(k), and (c) k-x3(k).
(a) (b) (c)Figure 11
Chaotic trajectories of variables: (a)y1(k)-y2(k)-y3(k), (b)y1(k)-y2(k), (c) y1(k)-y3(k), and (d) y2(k)-y3(k).
(a) (b) (c) (d)Figure 12
The evolution of state variables: (a)k-y1(k), (b) k-y2(k), and (c) k-y3(k).
(a) (b) (c)Figure 13
The state vectorsX and Y are in generalized synchronization with respect to the transformation H: (a) h1(X(k))-y1(k), (b) h2(X(k))-y2(k), and (c) h3(X(k))-y3(k).
(a) (b) (c)The chaotic orbits of the state variables{z1,z2,z3} for the first 5000 iterations are shown in Figures 14(a)–14(d). The evolutions of the state variables, k-z1(k), k-z2(k), and k-z3(k), are shown in Figures 15(a)–15(c). The chaotic orbits of the state variables {w1,w2,w3} for the first 5000 iterations are shown in Figures 16(a)–16(d). The evolutions of the state variables, k-w1(k), k-w2(k), and k-w3(k), are shown in Figures 17(a)–17(c). The dynamic behaviors of the chaotic map demonstrate chaotic attractor characteristics. Observe that Figures 18(a)–18(c) show that although the initial condition (17) has a perturbation, Z(k) and W(k) are rapidly converting into generalized synchronization as the chaos GS theorem predicts.Figure 14
Chaotic trajectories of variables: (a)z1(k)-z2(k)-z3(k), (b) z1(k)-z2(k), (c) z1(k)-z3(k), and (d) z2(k)-z3(k).
(a) (b) (c) (d)Figure 15
The evolution of state variables: (a)k-z1(k), (b) k-z2(k), and (c) k-z3(k).
(a) (b) (c)Figure 16
Chaotic trajectories of variables: (a)w1(k)-w2(k)-w3(k), (b) w1(k)-w2(k), (c) w1(k)-w3(k), and (d) w2(k)-w3(k).
(a) (b) (c) (d)Figure 17
The evolution of state variables: (a)k-w1(k), (b) k-w2(k), and (c) k-w3(k).
(a) (b) (c)Figure 18
The state vectorsZ and W are in generalized synchronization with respect to the transformation: (a) h1(Z(k))-w1(k), (b) h2(Z(k))-w2(k), and (c) h3(Z(k))-w3(k).
(a) (b) (c)


## 5. Chaotic Pseudorandom Number Generator and Pseudorandomness Tests

### 5.1. Chaotic Pseudorandom Number Generator

Denote(18)Xi=xik∣k=1,2,…,N(19)Yi=yik∣k=1,2,…,N(20)Zi=zik∣k=1,2,…,N(21)Wi=wik∣k=1,2,…,Nwhere i=1,2,3, xi′s and yi′s are defined by (8) and (13), and zi′s and wi′s are defined by (9) and (14).First, introduce transformationsT11, T12, T13, and T14: R→{0,1,…,28-1} which transform the chaotic streams of GS systems (18) and (19) as well as (20) and (21) into key streams. (22)T11X1=mod⁡roundLX1-min⁡X1max⁡X1-min⁡X1,28(23)T12Y1=mod⁡roundLY1-min⁡Y1max⁡Y1-min⁡Y1,28(24)T13S=mod⁡roundLS-min⁡Smax⁡S-min⁡S,28(25)T14S¯=mod⁡roundLS¯-min⁡S¯max⁡S¯-min⁡S¯,28Here (26)S=X1∗X2+X3∗Y1-Y2(27)S¯=Z1∗Z2+Z3∗W1-W2where L=1015,  X∗Y represents the dot product of vectors XandY, and Z∗W represents the dot product of vectors ZandW.Second, construct a transformT2: {0,1,…,28-1}→{0,1} which is defined by(28)T2=T22∘T21s.t. ∀y∈{0,1,…,28-1}N(29)T21y=dec2binyLetting z=dec2bin(Y), then (30)T22z=z:where dec2bin and z(:) are both Matlab commands.Finally, transformationsT¯1, T¯2, T¯3, and T¯4:R3→{0,1} are defined via(31)T¯1=T2∘T11(32)T¯2=T2∘T12(33)T¯3=T2∘T13(34)T¯4=T2∘T14Now, based on the cubic polynomial chaotic map (5) and Logistic map (6), we design CPRNGI, CPRNGII, CPRNGIIII, and CPRNGIV. (35)S¯1=T¯1X1(36)S¯2=T¯2Y1(37)S¯3=T¯3S(38)S¯4=T¯4S¯are the key streams, respectively, generated via CPRNGI, CPRNGII, CPRNGIIII, and CPRNGIV.


### 5.2. Pseudorandomness Tests

The FIPS 140-2 test consists of four subtests: Monobit Test, Poker Test, Run Test, and Long Run Test. Each test needs a single stream of 20,000 one and zero bits from the keystream generator. Any failure in the first three tests means that the corresponding quantity of the sequences falls out the required intervals listed in the second column in Table2. The Long Run test is passed if there are no runs of length 26 or more.Table 2
The required intervals of the FIPS 140-2 Monobit Test, Pork Tests, and Run Test. Here, MT, PT, and LT represent the Monobit Test, the Pork Test, and the Long Run Test, respectively. k represents the length of the run of a tested sequence.χ2 DT represents χ2 distribution.
Test Item FIPS 140-2 α = 1 0 - 4 Golomb’s Required Intervals Accepted Intervals Postulates MT 9,725~10,275 9,725~10,275 10000  PT 2.16~46.17 2.16~46.17 χ 2 DT  LT < 26 < 26 —  k Run Test Run Test  1 2,315~2,685 2,362~2,638 2,500  2 1,114~1,386 1,153~1,347 1,250  3 527~723 556~694 625  4 240~384 264~361 313  5 103~209 122~191 156  6+ 103~209 122~191 156It has been pointed out that the required intervals of the Monotone test and the Pork test correspond significantly toα=10-4 for the normal cumulative distribution and the χ2 distribution, respectively, and the required intervals of the Run tests correspond approximately the significant α=1.6×10-7 for the normal cumulative distribution [29, 30]. If we select the significant α=10-4 of all tests, the corresponding accepted intervals are listed in the third column in Table 2. According to Golomb’s three postulates on the randomness that ideal pseudorandom sequences should satisfy [31], and the ideal values of the first three tests should be those listed in the 4th column in Table 2.The FIPS 140-2 test is used to check1,000 keystreams randomly generated, respectively, by CPRNGI, CPRNGII, CPRNGIIII, and CPRNGIV, with perturbed randomly the parameters, the initial conditions X(0), Y(0), Z(0), and W(0), and the parameters of matrix A=(αi,j) in the range |ϵ|∈[10-16,10-1]. The test results are listed in the 2/3/4/5th column in Table 3. The statistic test results are listed in the 3/4/5/6th column in Table 4, in which the statistic results are described by mean values and standard deviation (Mean±SD).Table 3
The pass rate of CPRNGI/CPRNGII/CPRNGIII/CPRNGIV.
Pass rate CPRNGI CPRNGII CPRNGIII CPRNGIV RC4 FIPS 140-2 100% 99.7% 100% 100% 99.9%  G FIPS 140-2 test 97.9% 98.0% 98.8% 98.4% 98.2%Table 4
The confident intervals of the FIPS 140-2 tested values of 1,000 key streams generated by CPRNGI/CPRNGII/CPRNGIII/CPRNGIV. Here, SD represents the standard deviation.
Test item bits CPRNGI CPRNGII CPRNGIII CPRNGIV RC4 Mean± SD Mean± SD Mean± SD Mean± SD Mean± SD MT 0 10007±69.605 10007± 71.590 10006±73.058 10007±71.965 9993.2±65.772 1 9992.7± 69.605 9992.9±71.590 9993.1± 73.058 9992.4±71.965 10007±65.677  PT – 15.098± 5.6493 15.144± 5.6130 15.188± 5.5703 15.197± 5.6712 14.874± 5.8308  LT 0 17.994±1.8567 18.142± 2.0430 13.908± 1.9165 13.864± 1.9388 13.900± 1.9201 1 13.611± 1.8447 13.665± 1.9116 13.732± 2.0194 13.669± 1.9367 13.510±1.7085  k bits Run Test Run Test Run Test Run Test Run Test  1 0 2497.6±47.004 2497.4± 44.510 2495.3±46.303 2499.3± 48.263 2502.1±45.931 1 2497.9± 47.282 2499.1± 46.161 2500.4± 47.228 2501.3± 4533.9 2499.3±46.735  2 0 1247.6±32.124 1248.4± 31.254 1251.0±31.376 1249.8± 31.976 1249.1±33.562 1 1248.6±32.918 1248.2± 31.182 1246.7±32.313 1248.7± 32.022 1246.5±31.876  3 0 625.46±23.377 624.51± 22.498 624.52±23.838 623.57± 22.549 623.59±22.079 1 624.95±23.373 623.06± 23.493 623.92±22.571 624.13± 22.838 625.66±25.016  4 0 312.53±16.690 312.44±15.625 312.20±16.847 312.21±16.735 312.23±15.121 1 312.04± 16.512 311.96± 16.467 312.99± 16.423 311.91± 170.34 314.11±16.823  5 0 155.77±12.108 155.69±12.158 155.72±12.042 155.86±12.212 156.61±10.409 1 156.02±12.011 156.64± 11.485 155.64±11.737 156.53± 12.220 156.96±12.530  6+ 0 156.69±12.031 157.01±12.004 157.47±11.758 157.67±11.880 156.32±13.331 1 156.14±11.644 156.45±11.971 156.59±11.684 155.69±12.010 156.39±11.715The RC4 was designed by Rivest of the RSA Security in 1987, which has been widely used in popular protocols such as Secure Sockets. The RC4 Algorithm PRNG can be designed via Matlab commands:(39)N=20000;K=randi0254,1,255;S=0:255-1;j=0;fori=1:255j=mod⁡j+Si+Ki,255;Sk=Sj+1;Sj+1=Si;Si=Sk;endC=zeros1,N;j=0;i=0;k=1;forl=1:N8i=mod⁡i+1,255;j=mod⁡j+Si+1,255;Sk=Sj+1;Sj+1=Si+1;Si+1=Sk;Cl=Smod⁡Sj+1+Si+1,255+1;endC=dec2binC′;C=C:;C=bin2decC;where randi([0 2L-1],1,2L) generates a vector of uniformly distributed random integers {0,1,…,2L-1} of dimension 2L; mod means modulus after division; zeros(1,N) is a zero raw vector of dimension N.Consequently, the RC4 Algorithm based PRNG is designed. The FIPS 140-2 test is used to test the1,000 keystreams randomly generated by RC4. The test result is listed in the 6th column in Table 3. The statistic test results are listed in the 7th column in Table 4. Observe that the statistical properties of the pseudorandomness of the sequences generated via the four CPRNGs and RC4 do not have significant differences. And compared with the other three CPRNSs, CPRNGIII based on the cubic polynomial chaotic generalized synchronic system has better performance.


### 5.3. Key Space

The key set parameters of CPRNGs includes the parameters{v,p2,p3,a}, the initial conditions X(0), Y(0), Z(0), and W(0), and the matrix A=(αi,j). It can be proved that if the perturbation matrix △=(δi,j) satisfies (40)δi,j<0.86the matrix A+△ is still invertible. Therefore CPRNGI, CPRNGII, CPRNGIIII, and CPRNGIV, respectively, have 1+1,1+1,3+3+3+9,1+3+3+9 key parameters denoted by (41)Ks1=k1,k2(42)Ks2=k1,k2(43)Ks3=k1,k2,…,k18(44)Ks4=k1,k2,…,k16Let the key set be perturbed by(45)Ks1Δ=Ks1+δ1,δ2(46)Ks2Δ=Ks2+δ1,δ2(47)Ks3Δ=Ks3+δ1,δ2,…,δ18(48)Ks4Δ=Ks4+δ1,δ2,…,δ16where (49)10-16≤δi≤10-1,i=1,…,16.Therefore the key spaces of the four CPRNGs are, respectively,1015×2, 1015×2, 1015×18, and 1015×16. The key space of CPRNGIII is larger than 2896.


## 5.1. Chaotic Pseudorandom Number Generator

Denote(18)Xi=xik∣k=1,2,…,N(19)Yi=yik∣k=1,2,…,N(20)Zi=zik∣k=1,2,…,N(21)Wi=wik∣k=1,2,…,Nwhere i=1,2,3, xi′s and yi′s are defined by (8) and (13), and zi′s and wi′s are defined by (9) and (14).First, introduce transformationsT11, T12, T13, and T14: R→{0,1,…,28-1} which transform the chaotic streams of GS systems (18) and (19) as well as (20) and (21) into key streams. (22)T11X1=mod⁡roundLX1-min⁡X1max⁡X1-min⁡X1,28(23)T12Y1=mod⁡roundLY1-min⁡Y1max⁡Y1-min⁡Y1,28(24)T13S=mod⁡roundLS-min⁡Smax⁡S-min⁡S,28(25)T14S¯=mod⁡roundLS¯-min⁡S¯max⁡S¯-min⁡S¯,28Here (26)S=X1∗X2+X3∗Y1-Y2(27)S¯=Z1∗Z2+Z3∗W1-W2where L=1015,  X∗Y represents the dot product of vectors XandY, and Z∗W represents the dot product of vectors ZandW.Second, construct a transformT2: {0,1,…,28-1}→{0,1} which is defined by(28)T2=T22∘T21s.t. ∀y∈{0,1,…,28-1}N(29)T21y=dec2binyLetting z=dec2bin(Y), then (30)T22z=z:where dec2bin and z(:) are both Matlab commands.Finally, transformationsT¯1, T¯2, T¯3, and T¯4:R3→{0,1} are defined via(31)T¯1=T2∘T11(32)T¯2=T2∘T12(33)T¯3=T2∘T13(34)T¯4=T2∘T14Now, based on the cubic polynomial chaotic map (5) and Logistic map (6), we design CPRNGI, CPRNGII, CPRNGIIII, and CPRNGIV. (35)S¯1=T¯1X1(36)S¯2=T¯2Y1(37)S¯3=T¯3S(38)S¯4=T¯4S¯are the key streams, respectively, generated via CPRNGI, CPRNGII, CPRNGIIII, and CPRNGIV.


## 5.2. Pseudorandomness Tests

The FIPS 140-2 test consists of four subtests: Monobit Test, Poker Test, Run Test, and Long Run Test. Each test needs a single stream of 20,000 one and zero bits from the keystream generator. Any failure in the first three tests means that the corresponding quantity of the sequences falls out the required intervals listed in the second column in Table2. The Long Run test is passed if there are no runs of length 26 or more.Table 2
The required intervals of the FIPS 140-2 Monobit Test, Pork Tests, and Run Test. Here, MT, PT, and LT represent the Monobit Test, the Pork Test, and the Long Run Test, respectively. k represents the length of the run of a tested sequence.χ2 DT represents χ2 distribution.
Test Item FIPS 140-2 α = 1 0 - 4 Golomb’s Required Intervals Accepted Intervals Postulates MT 9,725~10,275 9,725~10,275 10000  PT 2.16~46.17 2.16~46.17 χ 2 DT  LT < 26 < 26 —  k Run Test Run Test  1 2,315~2,685 2,362~2,638 2,500  2 1,114~1,386 1,153~1,347 1,250  3 527~723 556~694 625  4 240~384 264~361 313  5 103~209 122~191 156  6+ 103~209 122~191 156It has been pointed out that the required intervals of the Monotone test and the Pork test correspond significantly toα=10-4 for the normal cumulative distribution and the χ2 distribution, respectively, and the required intervals of the Run tests correspond approximately the significant α=1.6×10-7 for the normal cumulative distribution [29, 30]. If we select the significant α=10-4 of all tests, the corresponding accepted intervals are listed in the third column in Table 2. According to Golomb’s three postulates on the randomness that ideal pseudorandom sequences should satisfy [31], and the ideal values of the first three tests should be those listed in the 4th column in Table 2.The FIPS 140-2 test is used to check1,000 keystreams randomly generated, respectively, by CPRNGI, CPRNGII, CPRNGIIII, and CPRNGIV, with perturbed randomly the parameters, the initial conditions X(0), Y(0), Z(0), and W(0), and the parameters of matrix A=(αi,j) in the range |ϵ|∈[10-16,10-1]. The test results are listed in the 2/3/4/5th column in Table 3. The statistic test results are listed in the 3/4/5/6th column in Table 4, in which the statistic results are described by mean values and standard deviation (Mean±SD).Table 3
The pass rate of CPRNGI/CPRNGII/CPRNGIII/CPRNGIV.
Pass rate CPRNGI CPRNGII CPRNGIII CPRNGIV RC4 FIPS 140-2 100% 99.7% 100% 100% 99.9%  G FIPS 140-2 test 97.9% 98.0% 98.8% 98.4% 98.2%Table 4
The confident intervals of the FIPS 140-2 tested values of 1,000 key streams generated by CPRNGI/CPRNGII/CPRNGIII/CPRNGIV. Here, SD represents the standard deviation.
Test item bits CPRNGI CPRNGII CPRNGIII CPRNGIV RC4 Mean± SD Mean± SD Mean± SD Mean± SD Mean± SD MT 0 10007±69.605 10007± 71.590 10006±73.058 10007±71.965 9993.2±65.772 1 9992.7± 69.605 9992.9±71.590 9993.1± 73.058 9992.4±71.965 10007±65.677  PT – 15.098± 5.6493 15.144± 5.6130 15.188± 5.5703 15.197± 5.6712 14.874± 5.8308  LT 0 17.994±1.8567 18.142± 2.0430 13.908± 1.9165 13.864± 1.9388 13.900± 1.9201 1 13.611± 1.8447 13.665± 1.9116 13.732± 2.0194 13.669± 1.9367 13.510±1.7085  k bits Run Test Run Test Run Test Run Test Run Test  1 0 2497.6±47.004 2497.4± 44.510 2495.3±46.303 2499.3± 48.263 2502.1±45.931 1 2497.9± 47.282 2499.1± 46.161 2500.4± 47.228 2501.3± 4533.9 2499.3±46.735  2 0 1247.6±32.124 1248.4± 31.254 1251.0±31.376 1249.8± 31.976 1249.1±33.562 1 1248.6±32.918 1248.2± 31.182 1246.7±32.313 1248.7± 32.022 1246.5±31.876  3 0 625.46±23.377 624.51± 22.498 624.52±23.838 623.57± 22.549 623.59±22.079 1 624.95±23.373 623.06± 23.493 623.92±22.571 624.13± 22.838 625.66±25.016  4 0 312.53±16.690 312.44±15.625 312.20±16.847 312.21±16.735 312.23±15.121 1 312.04± 16.512 311.96± 16.467 312.99± 16.423 311.91± 170.34 314.11±16.823  5 0 155.77±12.108 155.69±12.158 155.72±12.042 155.86±12.212 156.61±10.409 1 156.02±12.011 156.64± 11.485 155.64±11.737 156.53± 12.220 156.96±12.530  6+ 0 156.69±12.031 157.01±12.004 157.47±11.758 157.67±11.880 156.32±13.331 1 156.14±11.644 156.45±11.971 156.59±11.684 155.69±12.010 156.39±11.715The RC4 was designed by Rivest of the RSA Security in 1987, which has been widely used in popular protocols such as Secure Sockets. The RC4 Algorithm PRNG can be designed via Matlab commands:(39)N=20000;K=randi0254,1,255;S=0:255-1;j=0;fori=1:255j=mod⁡j+Si+Ki,255;Sk=Sj+1;Sj+1=Si;Si=Sk;endC=zeros1,N;j=0;i=0;k=1;forl=1:N8i=mod⁡i+1,255;j=mod⁡j+Si+1,255;Sk=Sj+1;Sj+1=Si+1;Si+1=Sk;Cl=Smod⁡Sj+1+Si+1,255+1;endC=dec2binC′;C=C:;C=bin2decC;where randi([0 2L-1],1,2L) generates a vector of uniformly distributed random integers {0,1,…,2L-1} of dimension 2L; mod means modulus after division; zeros(1,N) is a zero raw vector of dimension N.Consequently, the RC4 Algorithm based PRNG is designed. The FIPS 140-2 test is used to test the1,000 keystreams randomly generated by RC4. The test result is listed in the 6th column in Table 3. The statistic test results are listed in the 7th column in Table 4. Observe that the statistical properties of the pseudorandomness of the sequences generated via the four CPRNGs and RC4 do not have significant differences. And compared with the other three CPRNSs, CPRNGIII based on the cubic polynomial chaotic generalized synchronic system has better performance.


## 5.3. Key Space

The key set parameters of CPRNGs includes the parameters{v,p2,p3,a}, the initial conditions X(0), Y(0), Z(0), and W(0), and the matrix A=(αi,j). It can be proved that if the perturbation matrix △=(δi,j) satisfies (40)δi,j<0.86the matrix A+△ is still invertible. Therefore CPRNGI, CPRNGII, CPRNGIIII, and CPRNGIV, respectively, have 1+1,1+1,3+3+3+9,1+3+3+9 key parameters denoted by (41)Ks1=k1,k2(42)Ks2=k1,k2(43)Ks3=k1,k2,…,k18(44)Ks4=k1,k2,…,k16Let the key set be perturbed by(45)Ks1Δ=Ks1+δ1,δ2(46)Ks2Δ=Ks2+δ1,δ2(47)Ks3Δ=Ks3+δ1,δ2,…,δ18(48)Ks4Δ=Ks4+δ1,δ2,…,δ16where (49)10-16≤δi≤10-1,i=1,…,16.Therefore the key spaces of the four CPRNGs are, respectively,1015×2, 1015×2, 1015×18, and 1015×16. The key space of CPRNGIII is larger than 2896.


## 6. Conclusions

First, based on the robust chaos theorem of S-unimodal maps, this paper sets up a robust chaos theorem on a kind of cubic polynomial discrete maps. This theorem provides parameter inequalities to determine the robust chaos regions.Second, using the Theorem2 constructs a cubic polynomial map. The analysis results of the cycle lengths of 1000 cubic polynomial chaotic sequences show that when the resolutions reach 10-7~10-13, the maximum of cycle lengths of the cubic polynomial chaotic sequences is significantly greater than these of Logistic map. When the resolution reaches 10-14, there is the situation without cycle for 1000 cubic polynomial chaotic sequences with length 3×107. The maximum of cycle lengths of Logistic sequences is less than 3×107.Third, combining the robust chaos Theorems2 and 3 and GS theorem proposes two 6DCGSS. The numerical simulations of two 6DCGSS have verified the effectiveness of theoretical results.Finally, design four chaos-based pseudorandom number generators CPRNGI, CPRNGII, CPRNGIII, and CPRNGIV. Comparing the results of the FIPS 140-2 test for the keystreams generated via the four CPRNGs with the RC4 PRNG shows that the randomness of the sequences generated via the CPRNGIII has better performance. The simulations also suggest that the key space of the CPRNGIII is larger than2896, which is large enough to against brute-force attacks.



---

*Source: 8250903-2019-04-07.xml*