# Design, FPGA-based Implementation and Performance of a Pseudo-Chaotic Number Generator

Fethi Dridi, Safwan El Assad, Wajih El Hadj Youssef, Mohsen Machhout, Abed Ellatif Samhat

<figure><img src="image_1.png" /></figure>

## To cite this version:

Fethi Dridi, Safwan El Assad, Wajih El Hadj Youssef, Mohsen Machhout, Abed Ellatif Samhat. Design, FPGA-based Implementation and Performance of a Pseudo-Chaotic Number Generator. Advances in Electrical and Computer Engineering, 2021, 21 (2), pp.41-48. 10.4316/AECE.2021.02005. hal-03222184

HAL Id: hal-03222184

https://hal.science/hal-03222184

Submitted on 22 May 2024

HAL is a multi-disciplinary open access archive for the deposit and dissemination of scientific research documents, whether they are published or not. The documents may come from teaching and research institutions in France or abroad, or from public or private research centers.

L'archive ouverte pluridisciplinaire HAL, est destinée au dépôt et à la diffusion de documents scientifiques de niveau recherche, publiés ou non, émanant des établissements d'enseignement et de recherche français ou étrangers, des laboratoires publics ou privés.

<figure><img src="image_2.png" /></figure>

Distributed under a Creative Commons Attribution 4.0 International License
# Design, FPGA-based Implementation and Performance of a Pseudo-Chaotic Number Generator

Fethi Dridi, Safwan El Assad, Wajih El Hadj Youssef, Mohsen Machhout, Abed Ellatif Samhat

► To cite this version:

Fethi Dridi, Safwan El Assad, Wajih El Hadj Youssef, Mohsen Machhout, Abed Ellatif Samhat. Design, FPGA-based Implementation and Performance of a Pseudo-Chaotic Number Generator. Advances in Electrical and Computer Engineering, 2021, 21 (2), pp.41-48. 10.4316/AECE.2021.02005. hal-03222184

HAL Id: hal-03222184

https://hal.science/hal-03222184v1

Submitted on 22 May 2024

HAL is a multi-disciplinary open access
archive for the deposit and dissemination of sci-
entific research documents, whether they are pub-
lished or not. The documents may come from
teaching and research institutions in France or
abroad, or from public or private research centers.

L'archive ouverte pluridisciplinaire HAL, est
destinée au dépôt et à la diffusion de documents
scientifiques de niveau recherche, publiés ou non,
émanant des établissements d'enseignement et de
recherche français ou étrangers, des laboratoires
publics ou privés.

<figure><img src="image_1.png" /></figure>
# Design, FPGA-based Implementation and Performance of a Pseudo Random Number Generator of Chaotic Sequences

Fethi DRIDI¹,², Safwan EL ASSAD², Wajih EL HADJ YOUSSEF¹, Mohsen MACHHOUT¹, Abed Ellatif SAMHAT³

¹University of Monastir, Electronics and Microelectronics Laboratory (ΕμΕ), 5019 Monastir, Tunisia

²University of Nantes, CNRS, IETR UMR 6164, F-44000 Nantes, France

³University of Lebanese

fethi.dridi@fsm.u-monastir.tn

**Abstract**—Pseudo-Random Number Generator of Chaotic Sequences (PRNG-CS) has caught the attention in various security applications, especially for stream and block ciphering, steganography, and digital watermarking algorithms. Indeed, in all chaos-based cryptographic systems, the chaotic generator plays a vital role and exhibits appropriate cryptographic properties. Due to the technological outbreak, as well as the rapid growth of the Internet of Things (IoT) technology and their various use cases, PRNGs-CS software implementation remains an open issue to meet its service requirements. The hardware implementation is one of the most flagship technology used to implement PRNGs-CS with the aim is to provide high-performance requirements for such application security. Therefore, in this work, we propose a new PRNGs-SC-based architecture. The latter consists of three discrete chaotic maps weakly coupled, as well as, the Piecewise Linear Chaotic Map (PWLCM), the Skew Tent, and the Logistic map. The chaotic system is designed on Xilinx Spartan™-6 FPGA-board, using Very High-Speed Integrated Circuit Hardware Description Language (VHDL). Simulation results, performed over the ISE Design Suite environment, prove the effectiveness of our proposed architecture in terms of robustness against statistical attacks, throughput, and hardware cost. So, based on its architecture and the simulation results the proposed PRNG-SC can be used in cryptographic applications.

**Index Terms**—chaotic, field programmable gate arrays, hardware, performance evaluation, statistical analysis.

## I. INTRODUCTION

The dynamic behavior of nonlinear systems has stirred enormous practical interest in recent decades. A nonlinear dynamic system of fairly simple structure creates chaos. In reality, a simple equation of recurrence generates very complex and rich chaotic dynamics. Indeed, chaotic systems are deterministic, it produces signals with characteristics that are very similar to random signals, and are highly sensitive to the initial conditions and control parameters that form the secret key [1]. A small change in initial conditions or control parameters induces a huge change in the system that generates pseudo-random sequences. Based on those properties, crypto-systems based on chaos, are an attractive alternative to standard cryptosystems to achieve security services.

Using chaos to secure information transmission is a very promising solution to increase analog or digital transmission systems performances. Chaos-based analog cryptography

has a downside which is that the parameters (part of the secret key) of the system vary with temperature, power, etc. For that, we use chaos-based digital cryptography. In this case, dynamic degradations and periodic behaviors occur. To mitigate these degradations, certain techniques are then used.

The literature contains many mono and multidimensional chaotic maps that are used in various applications related to data security. The chaotic generator is a core component in the application of chaos-based encryption. Indeed, the key addition, substitution, permutation, and diffusion operations are performed according to dynamic keys, generated by the pseudo-random number generator of chaotic sequences, unlike standard cryptography [2].

Since 1990, several generators based on chaotic maps have been established in the literature. There are algorithms that typically use a single chaotic map as the pseudo-random number generator, such as Logistic map [3] and Bernoulli map (Sawtooth map) [4]. Additionally, there are other algorithms that produce the pseudo-random bits across a threshold. This technique allows easy translation of chaotic states into binary symbols, as indicated by the algorithm in [5]. On the other hand, other generations have suggested including near processing procedures to boost the statistical properties of the generated sequences, e.g., the algorithm mentioned in [6].

Nowadays, in the literature, there are some robust chaos-based PRNGs, based on the combination of many chaotic maps. We cite only a few works from which we were inspired to carry out the proposed PRNG-CS such as, Jalloluli et al., [7], developed two new stream ciphers based on pseudo-chaotic number generators (PCNGs) that integrate discrete chaotic maps and use the weak coupling and switching technique. Dridi et al. [8], implemented on SAKURA-G FPGA-board using VHDL a slightly modified PCNGs proposed by [7]. Gautier et al., [9] proposed hardware implementation of a new version of the Light Weight Chaos-Based Stream Cipher (LWCB SC) on an FPGA platform. El Assad et al., [10], developed and implemented under MATLAB/Simulink some standard chaotic generators and realized two classes of new efficient generators. Kocarev et al., [11], presented a class of chaos-based pseudo-random bit generators (PRBGs). Addabbo et al., [12], analyzed the discretized Tent maps and compared
# Design, FPGA-based Implementation and Performance of a Pseudo Random Number Generator of Chaotic Sequences

Fethi DRIDI¹,², Safwan EL ASSAD², Wajih EL HADJ YOUSSEF¹, Mohsen MACHHOUT¹, Abed Ellatif SAMHAT³

¹University of Monastir, Electronics and Microelectronics Laboratory (ΕμΕ), 5019 Monastir, Tunisia

²University of Nantes, CNRS, IETR UMR 6164, F-44000 Nantes, France

³University of Lebanese

fethi.dridi@fsm.u-monastir.tn

**Abstract**—Pseudo-Random Number Generator of Chaotic Sequences (PRNG-CS) has caught the attention in various security applications, especially for stream and block ciphering, steganography, and digital watermarking algorithms. Indeed, in all chaos-based cryptographic systems, the chaotic generator plays a vital role and exhibits appropriate cryptographic properties. Due to the technological outbreak, as well as the rapid growth of the Internet of Things (IoT) technology and their various use cases, PRNGs-CS software implementation remains an open issue to meet its service requirements. The hardware implementation is one of the most flagship technology used to implement PRNGs-CS with the aim is to provide high-performance requirements for such application security. Therefore, in this work, we propose a new PRNGs-SC-based architecture. The latter consists of three discrete chaotic maps weakly coupled, as well as, the Piecewise Linear Chaotic Map (PWLCM), the Skew Tent, and the Logistic map. The chaotic system is designed on Xilinx Spartan™-6 FPGA-board, using Very High-Speed Integrated Circuit Hardware Description Language (VHDL). Simulation results, performed over the ISE Design Suite environment, prove the effectiveness of our proposed architecture in terms of robustness against statistical attacks, throughput, and hardware cost. So, based on its architecture and the simulation results the proposed PRNG-SC can be used in cryptographic applications.

**Index Terms**—chaotic, field programmable gate arrays, hardware, performance evaluation, statistical analysis.

## I. INTRODUCTION

The dynamic behavior of nonlinear systems has stirred enormous practical interest in recent decades. A nonlinear dynamic system of fairly simple structure creates chaos. In reality, a simple equation of recurrence generates very complex and rich chaotic dynamics. Indeed, chaotic systems are deterministic, it produces signals with characteristics that are very similar to random signals, and are highly sensitive to the initial conditions and control parameters that form the secret key [1]. A small change in initial conditions or control parameters induces a huge change in the system that generates pseudo-random sequences. Based on those properties, crypto-systems based on chaos, are an attractive alternative to standard cryptosystems to achieve security services.

