Skip to main content
Advertisement
Browse Subject Areas
?

Click through the PLOS taxonomy to find articles in your field.

For more information about PLOS Subject Areas, click here.

  • Loading metrics

On the synchronization techniques of chaotic oscillators and their FPGA-based implementation for secure image transmission

  • Omar Guillén-Fernández ,

    Contributed equally to this work with: Omar Guillén-Fernández, Ashley Meléndez-Cano, Esteban Tlelo-Cuautle, Jose Cruz Núñez-Pérez, Jose de Jesus Rangel-Magdaleno

    Roles Formal analysis, Investigation, Methodology, Resources, Software

    Affiliation Department of Electronics, INAOE, Tonantzintla, Puebla, Mexico

  • Ashley Meléndez-Cano ,

    Contributed equally to this work with: Omar Guillén-Fernández, Ashley Meléndez-Cano, Esteban Tlelo-Cuautle, Jose Cruz Núñez-Pérez, Jose de Jesus Rangel-Magdaleno

    Roles Formal analysis, Investigation, Methodology, Resources, Software

    Affiliation Instituto Politécnico Nacional, IPN-CITEDI, Av. Instituto Politécnico Nacional No. 1310, Tijuana BC, 22435 Mexico

  • Esteban Tlelo-Cuautle ,

    Contributed equally to this work with: Omar Guillén-Fernández, Ashley Meléndez-Cano, Esteban Tlelo-Cuautle, Jose Cruz Núñez-Pérez, Jose de Jesus Rangel-Magdaleno

    Roles Conceptualization, Formal analysis, Investigation, Methodology, Resources, Software, Supervision, Writing – original draft, Writing – review & editing

    etlelo@inaoep.mx

    Affiliation Department of Electronics, INAOE, Tonantzintla, Puebla, Mexico

  • Jose Cruz Núñez-Pérez ,

    Contributed equally to this work with: Omar Guillén-Fernández, Ashley Meléndez-Cano, Esteban Tlelo-Cuautle, Jose Cruz Núñez-Pérez, Jose de Jesus Rangel-Magdaleno

    Roles Investigation, Methodology, Resources, Software

    Affiliation Instituto Politécnico Nacional, IPN-CITEDI, Av. Instituto Politécnico Nacional No. 1310, Tijuana BC, 22435 Mexico

  • Jose de Jesus Rangel-Magdaleno

    Contributed equally to this work with: Omar Guillén-Fernández, Ashley Meléndez-Cano, Esteban Tlelo-Cuautle, Jose Cruz Núñez-Pérez, Jose de Jesus Rangel-Magdaleno

    Roles Investigation, Methodology, Resources, Software

    Affiliation Department of Electronics, INAOE, Tonantzintla, Puebla, Mexico

Abstract

Synchronizing chaotic oscillators has been a challenge to guarantee successful applications in secure communications. That way, three synchronization techniques are applied herein to twenty two chaotic oscillators, three of them based on piecewise-linear functions and nineteen proposed by Julien C. Sprott. These chaotic oscillators are simulated to generate chaotic time series that are used to evaluate their Lyapunov exponents and Kaplan-Yorke dimension to rank their unpredictability. The oscillators with the high positive Lyapunov exponent are implemented into a field-programmable gate array (FPGA), and afterwards they are synchronized in a master-slave topology applying three techniques: the seminal work introduced by Pecora-Carroll, Hamiltonian forms and observer approach, and open-plus-closed-loop (OPCL). These techniques are compared with respect to their synchronization error and latency that is associated to the FPGA implementation. Finally, the chaotic oscillators providing the high positive Lyapunov exponent are synchronized and applied to a communication system with chaotic masking to perform a secure image transmission. Correlation analysis is performed among the original image, the chaotic channel and the recovered image for the three synchronization schemes. The experimental results show that both Hamiltonian forms and OPCL can recover the original image and its correlation with the chaotic channel is as low as 0.00002, demonstrating the advantage of synchronizing chaotic oscillators with high positive Lyapunov exponent to guarantee high security in data transmission.

1 Introduction

Secure communication systems have been developed since the introduction of the first synchronization approach between two chaotic oscillators by Pecora and Carroll [1, 2]. Nowadays, several challenges remain open to accomplish and guarantee privacy and high security of the transmitted information, so that researchers are searching for the best chaotic oscillator and synchronization approaches. For example, the authors in [3] revised 50 chaotic oscillators to demonstrate that their proposed new chaotic one is much better for security applications. However, they did not optimize the positive Lyapunov exponent to rank the unpredictability of the 50 oscillators. Other authors have been introduced novel chaotic secure communication systems [4] highlighting the necessity of a good synchronization approach in order to guarantee a successful transmission of information. In addition, those contributions must accomplish the requirements imposed by the modern cryptographic applications in the industrial internet of things [5] and wireless sensor networks [6], to provide privacy and security.

