Abstract

The scintillating technological improvements have changed the process of communication in all parts of the world. Shopping, banking, instant communication, and so on can be operated online and do not care about the linkage of those Internet communications. Because of simple chaotic structure, discrete nature, less arithmetic computation, and high complexity, low-dimensional chaotic systems such as a logistic map and tent map are more attractive than a high-dimensional chaotic system. To overcome the disadvantages of a low-dimensional chaotic map with a finite precision in chaos-based application, the chaotic map with a feedback shift register (CMFSR) is proposed. The related properties and performance associated with CMFSR are analysed. The relationship among the precision of the system, the architecture, and the performance are discussed. The experiments about new pseudorandom number generator (PRNG) based on CMFSR show that our scheme is simple, secure, and easy to accomplish. Experiments show that the proposed architecture of CMFSR is secure for random number generation.

1. Introduction

The digitalized message and data transmitted on the Internet becomes a major and essential part of information in the present world. The appearance of intruders in the communication between people need security solutions to protect the information in transmission. It is very crucial to protect the message from the sender to the receiver. A mathematical theory of cryptography plays a significant role in information security [1, 2]. One of the crucial common alikeness in traditional encryption schemes such as Data Encryption Standard [3] (DES), International Data Encryption Algorithm [4] (IDEA), and Advanced Encryption Standard [5] (AES) is to have the key to encrypt or decrypt the information. All of the encryption schemes mentioned are the block cipher. In the last decade, cryptography based on the chaotic system has received considerable attention from the security community and research because of the sensibility to initial conditions, chaotic system parameters, and pseudorandom parameters. All these properties can be used to design encryption algorithms with perfect complexity and excellent confusion and diffusion process.

Pseudorandom number generators (PRNGs) [68] are a vital area of research due to its ubiquitous use [9] in a variety of applications such as cryptography. In particular, the chaotic map has been designed for many PRNGs. Some researchers use the chaotic system to build the cryptographic primitives such as public-key encryption algorithm and hashing functions. The sequence of a random number is said to be pseudorandom although the sequences seem to be random. The true random number generator (TRNG) is infinite, aperiodic, uncorrelated, and efficient for hardware and software [10]. It is hard to use the TRNG in modern digital devices because of infinite precision.

In the literature, many algorithms are designed to produce PRNS with numerical methods such as linear congruential generator, midsquare method generator, or Fibonacci generator. However, these generators have proven to be not safe. Chaotic-based nonlinear functions because of their high sensitivity to initial conditions, aperiodicity, and unpredictability are used for PRNGs.

Chaotic systems are classified into two types: continuous system and discrete system. In the real world, most models of nature are continuous such as variation of population or climate. For some applications on digital devices, the continuous chaotic system should be discretized. However, the performance of the discrete chaotic system degrades because of the finite precision effect. Some research studies do lots of investigation to improve the performance in low-dimensional systems [1114] and high-dimension systems [15, 16]. Hua et al. [13, 14] proposed a novel and efficient low-dimensional chaotic system with high complexity. One dimension chaotic map such as the logistic map or tent map is efficient and straightforward theoretically and easy to realize in digital devices. However, when chaos is realized in digital devices such as CPU, MCU, or FPGA, the chaotic property will degrade with finite precision. Thus, the chaotic map with finite precision will fall into a cycle or some static point. Moreover, it will lead to serious negative result on some finite precision chaotic application [17].

But one dimension chaotic map cannot be infinite or aperiodic when implemented with a finite precision hardware system such as a computer or FPGA [18]. Persohn and Povinelli [19] analyzed the PRNG based on logistic by finite precision floating-point representation. Real number implementations on finite precision are detrimental to the periodicity of the chaotic PRNGs. Sayed et al. [20] gave a methodology for fixed-point simulation of the generalized one-dimensional logistic map with the signed parameter and implemented in FPGA. The influence of a finite precision should be considered and the trade-off between computation performance and randomness is the key to design a pseudorandom number generator. Fan and Ding [21] analyze the logistic chaotic sequences with different computational precision thought autocorrelation function, permutation entropy, and statistical analysis. For every sequence of period , the modified sequences have the same period length . Che at el. [22] proposed a PRNG based on a digitalized modified logistic map, where the parameter of logistic map . There are two multiplications needed in the system. The input of the logistic map is the combination of the LFSR and logistic map. The architecture of LFSR is not discussed clearly and not altered by the logistic map to improve it complexity. Some chaotic maps [23] are so complicated to calculate in floating-point notation which leads to massive latency in digital devices such as FPGA or MCU. Elmanfaloty and Abou-Bakr [24] discussed and proposed a one dimension chaotic map with finite precision implementation. But this kind of PRNG is only suitable for a tent map not for other one dimension chaotic map.