Using chaos to secure information transmission is a very promising solution to increase analog or digital transmission systems performances. Chaos-based analog cryptography

has a downside which is that the parameters (part of the secret key) of the system vary with temperature, power, etc. For that, we use chaos-based digital cryptography. In this case, dynamic degradations and periodic behaviors occur. To mitigate these degradations, certain techniques are then used.

The literature contains many mono and multidimensional chaotic maps that are used in various applications related to data security. The chaotic generator is a core component in the application of chaos-based encryption. Indeed, the key addition, substitution, permutation, and diffusion operations are performed according to dynamic keys, generated by the pseudo-random number generator of chaotic sequences, unlike standard cryptography [2].

Since 1990, several generators based on chaotic maps have been established in the literature. There are algorithms that typically use a single chaotic map as the pseudo-random number generator, such as Logistic map [3] and Bernoulli map (Sawtooth map) [4]. Additionally, there are other algorithms that produce the pseudo-random bits across a threshold. This technique allows easy translation of chaotic states into binary symbols, as indicated by the algorithm in [5]. On the other hand, other generations have suggested including near processing procedures to boost the statistical properties of the generated sequences, e.g., the algorithm mentioned in [6].

Nowadays, in the literature, there are some robust chaos-based PRNGs, based on the combination of many chaotic maps. We cite only a few works from which we were inspired to carry out the proposed PRNG-CS such as, Jalloluli et al., [7], developed two new stream ciphers based on pseudo-chaotic number generators (PCNGs) that integrate discrete chaotic maps and use the weak coupling and switching technique. Dridi et al. [8], implemented on SAKURA-G FPGA-board using VHDL a slightly modified PCNGs proposed by [7]. Gautier et al., [9] proposed hardware implementation of a new version of the Light Weight Chaos-Based Stream Cipher (LWCB SC) on an FPGA platform. El Assad et al., [10], developed and implemented under MATLAB/Simulink some standard chaotic generators and realized two classes of new efficient generators. Kocarev et al., [11], presented a class of chaos-based pseudo-random bit generators (PRBGs). Addabbo et al., [12], analyzed the discretized Tent maps and compared
them to the traditional LFSRs as sources of pseudo-random bits. Asgari-Chenaghlu et al., [13], designed a new chaotic system based on a polynomial combination of 1D chaotic maps, and Tutueva et al., [14], introduced a novel technique utilizing the chaotic maps with adaptive symmetry to create chaos-based encryption schemes with larger parameter space.

The aim of this article is to address the FPGA implementation of the pseudo-random number generator and to evaluate its performance [15]. The PRNG-CS produces pseudo-random sequences with uniform distribution, long orbits, and passing statistical tests [16]. The structure of the proposed generator integrates three discrete chaotic maps weakly coupled as internal state and an output function which uses a technique of chaotic switching between the using chaotic maps (Skew Tent, PWLCM, logistic). This effectively achieves robust behavior desired by any generator intended to use in applications related to information security.

The paper is organized as follows: in section 2, we introduce the well-known chaotic maps: Logistic map, Skew Tent map, and PWLCM (Piece Wise Linear Chaotic Map) map. The following sections describe the details of the proposed pseudo-random number generator of chaotic sequences. Section 3, presents the structure of the proposed PRNG-CS.

Section 4, describes the hardware implementation, provides the hardware metrics analysis, and gives the results obtained from the PRNG-CS in terms of phase space, histogram, NIST (National Institute of Standards and Technology) test. Finally, section 5 concludes the paper and gives some perspectives for our future work.

## II. CHAOTIC MAPS: OVERVIEW AND STATISTICAL TEST

In this section, we give the discrete equations as well as the main results of the three one-dimensional nonlinear chaotic maps used: Logistic, PWLCM, and Skew Tent. These maps are the essential elements of the proposed PRNG-CS.

### A. Chaotic Maps Overview

#### 1) Discrete Logistic Map

The logistic map was originally a model of population development, published in 1845 by Pierre Verhulst [17]. In 1947, Ulam and Von Neumann used it as a pseudo-random number generator [18] because of the simplicity of its recurrence equation. Since then, it has been one of the most used maps in cryptographic applications. Its discretized equation is given by the following relation (1):

$$XL(n) = F_t[XL(n-1)] = \begin{cases} \left[ \frac{XL(n-1)[2^N - XL(n-1)]}{2^{N-2}} \right] & \text{if } XL(n-1) \in [3 \times 2^{N-2}, 2^N] \\ 2^N - 1 & \text{if } XL(n-1) = [3 \times 2^{N-2}, 2^N] \end{cases} \quad (1)$$

where, $\lfloor Z \rfloor$ (function Floor) is the greatest integer less than or equal to Z.

The mapping or phase space trajectory [19] is one of the

characteristics of the generated sequence that reflects the dynamic behavior of the system. They represent the chaotic map signature. Fig. 1, illustrates the discrete variation of sequence $XL(n)$ generated by the discrete Logistic map and the attractor formed of 3,125,000 samples. The chosen initial condition $XL(0)$ is equal to 3,070,546,948.

<figure><img src="image_3.png" /><figcaption>Figure 1. Results of the discrete Logistic map: (a) Discrete variation and (b) Attractor</figcaption></figure>

#### 2) Discrete Skew Tent Map

The Skew Tent map is a piecewise linear map [20]. It depends on the one control parameter $P_s$, ranging from 1 to $2^N - 1$. The discrete Skew Tent map is defined by the following discrete equation (2):

$$XS(n) = F_s[XS(n-1)] = \begin{cases} \lfloor \frac{2^N \times XS(n-1)}{P_s} \rfloor & \text{if } 0 < XS(n-1) < P_s \\ 2^N \times \lfloor \frac{2^N - XS(n-1)}{2^N - P_s} \rfloor & \text{if } P_s < XS(n-1) < 2^N \\ 2^N - 1 & \text{otherwise} \end{cases} \quad (2)$$

Fig. 2, gives the discrete variation and the attractor of the Skew Tent map. The chosen initial condition $XS(0) = 2,954,536,241$ and $P_s = 2 \times 10^9$.
them to the traditional LFSRs as sources of pseudo-random bits. Asgari-Chenaghlu et al., [13], designed a new chaotic system based on a polynomial combination of 1D chaotic maps, and Tutueva et al., [14], introduced a novel technique utilizing the chaotic maps with adaptive symmetry to create chaos-based encryption schemes with larger parameter space.

The aim of this article is to address the FPGA implementation of the pseudo-random number generator and to evaluate its performance [15]. The PRNG-CS produces pseudo-random sequences with uniform distribution, long orbits, and passing statistical tests [16]. The structure of the proposed generator integrates three discrete chaotic maps weakly coupled as internal state and an output function which uses a technique of chaotic switching between the using chaotic maps (Skew Tent, PWLCM, logistic). This effectively achieves robust behavior desired by any generator intended to use in applications related to information security.

The paper is organized as follows: in section 2, we introduce the well-known chaotic maps: Logistic map, Skew Tent map, and PWLCM (Piece Wise Linear Chaotic Map) map. The following sections describe the details of the proposed pseudo-random number generator of chaotic sequences. Section 3, presents the structure of the proposed PRNG-CS.

Section 4, describes the hardware implementation, provides the hardware metrics analysis, and gives the results obtained from the PRNG-CS in terms of phase space, histogram, NIST (National Institute of Standards and Technology) test. Finally, section 5 concludes the paper and gives some perspectives for our future work.

## II. CHAOTIC MAPS: OVERVIEW AND STATISTICAL TEST

In this section, we give the discrete equations as well as the main results of the three one-dimensional nonlinear chaotic maps used: Logistic, PWLCM, and Skew Tent. These maps are the essential elements of the proposed PRNG-CS.

### A. Chaotic Maps Overview

#### 1) Discrete Logistic Map

The logistic map was originally a model of population development, published in 1845 by Pierre Verhulst [17]. In 1947, Ulam and Von Neumann used it as a pseudo-random number generator [18] because of the simplicity of its recurrence equation. Since then, it has been one of the most used maps in cryptographic applications. Its discretized equation is given by the following relation (1):

$$XL(n) = F_t[XL(n-1)] = \begin{cases} \left[ \frac{XL(n-1)[2^N - XL(n-1)]}{2^{N-2}} \right] & \text{if } XL(n-1) \in [3 \times 2^{N-2}, 2^N] \\ 2^N - 1 & \text{if } XL(n-1) = [3 \times 2^{N-2}, 2^N] \end{cases} \quad (1)$$

where, $\lfloor Z \rfloor$ (function Floor) is the greatest integer less than or equal to Z.

The mapping or phase space trajectory [19] is one of the

characteristics of the generated sequence that reflects the dynamic behavior of the system. They represent the chaotic map signature. Fig. 1, illustrates the discrete variation of sequence $XL(n)$ generated by the discrete Logistic map and the attractor formed of 3,125,000 samples. The chosen initial condition $XL(0)$ is equal to 3,070,546,948.

<figure><img src="image_2.png" /><figcaption>Figure 1. Results of the discrete Logistic map: (a) Discrete variation and (b) Attractor</figcaption></figure>

#### 2) Discrete Skew Tent Map

The Skew Tent map is a piecewise linear map [20]. It depends on the one control parameter $P_s$, ranging from 1 to $2^N - 1$. The discrete Skew Tent map is defined by the following discrete equation (2):