During the last years, many synchronization techniques for chaotic oscillators have been introduced along with some applications to security, see for example the recent works given in [717]. The main objective of synchronizing two chaotic oscillators is oriented to develop secure communication systems to preserve privacy, provide security and be robust to attacks. These issues can be accomplished using chaotic oscillators because they have the property of high sensitivity to the initial conditions, which can be quantified by evaluating and maximizing the positive Lyapunov exponent. The evaluation of the fractal dimension also provides characteristics to rank the randomness and unpredictability of chaotic oscillators. In this manner, this work shows that the master-slave synchronization of two chaotic oscillators having high positive Lyapunov exponents guarantees high security, and if the synchronization error is very low then the original information can be recovered without loss of data. This can be proved through evaluating the correlation among the original data, the chaotic channel that masks the information being transmitted with chaos, and the recovered data. This is not a trivial task because if one does not choose a good numerical method with a good step size, then the simulation may induce artificial chaos suppression or can engender the appearance of spurious solutions. This is shown in [18], where the authors compare one-step methods suitable for field-programmable gate array (FPGA) implementation versus a method based on trigonometric polynomials, concluding that the last one is ad hoc to solve dynamical systems with oscillatory characteristics. In this work we choose the correct step size of the numerical method by evaluating the equilibrium points and then the eigenvalues of 22 chaotic oscillators, three of them based on piecewise-linear functions (PWL) and nineteen proposed by Julien C. Sprott [1921]. The positive Lyapunov exponent is evaluated from chaotic time series and then the synchronization is performed between two chaotic oscillators in a master-slave topology.

The article is organized as follows: Section 2 shows the mathematical models and simulation of three chaotic oscillators based on PWL functions and nineteen proposed by Sprott [19]. The equilibrium points and the eigenvalues of the 22 chaotic oscillators are computed as well as the positive Lyapunov exponent of each chaotic time serie, and their respective Kaplan-York dimension. Section 3 details three synchronization techniques, namely: the seminal work of Pecora-Carroll [1], the seminal work on Hamiltonian forms and observer approach [22], and the open-plus-closed-loop (OPCL) technique [23]. These techniques are compared according to their synchronization error. Section 4 shows experimental results of the chaotic attractors implemented in an FPGA, the synchronization results between two chaotic oscillators in a master-slave topology, and the transmission of an image through chaotic masking using the FPGA-based implementation of a secure communication system. Finally, the conclusions are summarized in Sect. 5.

2 Chaotic oscillators

Among all kinds of chaotic oscillators, we choose three mathematical models based on PWL functions [2427], and nineteen proposed by Julien Sprott [20].

Lets us consider the chaotic oscillator based on saturated nonlinear function (SNLF) series that is modeled by (1). It consists of three state variables x1, x2, x3, four coefficients a, b, c, d1 and the SNLF f(x1) that can be approached by the PWL function described by (2) and shown in Fig 1(a) to generate 2-scrolls. In (2), bp1 denotes the breakpoints, and f(x1) can be increased to generate multi-scroll attractors, as detailed in [26].

(1)(2)
thumbnail
Fig 1. PWL function in a chaotic oscillator based on: (a) SNLF series, (b) negatives slopes, and (c) sawtooth function.

https://doi.org/10.1371/journal.pone.0209618.g001

Eq (3) shows another chaotic oscillator having three coefficients (α, β, γ) and a PWL function f(x1). It can be described by (4) and sketched in Fig 1(b), where one can see two negative slopes m0 and m1 to generate 2-scrolls. The slopes increase as well as the break points to generate multi-scroll chaotic attractors.

(3)(4)

The chaotic oscillator described by (5) consists of three coefficients (α, β, γ) and f(x1), which can be approached by the PWL function given in (6) and sketched by Fig 1(c). Also, increasing the slopes as well as the break points one can generate multi-scroll chaotic attractors.

(5)(6)

Another kind of chaotic oscillators are the ones proposed by Sprott [20], which are based in the multiplication of state variables. Sprott took as reference the Poincare-Bendixson theorem [28], and then from (7) he discovered and selected the nineteen listed in Table 1.

(7)
thumbnail
Table 1. 19 chaotic oscillators proposed by J. C. Sprott [20].

https://doi.org/10.1371/journal.pone.0209618.t001

From the mathematical models of the 22 chaotic oscillators described above, one must analyze their static and dynamical properties. That way, as detailed by Sprott [20], Tables 2 and 3 list the equilibrium points and eigenvalues of the chaotic oscillators based on the three PWL functions and the Sprott collection.

thumbnail
Table 2. Equilibrium points and eigenvalues of the three chaotic oscillators based on PWL functions.

https://doi.org/10.1371/journal.pone.0209618.t002

thumbnail
Table 3. Equilibrium points and eigenvalues of Sprott’s collection.

https://doi.org/10.1371/journal.pone.0209618.t003

The eigenvalues help us to estimate the step size of the numerical method [18], in order to simulate and generate chaotic time series for each state variable of the 22 chaotic oscillators. Therefore, the 66 time series are analyzed to evaluate their associated Lyapunov exponent, which determines the system unpredictability. This task is performed using the free-software “TISEAN 3.0.1”, which can be used within MATLAB. The results are listed in Table 4, where it can be seen the associated Lyapunov exponent and Kaplan-Yorke dimension. Analyzing those results, it can be observed that the chaotic oscillator based on SNLF series, and Sprott’s cases G and L provide the high positive Lyapunov exponent values.

thumbnail
Table 4. Lyapunov exponent and fractal dimension of each state variable x1, x2, x3 of the twenty two chaotic oscillators computed by “TISEAN 3.0.1”.