This paper is organized as follows. In Section 2, the classic traditional one dimension chaotic maps are introduced. Section 3 discusses the influence of finite precision on the discrete chaotic map on finite precision. A short period in the logistic map with finite precision comes out. It cannot be used in the most applications. So, an enhanced CMFSR is proposed in Section 4. The feedback shift register is used to improve the periodicity of the sequence. In Section 5, the logistic map and tent map with the feedback shift register are chosen to analyse the performance. Moreover, the statics and analysis of finite precision CMFSR are presented. Finally, Section 6 summarizes the contribution of this paper.

2. Traditional Chaotic Map

This section introduces the definition of the logistic map and tent map which are used in the following section.

2.1. Logistic Map with Finite Precision

The logistic map [25] is a very simple one-dimensional map widely used in growth biological population, complex system, pseudorandom number generator, and some cryptography. The logistic map is a discrete-time dynamic system that is described mathematically as follows:

Here, is the initial value which is the seed of the logistic map. Then, the can be generated after times iteration. And is also a number between zero and one according to equation (1) and the value of the parameter are those in the interval [0, 4]. The system is chaotic if .

In statistics, we describe a random movement with the word ergodicity to describe the statistic distribution of the state value of the system. Furthermore, the ergodicity can be described as the statistical probability distributions of the state value. Logistic maps with different system parameters are shown in Figure 1. All these three logistic maps with different parameters run with the same initial value after 1000 iterations.

It can be seen from Figure 1 that the range of the x-value is in [0, 1] when , the range of the x-value is reduced with the decrease of the parameter value. It means that the ergodicity of the logistic map in interval [0, 1] gets better with the increase of the parameter .

The distributions of these three logistic maps are shown in Figure 1. The distribution range of the logistic map is expanded with the increase of the parameter . But the distribution is not even for each x-value because of the architecture of the logistic system. Graphic iterations of the logistic map with different parameters are shown in Figure 1(a) when , Figure 1(b) when , and Figure 1(c) when . The distribution of the logistic map with different parameters is shown in Figures 1(d)1(f) separately.

2.2. Tent Map with Finite Precision

The tent map is also a one-dimensional chaotic map. The definition of the tent map is shown as follows:where the initial condition of the chaotic tent map is and is the control parameter that lies in the range of [0, 2]. The tent map is a one-dimensional chaotic map. Moreover, it shows the chaotic behaviour when the control parameter value is close to 2. The distribution of the chaotic tent map with varying control parameter value, as shown in Figure 2. The x-axis is the value of and the y-axis is the frequency counts. Figures 2(a)2(c) show the distribution of the tent map in a different parameter.

3. Influence of Finite Precision on Discrete Chaotic Map

Chaotic systems are some mathematical equations/models derived from the rules of chaotic special behaviours. The logistic map is used to simulate the population growth [26] and a tent map is used to describe the stretching and folding of a one-dimensional elastic band of length one [27]. Theoretically, a chaotic system’s attractors are locally divergent and globally convergent. However, all the software/hardware platforms cannot own infinite precision. These withdraw causes negative impacts on some chaos-based applications. Some chaos-based applications based on the finite precision chaotic system are not secure because of the chaos degradation [28]. The periodicity, the orbit, and finite states of the chaotic system could be calculated and attacked by a high-performance computer. In this section, the logistic map is selected to analyze the performance of the one-dimensional chaotic map with finite precision.

3.1. Logistic Map with Finite Precision