$$XS(n) = F_s[XS(n-1)] = \begin{cases} \lfloor \frac{2^N \times XS(n-1)}{P_s} \rfloor & \text{if } 0 < XS(n-1) < P_s \\ 2^N \times \lfloor \frac{2^N - XS(n-1)}{2^N - P_s} \rfloor & \text{if } P_s < XS(n-1) < 2^N \\ 2^N - 1 & \text{otherwise} \end{cases} \quad (2)$$

Fig. 2, gives the discrete variation and the attractor of the Skew Tent map. The chosen initial condition $XS(0) = 2,954,536,241$ and $P_s = 2 \times 10^9$.
<figure><img src="image_4.png" /></figure>

<figure><img src="image_5.png" /><figcaption>Figure 2. Results of the discrete Skew Tent map: (a) Discrete variation and (b) Attractor</figcaption></figure>

### 3) Discrete PWLCM Map

Piecewise Linear Chaotic Map (PWLCM) is another piecewise linear chaotic map [21], described by Eq. (3).

$$XP(n) = F_p[XP(n-1)] = \begin{cases} \left\lfloor \frac{2^N \times XP(n-1)}{P_p} \right\rfloor & \text{if } 0 < XP(n-1) < P_p \\ \left\lfloor 2^N \times \frac{XP(n-1) - P_p}{2^{N-1} - P_p} \right\rfloor & \text{if } P_p < XP(n-1) < 2^{N-1} \\ \left\lfloor 2^N \times \frac{2^N - XP(n-1) - P_p}{2^{N-1} - P_p} \right\rfloor & \text{if } 2^{N-1} < XP(n-1) < 2^N - P_p \\ \left\lfloor \frac{2^N \times XP(n-1)}{P_p} \right\rfloor & \text{if } 2^N - P_p < XP(n-1) < 2^N \\ 2^N - 1 & \text{otherwise} \end{cases} \quad (3)$$

We draw in Fig. 3, the discrete variation and the attractor of the PWLCM map. The PWLCM map is widely used in cryptographic algorithms due to its good cryptographic characteristics compared with those of the Logistic map. The chosen initial condition $XP(0)$ is equal to 3,890,346,746 and the control parameter $P_p$ in the range $[1, 2^{N-1}-1]$ is

equal to $1.2 \times 10^9$.

<figure><img src="image_6.png" /></figure>

<figure><img src="image_7.png" /><figcaption>Figure 3. Results of the discrete PWLCM map: (a) Discrete variation and (b) Attractor</figcaption></figure>

### B. NIST Statistical tests

One of the most popular standards for investigating the randomness of binary data is the NIST statistical test [22]. This test is a statistical package that consists of 188 tests and sub-tests (globally 15 different tests) that were proposed to assess the randomness of arbitrarily long binary sequences. Those tests focus on a variety of different types of non-randomness that could exist in a sequence. For each test, a P-value is calculated to indicate the result of the test. A P-value larger than threshold $\alpha = 0.01$ indicates that the sequence would be random and a P-value less than 0.01 means that the sequence is nonrandom. To apply the NIST test, we generate 100 different sequences of 3,123,100 32-bit samples using 100 random secret keys. But we only used 3,125,000 samples per sequence (i.e. $10^8$ bits). Indeed, for each key, the first 100 samples generated per sequence are produced by the system internally but are not used to deviate from the transitional regime.

Table I shows the NIST results obtained for the Logistic, Skew Tent, and PWLCM maps.

The results obtained show that the sequences $XL(n)$, $XS(n)$ and $XP(n)$ do not pass all NIST tests. For the PWLCM map, some sub-tests have not passed but they are close to the acceptance threshold. This shows that the PWLCM map has better performance in terms of security than the Skew Tent and Logistic map.
<figure><img src="image_3.png" /></figure>

<figure><img src="image_4.png" /><figcaption>Figure 2. Results of the discrete Skew-Tent map: (a) Discrete variation and (b) Attractor</figcaption></figure>

### 3) Discrete PWLCM Map

Piecewise Linear Chaotic Map (PWLCM) is another piecewise linear chaotic map [21], described by Eq. (3).

$$ 
\begin{array}{ll}
\text{XP}(n) = F_p[\text{XP}(n-1)] = & \\
\left[ \frac{2^N \times \text{XP}(n-1)}{P_p} \right] & \text{if } 0 < \text{XP}(n-1) < P_p \\
\left[ 2^N \times \frac{\text{XP}(n-1) - P_p}{2^{N-1} - P_p} \right] & \text{if } P_p < \text{XP}(n-1) < 2^{N-1} \\
\left[ \frac{2^N \times \frac{2^N - \text{XP}(n-1) - P_p}{2^{N-1} - P_p}}{P_p} \right] & \text{if } 2^{N-1} < \text{XP}(n-1) < 2^N - P_p \\
\left[ \frac{2^N \times \frac{2^N - \text{XP}(n-1)}{P_p}}{2^N - 1} \right] & \text{if } 2^N - P_p < \text{XP}(n-1) < 2^N \\
2^N - 1 & \text{otherwise}
\end{array}
\quad (3)
$$

We draw in Fig. 3, the discrete variation and the attractor of the PWLCM map. The PWLCM map is widely used in cryptographic algorithms due to its good cryptographic characteristics compared with those of the Logistic map. The chosen initial condition $\text{XP}(0)$ is equal to 3,890,346,746 and the control parameter $P_p$ in the range $[1, 2^{N-1}-1]$ is

equal to $1.2 \times 10^9$.

<figure><img src="image_5.png" /></figure>

<figure><img src="image_6.png" /><figcaption>Figure 3. Results of the discrete PWLCM map: (a) Discrete variation and (b) Attractor</figcaption></figure>

### B. NIST Statistical tests

One of the most popular standards for investigating the randomness of binary data is the NIST statistical test [22]. This test is a statistical package that consists of 188 tests and sub-tests (globally 15 different tests) that were proposed to assess the randomness of arbitrarily long binary sequences. Those tests focus on a variety of different types of non-randomness that could exist in a sequence. For each test, a P-value is calculated to indicate the result of the test. A P-value larger than threshold $\alpha = 0.01$ indicates that the sequence would be random and a P-value less than 0.01 means that the sequence is nonrandom. To apply the NIST test, we generate 100 different sequences of 3,123,100 32-bit samples using 100 random secret keys. But we only used 3,125,000 samples per sequence (i.e. $10^8$ bits). Indeed, for each key, the first 100 samples generated per sequence are produced by the system internally but are not used to deviate from the transitional regime.

Table I shows the NIST results obtained for the Logistic, Skew Tent, and PWLCM maps.

The results obtained show that the sequences $\text{XL}(n)$, $\text{XS}(n)$ and $\text{XP}(n)$ do not pass all NIST tests. For the PWLCM map, some sub-tests have not passed but they are close to the acceptance threshold. This shows that the PWLCM map has better performance in terms of security than the Skew Tent and Logistic map.
<table><caption>TABLE I. P-VALUES AND PROPORTION RESULTS OF NIST TEST FOR THE LOGISTIC, SKEW TENT AND PWLCM MAPS.</caption><thead><tr><th rowspan="2">NIST Test</th><th colspan="2">Logistic</th><th colspan="2">Skew Tent</th><th colspan="2">PWLCM</th></tr><tr><th>Pval</th><th>Prop %</th><th>Pval</th><th>Prop %</th><th>Pval</th><th>Prop %</th></tr></thead><tbody><tr><td>Frequency</td><td>0</td><td>100</td><td>0.249</td><td>100</td><td>0.817</td><td>97</td></tr><tr><td>Block frequency</td><td>0</td><td>0</td><td>0</td><td>100</td><td>0.115</td><td>100</td></tr><tr><td>Cumulative sums</td><td>0</td><td>100</td><td>0.385</td><td>99.5</td><td>0.726</td><td>97</td></tr><tr><td>Runs</td><td>0</td><td>0</td><td>0.304</td><td>97</td><td>0.760</td><td>99</td></tr><tr><td>Longest run</td><td>0</td><td>0</td><td>0.679</td><td>98</td><td>0.868</td><td>100</td></tr><tr><td>Rank</td><td>0.383</td><td>97</td><td>0.249</td><td>99</td><td>0.978</td><td>100</td></tr><tr><td>FFT</td><td>0</td><td>1</td><td>0.109</td><td>97</td><td>0.040</td><td>93</td></tr><tr><td>Nonperiodic templates</td><td>0</td><td>57.3</td><td>0.465</td><td>98.9</td><td>0.499</td><td>99</td></tr><tr><td>Overlapping templates</td><td>0</td><td>0</td><td>0.637</td><td>99</td><td>0.936</td><td>100</td></tr><tr><td>Universal</td><td>0</td><td>0</td><td>0</td><td>94</td><td>0.616</td><td>98</td></tr><tr><td>Approximty entropie</td><td>0</td><td>0</td><td>0.616</td><td>96</td><td>0.534</td><td>93</td></tr><tr><td>Random excursions</td><td>0.138</td><td>92.2</td><td>0.268</td><td>98.3</td><td>0.054</td><td>99</td></tr><tr><td>Random excursions variant</td><td>0.418</td><td>100</td><td>0.304</td><td>98.6</td><td>0.020</td><td>95</td></tr><tr><td>Serial</td><td>0</td><td>0</td><td>0.613</td><td>99.5</td><td>0.269</td><td>93</td></tr><tr><td>Linear complexity</td><td>0</td><td>100</td><td>0.290</td><td>99</td><td>0.046</td><td>99</td></tr></tbody></table>

### III. STRUCTURE OF THE PROPOSED PRNG-CS

The results obtained of NIST test on the three previous chaotic maps demonstrates that they cannot be used alone as pseudo-chaotic number generators. For this, we have combined them in an efficient general structure giving the new pseudo-random number generator of chaotic sequences. The internal state of the proposed PRNG-CS is formed by the three weakly coupled chaotic maps, and the output function is based on a chaotic multiplexing technique as shown in Fig. 4.