https://doi.org/10.1371/journal.pone.0209618.t004

The Lyapunov exponents are also evaluated herein by applying “Wolf’s algorithm” [29], which is available in: https://la.mathworks.com/matlabcentral/fileexchange/4628-calculation-lyapunov-exponents-for-ode. In this case, the mathematical model of each chaotic oscillator is used to evaluate the three Lyapunov exponents, the negative, the zero, and the positive one. The results are listed in Table 5 along their corresponding Kaplan-Yorke dimension. As one can see, the chaotic oscillator based on Negative Slopes, and Sprott’s cases B and S provide the high positive Lyapunov exponent values.

thumbnail
Table 5. Lyapunov exponents and fractal dimension of the twenty two chaotic oscillators avaluated by “Wolf’s algorithm”.

https://doi.org/10.1371/journal.pone.0209618.t005

3 Synchronization of two chaotic oscillators in a “master-slave” topology

The synchronization of two chaotic oscillators in a master-slave topology occurs when the trajectories of both state variables meet in the same time with a minimum synchronization error, so that they adjust their behavior temporarily. Among the currently available synchronization techniques for chaotic oscillators, we apply three, namely: the seminal work of Pecora-Carroll, Hamiltonian forms and observer approach, and OPCL.

3.1 Pecora-Carroll synchronization technique

This synchronization technique consists of two identical chaotic oscillators [30], with the same parameter values, but evolving in time from different initial conditions. In order to synchronize two chaotic oscillators, the output from, at least, one of the coupled differential equations of the master chaotic oscillator must be made available to the slave chaotic oscillator, as sketched in Fig 2 [31]. To achieve the synchronization one can take any of the three state variables x1, x2, x3 as driving, from the master system. The recommendation to the correct selection of the driver variable is the observation and determination of the influence that it has over the differential equations.

thumbnail
Fig 2. Block diagram of the master-slave chaotic synchronization applying Pecora-Carroll technique by using the state variable x1 as the driving signal.

https://doi.org/10.1371/journal.pone.0209618.g002

With the topology defined for the synchronization as the master-slave system, the pattern that indicates that the system will be synchronized are the eigenvalues of the Jacobian of the slave system. If the real parts of eigenvalues are negative, the master-slave synchronization will be successful. This is a necessary condition but not enough since there may be a system with eigenvalues equal to zero and the synchronization can occur.

Lets us consider the chaotic oscillator from case L of Sprott’s collection [20], given again in (8), where m denotes master. If one considers x1 as driving because it is the state variable that is present throughout the system and has an influence on the state variables x2 and x3, then the slave system can be described by (9).

(8)(9)

The evaluation of the Jacobian slave matrix is zero, so that the eigenvalues are: λ1,2 = 0. Realizing the simulation of the synchronization using MATLAB, Fig 3 shows the phase synchronization diagrams between the state variables x2 and x3. Fig 4 shows the synchronization error for the two state variables between the master and slave oscillators.

thumbnail
Fig 3. Phase diagrams for the master and slave state variables: (a) x2 and (b) x3 for Sprott’s case L.

https://doi.org/10.1371/journal.pone.0209618.g003

thumbnail
Fig 4. Synchronization error using x1 as drive for Sprott’s case L, for the master and slave state variables x2 and x3.

https://doi.org/10.1371/journal.pone.0209618.g004

3.2 Hamiltonian forms and observer approach technique

Every chaotic oscillator can be described by , which according to the seminal work given in [22]; the Hamiltonian approach can be described by (10), where ∂H is the gradient vector of the energy function H, positive definite in Rn. H is a quadratic function defined by , with M as a symmetrical matrix and positive definite. J(x) and S(x) are matrices representing the conservative and non-conservative parts of the system, respectively, and must satisfy: J(x)+JT(x) = 0 and S(x) = ST(x). There exists the possibility to add a destabilizing vector as F(x), to get the form of a Hamiltonian system, as shown in (11). This can consider suppositions to get the form given in (10), without F(x).

(10)(11)

If one considers the system with destabilizing vector and one linear output, one gets (12), where y is a vector denoting the output of the system. In addition, if ξ is the estimated state vector of x and η the estimated output in terms of ξ, then an observer to (11) can be given by (13), where K is a vector of constant gains.

(12)(13)

The synchronization by Hamiltonian forms is achieved after accomplishing 2 Theorems:

Theorem 1: The state x of the nonlinear system (12) can be global, exponential and asymptotically estimated by the state of an observer of the form (13), if the pair of matrices (C,S) are observables.

Theorem 2: The state x of the nonlinear system (12) can be global, exponential and asymptotically estimated by the state of an observer of the form (13), if and only if there exists a constant matrix K such that the symmetric matrix in (14) be negative definite [22].

(14)

Lets us consider again case L of Sprott’s collection, proposing the master system similar to the original one given in (8) and the energy function as in (15), then the Hamiltonian system given in (16) arises. It becomes the master and the slave system is proposed by adding the gain vector multiplied by the error. The gain vector is obtained verifying that it contains the pair of matrices (C, S). In this manner, the gain vector K can be obtained by applying the Sylvester criterion for negative definite matrices. Herein the gains are equal to k1 = 1, k2 = 3, k3 = 4 and the observer system is described by (17). Finally, the slave system is given in (18),