In Section 2, equation (1) is the definition of the logistic. It should be noted that the continuous logistic map is real. We can measure and analyze the property of the logistic map through the mathematical method or analogue circuit. But it cannot be used on a digital platform, so finite resolution of number using a binary representation is proposed for these applications.

So, the value of the logistic map with an infinite precision can be written in a binary format as follows:

A L-bits binary is used to represent , and then with L-bit precision can be written as follows:

In the rest of the paper, we let , and the logistic map with L-bit precision is given bywhere is the iterated variable of the logistic map with L-bit precision, is a control parameter, and Here symbol means a binary sequence shifts to right bits. According to (5), we can with L-bit precision for the next iteration. In order to evaluate the performance degradation with finite precision, some experiments have been carried out for different precision.

3.2. Distribution

The histogram is a graphical representation of the distribution of the logistic map output. And an equal probability of each series can generate a uniform distribution. Figure 3 shows the distribution of the finite precision logistic map. Figures 3(a)–3(d) are the logistic map value distribution in different precision. It shows that distribution turns to flat and even with the increase of the precision of the logistic map. But the distribution of the value cannot be even because of the attribution of the logistic map.

According to equation (4), we set equal 4, 8, 12, and 16 separately and initial value . Then, can be obtained after n times iteration. With the increase of precision, the distribution is not even for all values of the logistic map although the distribution becomes better.

Figure 4 shows the periodicity with the same initial value for different precision. It shows that the length of cycle is varied randomly with a different precision. The cycle of the 7-bit logistic map is the longest compared to the other logistic map. And the number of iterations before cycle comes out is also random.

To evaluate the relationship between precision and period, we set precision L from 4 to 56, initial value of the system is 1, and control parameter is 4. Figure 5 shows the iteration times and period for all the logistic map with a different precision. The horizontal axis of the scatter plot denotes the precision of a logistic map from 4 to 27 shown in Figure 5(a) and 28 to 56 shown in Figure 5(b). And the vertical axis denotes the number of samples generated with equation (4). The blue bar in the figure denotes the iteration times before the logistic map running into the periodic orbit. And the yellow bar shows the period length of the logistic map with a concrete value on the top of a bar. By experimenting with a different precision, the period length of logistic system does not increase with the precision of the logistic.

4. Chaotic Map with Feedback Shift Register

This section proposes an architecture of CMFSR and discusses its properties and analyzes its chaotic behaviour.

4.1. Structures of CMFSR

There are four parts in the structure of the CMFSR which is shown in Figure 6. Part 1 is a logistic map system with special precision. Part 2 is a feedback shift register with L shift unit. Part 3 is a control unit to control the operation of the value of the shift register. Part 4 is a combination module to combine the output from part 3.

4.1.1. Part 1: Chaotic Map

Part 1 is a discrete chaotic map with L-bit precision. The parameter of the system is , the input of chaotic map is the L-bit binary from part 4, and the output of part 1 is also L-bit binary as the input of the shift register.

Mathematically, the proposed part 1 with the logistic map in L-bit precision can be defined as equation (5). The value range of control parameter is [3.5699456, 4], then the logistic map runs into a chaotic state. The closer the parameter reaches 4, the higher the Lyapunov exponent is and the better the chaotic property is.

As for the tent map [29], the tent map works in the chaotic state with the control parameter in the range of .

4.1.2. Part 2: Feedback Shift Register

Part 2 is a feedback shift register (FSR) with k units and each unit has L-bit registers which can increase the linear complexities of the output sequence. The input of FSR is which is an L-bit binary, and the output of the logistic map. And an L-bit binary from is the output of Part 2 and it is also the output of the system. The value of the shift registers shifts from right to left in an order which can be written as follows: . And the shift registers move when the output of Part 1 is generated.

4.1.3. Part 3: Control Module

Part 3 is a control module to control the movement of the L-bit binary series. A control module can decide whether the series is passed to part 4 and how to change a L-bit binary series to get the high performance. will transform to according to the value of the control module parameter . Then, . Here, parameter means left-cyclic shift bits.

Let , then is the set of all binary sequence of length .

. There are bits binary sequence and is one of them.

Let be the output after left-cyclic shift operation, where “” is a notation for a left-cyclic shift. We have