The system is governed by the following equation:

$$ \begin{bmatrix} XL(n) \\ XS(n) \\ XP(n) \end{bmatrix} = A \times \begin{bmatrix} F_l[XL(n-1)] \\ F_s[XS(n-1)] \\ F_p[XP(n-1)] \end{bmatrix} \quad (4) $$

where, A represent the weak coupling matrix:

$$ A = \begin{bmatrix} \varepsilon_{11} & \varepsilon_{12} & \varepsilon_{13} \\ \varepsilon_{21} & \varepsilon_{22} & \varepsilon_{23} \\ \varepsilon_{31} & \varepsilon_{32} & \varepsilon_{33} \end{bmatrix} \quad (5) $$

and $F_l[XL(n-1)]$, $F_s[XS(n-1)]$, $F_p[XP(n-1)]$ are the discrete functions of the chaotic maps: Logistic, Skew Tent and PWLCM defined in Eq. (1), (2), and (3) respectively.

The obtained multiplexed samples of the sequence $X(n)$ are controlled by the chaotic sample $X_{th}(n)$ and a threshold $T$:

$$ X(n) = \begin{cases} (XP(n) + XL(n)) \operatorname{Mod} 2^N & \text{if } 0 < X_{th}(n) < T \\ XS(n) & \text{otherwise} \end{cases} \quad (6) $$

where, $X_{th}(n) = XP(n) \oplus XS(n)$ and $T=0.8 \times 2^N$.

The following Algorithm 1, shows the generation of the

pseudo-random sequence $X(n)$.

**Algorithm 1:** Generation of the pseudo-random sequence $X(n)$

Result: $X(n)$
Initialization;

XL(0);

XS(0);

XP(0);

$\varepsilon_{11} = (2^N - \varepsilon_{12} - \varepsilon_{13});$

$\varepsilon_{22} = (2^N - \varepsilon_{21} - \varepsilon_{23});$

$\varepsilon_{33} = (2^N - \varepsilon_{31} - \varepsilon_{32});$

While $n < N_s$ do

$$ XL(n) = (\varepsilon_{11} \times XL(n-1)) + (\varepsilon_{12} \times XS(n-1)) + (\varepsilon_{13} \times XP(n-1)) $$

$$ XS(n) = (\varepsilon_{21} \times XL(n-1)) + (\varepsilon_{22} \times XS(n-1)) + (\varepsilon_{23} \times XP(n-1)) $$

$$ XP(n) = (\varepsilon_{31} \times XL(n-1)) + (\varepsilon_{32} \times XS(n-1)) + (\varepsilon_{33} \times XP(n-1)) $$

$$ X_{th}(n) = XP(n) \oplus XS(n); $$

if $X_{th}(n) < T$ then

$$ X(n) = (XP(n) + XL(n)) \operatorname{Mod} 2^N; $$

else

$$ X(n) = XS(n); $$

end

end

The size of the secret key of the proposed PRNG-CS is formed by all the initial conditions (of size 32-bit) and parameters of the system:

$$ |K| = |XL| + |XS| + |XP| + |P_s| + |P_p| + (6 \times |\varepsilon_{ij}|) = 189 \text{ bits} \quad (7) $$

$$ \text{where: } |P_s| = 32 \text{ bits}, \quad |P_p| = 31 \text{ bits}, \quad \text{and} \quad |\varepsilon_{ij}| = 5 \text{ bits}. $$

The key space of the secret key is $2^{189}$ different combinations which are large enough to make the brute-force attack infeasible.

### IV. HARDWARE IMPLEMENTATION AND EXPERIMENTAL RESULTS

In the following we quantify the performance of the hardware implementation and we assess the robustness of the chaotic system against statistical attacks.

#### A. Hardware Implementation

In this part, the proposed PRNG-CS is implemented in hardware descriptive language (VHDL) and also in software by MATLAB [23]. The VHDL code is synthesized in SAKURAG-FPGA technology [24] and the tool used for the implementation is ISE Design Suite 14.6 of Xilinx.

In the experiments below, we generate sequences in the same methodology as for the three chaotic maps (see section II, paragraph B).

#### B. Hardware Implementation

In this part, the proposed PRNG-CS is implemented in hardware descriptive language (VHDL) and also in software by MATLAB [23]. The VHDL code is synthesized in SAKURAG-FPGA technology [24] and the tool used for the implementation is ISE Design Suite 14.6 of Xilinx.
<table><caption>TABLE I. P-VALUES AND PROPORTION RESULTS OF NIST TEST FOR THE LOGISTIC, SKEW TENT AND PWLCM MAPS.</caption><thead><tr><th rowspan="2">NIST Test</th><th colspan="2">Logistic</th><th colspan="2">Skew Tent</th><th colspan="2">PWLCM</th></tr><tr><th>Pval</th><th>Prop %</th><th>Pval</th><th>Prop %</th><th>Pval</th><th>Prop %</th></tr></thead><tbody><tr><td>Frequency</td><td>0</td><td>100</td><td>0.249</td><td>100</td><td>0.817</td><td>97</td></tr><tr><td>Block frequency</td><td>0</td><td>0</td><td>0</td><td>100</td><td>0.115</td><td>100</td></tr><tr><td>Cumulative sums</td><td>0</td><td>100</td><td>0.385</td><td>99.5</td><td>0.726</td><td>97</td></tr><tr><td>Runs</td><td>0</td><td>0</td><td>0.304</td><td>97</td><td>0.760</td><td>99</td></tr><tr><td>Longest run</td><td>0</td><td>0</td><td>0.679</td><td>98</td><td>0.868</td><td>100</td></tr><tr><td>Rank</td><td>0.383</td><td>97</td><td>0.249</td><td>99</td><td>0.978</td><td>100</td></tr><tr><td>FFT</td><td>0</td><td>1</td><td>0.109</td><td>97</td><td>0.040</td><td>93</td></tr><tr><td>Nonperiodic templates</td><td>0</td><td>57.3</td><td>0.465</td><td>98.9</td><td>0.499</td><td>99</td></tr><tr><td>Overlapping templates</td><td>0</td><td>0</td><td>0.637</td><td>99</td><td>0.936</td><td>100</td></tr><tr><td>Universal</td><td>0</td><td>0</td><td>0</td><td>94</td><td>0.616</td><td>98</td></tr><tr><td>Approximty entropie</td><td>0</td><td>0</td><td>0.616</td><td>96</td><td>0.534</td><td>93</td></tr><tr><td>Random excursions</td><td>0.138</td><td>92.2</td><td>0.268</td><td>98.3</td><td>0.054</td><td>99</td></tr><tr><td>Random excursions variant</td><td>0.418</td><td>100</td><td>0.304</td><td>98.6</td><td>0.020</td><td>95</td></tr><tr><td>Serial</td><td>0</td><td>0</td><td>0.613</td><td>99.5</td><td>0.269</td><td>93</td></tr><tr><td>Linear complexity</td><td>0</td><td>100</td><td>0.290</td><td>99</td><td>0.046</td><td>99</td></tr></tbody></table>

### III. STRUCTURE OF THE PROPOSED PRNG-CS

The results obtained of NIST test on the three previous chaotic maps demonstrates that they cannot be used alone as pseudo-chaotic number generators. For this, we have combined them in an efficient general structure giving the new pseudo-random number generator of chaotic sequences. The internal state of the proposed PRNG-CS is formed by the three weakly coupled chaotic maps, and the output function is based on a chaotic multiplexing technique as shown in Fig. 4.

The system is governed by the following equation:

$$ \begin{bmatrix} XL(n) \\ XS(n) \\ XP(n) \end{bmatrix} = A \times \begin{bmatrix} F_l[XL(n-1)] \\ F_s[XS(n-1)] \\ F_p[XP(n-1)] \end{bmatrix} \quad (4) $$

where, A represent the weak coupling matrix:

$$ A = \begin{bmatrix} \varepsilon_{11} & \varepsilon_{12} & \varepsilon_{13} \\ \varepsilon_{21} & \varepsilon_{22} & \varepsilon_{23} \\ \varepsilon_{31} & \varepsilon_{32} & \varepsilon_{33} \end{bmatrix} \quad (5) $$

and $F_l[XL(n-1)]$, $F_s[XS(n-1)]$, $F_p[XP(n-1)]$ are the discrete functions of the chaotic maps: Logistic, Skew Tent and PWLCM defined in Eq. (1), (2), and (3) respectively.

The obtained multiplexed samples of the sequence $X(n)$ are controlled by the chaotic sample $X_{th}(n)$ and a threshold T:

$$ X(n) = \begin{cases} (XP(n) + XL(n)) \bmod 2^N & \text{if } 0 < X_{th}(n) < T \\ XS(n) & \text{otherwise} \end{cases} \quad (6) $$

$$ \text{where, } X_{th}(n) = XP(n) \oplus XS(n) \text{ and } T=0.8 \times 2^N. $$

The following Algorithm 1, shows the generation of the

pseudo-random sequence $X(n)$.

**Algorithm 1:** Generation of the pseudo-random sequence $X(n)$

Result: $X(n)$
Initialization;

XL(0);

XS(0);

XP(0);

$\varepsilon_{11} = (2^N - \varepsilon_{12} - \varepsilon_{13});$

$\varepsilon_{22} = (2^N - \varepsilon_{21} - \varepsilon_{23});$

$\varepsilon_{33} = (2^N - \varepsilon_{31} - \varepsilon_{32});$

While $n < N_s$ do