(15)(16)(17)(18)

The synchronization among the state variables of the master and slave systems is shown in Fig 5. The synchronization error between the master and the slave systems is shown in Fig 6, where it can be seen that the synchronization is accomplished around iteration 800.

thumbnail
Fig 5. Phase diagrams for the master and slave state variables: (a) x1, (b) x2 and (c) x3 for Sprott’s case L applying Hamiltonian forms and observer approach.

https://doi.org/10.1371/journal.pone.0209618.g005

thumbnail
Fig 6. Synchronization error of Sprott’s case L, for the master and slave state variables applying Hamiltonian forms.

https://doi.org/10.1371/journal.pone.0209618.g006

3.3 OPCL synchronization technique

Open-Plus-Closed-Loop (OPCL) technique is based on the control systems combination. It is a heterogeneous synchronization because allows to obtain the master and slave parameters. From a dynamical system described by , the master chaotic oscillator is given by (19), where xm1(t), xm2(t) and xm3(t) denote the state variables, and then xs1(t), xs2(t) and xs3(t) denote the slave chaotic oscillator in (20). D(v(t), u(t)) is given in (21), with D1 and D2 as open loop and closed loop parts, respectively, and given by (22) and (23).

(19)(20)(21)(22)(23)

H is an arbitrary constant Hurwitz matrix, so that the simplicity of the slave system depends on how this matrix is chosen. Besides, e(t) = v(t) − u(t) is defined as synchronization error. For the OPCL synchronization to be achieved, the error must tend to zero and it can be verified by Taylor’s series [23]. If the real parts of the eigenvalues from H are negative, the synchronization will be successful. This is a necessary condition but not enough since there may be an H with eigenvalues equal to zero and the synchronization can occur.

Again, lets us consider Sprott’s case L. The master system is proposed being similar to the original system. The open loop part in the slave system is null (D1(u(t)) = 0). For the closed part, the master system partial derivative is given in (24), and H is proposed in (25), where P is a constant value and depending on how many values are proposed, it will be the complexity to obtain the closed loop part. The eigenvalues of H determine that P must be negative. For example: if P = −3, the eigenvalues shown in (26) have real part negative and thereby the condition described above is accomplished. Therefore, the closed loop contribution is given in (27). Finally, with the open-closed loop contribution, the chaotic slave oscillator for Sprott’s case L is given in (28).

(24)(25)(26)(27)(28)

The synchronization between the master and slave chaotic oscillators is shown in Fig 7. The synchronization errors are shown in Fig 8, where it is observed that the minimum error occurs around iteration 2000.

thumbnail
Fig 7. Phase diagrams for the master and slave state variables: (a) x1, (b) x2 and (c) x3 for Sprott’s case L applying OPCL technique with P = −3 in (25).

https://doi.org/10.1371/journal.pone.0209618.g007

thumbnail
Fig 8. Synchronization error of Sprott’s case L, for the master and slave state variables applying OPCL technique.

https://doi.org/10.1371/journal.pone.0209618.g008

4 FPGA-based implementation of a chaotic secure communication system

We selected the six chaotic oscillators providing high positive Lyapunov exponent values, they are: the chaotic oscillator based on SNLF series, and Sprott’s cases G and L from Table 4, and the chaotic oscillator based on Negative Slopes, and Sprott’s cases B and S from Table 5. The electronic implementations of these chaotic oscillators were performed herein by exploiting the advantages of the field-programmable gate arrays (FPGAs) for fast prototyping [32]. As already detailed in [33], the mathematical equations modeling a chaotic oscillator can be described through the hardware description language (HDL), which in this work we use the tool Active-HDL. In this manner, the chaotic oscillators are implemented with adders, subtractors and multipliers, as detailed in [32]. In addition, a PWL function having the forms shown in Fig 1 can be implemented with comparators. The HDL code can be generated according to [33], where it is highlighted that the size of the digital blocks require the number of bits being used, and in this case we use fixed-point notation with format 7.21.

The FPGA-based implementations were performed using Cyclone IV GX EP4CGX150DF31C7 from ALTERA. For example: The descriptions of the digital blocks for the chaotic oscillator based on SNLF series and Sprott’s cases G and L, were performed in two ways called: Type A and type B. All the blocks of Type A include a clock-pin CLK, so that all of them are sequential. The descriptions classified as Type B do not include CLK, so that they are combinational. Table 6 lists the FPGA resources of the chaotic oscillators with the highest positive Lyapunov exponent. Three one-step methods were applied for each chaotic oscillator, and the FPGA implementations are of type A and B. We also list the maximum frequency response of the blocks that is provided by the FPGA synthesizer. The maximum frequency is multiplied by the number of clock cycles that are required to process the data from the input to the output, so that the processing speed or latency is listed in the last column in nanoseconds (ns).

thumbnail
Table 6. FPGA resources of the chaotic oscillator based on SNLF series, and Sprott’s cases G and L by applying three numerical methods and using Cyclone IV GX EP4CGX150DF31C7.

https://doi.org/10.1371/journal.pone.0209618.t006