To each , associate the polynomial as follows:

Notice that

Consequently, multiplying by corresponds to a cyclic shift through m positions to the right. So, the can be computed according to equation (8).

4.1.4. Part 4: Combination Module

Part 4 is a combination module to combine the output of the part 3. The input of part 3 is k L-bit binary series and the output of part 4 should also be L-bit binary series. The equation of part 4 can be written as follows:

In equation (7), is the L-bit binary series, is the number of the shift register, and is used to generate the L-bit binary series for part 1 to do the next iteration.

5. Performance Analysis

CMFSR is a pseudorandom number generator with the chaotic map and feedback register. First, the architecture of the CMFSR influences the performance of output sequence. Moreover, we use two architecture: logistic map with feedback shift register (LMFSR) and tent map with feedback shift register (TMFSR) and evaluate the performance of them. Second, the precision of the CMFSR can also decide the performance of the randomness and period of the sequence.

To evaluate the performance of CMFSR architecture, we give several types of architecture to evaluate the influence of arch and decide what kind of architecture is best and analysis the reason. Logistic map with a feedback shift register (LMFSR) is used to evaluate the performance of the proposed method. The output of part 1 is as the input of the part 2. The amount of the shift registers or the operation in part 2 can influence the period, autocorrelation, and NIST performance.

5.1. Architecture of the Control Module

Some typical kinds of architecture in part 3 are shown in Table 1. Let denote the cyclic left shift operation of a sequence, which is defined by

Let , where n means a cyclic shift left for n positions maps the bit string into . If , that means that no matter what is. In Table 1, means disconnected and Code represents the combination state of each control module which is used to describe the operation of the shift register. For example, if we let Code = 0x123, then .

5.2. Analysis of the Experiment

The result of the exams in Figure 7 shows the hist of the result with a different initial value. Figure 7(a) is the hist of LMFSR with the random initial value, and Figure 7(b) is the other hist of LMFSR with the initial value generated by the iteration of the logistic map.

Two shapes of the hist show that(1)The period of LMFSR has no relation with an initial value(2)The different outputs of LMFSR are uncorrelated

The maximum period of all these experiments is 65500 when code C = 0203. The whole length of feedback shift register is 16 bits, so the maximum length of the sequence should be .

Another test about LMFSR with 5 feedback shift register is performed, and the distribution about the period is shown in Figure 7(c) the maximum length of the sequence should be . The result of the LMFSR with 5 feedback shift register in Figure 7(c) shows that the maximum of the LMFSR is 1048486 with C = 1x220. It shows that the maximum of the LMFSR is close to the maximum of the n-bit feedback shift register.

Distribution of the value LMFSR generates is shown in Figure 8, where C = 0203. The horizontal axis of the scatter number is the value which the logistic map gets with 8-bit precision, and the vertical axis denotes the amount of the special value. The bar with different colors denotes the initial value of the logistic map. Figure 8 means no matter what the initial value is, the difference of the value distribution is almost within 0.5% which is accepted.

5.3. Entropy

In a stream cypher, the key is usually used to set the initial state of an automaton. Then, the automaton is used to make sure that the results from different initialization keys are diffused. Entropy is an important parameter to measure the randomness of the signal samples and is given by

For a truly random source consists of symbols, the is the probability of the sample value . Entropy will reach maximum value when . If precision of LMFSR is 8-bit, , then . Figure 9 is a chart about the entropy of LMFSR with a different initial value. The bar with different colors means the different initial values from 1 to 8. And the amount of iteration is shown on x-axis. From Figure 9(a) we can see that with the increase of the iteration, the entropy of LMFSR increases simultaneously. After 10000 iterations, entropy is almost 8 for different initial value.

5.4. PRNG Based on CMFSR

The complexity of the chaotic system and random number generator can be measured by using various approaches. In this section, we use the Lyapunov exponent, autocorrelation, and correlation to measure the modified chaotic system with the feedback shift register.