$$ XL(n) = (\varepsilon_{11} \times XL(n-1)) + (\varepsilon_{12} \times XS(n-1)) + (\varepsilon_{13} \times XP(n-1)) $$

$$ XS(n) = (\varepsilon_{21} \times XL(n-1)) + (\varepsilon_{22} \times XS(n-1)) + (\varepsilon_{23} \times XP(n-1)) $$

$$ XP(n) = (\varepsilon_{31} \times XL(n-1)) + (\varepsilon_{32} \times XS(n-1)) + (\varepsilon_{33} \times XP(n-1)) $$

$$ X_{th}(n) = XP(n) \oplus XS(n); $$

if $X_{th}(n) < T$ then

$$ X(n) = (XP(n) + XL(n)) \bmod 2^N; $$

else

$$ X(n) = XS(n); $$

end

end

The size of the secret key of the proposed PRNG-SC is formed by all the initial conditions (of size 32-bit) and parameters of the system:

$$ |K| = |XL| + |XS| + |XP| + |P_s| + |P_p| + (6 \times |\varepsilon_{ij}|) = 189 \text{ bits} \quad (7) $$

$$ \text{where: } |P_s| = 32 \text{ bits}, \quad |P_p| = 31 \text{ bits}, \quad \text{and} \quad |\varepsilon_{ij}| = 5 \text{ bits}. $$

The key space of the secret key is $2^{189}$ different combinations which are large enough to make the brute-force attack infeasible.

### IV. HARDWARE IMPLEMENTATION AND EXPERIMENTAL RESULTS

In the following we quantify the performance of the hardware implementation and we assess the robustness of the chaotic system against statistical attacks.

#### A. Hardware Implementation

In this part, the proposed PRNG-CS is implemented in hardware descriptive language (VHDL) and also in software by MATLAB [23]. The VHDL code is synthesized in SAKURAG-FPGA technology [24] and the tool used for the implementation is ISE Design Suite 14.6 of Xilinx.

In the experiments below, we generate sequences in the same methodology as for the three chaotic maps (see section II, paragraph B).

#### B. Hardware Implementation

In this part, the proposed PRNG-CS is implemented in hardware descriptive language (VHDL) and also in software by MATLAB [23]. The VHDL code is synthesized in SAKURAG-FPGA technology [24] and the tool used for the implementation is ISE Design Suite 14.6 of Xilinx.
<figure><img src="image_8.png" /><figcaption>Figure 4. Architecture of the proposed PRNG-CS</figcaption></figure>

In the experiments below, we generate sequences in the same methodology as for the three chaotic maps (see section II, paragraph B).

For the design of the proposed generator, we have opted for a behavioral description written in a high-level language to be converted into a Register Transfer Level (RTL) implementation as presented in the Fig. 5.

The internal architecture of the PCNG entity comprises two sub-entities: the internal state which itself comprises three sub-entities (logistic, Skew Tent and PWLCM) and output function. Noting that, we have considered a 32-bit fixed-point binary representation (2Q30), for the implementation of the proposed pseudo-chaotic number generator [25].

<figure><img src="image_9.png" /><figcaption>Figure 5. External architecture of the proposed PCNG</figcaption></figure>

Before proceeding with its implementation on the FPGA component, a pre-synthesis simulation of the proposed algorithm is carried out to check its validity and to ensure that its operation is consistent with the results obtained by numerical simulation using MATLAB. Pre-synthesis simulation is usually involving the design of numerical simulation models or test benches in VHDL, which can be invoked directly by the Isim simulator integrated with the ISE Design Suite tool. The results obtained from Xilinx ISE Simulator are illustrated in Fig. 6.

At the end of the Place & Route process which is performed after the synthesis process, we obtain the results of the chaotic system implemented by the Xilinx Spartan-6 FPGA board (XC6SLX75). Fig. 7 and Table II summarize

the results of the hardware resources in terms of Slice Flips numbers (FFs), Look-Up Tables (LUTs) and DSP blocks. For the computing performance, in the customized architecture, the number of clock cycles, which is required to generate a new sample is one cycle that operating at 6.097 MHz which achieves a throughput of 195.12 Mbps.

<figure><img src="image_10.png" /><figcaption>Figure 7. Experimental results on XC6SLX75 FPGA for the proposed PRNG-CS after Post-Implementation</figcaption></figure>

<table><caption>TABLE II. RESOURCE CONSUMPTION OF OUR PROPOSED CHAOTIC SYSTEM WITH SPARTAN-6 FPGA (XC6SLX75)</caption><thead><tr><td>Component</td><td>FFs</td><td>LUTs</td><td>DSPs</td></tr></thead><tbody><tr><td>Internal State</td><td>154</td><td>189</td><td>19</td></tr><tr><td>Logistic</td><td>33</td><td>71</td><td>4</td></tr><tr><td>Skew Tent</td><td>33</td><td>6061</td><td>0</td></tr><tr><td>PWLCM</td><td>56</td><td>12698</td><td>0</td></tr><tr><td>Output Function</td><td>64</td><td>65</td><td>0</td></tr><tr><td>PCNG</td><td>0</td><td>131</td><td>0</td></tr><tr><td>Total</td><td>340</td><td>19215</td><td>23</td></tr></tbody></table>

### C. Statistical Tests

#### 1) Mapping analysis

We give in Fig. 8, the phase space trajectory or mapping of a sequence X(n) generated by the proposed PRNG-CS and formed by $N_s = 3,125,000$ samples.

The chosen initial conditions are:

$$XL(0) = 3,070,546,948; XS(0) = 2,954,536,241;$$

$$P_s = 2 \times 10^9; XP(0) = 3,890,346,746; \text{ and } P_p = 1.2 \times 10^9.$$

The mapping, which reflects the signature of the proposed PRNG-SC, looks as noise and this is a desired result.
<figure><img src="image_7.png" /><figcaption>Figure 4. Architecture of the proposed PRNG-CS</figcaption></figure>

In the experiments below, we generate sequences in the same methodology as for the three chaotic maps (see section II, paragraph B).

For the design of the proposed generator, we have opted for a behavioral description written in a high-level language to be converted into a Register Transfer Level (RTL) implementation as presented in the Fig. 5.

The internal architecture of the PCNG entity comprises two sub-entities: the internal state which itself comprises three sub-entities (logistic, Skew Tent and PWLCM) and output function. Noting that, we have considered a 32-bit fixed-point binary representation (2Q30), for the implementation of the proposed pseudo-chaotic number generator [25].

<figure><img src="image_8.png" /><figcaption>Figure 5. External architecture of the proposed PCNG</figcaption></figure>

Before proceeding with its implementation on the FPGA component, a pre-synthesis simulation of the proposed algorithm is carried out to check its validity and to ensure that its operation is consistent with the results obtained by numerical simulation using MATLAB. Pre-synthesis simulation is usually involving the design of numerical simulation models or test benches in VHDL, which can be invoked directly by the Isim simulator integrated with the ISE Design Suite tool. The results obtained from Xilinx ISE Simulator are illustrated in Fig. 6.

At the end of the Place & Route process which is performed after the synthesis process, we obtain the results of the chaotic system implemented by the Xilinx Spartan-6 FPGA board (XC6SLX75). Fig. 7 and Table II summarize

the results of the hardware resources in terms of Slice Flips numbers (FFs), Look-Up Tables (LUTs) and DSP blocks. For the computing performance, in the customized architecture, the number of clock cycles, which is required to generate a new sample is one cycle that operating at 6.097 MHz which achieves a throughput of 195.12 Mbps.

<figure><img src="image_9.png" /><figcaption>Figure 7. Experimental results on XC6SLX75 FPGA for the proposed PRNG-CS after Post-Implementation</figcaption></figure>

<table><caption>TABLE II. RESOURCE CONSUMPTION OF OUR PROPOSED CHAOTIC SYSTEM WITH SPARTAN-6 FPGA (XC6SLX75)</caption><thead><tr><td>Component</td><td>FFs</td><td>LUTs</td><td>DSPs</td></tr></thead><tbody><tr><td>Internal State</td><td>154</td><td>189</td><td>19</td></tr><tr><td>Logistic</td><td>33</td><td>71</td><td>4</td></tr><tr><td>Skew Tent</td><td>33</td><td>6061</td><td>0</td></tr><tr><td>PWLCM</td><td>56</td><td>12698</td><td>0</td></tr><tr><td>Output Function</td><td>64</td><td>65</td><td>0</td></tr><tr><td>PCNG</td><td>0</td><td>131</td><td>0</td></tr><tr><td>Total</td><td>340</td><td>19215</td><td>23</td></tr></tbody></table>

### C. Statistical Tests

#### 1) Mapping analysis

We give in Fig. 8, the phase space trajectory or mapping of a sequence X(n) generated by the proposed PRNG-CS and formed by $N_s = 3,125,000$ samples.

The chosen initial conditions are:

$$XL(0) = 3,070,546,948; XS(0) = 2,954,536,241;$$

$$P_s = 2 \times 10^9; XP(0) = 3,890,346,746; \text{ and } P_p = 1.2 \times 10^9.$$

The mapping, which reflects the signature of the proposed PRNG-SC, looks as noise and this is a desired result.
<figure><img src="image_11.png" /><figcaption>Figure 6. Xilinx ISE Simulator results of the proposed PRNG-CS</figcaption></figure>

<figure><img src="image_12.png" /><figcaption>Figure 8. Mapping</figcaption></figure>

## 2) Histogram and Chi-square test analysis

Fig. 9 presents the histogram [26] of a sequence $X(n)$ produced by the PRNG-CS. Visually, the generated sequence is uniform.

<figure><img src="image_13.png" /><figcaption>Figure 9. Histogram</figcaption></figure>

