1 Introduction

Designing chaotic systems with desired properties has progressed recently by the help of fast computers. Some examples are designing chaotic systems with different kinds of symmetry [1,2,3], with multi-scroll attractors [4,5,6,7,8,9,10,11,12,13], and with simplest equations [14,15,16,17,18]. Those designs are about the formation of strange attractor, while some other chaotic systems have been designed based on the characteristics of their equilibria.

Fig. 1
figure 1

Strange attractor of the system: a projection in xy plane, b projection in xz plane, c projection in yz plane, and d complete 3D attractor

Fig. 2
figure 2

Bifurcation diagram of the system for \(0\le a\le 0.002\) and \(b=0\)

Fig. 3
figure 3

Strange attractor of the Chameleon for \(a=0.002\) and \(b=0\) system a projection in xy plane, b projection in xz plane, c projection in yz plane, and d complete 3D attractor

Recently, attractors in dynamical systems have been categorized as self-excited attractors and hidden attractors [19,20,21,22]. A self-excited attractor has a basin of attraction that is associated with an unstable equilibrium, while a hidden attractor has a basin of attraction that does not intersect with small neighborhoods of any equilibrium points. Almost all famous chaotic attractors are self-excited. Hidden attractors are important in engineering applications because they allow unexpected and potentially disastrous responses to perturbations in a structure like a bridge or an airplane wing [23,24,25,26,27]. The chaotic attractors in dynamical systems with no equilibrium points [11, 28,29,30,31,32,33,34,35,36,37], with only stable equilibria [38,39,40,41], with curves of equilibria [42,43,44,45,46,47,48,49], or with surfaces of equilibria [50] are hidden attractors. That is the reason such systems are rarely found, and only recently such examples have been reported in the literature [51,52,53,54,55,56,57,58,59,60,61]. There is a similar definition for hidden attractors in chaotic maps [62, 63].

In this paper, we introduce a new chaotic system with a very interesting and unique property: according to the value of parameters, this new system can have self-excited attractor and three different families of hidden attractors; it can have no equilibrium, a line of equilibria, or only one stable equilibrium. No other existing system has such property. In the next section, the theoretical model of the system is introduced and its dynamical properties are presented.

In the recent years, number of chaos-based engineering applications has increased [64,65,66,67,68], especially in control [69,70,71,72,73], communication [74], encryption [65, 66], and random number generation [75,76,77,78,79] fields. The chaotic systems have become very preferable in encryption and data hiding studies due to their features such as complexity and sensitivity. The chaos-based random numbers too are used in many different fields such as encryption [65, 66], modeling [80], artificial intelligence [81], and genetic algorithm [82].

To use this new chaotic system in engineering applications, in Sect. 3, a circuital implementation for the theoretical model is reported. Then in Sect. 4, a random number generator (RNG) is implemented and NIST-800-22 statistical tests which are the top international standard are performed on the generated random numbers. In Sect. 5, a text encryption application is realized with the random number that passes the tests successfully. Finally, conclusion remarks are given in Sect. 6.

2 Chameleon: the most hidden chaotic flow

Inspired from the chaotic system \(\textit{LE}_1 \) in [42, 83] which is shown in Eq. 1, we propose a new unique chaotic system which we call Chameleon (Eq. 2). We will see that according to the value of parameters, this new system can have self-excited attractor and three different families of hidden attractors; it can have no equilibrium, a line of equilibria, or only one stable equilibrium.

$$\begin{aligned} \dot{x}= & {} {y}\nonumber \\ \dot{y}= & {} {-x}+yz\nonumber \\ \dot{z}= & {} -x-15xy+xz \end{aligned}$$
(1)
$$\begin{aligned} \dot{x}= & {} {y}\nonumber \\ \dot{y}= & {} {x}+yz+a\nonumber \\ \dot{z}= & {} -x-15xy+xz+b \end{aligned}$$
(2)

2.1 First scenario: line of equilibrium