As one sees, the sequential or type A blocks require more resources than the type B. In the same manner, as the 4th-order Runge-Kutta numerical method requires more resources than Forward Euler and the Trapezoidal methods, those implementations have slower time response, as shown in the last column in Table 6. Thus, the maximum processing speed or latency is accomplished by using descriptions of type B (combinational blocks). Fig 9(a) shows the experimental observation of a 2-scroll attractor plotting the state variables x1-x2 for the oscillator based on SNLF series. Fig 9(b) shows the phase portraits of Sprott’s collection case G, and Fig 9(c) shows the attractor of Sprott’s case L.

thumbnail
Fig 9. Experimental phase-space portraits x1x2 of the chaotic oscillators: (a) Based on SNLF series with axes X = 2V/div and Y = 1V/div, (b) Sprott’s case G with axes X = 1V/div and Y = 1V/div, and (c) Sprott’s case L with axes X = 1V/div and Y = 1V/div.

https://doi.org/10.1371/journal.pone.0209618.g009

The FPGA-based implementations of the chaotic oscillator based on Negative Slopes, and Sprott’s cases B and S, where performed in the same way. Further, the six chaotic oscillators were synchronized in a master-slave topology applying the three synchronization techniques. Lets us consider first the synchronization of the experimental chaotic attractors from Fig 9. Applying the Pecora-Carroll synchronization technique, the implementation accomplish the diagram shown in Fig 2, where x1 is the driver. The experimental results were observed in an oscilloscope and are shown in Fig 10. The experimental results of the synchronization applying Hamiltonian forms and OPCL techniques are shown in Figs 11 and 12, respectively.

thumbnail
Fig 10. Experimental synchronization of x2 (left column) and x3 (right column) phase diagrams applying Pecora-Carroll synchronization technique to the chaotic oscillator: (a) based on SNLF series, (b) Sprott’s case G, and (c) Sprott’s case L.

In all cases with axes channels: X = 1V/div and Y = 1V/div.

https://doi.org/10.1371/journal.pone.0209618.g010

thumbnail
Fig 11. Experimental synchronization of x1 (left column), x2 (center column), and x3 (right column) phase diagrams applying Hamiltonian forms to the chaotic oscillator: (a) based on SNLF series, (b) Sprott’s case G, and (c) Sprott’s case L.

In all cases with axes channels: X = 1V/div and Y = 1V/div.

https://doi.org/10.1371/journal.pone.0209618.g011

thumbnail
Fig 12. Experimental synchronization of x1 (left column), x2 (center column), and x3 (right column) phase diagrams applying OPCL to the chaotic oscillator: (a) based on SNLF series, (b) Sprott’s case G, and (c) Sprott’s case L.

In all cases with axes channels: X = 1V/div and Y = 1V/div.

https://doi.org/10.1371/journal.pone.0209618.g012

Table 7 lists the FPGA resources of these chaotic oscillators using Cyclone IV GX EP4CGX150DF31C7. It can be observed that the FPGA-based implementation of the Pecora-Carroll synchronization technique requires less logical elements and registers than the other synchronization techniques, but it uses twice the number of clock cycles per iteration. On the other hand, the synchronization techniques with Hamiltonian forms and OPCL show similar resources characteristics. Besides, Hamiltonian forms technique is slightly faster than OPCL.

thumbnail
Table 7. Resources for the three synchronization techniques applied to the chaotic oscillator based on SNLF series, and Sprott’s cases G and L, using the FPGA Cyclone IV GX EP4CGX150DF31C7.

https://doi.org/10.1371/journal.pone.0209618.t007

Fig 13(a) shows the experimental observation of a 2-scroll attractor plotting the state variables x1-x2 for the oscillator based on Negative Slopes. Fig 13(b) shows the phase portraits of Sprott’s case B, and Fig 13(c) shows the attractor of Sprott’s case L. Using these chaotic oscillators, we performed their master-slave synchronization. In this manner, the synchronization applying Pecora-Carroll technique is shown in Fig 14, for the chaotic oscillator based on Negative Slopes having x1 as driver. The Sprott’s cases B and S have x2 and x3 as driver, respectively. Hamiltonian forms and OPCL synchronization techniques are shown in Figs 15 and 16, respectively.

thumbnail
Fig 13. Experimental phase-space portraits x1x2 of the chaotic oscillators: (a) Based on Negative Slopes, (b) Sprott’s case B, and (c) Sprott’s case S.

In all cases with axes X = 1V = div and Y = 1V = div.

https://doi.org/10.1371/journal.pone.0209618.g013

thumbnail
Fig 14. Experimental phase diagrams applying Pecora-Carroll synchronization technique to the chaotic oscillator: (a) based on Negative Slopes (x2 = left column and x3 = right column), (b) Sprott’s case B (x1 = left column and x3 = right column), and (c) Sprott’s case S (x1 = left column and x2 = right column).

In all cases with axes channels: X = 2V = div and Y = 2V = div.

https://doi.org/10.1371/journal.pone.0209618.g014

thumbnail
Fig 15. Experimental phase diagrams of the master-slave state variables x1 (left column), x2 (center column), and x3 (right column), applying Hamiltonian forms to the chaotic oscillator: (a) based on Negative Slopes, (b) Sprott’s case B, and (c) Sprott’s case S.

In all cases with axes channels: X = 2V = div and Y = 2V = div.

https://doi.org/10.1371/journal.pone.0209618.g015