To assert the uniformity of the histogram, we applied the chi-square test [27-28] defined by the following equation:

$$ \chi_{\text{exp}}^2 = \sum_{i=0}^{N_c-1} \frac{(O_i - E_i)^2}{E_i} \qquad (8) $$

where, $N_c=1000$ is the number of classes, $O_i$ is the number of calculated samples in the $i$th class $E_i$ and $E_i=N_c/N_c$ is the expected number of samples of a uniform distribution. Table III, presents the theoretical and experimental values for the Chi-Square test. As we can see, the theoretical value of the Chi-square test is bigger than the experimental value, so, the sequences generated by the proposed PRNG-CS are uniform.

## 3) Correlation analysis

Correlation analysis determines the statistical dependence of the states that make up long-term chaotic trajectories [29]. Low statistical dependency suggests that the chaotic sequence is unpredictable and reflects a significant confusion aspect.

<table><caption>TABLE III. THEORETICAL AND EXPERIMENTAL VALUES FOR THE CHI-SQUARE TEST</caption><thead><tr><td>χ² value</td><td>PRNG-CS</td></tr></thead><tbody><tr><td>χ²<sub>ih</sub> (1000, 0.05)</td><td>1073.64</td></tr><tr><td>χ²<sub>exp</sub></td><td>979.13</td></tr></tbody></table>

For data encryption, this is of great importance, in particular to eliminate the statistical correlation between clear and encrypted data. Three metrics can be used to evaluate the correlation between sequences produced by the chaotic system: the cross correlation which is a two-series similarity measure, the auto-correlation, which is a cross-correlation of a signal with itself, and the correlation coefficient. One of the properties of a random sequence is that the values in the sequence are neither correlated nor repeated, and the cross-correlation between two sequences X and Y generated with slightly different keys is close to zero.

The correlation coefficient $\rho_{XY}$ between sequences X and Y is given by (9).

$$ \rho_{XY} = \frac{\mathrm{Cov}(X, Y)}{\sigma_X \sigma_Y} \qquad (9) $$

where,

$$ \mathrm{Cov}(X,Y) = \sum_{i=1}^{N_c} \left[ \left( X_i - \frac{1}{N_c} \sum_{i=1}^{N_c} X_i \right) \left( Y_i - \frac{1}{N_c} \sum_{i=1}^{N_c} Y_i \right) \right] \qquad (10) $$

$$ \sigma_X = \sqrt{\sum_{i=1}^{N_c} \left( X_i - \frac{1}{N_c} \sum_{i=1}^{N_c} X_i \right)^2} \qquad (11) $$

and

$$ \sigma_Y = \sqrt{\sum_{i=1}^{N_c} \left( Y_i - \frac{1}{N_c} \sum_{i=1}^{N_c} Y_i \right)^2} \qquad (12) $$

We give in Fig. 10 the auto-correlation of sequence and a zoom of this auto-correlation.

In Fig. 11, we present the cross-correlation of two sequences X and Y which are generated with nearby initial conditions and a zoom of the cross-correlation.

Finally, we give in Table IV the value of the correlation coefficient of these sequences. We note that the cross-correlation of sequences X and Y is very low compared to the auto-correlation of sequence X, and the correlation coefficient is close to zero. Consequently, the sequences have a good auto and cross-correlation properties.

<table><caption>TABLE IV. CORRELATION COEFFICIENT OF THE PROPOSED PRNG-CS.</caption><thead><tr><td>Correlation coefficient</td><td>PRNG-CS</td></tr></thead><tbody><tr><td>ρ<sub>XY</sub></td><td>-0.0064</td></tr></tbody></table>
<figure><img src="image_10.png" /><figcaption>Figure 6. Xilinx ISE Simulator results of the proposed PRNG-CS</figcaption></figure>

<figure><img src="image_11.png" /><figcaption>Figure 8. Mapping</figcaption></figure>

## 2) Histogram and Chi-square test analysis

Fig. 9 presents the histogram [26] of a sequence $X(n)$ produced by the PRNG-CS. Visually, the generated sequence is uniform.

<figure><img src="image_12.png" /><figcaption>Figure 9. Histogram</figcaption></figure>

To assert the uniformity of the histogram, we applied the chi-square test [27-28] defined by the following equation:

$$ \chi_{\text{exp}}^2 = \sum_{i=0}^{N_c-1} \frac{(O_i - E_i)^2}{E_i} \qquad (8) $$

where, $N_c=1000$ is the number of classes, $O_i$ is the number of calculated samples in the $i$th class $E_i$ and $E_i=N_c/N_c$ is the expected number of samples of a uniform distribution. Table III, presents the theoretical and experimental values for the Chi-Square test. As we can see, the theoretical value of the Chi-square test is bigger than the experimental value, so, the sequences generated by the proposed PRNG-CS are uniform.

## 3) Correlation analysis

Correlation analysis determines the statistical dependence of the states that make up long-term chaotic trajectories [29]. Low statistical dependency suggests that the chaotic sequence is unpredictable and reflects a significant confusion aspect.

<table><caption>TABLE III. THEORETICAL AND EXPERIMENTAL VALUES FOR THE CHI-SQUARE TEST</caption><thead><tr><td>χ² value</td><td>PRNG-CS</td></tr></thead><tbody><tr><td>χ²<sub>th</sub> (1000, 0.05)</td><td>1073.64</td></tr><tr><td>χ²<sub>exp</sub></td><td>979.13</td></tr></tbody></table>

For data encryption, this is of great importance, in particular to eliminate the statistical correlation between clear and encrypted data. Three metrics can be used to evaluate the correlation between sequences produced by the chaotic system: the cross correlation which is a two-series similarity measure, the auto-correlation, which is a cross-correlation of a signal with itself, and the correlation coefficient. One of the properties of a random sequence is that the values in the sequence are neither correlated nor repeated, and the cross-correlation between two sequences X and Y generated with slightly different keys is close to zero.

The correlation coefficient $\rho_{XY}$ between sequences X and Y is given by (9).

$$ \rho_{XY} = \frac{\mathrm{Cov}(X, Y)}{\sigma_X \sigma_Y} \qquad (9) $$

where,

$$ \mathrm{Cov}(X,Y) = \sum_{i=1}^{N_c} \left[ \left( X_i - \frac{1}{N_c} \sum_{i=1}^{N_c} X_i \right) \left( Y_i - \frac{1}{N_c} \sum_{i=1}^{N_c} Y_i \right) \right] \qquad (10) $$

$$ \sigma_X = \sqrt{\sum_{i=1}^{N_c} \left( X_i - \frac{1}{N_c} \sum_{i=1}^{N_c} X_i \right)^2} \qquad (11) $$

and

$$ \sigma_Y = \sqrt{\sum_{i=1}^{N_c} \left( Y_i - \frac{1}{N_c} \sum_{i=1}^{N_c} Y_i \right)^2} \qquad (12) $$

We give in Fig. 10 the auto-correlation of sequence and a zoom of this auto-correlation.

In Fig. 11, we present the cross-correlation of two sequences X and Y which are generated with nearby initial conditions and a zoom of the cross-correlation.

Finally, we give in Table IV the value of the correlation coefficient of these sequences. We note that the cross-correlation of sequences X and Y is very low compared to the auto-correlation of sequence X, and the correlation coefficient is close to zero. Consequently, the sequences have a good auto and cross-correlation properties.

<table><caption>TABLE IV. CORRELATION COEFFICIENT OF THE PROPOSED PRNG-CS.</caption><thead><tr><td>Correlation coefficient</td><td>PRNG-CS</td></tr></thead><tbody><tr><td>ρ<sub>XY</sub></td><td>-0.0064</td></tr></tbody></table>
<figure><img src="image_14.png" /><figcaption>(a)</figcaption></figure>

<figure><img src="image_15.png" /><figcaption>(b)</figcaption></figure>

<figure><img src="image_16.png" /><figcaption>(a)</figcaption></figure>

<figure><img src="image_17.png" /><figcaption>(b)</figcaption></figure>

<caption>Figure 11. (a) Cross-correlation of sequences X and X (b) A zoom of the cross-correlation of sequences X and Y</caption>

### 4) NIST test analysis

We give in Fig. 12, the obtained result in NIST proportion of 188 tests and sub-tests, and in Table V the P-value of 15 global tests of 100 different sequences generated by the proposed PRNG-SC (in the same conditions of section II, paragraph B). All P-values are distinctly larger than the critical value 0.01, proving the high degree of randomness of the generated sequences. This asserts the effectiveness of the ultra-weak coupling technique and chaotic mixing in designing strong PRNG-CS. Therefore, all previous statistical results demonstrate that the proposed PRNG-CS is robust against statistical attacks.

<figure><img src="image_18.png" /><figcaption>Figure 12. Result in NIST proportion of 188 tests and sub-tests</figcaption></figure>

<table><caption>TABLE V. P-VALUES OF NIST TEST</caption><thead><tr><td>Test</td><td>P-value</td><td>Prop %</td></tr></thead><tbody><tr><td>Frequency</td><td>0.137</td><td>99.000</td></tr><tr><td>Block frequency</td><td>0.988</td><td>98.000</td></tr><tr><td>Cumulative sums</td><td>0.519</td><td>99.500</td></tr><tr><td>Runs</td><td>0.290</td><td>100.000</td></tr><tr><td>Longest run</td><td>0.437</td><td>100.000</td></tr><tr><td>Rank</td><td>0.514</td><td>98.000</td></tr><tr><td>FFT</td><td>0.898</td><td>100.000</td></tr><tr><td>Nonperiodic templates</td><td>0.554</td><td>99.041</td></tr><tr><td>Overlapping templates</td><td>0.384</td><td>96.000</td></tr><tr><td>Universal</td><td>0.249</td><td>100.000</td></tr><tr><td>Approximty entropie</td><td>0.779</td><td>100.000</td></tr><tr><td>Random excursions</td><td>0.308</td><td>98.305</td></tr><tr><td>Random excursions variant</td><td>0.317</td><td>98.493</td></tr><tr><td>Serial</td><td>0.777</td><td>100.000</td></tr><tr><td>Linear complexity</td><td>0.213</td><td>99.000</td></tr></tbody></table>

