Abstract

Semitensor product theory can deal with matrices multiplication with different numbers of columns and rows. Therefore, a new chaotic system for different high dimensions can be created by employing a semitensor product of chaotic systems with different dimensions, so that more channels can be selected for encryption. This paper proposes a new chaotic system generated by semitensor product applied on Qi and Lorenz systems. The corresponding dynamic characteristics of the new system are discussed in this paper to verify the existences of different attractors. The detailed algorithms are illustrated in this paper. The FPGA hardware encryption implementations are also elaborated and conducted. Correspondingly, the randomness tests are realized as well, and compared to that of the individual Qi system and Lorenz system, the proposed system in this paper owns the better randomness characteristic. The statistical analyses and differential and correlation analyses are also discussed.

1. Introduction

With the coming of 5G technology, more and more information is transformed by video, and video information security becomes more and more important in practical applications especially for long-distance transmission [1, 2]. The existing traditional encryption methods, such as DES and AES, however, cannot meet the high requirements for real time [3]. Therefore, it is necessary to focus on making progresses in the encryption technology in order to meet the real-time requirements.

People never stop studying the chaotic systems since Lorenz proposed the first chaotic system. Except for the typical chaotic systems, such as Chen, Lv, and Qi systems, some new different types of chaotic systems are generated as well, such as multistable chaotic hyperjerk system [4], a class of factional-order partial differential systems [5], multistable modified fourth-order autonomous Chua’s system [6], coexisting chaotic attractors chaotic systems [79], and chaotic system generation with memristors [10]. The authors in reference [11] present a MDMBCAs design method without reconstructing nonlinear function. Correspondingly, chaotic systems are employed in different areas such as modeling neurodegenerative disease [12] and image and video encryptions [1318]. It is known that the characteristics of chaotic systems, such as pseudorandomness and sensitivity to initial values, meet the requirements of encryption discussed in the Shannon’s epoch-making paper “Communication Theory of Secrecy Systems.” Consequently, it is hot for researchers to focus on the image and video data encryption, where the encrypted sequences are generated by chaotic systems in order to satisfy the need for remote communications and other applications. Multiple hardware platforms are implemented on encryptions such as FPGA, ARM, or circuits implementation [1932]. Thus, different encryption methods based on various hardware platforms are proposed in many articles [19]. The authors in reference [20] propose chaos encryption and decryption operated on FPGA and tested by TESTU01. The study in [21, 22] implements scrambling and antisqueezing of RGB three primary color pixel position and video chaotic encryption and decryption of pixel value on arm and a digital programmable audio encryption based on chaos system on FPGA. The effectiveness of chaotic secure communication system method is proved by using adder and multiplier of FPGA [23]. A generalized improved chaotic transformation mapping is proposed in [24]. Based on this mapping, the speech encryption of position transformation network is implemented on FPGA. Meanwhile, [25] realizes FPGA circuit output of three-dimensional chaotic system without balancing points on FPGA. The study in [26] implements the multibutterfly chaotic attractor problem on FPGA. The study in [27] proposes a Kolmogorov-type three-dimensional chaotic system and implements the chaotic system on FPGA. The study in [28] implements an application of high-dimensional digital chaos system (HDDCS) in image encryption in a limited precision range on FPGA. The study in [29] proposes a fractional order three-dimensional chaotic system with four wing chaotic attractors implemented on FPGA. The study in [30] proposes a sinusoidal chaotic model (SCM) and uses FPGA to implement chaotic mapping to verify its complexity and larger chaotic range. SOPC technology is used to realize the video processing of FPGA and the data receiving and sending of ARM [15]. A method of generating pseudorandom number based on chaotic system is proposed and implemented on FPGA [31]. In addition to FPGA and arm, [32, 33] also use improved modular circuit design in hyperchaotic system. The study in [34] studies the security of the latest three-dimensional chaotic self-synchronization flow secret key and a single secret key algorithm. The study in [35] proposes a method for a high-dimension chaotic system implemented on FPGA and also provides comparison among different methods, such as Real Domain Chaotic System (RDCS), Integer Domain Chaotic System (IDCS), Chaotic Bitwise Dynamical System (CBDS), and Higher-Dimensional Digital Chaotic Systems (HDDCS) implemented on FPGA. Compared to these methods, the proposed method can solve the dynamical degradation issue. The study in [36] discusses the Orthogonal Frequency Division Multiplexing-Passive Optical Network (OFDM-PON) method which initiates a method for real-time video encryption with chaotic systems. Chen. et al. design an encryption algorithm using chaotic control methods and implement this method on FPGA and ARM hardware platforms. Furthermore, the comparisons of the encryption method based on ARM and FPGA are discussed by mixing the advantages of each platform to achieve better real-time performance [15, 23, 24].