In order to improve the complexity of the chaotic system, we set and . So, there are 16 stages of 31-bit words in part 2 according to Figure 5, which is defined over . Zero stage and one stage in part 1 are not allowed in the stage because they will lead the logistic map to a fixed point. Both of them will be replaced by . A primitive feedback polynomial is used. According to primitive polynomial, stage 15, 13, 10, 4, and 0 are used in part 3. And the parameter in is modified after the perturbation of the chaotic system. For each , let , , , , and .

The precision of the chaotic map is 31-bits. Logistic map and tent map are both used to evaluate the performance of the proposed system.

5.4.1. Keyspace Analysis

The keyspace should be large enough to resist force attacks infeasible. For the CMFSR, the initial value of the chaotic map is -bit binary and -bit binary for the feedback shift register. So, the keyspace of LMFSR is . For instance, when calculation precision and 31 × 16 shift registers, then keyspace is which is much larger than the chaotic pseudorandom-number generator.

5.4.2. Autocorrelation Analysis

Autocorrelation test is used to check if there is a correlation between the bits of given sequence and bits of a shift version of the same sequence. An autocorrelation algorithm can be used to detect the periodicity of the times series. It is defined as follows:where denotes the autocorrelation function and is the amount of the values in the discrete chaotic sequence. According to the above theoretical basis, the autocorrelation test is down for a different logistic map with a different precision. Figure 10 shows the autocorrelation of the sequence generated by LMFSR in Figure 10(a) and TMFSR in Figure 10(b). As can be seen from the figure, the smaller the precision of the logistic map is, the denser the line of the autocorrelation is.

5.4.3. NIST Test

To evaluate the randomness of LMFSR, we use NIST test suit [30] that was designed specifically with cryptographic operation in mind. And the version of NIST we used is STS 2.1.2. The test suite consists of 15 test such as frequency test, run test, cumulative sums test, various variations on templates test, entropy test, serial test, or discrete Fourier transform test. These tests are developed to test the randomness of binary sequence produced by either hardware or software based on cryptographic random or pseudorandom number generators.

According to the NIST STS documentation, the sequences are considered to be uniformly distributed if . Based on result of the CMFSR shown in Table 1, not only LMFSR but also TMFSR, the proposed architecture of the chaotic map with the feedback shift register improves the complexity of the chaotic map with finite precision. We conclude that the proposed CMFSR generates the random binary sequences suitable for cryptographic applications.

5.4.4. Testu01 Test

TestU01 is used for testing. It is a software library which provides a collection of utilities to test the random number generator. And it can offer several batteries of the test. There are multiple tests for different performance aspects. Both the Small-Crush battery and the Crush battery are applied to check the randomness of the proposed CMFSR, where sequence with bits of numbers and bit of numbers are generated, respectively, for LMFSR and TMFSR. If , the associated test is a success. Any lying outside this range is considered as failure. Table 2 depicts the failure counts of tests in TestU01, which contain the comparisons with other PRNGs for classical logistic map, Addabbo’s system, and Li’s system. The result shows that the proposed CMFSR pass almost all the tests in Small-Crush and Crush batteries.

6. Conclusion

This paper presents the chaotic map with a feedback shift register. More precise results concerning the general behaviour of CMFSR are given and analyzed. Our main result concerns the relationship between the period and precision of CMFSR. Logistic map or tent map is a nonlinear module that works in a chaotic state. A feedback shift register is used to extend the periodicity of the finite precision logistic map. And the output of the feedback shift register is reorganized and moulded by the maximum number in a given precision. From the results proved here, we can get almost the maximum period which the feedback shift register can get. Because of the low hardware and software resource consumption, the feedback shift register is suitable to extend periodicity of the logistic map with finite precision. A well-designed CMFSR with the same precision compared to the logistic map has better performance. The proposed corresponding pseudorandom number generator is constructed and its randomness is evaluated via NIST SP800-22 and TestU01 test. The statistical results show that the proposed CMFSR has high reliability of randomness.

Data Availability

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

Conflicts of Interest

The authors declare no conflicts of interest.

Acknowledgments

This work was supported by the Natural Science Foundation of China (no. 61471158), “Modern Sensing Technology” Innovation Team Project of Heilongjiang Province (no. 2012TD007), and Scientific research project of basic scientific of Heilongjiang University (no. KJCX201904).