thumbnail
Fig 16. Experimental phase diagrams of the master-slave state variables x1 (left column), x2 (center column), and x3 (right column), applying OPCL to the chaotic oscillator: (a) based on Negative Slopes, (b) Sprott’s case B, and (c) Sprott’s case S.

In all cases with axes channels: X = 2V = div and Y = 2V = div.

https://doi.org/10.1371/journal.pone.0209618.g016

The FPGA-based implementation of the three synchronization techniques using the six chaotic oscillators with the high positive Lyapunov exponent values are used herein to implement a chaotic secure communication system to transmit an image. The communication system requires modulation and demodulation blocks that can be implemented as addition and subtraction operations for chaotic masking, as shown in Fig 17. The master oscillator is located in the transmitter block to mix the original image (SO) with chaos (SM). Later, the encrypted image (SC) is send through a chaotic channel, and then at the receiver block the slave oscillator (SE), which behaves as the master, subtract chaos (SM) to recover the original data (). If exact synchronization is accomplished, then the error between the original and the recovered image will be zero, otherwise the communication system presents loss of information equal to SCSE.

thumbnail
Fig 17. Chaotic secure communication system based on the master-slave topology.

https://doi.org/10.1371/journal.pone.0209618.g017

The image being transmitted is of RGB type and has a size of 256×256 pixels. It is send to the FPGA-based chaotic secure communication system from a personal computer (PC) through the RS-232 protocol. Fig 18 shows the block diagram of the interconnections among the PC and two FPGAs during the image transmission process. The FPGA1 contains the transmission part and the finite state machine (FSM1 block) controls it, EOS activates the system when the master-slave synchronization (chaotic oscillator’s blocks) is successful. Then REN enables the RS-232 receiver block, any data can be received serially and when the reception finishes, EOR is activated. Then, FSM enables the adder block with the AEN signal and sends the contaminated data (original image + chaos) to the FPGA2, which contains the receiver (slave chaotic oscillator) block that is controlled by the finite state machine (FSM2 block) enabled with the FEN signal. When the contaminated data is in the PFGA2, the subtractor block is activated with SEN signal, which is responsible for recovering the original data. Finally, the multiplexer block is enabled with MC to transmit the contaminated and recovered data through the RS-Transmitter block controlled by the TEN signal to the computer. When the transmission finishes, EOT is activated and the system is ready to receive new data.

thumbnail
Fig 18. Block diagram of the implementation of a chaotic secure communication system based on a master-slave topology.

https://doi.org/10.1371/journal.pone.0209618.g018

Fig 19 shows the experimental results of the image transmission, when applying the Pecora-Carroll synchronization technique to the chaotic oscillator Based on SNLF series, and Sprott’s cases G and L, for which their positive Lyapunov exponent were evaluated using “TISEAN 3.0.1”. The errors that are appreciated in the recovered image are due to the lack of accuracy of the Pecora-Carroll synchronization technique.

thumbnail
Fig 19. Original (left column), encrypted (center column), and recovered (right column) images applying Pecora-Carroll synchronization technique to the chaotic oscillator: (a) Based on SNLF series, (b) Sprott’s case G, and (c) Sprott’s case L.

https://doi.org/10.1371/journal.pone.0209618.g019

The chaotic secure communication system is also implemented using the synchronization technique based on Hamiltonian forms and the blocks shown in Fig 17. Fig 20 shows the experimental results of the image transmission. In the same manner, Fig 21 shows the experimental results of the image transmission using the OPCL synchronization technique.

thumbnail
Fig 20. Original (left column), encrypted (center column), and recovered (right column) images applying Hamiltonian forms to the chaotic oscillator: (a) Based on SNLF series, (b) Sprott’s case G, and (c) Sprott’s case L.

https://doi.org/10.1371/journal.pone.0209618.g020

thumbnail
Fig 21. Original (left column), encrypted (center column), and recovered (right column) images applying OPCL technique to the chaotic oscillator: (a) Based on SNLF series, (b) Sprott’s case G, and (c) Sprott’s case L.

https://doi.org/10.1371/journal.pone.0209618.g021

The experimental results provided above are summarized in Table 8, showing the correlations between the original image and the chaotic channel, and between the original and the recovered images. The three chaotic oscillators with the high positive Lyapunov exponent values from Table 4 were used in the three synchronization techniques, and under the same conditions. Table 8 shows that the Pecora-Carroll synchronization technique cannot recover the original image as it is done by applying the other synchronization techniques based on Hamiltonian forms and OPCL. According to the correlation between the original image and the chaotic channel, the best synchronization technique is the one based on OPCL with Sprott’s case L. It can also be observed that the chaotic oscillators based on SNLF series and Sprott’s case L use the state variable x1, and Sprott’s case G uses x3 because it provided the highest positive Lyapunov exponent value.

thumbnail
Table 8. Correlations among the original, encrypted and recovered data using the three synchronization techniques and the oscillators with the highest positive Lyapunov exponent obtained with “TISEAN 3.0.1”.

https://doi.org/10.1371/journal.pone.0209618.t008

The remaining three chaotic oscillators with the high positive Lyapunov exponent values from Table 5 provided the experimental results shown in Fig 22 when applying the Pecora-Carroll synchronization technique. Fig 23 shows the chaotic secure communication system implemented using the synchronization technique based on Hamiltonian forms and Fig 24 shows the experimental results of the image transmission using the OPCL synchronization technique.