Semitensor product is a matrix operation first proposed by Cheng et al. [37]. This method breaks the restriction of matrix product; that is, the column dimension of the front matrix must be the same with the row dimension of the back matrix. Then semitensor product realizes the multiplication for matrices with different dimensions. Therefore, this method makes the matrices product more easily and can be applied in much wider areas. Semitensor product method is also extended in nonlinear issues and multiple areas such Boolean network control, game theory, compressed sensing, and data fusion [3840]. The study in [41] provides the literature review for the applications of semitensor product in engineering areas. This paper is inspired by the typical characteristics of semitensor product method mentioned previously which provides a new idea to generate chaotic systems. The new chaotic systems can be employed in real-time video encryption areas as well.

The main contribution of this paper is to employ the unique characteristic of the semitensor product to form a new chaotic system with different-order chaotic systems, Qi and Lorenz systems, in order to enhance the randomness of the sequence. Then the dynamic characteristics of the new chaotic system are analyzed, and the system is applied in video encryption. When compared to the individual chaotic system, the new one constructed by semitensor product has the overwhelmed pseudorandomness.

The rest of the paper is arranged as follows. Section 2 presents a new chaotic system formed by semitensor product theory. Furthermore, the corresponding dynamic characteristics of the system are analyzed. Section 3 provides the detailed encryption implementation based on FPGA with the new chaotic system. NIST test and the corresponding stochastic analysis are conducted as well in this section. The conclusion of the paper is drawn in Section 4.

2. A New Chaotic System Based on the Semitensor Product Theory

2.1. Preliminaries of Semitensor Product

Normally, the semitensor product operation includes left semitensor product operation and right semitensor product operation. Left semitensor product operation meets the multiple-dimension condition; that is, n = t ×  (t ∈ Ν+). Or if  = s × n (s ∈ Ν+), the operation is right semitensor product operation.

Lemma 1. Assume matrix A is m × n, matrix B is  × q, and n = t ×  (t ∈ Ν+) [42]. Let A be divided into a blocking matrix [A1, …, At], where Ai (i = 1, …, t) is an m ×  matrix. Then the left semitensor product is defined aswhere “” is the left semitensor product.

Lemma 2. If A ∈  and B ∈ , thenwhere is the Kronecker product of matrices [42].

2.2. A New Chaotic System Generated by Semitensor Product Theory

Qi system is a hyperchaotic system with two positive Lyapunov exponents, 3 and 13, under certain conditions [28]. And it could be used for secure communication due to its large positive Lyapunov exponents. It is known that Qi system is described as follows:where xQi (i = 1, 2, 3, 4) is the state variable and a, b, c, d, and f are the related system parameters. System (3) is a hyperchaotic system, when 49 ≤ a ≤55, 20 ≤ b ≤ 24, c = 13, d = 8, e = 33, and f = 30.

The first chaotic system under study is a Lorenz chaotic system [28]. The dynamics of the system are shown inwhere x, y, and z are state variables and σ, r, and β are the related system parameters. The typical system parameters for Lorenz chaotic system are selected as σ = 10, r = 28, and β = 8/3.

It is relaxed for semitensor product operation only to satisfy the multiple-dimension condition. Therefore, different numbers state variables of systems can be selected and conduct semitensor operation. For example, this paper selects a two-dimension state variable (xy)T of Lorenz system and a four-dimension state variable (xQ1xQ2xQ3xQ4)T of Qi system to operate semitensor product. The result is shown as follows:

It is observed that the result of equation (5) is eight-dimension column vector which is equivalent to the new system state variable vector (x1x2x3x4x5x6x7x8)T; that is,

Differentiate each state variable in equation (6), and substitute equations (3) and (4) into the result. Then the following equation can be derived:

It is obvious that the dynamics of (7) still include three state variables of Lorenz system, x, y, and z. Therefore, insert equation (4) into equation (7) and then form a complete eleven-dimension system as illustrated in the following:

As seen from equation (8), if one substitutes , , and , , it proves that it is symmetric with respect to z variable for x and y.

2.3. Numerical Analysis of the New System

The paper analyzes some dynamics characteristics of the new system including symmetry, dissipativity, equilibrium point, equilibria, bifurcation diagram, Lyapunov diagram, and phase portraits.

2.3.1. Symmetry

As described in system (8), the system is symmetry with respect to z-axis since the system is invariant under the coordinate transformations:

2.3.2. Dissipativity

The divergence of system (12) is given byand when the system undergoes dissipation.

2.3.3. Equilibria

As shown in system (8), x, y, and z could not be zero when calculating equilibria. Then the equilibria of system (8) are . One has