After proposing a chaotic system with any number of equilibria by Wang and Chen [35] and Molaie et al. [84] introduced simple chaotic systems with a line of equilibria. The strange attractor of these systems is hidden from a computational point of view, because there are uncountably many unstable points on the equilibrium line of which only a tiny portion intersects the basin of the chaotic attractor.

If a \(=\) 0 and b \(=\) 0, obviously Chameleon will be the original \(\textit{LE}_1\) in [42, 83]. The equilibrium will be (0, 0, z) which is a line. Different projections of the strange attractor for this case are shown in Fig. 1.

Fig. 4
figure 4

Bifurcation diagram of the system for \(-0.02\le a\le 0\), and \(b=0\)

2.2 Second scenario: stable equilibrium

Any chaotic attractor in a system with only stable equilibria is certainly hidden, since initial conditions near any stable equilibrium converge to it, instead of helping to find the strange attractor. The first example of such chaotic flows (with only one stable equilibrium) was designed by Wang and Chen [85]. Molaie et al. [38] identified 23 other simple systems with that property. Some other new chaotic and hyperchaotic systems with stable equilibria have been reported in [86,87,88,89,90,91,92,93,94]. The proposed Chameleon system can adapt itself to this scenario and show this type of hidden attractors.

If a > 0 and b = 0, the only equilibrium in Chameleon will be \((a,0,-1)\) . Using the Jacobian of Eq. 2, the eigenvalues for this equilibrium will be:

$$\begin{aligned} J= & {} \left| {\begin{array}{lll} 0 &{}+1&{}0 \\ -1&{}z&{}y \\ \left( { - 1 - 15y - z} \right) &{} - 15x&{} - x \\ \end{array}}\right| \nonumber \\&\underrightarrow{\left( {x,y,z} \right) =\left( {a,0, - 1} \right) }\nonumber \\ J= & {} \left| {\begin{array}{lll} 0&{}+1&{}0\\ -1&{}-1&{}0\\ (-1-a)&{}-15a&{}-a\\ \end{array}}\right| \underrightarrow{|\lambda I-J|=0}\nonumber \\&\quad \left| \begin{array}{lll} \lambda &{}-1&{}0\\ +1&{}\lambda +1&{}0\\ (1-a)&{}+15a&{}\lambda +a\\ \end{array}\right| \nonumber \\&\rightarrow \left( {\lambda +a} \right) \left( {\lambda ^{2}+\lambda +1} \right) =0\rightarrow \lambda _1 \nonumber \\= & {} -a,\lambda _{2,3} =-\frac{1}{2}\pm \frac{\sqrt{3}}{2}i \end{aligned}$$
(3)

Since \(a>0\), the real parts of all of the eigenvalues are negative. So this equilibrium is a stable focus.

As can be seen in the bifurcation diagram in Fig. 2, for \(0\le {a}\le 0.002\), Chameleon shows chaotic behavior. Different projections of the strange attractor for \(a=0.002\) and \(b=0\) are shown in Fig. 3.

2.3 Third scenario: self-excited attractor

A self-excited attractor has a basin of attraction that is associated with an unstable equilibrium. The classical attractors of Lorenz [95], Rössler [96], Chen and Ueta [97], Sprott (cases B to S) [18], and other widely known attractors are those excited from unstable equilibria.

If \(a<0\) and \(b=0\), the only equilibrium in Chameleon will be \(\left( {a,0,-1} \right) \). With a similar calculations to Eq. 3, the eigenvalues for this equilibrium will be:

$$\begin{aligned} \lambda _1 =-a,\lambda _{2,3} =-\frac{1}{2}\pm \frac{\sqrt{3}}{2}i \end{aligned}$$
(4)

Since \(a<0\), the real part of one of the eigenvalues is positive. So this equilibrium is an unstable focus.

As can be seen in the bifurcation diagram in Fig. 4, for \(-0.02\le a\le 0\), Chameleon shows a routine period doubling route to chaos. Different projections of the strange attractor for \(a=-0.004\) and \(b=0\) are shown in Fig. 5.

Fig. 5
figure 5

Strange attractor of the Chameleon for \(a=-0.004\) and \(b=0\): a projection in xy plane, b projection in xz plane, c projection in yz plane, and d complete 3D attractor