## V. CONCLUSION

In conclusion, we developed and addressed the hardware implementation on SAKURA-G FPGA technology using VHDL of one of our pseudo-random number generator of chaotic sequences, and then, we evaluated its performance. Given the structure of the proposed PRNG-CS and the obtained results in terms of robustness against statistical attacks and in terms of hardware performance (speed, cost, etc.) indicate that the proposed PRNG-CS can be used to ensure the confidentiality of transmitted data (mobile communications, IoT) over insecure channels. Our future
<figure><img src="image_13.png" /><figcaption>(a)</figcaption></figure>

<figure><img src="image_14.png" /><figcaption>(b)</figcaption></figure>

<figure><img src="image_15.png" /><figcaption>(a)</figcaption></figure>

<figure><img src="image_16.png" /><figcaption>(b)</figcaption></figure>

<caption>Figure 11. (a) Cross-correlation of sequences X and X (b) A zoom of the cross-correlation of sequences X and Y</caption>

4) NIST test analysis

We give in Fig. 12, the obtained result in NIST proportion of 188 tests and sub-tests, and in Table V the P-value of 15 global tests of 100 different sequences generated by the proposed PRNG-SC (in the same conditions of section II, paragraph B). All P-values are distinctly larger than the critical value 0.01, proving the high degree of randomness of the generated sequences. This asserts the effectiveness of the ultra-weak coupling technique and chaotic mixing in designing strong PRNG-CS. Therefore, all previous statistical results demonstrate that the proposed PRNG-CS is robust against statistical attacks.

<figure><img src="image_17.png" /><figcaption>Figure 12. Result in NIST proportion of 188 tests and sub-tests</figcaption></figure>

<table><caption>TABLE V. P-VALUES OF NIST TEST</caption><thead><tr><td>Test</td><td>P-value</td><td>Prop %</td></tr></thead><tbody><tr><td>Frequency</td><td>0.137</td><td>99.000</td></tr><tr><td>Block frequency</td><td>0.988</td><td>98.000</td></tr><tr><td>Cumulative sums</td><td>0.519</td><td>99.500</td></tr><tr><td>Runs</td><td>0.290</td><td>100.000</td></tr><tr><td>Longest run</td><td>0.437</td><td>100.000</td></tr><tr><td>Rank</td><td>0.514</td><td>98.000</td></tr><tr><td>FFT</td><td>0.898</td><td>100.000</td></tr><tr><td>Nonperiodic templates</td><td>0.554</td><td>99.041</td></tr><tr><td>Overlapping templates</td><td>0.384</td><td>96.000</td></tr><tr><td>Universal</td><td>0.249</td><td>100.000</td></tr><tr><td>Approximty entropie</td><td>0.779</td><td>100.000</td></tr><tr><td>Random excursions</td><td>0.308</td><td>98.305</td></tr><tr><td>Random excursions variant</td><td>0.317</td><td>98.493</td></tr><tr><td>Serial</td><td>0.777</td><td>100.000</td></tr><tr><td>Linear complexity</td><td>0.213</td><td>99.000</td></tr></tbody></table>

V. CONCLUSION

In conclusion, we developed and addressed the hardware implementation on SAKURA-G FPGA technology using VHDL of one of our pseudo-random number generator of chaotic sequences, and then, we evaluated its performance. Given the structure of the proposed PRNG-CS and the obtained results in terms of robustness against statistical attacks and in terms of hardware performance (speed, cost, etc.) indicate that the proposed PRNG-CS can be used to ensure the confidentiality of transmitted data (mobile communications, IoT) over insecure channels. Our future
work, will focus on the design and implementation of efficient stream and block ciphers for securing images and videos.

REFERENCES

[1] C. E. Shannon, "Communication theory of secrecy systems," The Bell system technical journal, vol. 28, no. 4, pp. 656-715, 1949. doi:10.1002/j.1538-7305.1949.tb00928.x

[2] L. Kocarev, "Chaos-based cryptography: a brief overview," IEEE Circuits and Systems Magazine, vol. 1, no. 3, pp. 6-21, 2001. doi:10.1109/7384.963463

[3] M. Andrecut, "Logistic map as a random number generator," International Journal of Modern Physics B, vol. 12, no. 09, pp. 921-930, 1998. doi:10.1142/S021797929800051X

[4] M. Alioto, S. Bernardi, A. Fort, S. Rocchi, V. Vignoli, "Analysis and design of digital PRNGS based on the discretized sawtooth map," in Proc. 10th IEEE International Conference on Electronics, Circuits and Systems, 2003. ICECS 2003, IEEE, 2003, pp. 427-430

[5] M. E. Yalcin, J. A. Suykens, J. Vandewalle, "True random bit generation from a double-scroll attractor," IEEE Transactions on Circuits and Systems I: Regular Papers, vol. 51, no. 7, pp. 1395-1404, 2004. doi:10.1109/TCSI.2004.830683

[6] M. A. Zidan, A. G. Radwan, K. N. Salama, "Random number generation based on digital differential chaos," in Proc. 54th International Midwest Symposium on Circuits and Systems (MWSCAS), IEEE, 2011, pp. 1-4. doi:10.1109/MWSCAS.2011.6026266

[7] O. Jallouli, S. El Assad, M. Ghetto, R. Lozi, "Design and analysis of two stream ciphers based on chaotic coupling and multiplexing techniques," Multimedia tools and applications, vol. 77, no. 11, pp. 13391-13417, 2018. doi:10.1007/s11042-017-4953-x

[8] F. Dridi, S. El Assad, W. E. Youssef, M. Machhout, "FPGA Implementation of a pseudo-chaotic number generator and evaluation of its performance," in Proc. 2019 International Conference on Internet of Things, Embedded Systems and Communications (IINTEC), IEEE, 2019, pp. 231-234. doi:10.1109/IINTEC48298.2019.9112124

[9] G. Gautier, M. Le Glatin, S. El Assad, W. Hamidouche, O. Deforges, S. Guilley, A. Facon, "Hardware implementation of lightweight chaos-based stream cipher", in Proc. The Fourth International Conference on Cyber-Technologies and Cyber-Systems (CYBER 2019), Porto, Portugal, 2019, pp. 37-40

[10] S. El Assad, H. Noura, I. Taralova, "Design and analyses of efficient chaotic generators for crypto-systems," in Proc. Advances in Electrical and Electronics Engineering-IAENG Special Edition of the World Congress on Engineering and Computer Science 2008, IEEE, 2008, pp. 3-12. doi:10.1109/WCECS.2008.9

[11] L. Kocarev, G. Jakimoski, "Pseudorandom bits generated by chaotic maps," IEEE Transactions on Circuits and Systems I: Fundamental Theory and Applications, vol. 50, no. 1, pp. 123-126, 2003. doi:10.1109/TCSI.2002.804550

[12] T. Addabbo, M. Alioto, A. Fort, S. Rocchi, V. Vignoli, "The digital tent map: Performance analysis and optimized design as a low-complexity source of pseudorandom bits," IEEE Transactions on Instrumentation and Measurement, vol. 55, no. 5, pp. 1451-1458, 2006. doi:10.1109/TIM.2006.880960

[13] M. A. -Chenaghlu, M. A. Balafar, M. R. F. -Derakhshi, "A novel image encryption algorithm based on polynomial combination of chaotic maps and dynamic function generation," Signal Processing, vol. 157, pp. 1-13, 2019. doi:10.1016/j.sigpro.2018.11.010

[14] A. V. Tutueva, E. G. Nepomuceno, A. I. Karimov, V. S. Andreev, D. N. Butusov, "Adaptive chaotic maps and their application to pseudorandom numbers generation," Chaos, Solitons & Fractals, vol. 133, pp. 109615, 2020. doi:10.1016/j.chaos.2020.109615

[15] I. Koyuncu, "Implementation of high speed tangent sigmoid transfer function approximations for artificial neural network applications on FPGA," Advances in Electrical and Computer Engineering, vol. 18, no. 3, pp. 79-86, 2018. doi:10.4316/AECE.2018.03011

[16] A. Rukhin, J. Soto, J. Nechvatal, M. Smid, E. Barker, "A statistical test suite for random and pseudorandom number generators for cryptographic applications," Technical report, Booz-allen and hamilton inc mclean va, 2001. doi:10.6028/NIST.SP.800-22

[17] P. F. Verhulst, "Resherches mathematiques sur la loi d'accroissement de la population," Nouveaux memoires de l'academie royale des sciences, vol. 18, pp. 1-41, 1845

[18] S. M. Ulam, "On combination of stochastic and deterministic processes," Bull. Amer. Math. Soc., vol. 53, pp. 1120, 1947

[19] Y. S. Kim, W. W. Zachary, "The physics of phase space: Nonlinear dynamics and chaos, geometric quantization, and wigner function," Springer, vol. 278, 2006

[20] J. L. Valtierra, E. T. Cuautle, Esteban, Á. R. Vázquez, "A switched capacitor skew tent map implementation for random number generation," International Journal of Circuit Theory and Applications, vol. 45, no. 2, pp. 305-315, 2017. doi:10.1002/cta.2305