The corresponding polynomial iswhere is an eighth-order polynomial. It is obvious that at least 0, 1, and are eigenvalues of system (8) for the these equilibrium points; therefore, not each real part of the eigenvalues is negative. Then it can be concluded that these are not stable equilibrium points.

2.3.4. Bifurcation Diagram, Lyapunov Diagram, and Phase Portraits

It is known that when 49 ≤ a ≤ 55, 20 ≤ b ≤ 24, c = 13, d = 8, e = 33, and f = 30, Qi system is a hyperchaotic system. When σ = 10, r = 28, and β = 8/3, Lorenz system is a chaotic system. Therefore, the paper selects the parameters a = 50, c = 13, d = 8, e = 33, f = 30, σ = 10, r = 28, and β = 8/3 and varies b to analyze the bifurcation of system (12) as shown in Figure 1(a). As the bifurcation diagram shows, the system demonstrates the chaotic characteristics when . The corresponding Lyapunov diagram is illustrated in Figure 1(b). Furthermore, partial phase portraits of system (7) for different initials when b = 24 are shown in Figures 1(c). One has

Figures 1(c)1(f) illustrate different phase portraits including x1 versus x2, x2 versus x4, x3 versus x, and x versusz when b = 24 for two initial value sets, the initial values for the blue line phase portraits are 0.01418, 0.04217, 0.09157, 0.07922, 0.09594, 0.06557, 0.00357, 0.08491, 0.09339, 0.06787, and 0.07577, and those for the red line phase portraits are 0.01417, 0.04218, 0.09156, 0.07921, 0.09593, 0.06558, 0.00356, 0.08492, 0.09338, 0.06788, and 0.07576. These portraits demonstrate that system (12) has obvious chaotic attractors and approaches periodic characteristics as initial values changes.

3. Encryption Implementation with the New Chaotic System Based on FPGA

This paper employs the random sequence of system (12) as the random sequence to encrypt video data and realize the hardware implement on FPGA. Figure 2 is the FPGA hardware diagram used for the encryption. The main components are HDMI, ZYNQ, JTAG, and source interface. The video is collected from JTAG, then the encryption algorithm is performed in ZYNQ powered by 5 V DC, and the outputs will be shown in the monitor through HDMI.

The encryption algorithm is described in the following, and the corresponding block diagram is demonstrated in Figure 3:Step 1: to generate the random sequences for each state variable for both discretized Qi system and Lorenz system, respectively.Step 2: to generate the random sequence for the new system (12) constructed by semitensor product operation on (xQ1xQ2xQ3xQ4)T and (xy)T.Step 3: to generate the sequence xi=(xi1,xi2, xi3,…, xi32) by the new system (i = 1, 2, …, 8, j = 1, 2, …, 32), where xij is a binary number, i represents the number of state variables, and j is the bit number for each state variable. Choose a sequence xi with fixed bits from t to q; that is,

Make an XOR operation on ci (n) and divide video data based on pixels; that is,where ⊕ is the XOR operation.

3.1. Discretization for the New System and Its Implementation Based on FPGA

In the hardware experiment, it is impossible to implement the continuous Lorenz and Qi chaotic systems because of limitation of the bit width in FPGA. Therefore, it is necessary to discretize continuous system first. Multiple methods can be used to discretize a differential equation such as Euler method, improved Euler method, and Runge-Kutta method. To meet the requirement of real-time performance and the limitation of hardware implementation, Euler method is used to discretize the differential equations due to its low computation complexity. First, Euler method is used to discretize Qi and Lorenz systems, respectively. The corresponding process of Qi system is proposed as follows:

Then, the iteration equations of Qi system are shown inSimilarly, the discrete Lorenz system is Correspondingly, the iteration equations of Lorenz system are

In general, FPGA can store float data and fixed-point data. Since fixed-point data require less computing resources than that of float data, this paper uses 64-bit fixed-point number to represent the data. The detailed data format of 64-bit fixed-point numbers is shown in Figure 4.

In Figure 4, I represents the integer part of 64-bit fixed-point numbers, and f is the fractional part.

As mentioned before, because of the limitation of bit width in FPGA, all data are truncated numbers in hardware implementation. Therefore, the Qi and Lorenz system becomes

Let the iteration step be τ = 0.00001 and use the same parameters in system (12). Then substitute them into (19) and (20), respectively. Therefore, Qi system and Lorenz system are changed as follows:

To iterate Qi system and Lorenz system and make semitensor product operation on these two systems after each iteration, respectively, the discretized first 8 state variables of the new system are obtained:where xi(n + 1) and xi (n) are system state variables. is the approximate value of y (n + 1) using fixed-point number.

3.2. Implementation and Analysis of Encryption Algorithm of the New Chaotic System

In order to ensure the randomness of the random sequence, therefore, select the low bits from t to q as shown in Figure 5. The positions of these bits are not close to those of sign and exponent bits. Then the chosen random encryption sequence, ci (n), is shown in equation (17). This paper selects t = 1 and q = 6:

Random sequences which are selected from eight states based on the method mentioned previously are combined to generate the random sequence, c (n):

In order to resist the differential attack and decrease the correlation between adjacent random sequences, the paper selects the very first iteration sequence among every N iterations and stacks these selected sequences to construct a random sequence, c (n), as shown in equation (18). This can improve the randomness of the random sequence.

Next, the random sequence, c (n), conducts XOR operation with the divided video data. Since a frame video data includes tricolor integer sequences, R (n), G (n), and B (n), these three sequences will be encrypted simultaneously after changing the random sequence, c (n), into three columns evenly, c1 (n), c2 (n), and c3 (n):where (n), (n), and (n) are encrypted sequences and ⊕ is an XOR operation. One haswhere are receiver terminal sequences.

3.3. Analysis for NIST Test

NIST test is provided by National Institute of Standards and Technology, and it is a standard to test the randomness of a random sequence. According to the encryption algorithm in this paper, c (n) in equation (25) should be tested by NIST standard. The comparisons of the random sequence among the new system, Qi system, and Lorenz system, c (n), cL (n), and cQ (n), are conducted which are obtained from serial interfaces. The results of the tests are shown in Table 1.

As shown in Table 1, all the test results for the random sequences of the new system meet the NIST test index standards. Partial test results are larger than 0.8, which means these random indexes are quite close to those of the real random sequences. The randomness indexes and some other test results are better than those generated from Lorenz system and Qi system, such as frequency, block frequency, cumulative sums, nonoverlapping template, approximate entropy, random excursions, random excursions variant, and linear complexity.

3.4. Statistical Analyses

Vivado IDE is used to conduct the hardware simulation. The paper also performs the statistics analysis for the encrypted video data generated by hardware. Figure 6(a) is one picture of a video before encryption. Figure 6(b) is the encrypted picture of a video.

Figure 7 demonstrates the comparisons of statistics histogram between the original and encrypted pictures.

Figure 7 demonstrates the comparisons of statistics histograms between the original and encrypted pictures. As illustrated in Figure 7(a), the difference of the pixels distribution is obvious. However, distribution of different pixels for the encrypted picture shown in Figure 7(b) is the approximately uniform distribution. It can be concluded that the proposed encryption algorithm for the new system can better resist statistic attack effectively.

3.5. Differential Analysis

Differential attack is used to measure the sensitivity of plaintext change for the encryption algorithm and commonly uses NPCR (Number of Pixels Change Rate) and UACI (Unified Average Changing Intensity) as indexes defined as follows:where C (e, f) is the pixel value before encryption and C′ (e, f) is the pixel value after encryption. If C (e, f) = C′ (e, f), D (e, f) = 0, else 1. and calculated by (29) and the proposed system and encryption algorithm are 99.60% and 12.28% for the first-time encryption, respectively. Therefore, the ability to resist differential attack improves to some extent. In video encryption application, the requirement for encryption speed is more concerned.

3.6. Correlation Analysis

Correlation analysis is used to check whether the neighbor pixels are close or not. This paper analyzes the correlation for Figure 6. The paper selects 5000 random pixels from the original and the encrypted images and analyzes the correlation among these random-pixel pairs as shown in Figure 8. As Figure 8 illustrates, the correlation dramatically decreases when comparing two figures before and after encryption as shown in Figure 6.

4. Conclusions

This paper proposed a new chaotic system generated by using semitensor product on two chaotic systems, and the related dynamic characteristics are analyzed. The new system is employed in video encryption as well, and the proposed method can generate 8 or even 12 state variables when compared to Qi system and Lorenz system which only generate 7 state variables at most in one iteration period. The proposed method can improve the speed of random sequence generation. The NIST test results demonstrate that the pseudorandomness of new system is better than that of single Qi system and single Lorenz system.

The proposed encryption algorithm based on semitensor product can be used in other chaotic systems. The synchronization of the new system can be implemented by synchronizing two original chaotic systems separately. In this paper, FPGA is used to implement the generation of the new chaotic system and to encrypt video data. The corresponding statistics and differential and correlation analyses were also conducted which demonstrates that the new system has obvious advantages, such as better random features, better resistance to differential attacks, and lower pixel correlation for encrypted images. The future work will focus on the decryption of video information by the proposed chaotic system generated by the semitensor product method in hardware.

Data Availability

The figures’ .zip data used to support the findings of this study are available from the corresponding author upon request.

Conflicts of Interest

The authors declare that there are no conflicts of interest regarding the publication of this paper.

Acknowledgments

This work was supported by the Fundamental Research Funds for the Central Universities-Civil Aviation University of China (3122019044).