2.4 Fourth scenario: no equilibrium

Obviously, any chaotic attractor in a system with no equilibria is hidden, according to the definition of hidden and self-excited attractors. The oldest example of chaotic flows with no equilibria is the Sprott case A system [18]. Sprott A is a special case of the Nose–Hoover oscillator [98] and describes many natural phenomena [99]. This suggests that such systems may have practical as well as theoretical importance. The first known dissipative example of this category is Wei system [34] which is a modification of the Sprott case D system in [18]. Inspired from those systems, Jafari and Sprott found seventeen simple chaotic systems with no equilibrium. Some other new chaotic and hyperchaotic systems with no equilibrium have been reported in [100,101,102,103]. Speaking about systems with no equilibrium, our Chameleon camouflages itself between them by setting the parameter “a” zero.

If \(a=0\) and \(b\ne 0\), there will be no equilibrium in Chameleon. As can be seen in the bifurcation diagram in Fig. 6, for \(-0.02\le b\le 0\), Chameleon shows a routine period doubling route to chaos. For positive values of b, there are still areas of chaotic behavior separated by a gap of periodic behavior. Two examples of strange attractors for \(b=-0.01\) and \(b=+0.01\) are shown in Fig. 7.

Fig. 6
figure 6

Bifurcation diagram of the system for \(-0.02\le b\le 0\), and \(a=0\)

Fig. 7
figure 7

Strange attractor of the Chameleon for \(a=0\) and a \(b=-0.01\) and b \(b=+0.01\)

3 Circuit design

In this section, we introduce a circuit to illustrate the feasibility of Chameleon (Eq. 2). Figure 8 shows the schematic of the designed circuit including operational amplifiers, analog multipliers, resistors, and capacitors. In Fig. 8, XYZ refer to the voltages at the outputs of the operational amplifiers (\(U_1 -U_3 )\).

Fig. 8
figure 8

Schematic of the circuit which realizes Chameleon (Eq. 2). There are four operational amplifiers (\(U_1 -U_4 )\), three AD633 multipliers (\(U_5 -U_7 )\), twelve resistors and three capacitors

To determine the dynamical equations of the circuit, we apply Kirchhoff’s circuit laws into the circuit in Fig. 8. So that we have the following circuital equations:

$$\begin{aligned} \dot{X}= & {} \frac{1}{R_{1}C_1}Y\nonumber \\ \dot{Y}= & {} \frac{1}{R_{2}C_2}X+\frac{1}{R_{3}C_{2}10V}YZ-\frac{1}{R_{4}C_{2}V_{a}}\nonumber \\ \dot{Z}= & {} -\frac{1}{R_{5}C_3}X-\frac{1}{R_{6}C_{3}10V}\frac{R_{k1}+R_{k2}}{R_{k1}}{} \textit{XY}\nonumber \\&-\frac{1}{R_{7}C_{3}10V}{} \textit{XZ}-\frac{1}{R_{8}C_{3}}V_b \end{aligned}$$
(5)

The values of components in Fig. 8 are \(R_1 =R_2 =R_4 =R_5 =R_8 =R=30\) k\(\Omega \), \(R_3 =R_7 =15\) k\(\Omega \), \(R_6 =5\) k\(\Omega \), \(R_{k1} =10\) k\(\Omega \), \(R_{k2} =40\) k\(\Omega \), and \(C_1 =C_2 =C_3 =C=3.3\) nF. The values of voltages \(V_a, V_b \) correspond to the parameters ab and can be varied according to three proposed scenarios. For example, Fig. 9 illustrates phase portraits which are obtained from the designed circuit for the second scenario. Circuital results reveal that the circuit generated hidden chaotic attractors. As it can be seen from the OrCAD-PSpice outputs in Fig. 9 and oscilloscope outputs in Fig. 10, the results are similar. Figure 11 shows a picture of the real designed circuit on the board.

Fig. 9
figure 9

PSpice chaotic attractors in the circuit for \(V_{\mathrm{a}} =-10\hbox {mV}_{\mathrm{DC}} , V_{\mathrm{b}} =0\hbox {mV}_{\mathrm{DC}} ,\) a XY plane, b XZ plane, and c YZ plane