thumbnail
Fig 22. Original (left column), encrypted (center column), and recovered (right column) images applying Pecora-Carroll synchronization technique to the chaotic oscillator: (a) Based on Negative Slopes (Variable x2), (b) Sprott’s case B (Variable x1), and (c) Sprott’s case S (Variable x1).

https://doi.org/10.1371/journal.pone.0209618.g022

thumbnail
Fig 23. Original (left column), encrypted (center column), and recovered (right column) images applying Hamiltonian forms to the chaotic oscillator: (a) Based on Negative Slopes (Variable x1), (b) Sprott’s case B (Variable x1), and (c) Sprott’s case S (Variable x2).

https://doi.org/10.1371/journal.pone.0209618.g023

thumbnail
Fig 24. Original (left column), encrypted (center column), and recovered (right column) images applying OPCL to the chaotic oscillator: (a) Based on Negative Slopes (Variable x3), (b) Sprott’s case B (Variable x1), and (c) Sprott’s case S (Variable x3).

https://doi.org/10.1371/journal.pone.0209618.g024

In theses cases, the experimental results are summarized in Table 9, showing the correlations between the original image and the chaotic channel, and between the original and the recovered image. In these cases, the transmission was implemented using the three state variables of the chaotic oscillators, and as shown above from Table 5, applying “Wolf’s algorithm” leads us to obtain the highest positive Lyapunov exponent value. In the same manner, Table 9 shows that the Pecora-Carroll synchronization technique cannot recover the original image, and the transmission when using the chaotic oscillators for Sprott’s cases B (Variable x3) and S (variable x2) is unsuccessful because the synchronization error is very high. On the other hand, when applying the synchronization techniques based on Hamiltonian forms and OPCL, the recovery of the original image is quite successful even when using all the state variables. From Table 9, and according to the correlation between the original image and the chaotic channel, the best synchronization technique is the one based on OPCL with Negative Slopes and Sprott’s case B using the state variable x1.

thumbnail
Table 9. Correlations among the original, encrypted and recovered data using the three synchronization techniques and the oscillators with the high positive Lyapunov exponent values obtained with “Wolf’s algorithm”.

https://doi.org/10.1371/journal.pone.0209618.t009

5 Conclusion

This article showed that the value of the positive Lyapunov exponent matters when looking for the implementation of a chaotic secure communication system for image transmission. That way, we analyzed 22 chaotic oscillators, three based on PWL functions and nineteen from Sprott’s collection. Each chaotic oscillator was characterized evaluating its positive Lyapunov exponent and Kaplan-York dimension using the free-available software TISEAN and applying “Wolf’s algorithm”. Since TISEAN requires time series data, we selected the three chaotic oscillators providing the high positive Lyapunov exponent values, and also we selected the three chaotic oscillators that when applying “Wolf’s algorithm”, they provided the high positive Lyapunov exponent values. The six chaotic oscillators were different and they were synchronized applying the seminal work of Pecora-Carroll, Hamiltonian forms, and OPCL techniques. The synchronization errors and the latency of each case were measured and experimental results were listed by using FPGAs to implement chaotic secure communication systems using the six chaotic oscillators. A personal computer was used to pass an image to the chaotic transmitter block and to recover the image at the recover block. The correlations among the original, the contaminated and the recovered images were evaluated observing that the image transmission is very successful and faster when the error and the correlation between the image and the chaotic channel are minimum. Hamiltonian forms provided the lowest latency in all cases and lowest correlation between the image and chaotic channel. The final conclusion is that using chaotic oscillators with high positive Lyapunov exponent value and synchronization techniques providing low error guarantee high security in a communication system, and this system is suitable for FPGA implementation.

Acknowledgments

This work has been supported by INAOE and CONACyT/Mexico under grant 237991.