[21] Y. Hu, C. Zhu, Z. Wang, "An improved piecewise linear chaotic map based image encryption algorithm," The Scientific World Journal, vol. 2014, 2014. doi:10.1155/2014/275818

[22] E. Barker, L. Feldman, G. Witte, "Recommendation for random number generation using deterministic random bit generators," National Institute of Standards and Technology, 2015. doi:10.6028/NIST.SP.800-90Ar1

[23] M. Tuna, I. Koyuncu, C. B. Fidan, İ. Pehlivan, "Real time implementation of a novel chaotic generator on FPGA," in Proc. 23rd Signal Processing and Communications Applications Conference (SIU). IEEE, 2015, pp. 698-701. doi:10.1109/SIU.2015.7129921

[24] H. Guntur, J. Ishii, A. Satoh, "Side-channel attack user reference architecture board SAKURA-G," in Proc. 3rd Global Conference on Consumer Electronics (GCCE), IEEE, 2014, pp. 271-274. doi:10.1109/GCCE.2014.7031104

[25] M. Tuna, İ. Koyuncu, M. Alçin, "Fixed and floating point-based high-speed chaotic oscillator design with different numerical algorithms on FPGA," 2018. doi:10.1016/j.micpro.2019.02.012

[26] K. Pearson, "Contributions to the mathematical theory of evolution," Philosophical Transactions of the Royal Society of London. A, vol. 185, pp. 71-110, 1894. doi:10.1098/rsta.1894.0003

[27] L. Pace, Chi-square tests, Beginning R. Apress, Berkeley, CA, Springer, pp. 217-228, 2012. doi:10.1007/978-1-4302-4555-1_15

[28] D. C. Howell, "Chi-Square Test: Analysis of Contingency Tables," 2011. doi:10.1007/978-3-642-04898-2_174

[29] G. Chen, Y. Mao, C. K. Chui, "A symmetric image encryption scheme based on 3D chaotic cat maps," Chaos, Solitons & Fractals, vol. 21, no. 3, pp. 749-761. 2004. doi:10.1016/j.chaos.2003.12.022
work, will focus on the design and implementation of efficient stream and block ciphers for securing images and videos.

REFERENCES

[1] C. E. Shannon, "Communication theory of secrecy systems," The Bell system technical journal, vol. 28, no. 4, pp. 656-715, 1949. doi:10.1002/j.1538-7305.1949.tb00928.x

[2] L. Kocarev, "Chaos-based cryptography: a brief overview," IEEE Circuits and Systems Magazine, vol. 1, no. 3, pp. 6-21, 2001. doi:10.1109/7384.963463

[3] M. Andrecut, "Logistic map as a random number generator," International Journal of Modern Physics B, vol. 12, no. 09, pp. 921-930, 1998. doi:10.1142/S021797929800051X

[4] M. Alioto, S. Bernardi, A. Fort, S. Rocchi, V. Vignoli, "Analysis and design of digital PRNGS based on the discretized sawtooth map," in Proc. 10th IEEE International Conference on Electronics, Circuits and Systems, 2003. ICECS 2003, IEEE, 2003, pp. 427-430

[5] M. E. Yalcin, J. A. Suykens, J. Vandewalle, "True random bit generation from a double-scroll attractor," IEEE Transactions on Circuits and Systems I: Regular Papers, vol. 51, no. 7, pp. 1395-1404, 2004. doi:10.1109/TCSI.2004.830683

[6] M. A. Zidan, A. G. Radwan, K. N. Salama, "Random number generation based on digital differential chaos," in Proc. 54th International Midwest Symposium on Circuits and Systems (MWSCAS), IEEE, 2011, pp. 1-4. doi:10.1109/MWSCAS.2011.6026266

[7] O. Jallouli, S. El Assad, M. Ghetto, R. Lozi, "Design and analysis of two stream ciphers based on chaotic coupling and multiplexing techniques," Multimedia tools and applications, vol. 77, no. 11, pp. 13391-13417, 2018. doi:10.1007/s11042-017-4953-x

[8] F. Dridi, S. El Assad, W. E. Youssef, M. Machhout, "FPGA Implementation of a pseudo-chaotic number generator and evaluation of its performance," in Proc. 2019 International Conference on Internet of Things, Embedded Systems and Communications (IINTEC), IEEE, 2019, pp. 231-234. doi:10.1109/IINTEC48298.2019.9112124

[9] G. Gautier, M. Le Glatin, S. El Assad, W. Hamidouche, O. Deforges, S. Guilley, A. Facon, "Hardware implementation of lightweight chaos-based stream cipher", in Proc. The Fourth International Conference on Cyber-Technologies and Cyber-Systems (CYBER 2019), Porto, Portugal, 2019, pp. 37-40

[10] S. El Assad, H. Noura, I. Taralova, "Design and analyses of efficient chaotic generators for crypto-systems," in Proc. Advances in Electrical and Electronics Engineering-IAENG Special Edition of the World Congress on Engineering and Computer Science 2008, IEEE, 2008, pp. 3-12. doi:10.1109/WCECS.2008.9

[11] L. Kocarev, G. Jakimoski, "Pseudorandom bits generated by chaotic maps," IEEE Transactions on Circuits and Systems I: Fundamental Theory and Applications, vol. 50, no. 1, pp. 123-126, 2003. doi:10.1109/TCSI.2002.804550

[12] T. Addabbo, M. Alioto, A. Fort, S. Rocchi, V. Vignoli, "The digital tent map: Performance analysis and optimized design as a low-complexity source of pseudorandom bits," IEEE Transactions on Instrumentation and Measurement, vol. 55, no. 5, pp. 1451-1458, 2006. doi:10.1109/TIM.2006.880960

[13] M. A. -Chenaghlu, M. A. Balafar, M. R. F. -Derakhshi, "A novel image encryption algorithm based on polynomial combination of chaotic maps and dynamic function generation," Signal Processing, vol. 157, pp. 1-13, 2019. doi:10.1016/j sigpro.2018.11.010

[14] A. V. Tutueva, E. G. Nepomuceno, A. I. Karimov, V. S. Andreev, D. N. Butusov, "Adaptive chaotic maps and their application to pseudorandom numbers generation," Chaos, Solitons & Fractals, vol. 133, pp. 109615, 2020. doi:10.1016/j chaos.2020.109615

[15] I. Koyuncu, "Implementation of high speed tangent sigmoid transfer function approximations for artificial neural network applications on FPGA," Advances in Electrical and Computer Engineering, vol. 18, no. 3, pp. 79-86, 2018. doi:10.4316/AECE.2018.03011

[16] A. Rukhin, J. Soto, J. Nechvatal, M. Smid, E. Barker, "A statistical test suite for random and pseudorandom number generators for cryptographic applications," Technical report, Booz-allen and hamilton inc mclean va, 2001. doi:10.6028/NIST.SP.800-22

[17] P. F. Verhulst, "Resherches mathematiques sur la loi d'accroissement de la population," Nouveaux memoires de l'academie royale des sciences, vol. 18, pp. 1-41, 1845

[18] S. M. Ulam, "On combination of stochastic and deterministic processes," Bull. Amer. Math. Soc., vol. 53, pp. 1120, 1947

[19] Y. S. Kim, W. W. Zachary, "The physics of phase space: Nonlinear dynamics and chaos, geometric quantization, and wigner function," Springer, vol. 278, 2006

[20] J. L. Valtierra, E. T. Cuautle, Esteban, Á. R. Vázquez, "A switched capacitor skew tent map implementation for random number generation," International Journal of Circuit Theory and Applications, vol. 45, no. 2, pp. 305-315, 2017. doi:10.1002/cta.2305

[21] Y. Hu, C. Zhu, Z. Wang, "An improved piecewise linear chaotic map based image encryption algorithm," The Scientific World Journal, vol. 2014, 2014. doi:10.1155/2014/275818

[22] E. Barker, L. Feldman, G. Witte, "Recommendation for random number generation using deterministic random bit generators," National Institute of Standards and Technology, 2015. doi:10.6028/NIST.SP.800-90Ar1

[23] M. Tuna, I. Koyuncu, C. B. Fidan, İ. Pehlivan, "Real time implementation of a novel chaotic generator on FPGA," in Proc. 23rd Signal Processing and Communications Applications Conference (SIU). IEEE, 2015, pp. 698-701. doi:10.1109/SIU.2015.7129921

[24] H. Guntur, J. Ishii, A. Satoh, "Side-channel attack user reference architecture board SAKURA-G," in Proc. 3rd Global Conference on Consumer Electronics (GCCE), IEEE, 2014, pp. 271-274. doi:10.1109/GCCE.2014.7031104

[25] M. Tuna, İ. Koyuncu, M. Alçin, "Fixed and floating point-based high-speed chaotic oscillator design with different numerical algorithms on FPGA," 2018. doi:10.1016/j.micpro.2019.02.012

[26] K. Pearson, "Contributions to the mathematical theory of evolution," Philosophical Transactions of the Royal Society of London. A, vol. 185, pp. 71-110, 1894. doi:10.1098/rsta.1894.0003

[27] L. Pace, Chi-square tests, Beginning R. Apress, Berkeley, CA, Springer, pp. 217-228, 2012. doi:10.1007/978-1-4302-4555-1_15

[28] D. C. Howell, "Chi-Square Test: Analysis of Contingency Tables," 2011. doi:10.1007/978-3-642-04898-2_174

[29] G. Chen, Y. Mao, C. K. Chui, "A symmetric image encryption scheme based on 3D chaotic cat maps," Chaos, Solitons & Fractals, vol. 21, no. 3, pp. 749-761. 2004. doi:10.1016/j chaos.2003.12.022