Fig. 10
figure 10

The state portraits on the oscilloscope

4 RNG design with chameleon chaotic system

Since the chaotic systems are complex and very sensitive, they are used in random number generation as a source of entropy. In this section, a random number generator (RNG) application was realized for the text encryption application. In the RNG design, the chameleon chaotic system which is described in the article was used. The RNG design steps are given in Fig. 12.

Firstly, the chaotic system is given in the block diagram. In the second step, since the chaotic system is continuous time, the xy, and z outputs of the chaotic system were discretized with RK4 differential equation solving method which is more sensitive than Euler and Henon methods, and float-based numbers were obtained. Then, the obtained float numbers were converted into 32 bits binary format. In the third step, RNG design was realized for binary number obtained from xy and z output of the chaotic system. In the design, the last 16 bits of the outputs (xy and z) were used. A 1 Mbit binary sequence was generated since the NIST-800-22 randomness tests require a 1 Mbit binary sequence.

Fig. 11
figure 11

Experimental realization of the proposed system

Fig. 12
figure 12

The block diagram of RNG Design

To prove the success of the random number generation results, the NIST-800-22 statistical tests which are top international standard were performed. The NIST-800-22 tests consist of 16 different tests such as monobit, runs, and binary matrix rank. In fourth step, the NIST-800-22 tests were performed on the generated random numbers. The resultant P values of the test should be >0.001 in order to be counted as successful. While the random numbers generated from x and y outputs successfully passed all the tests, the random numbers generated from z output did not. The NIST-800-22 test results of x and y outputs are given in Table 1. After the fourth step, the random numbers which pass all the NIST-800-22 tests can be used in applications that require high security like encryption and data hiding.

5 A text encryption application with chameleon system

In this section, a text encryption application with the random numbers generated from chameleon chaotic system which passed all the NIST-800-22 tests was realized. The block diagram of the encryption operation is given in Fig. 13. In the encryption application, a text that consists of 418 characters was used and is given in Fig. 14. The spaces in the text are also considered as a character.

Table 1 RNG NIST-800-22 tests for x and y outputs

As it can be seen in the block diagram in Fig. 13, the text data in char format are converted into binary format before the encryption. The data (\(418*8=3344\)) obtained after the conversion process were encrypted with the random numbers generated from chameleon chaotic system.

For the encryption, ‘XOR’ operator was used. After the encryption process (‘XOR’), the encrypted binary data was converted back to char format. The encrypted text is given in Fig. 15. Since the encryption process is done for each bit, the size of the encrypted data is 3344 too.

As it can be seen in the block diagram in Fig. 13, the random numbers generated from chameleon chaotic system are needed. With these random numbers and use of ‘XOR’ operator, the original data can be obtained. The decrypted text data after binary to char conversion are given in Fig. 16. As it can be seen both comparing Figs. 14 and 16, there is not any loss or deformation.

Fig. 13
figure 13

Encryption and decryption block diagram

Fig. 14
figure 14

Original text data

Fig. 15
figure 15

Encrypted text data

Fig. 16
figure 16

Decrypted text data

In this method, the third parties who want to crack the encrypted data must know exactly all the parameters and initial values of the chaotic system that is used in the encryption. Since the chaotic systems are very sensitive, it is not possible to obtain the original data in any case of error. Moreover, the encryption and decryption operations will be realized in very short times due to only ‘XOR’ operator is used. The both encryption and decryption time is 129 \(\upmu \)s. Thus, the total encryption and decryption time is 258 \(\upmu \)s.

6 Conclusion

By modifying a known chaotic system with a line of equilibrium, we obtained a simple chaotic system with a very interesting and unique property: according to the value of parameters, this new system can have self-excited attractor and three different families of hidden attractors; it can have no equilibrium, a line of equilibria, or only one stable equilibrium. No other existing system has such property. Moreover, such new system is able to display chaos, and implemented by electronic components, we, therefore, can use it in chaos-based engineering applications .