References

  1. 1. Pecora LM, Carroll TL. Synchronization in chaotic systems. Physical review letters. 1990;64(8):821. pmid:10042089
  2. 2. Carroll TL, Pecora LM. Synchronizing chaotic circuits. IEEE Transactions on circuits and systems. 1991;38(4):453–456.
  3. 3. Singh JP, Roy BK. A more chaotic and easily hardware implementable new 3-D chaotic system in comparison with 50 reported systems. Nonlinear Dynamics. 2018; p. 1–28.
  4. 4. Wang B, Zhang X, Dong X. Novel Secure Communication Based on Chaos Synchronization. IEICE TRANSACTIONS on Fundamentals of Electronics, Communications and Computer Sciences. 2018;101(7):1132–1135.
  5. 5. Wang T, Wang D, Wu K. Chaotic Adaptive Synchronization Control and Application in Chaotic Secure Communication for Industrial Internet of Things. IEEE Access. 2018;6:8584–8590.
  6. 6. Vaseghi B, Pourmina MA, Mobayen S. Secure communication in wireless sensor networks based on chaos synchronization using adaptive sliding mode control. Nonlinear Dynamics. 2017;89(3):1689–1704.
  7. 7. Preishuber M, Hütter T, Katzenbeisser S, Uhl A. Depreciating Motivation and Empirical Security Analysis of Chaos-based Image and Video Encryption. IEEE Transactions on Information Forensics and Security. 2018;13(9):2137–2150.
  8. 8. Wang X, Zhu X, Wu X, Zhang Y. Image encryption algorithm based on multiple mixed hash functions and cyclic shift. Optics and Lasers in Engineering. 2018;107:370–379.
  9. 9. Guang-Chao Z, Chong-Xin L, Yan W. Dynamic analysis and finite time synchronization of a fractional-order chaotic system with hidden attractors. ACTA PHYSICA SINICA. 2018;67(5).
  10. 10. Daltzis PA, Volos CK, Nistazakis HE, Tsigopoulos AD, Tombras GS. Analysis, Synchronization and Circuit Design of a 4D Hyperchaotic Hyperjerk System. Computation. 2018;6(1):14.
  11. 11. Vaidyanathan S, Akgul A, Kaçar S, Çavuşoğlu U. A new 4-D chaotic hyperjerk system, its synchronization, circuit design and applications in RNG, image encryption and chaos-based steganography. The European Physical Journal Plus. 2018;133(2):46.
  12. 12. Ye G, Pan C, Huang X, Zhao Z, He J. A Chaotic Image Encryption Algorithm Based on Information Entropy. International Journal of Bifurcation and Chaos. 2018;28(01):1850010.
  13. 13. Chen E, Min L, Chen G. Discrete chaotic systems with one-line equilibria and their application to image encryption. International Journal of Bifurcation and Chaos. 2017;27(03):1750046.
  14. 14. Ahmed H, Ushirobira R, Efimov D. Experimental study of the robust global synchronization of Brockett oscillators. The European Physical Journal Special Topics. 2017;226(15):3199–3210.
  15. 15. Seneviratne C, Leung H. Mixing chaos modulations for secure communications in OFDM systems. The European Physical Journal Special Topics. 2017;226(15):3287–3301.
  16. 16. Palit SK, Fataf NAA, Said MRM, Mukherjee S, Banerjee S. Complexity in synchronized and non-synchronized states: A comparative analysis and application. The European Physical Journal Special Topics. 2017;226(10):2219–2234.
  17. 17. Rybalova E, Semenova N, Strelkova G, Anishchenko V. Transition from complete synchronization to spatio-temporal chaos in coupled chaotic systems with nonhyperbolic and hyperbolic attractors. The European Physical Journal Special Topics. 2017;226(9):1857–1866.
  18. 18. Pano-Azucena A, Tlelo-Cuautle E, Rodriguez-Gomez G, de la Fraga L. FPGA-based implementation of chaotic oscillators by applying the numerical method based on trigonometric polynomials. AIP Advances. 2018;8(7):075217.
  19. 19. Sprott JC, Sprott JC. Chaos and time-series analysis. vol. 69. Oxford University Press Oxford; 2003.
  20. 20. Sprott JC. Some simple chaotic flows. Physical review E. 1994;50(2):R647.
  21. 21. Sprott JC. Automatic generation of strange attractors. Computers & Graphics. 1993;17(3):325–332.
  22. 22. Sira-Ramirez H, Cruz-Hernández C. Synchronization of chaotic systems: A generalized Hamiltonian systems approach. International Journal of bifurcation and chaos. 2001;11(05):1381–1395.
  23. 23. Jackson EA, Grosu I. An open-plus-closed-loop (OPCL) control of complex dynamic systems. Physica D: Nonlinear Phenomena. 1995;85(1-2):1–9.
  24. 24. Zhong GQ, Man KF, Chen G. A systematic approach to generating n-scroll attractors. International Journal of Bifurcation and Chaos. 2002;12(12):2907–2915.
  25. 25. Yu S, Qiu S, Lin Q. New results of study on generating multiple-scroll chaotic attractors. Science in China Series F: Information Sciences. 2003;46(2):104–115.
  26. 26. Lu J, Chen G, Yu X, Leung H. Design and analysis of multiscroll chaotic attractors from saturated function series. IEEE Transactions on Circuits and Systems I: Regular Papers. 2004;51(12):2476–2490.
  27. 27. Yu S, Tang WK, Chen G. Generation of n× m-scroll attractors under a Chua-circuit framework. International Journal of Bifurcation and Chaos. 2007;17(11):3951–3964.
  28. 28. Hirsch MW, Smale S, Devaney RL. Differential equations, dynamical systems, and an introduction to chaos. Academic press; 2012.
  29. 29. Wolf A, Swift JB, Swinney HL, Vastano JA. Determining Lyapunov exponents from a time series. Physica D: Nonlinear Phenomena. 1985;16(3):285–317.
  30. 30. Pecora LM, Carroll TL. Synchronization in chaotic systems. Phys Rev Lett. 1990;64:821–824. pmid:10042089
  31. 31. Jovic B. Synchronization techniques for chaotic communication systems. Springer Science & Business Media; 2011.
  32. 32. Tlelo-Cuautle E, de la Fraga L, Rangel-Magdaleno J. Engineering applications of FPGAs. Springer; 2016.
  33. 33. Tlelo-Cuautle E, de Jesus Quintas-Valles A, de la Fraga LG, de Jesus Rangel-Magdaleno J. Vhdl descriptions for the fpga implementation of pwl-function-based multi-scroll chaotic oscillators. PloS one. 2016;11(12):e0168300. pmid:27997930