Abstract
This paper presents a 64-bits chaotic block cryptosystem, which uses as noise generator one-dimensional chaotic maps with 8 bits sub-blocks data. These chaotic maps use a control parameter that allows them to operate in the chaotic region, which guarantees that each sub-block of data is mixed with unpredictable random noise. Statistical mechanic tools such as: bifurcation diagram, Lyapunov exponent, and invariant distribution have been used to analyze and evaluate the behavior of the noise generator. The cryptosystem has been evaluated using concepts of information theory, such as: entropy, as a diffusion measure in the encryption process, and mutual information as a measure of relationship between plaintext and its respective cryptogram. The noise generator has been used on the non-balanced and dynamic network proposed by L. Ko-carev. The randomness of the cryptograms has been evaluated using the NIST random tests. The proposed cryptosystem can be a component in software applications that provides security to stored or communicated information. The proposed cryptosystem has a similar behavior to the one of currently used cryptosystems and it has been designed with chaotic sequence generators, which are aperiodic by definition.
Keywords: Chaotic cryptosystem, Block cryptosystem, Chaotic maps.
Introduction
The term chaos in scientific terms was popularized after 1961, it is related to mathematics and physics and it is connected to some kind of unpredictable behavior of Dynamic Systems (DS). A chaotic system (CS) is a non-linear, deterministic DS that has sensitive dependence on initial conditions, and presents an evolution through a phase space that seems to be random. Mathematicians agree that, for the special case of iterated functions, there are three common characteristics of the chaos [1]: Sensitive dependence on initial conditions, mixing, and dense periodic points. These properties are relevant for cryptographic applications, since it is very difficult to establish long-term predictions of chaotic systems [2]. Examples of discrete, deterministic and non-linear dynamic systems are the one-dimensional (1-D) chaotic maps. They offer identically distributed binary sequences and they can be used as deterministic generators of unpredictable sequences. Therefore, 1-D chaotic maps can be used in cryptographic, steganographic and digital marking systems. A 1-D chaotic map is specified by the following iterated expression:
Whereis a non linear function, I denotes the interval in which the function is defined, n represents the actual iteration index of t (), x0 is the initial condition and H is the control parameter of the function.
1-D chaotic maps generate orbits, which are defined by,
Note that each generated orbit depends on the initial condition and the control parameter n of the used map. In this way, it is possible that these orbits tend to one or more fixed values, called map attractors. However, there are other values that are repellers and will produce unstable orbits in the map. Control parameter n of the map T () defines that a point is an attractor or repeller.
Works related to the application of chaotic map on cryptographic systems can be found in [3], [4], [5], [6] and [7]. Therefore, chaos theory is currently used in the analysis and design of cryptosystems that provide technological solutions for information protection.
Chaotic Block Cryptosystem
Description
The block cryptosystem presented here, is based on G. Jakimoski and L. Kocarev proposal [3]. They suggest the use of logistic map in a balanced and dynamic ciphering structure that processes 64 bits blocks, considering 8 sub-blocks of 8 bits each one. The ciphering process consists of 8 rounds over the same data block Bj with j = 0, 1, 2, …, 7. The block of the plaintext is B0. The output block in a round is the input block of the following round, except in the last one, in which the output block corresponds to the ciphered block of the cryptogram. G. Jakimoski and L. Kocarev suggest to use a scaled and discretized logistic map in the noise function of the cryptosystem, according to the following equations:
The valueswith i = 1, 2, …, r, and j = 0, 1, 2, …, 7 represent each 8- bits sub-block that conform the block Bi, which is the transformed version of Bi.]. In this way, Br will be the ciphered block of every block B0 from the plaintext. In the other hand, chaotic functions, receive and transform the sum of one or more sub-blocks with its corresponding sub key, except f0. The function © represents the module 2 bit to bit sum considering words of 8 bits. Each round i is controlled by an 8 bytes sub-key zi-1t k-1 and each function f has the form fj=(x0,…,Xj, Zj) and generate noise that will be applied in each round to each plaintext sub-block.
Use of Logistic Map
The logistic map is a chaotic system that generates sequences that exhibit a reproducible chaotic behavior. Moreover, using the bifurcation diagram and Lyapunov exponent (see Fig 1), the disadvantages of logistic map can be shown when it is used in cryptographic systems. These disadvantages are the presence of stability islands, in which the logistic map produces periodic signals into the chaotic region. This condition occurs when X < 0 (see Fig 1a), but when X > 0 the logistic map will produce aperiodic signals. These stability islands appear according to Charkovsky sequence [8].
Fig. 1. Behavior of logistic map. a) Bifurcation diagram in b) Bifurcation diagram in N (scaled and discretized logistic map) and c) Lyapunov exponent in
Use of Piecewise Linear Maps
There are other 1-D chaotic maps that do not have stability islands and consequently they do not produce periodic signals into the chaotic region. These 1-D chaotic maps can be used as noise functions in cryptosystems, and they are known as piecewise linear maps. Examples of these maps are Bernoulli and Tent maps. When these maps are scaled and discretized, a non chaotic map is obtained, and the periodicity evidence can be obtained using its bifurcation diagram (see Fig. 2). Note that when an 8 bits precision is used in the tent map, the interval [0, 255] is not covered by the bifurcation diagram. There are few bands in which the energy is concentrated (see Fig 2a). In Fig 2c the statistical distribution of tent map is shown when ^ = 0.8, which is congruent with Fig. 2a. However, when the 16 bits precision is used in the tent map, the bifurcation diagram and statistical distribution is better respect to the 8 bits precision alternative (see Fig. 2b and 2d).
Fig. 2. Scaled and discretized tent map, a) 8 bits precision and i e [0.799, 0.801], b) 16 bits precision and i e [0.799, 0.801], c) Statistical distribution using an 8 bits precision and i = 0.8 and d) Statistical distribution using a 16 bits precision and i = 0.8.
Chaotic Noise Generator on Cryptosystem
Due to the problems encountered in the use of chaotic maps in noise generation for cryptographic systems, in this paper an alternative is proposed which does not require that the chaotic map is scaled and discretized. This alternative define for the chaotic map f; [a,b]^[a,b] e ^ a regular partition of S intervals, in which each interval At with t = 0, 1, 2, …S has a length given by L(At) = L = (b-a)/S. The following membership function is defined:
In this way, the new orbitis constructed from the chaotic orbitaccording to the following expression:
Where at represents the character t in the Extended ASCII alphabet. For the presented cryptosystem a tent map has been used, which is defined by the following equation:
Parameter jue [0, 1] and the initial condition x0 are known but arbitrary selected. Thus, u and x0 could be considered a key in the encryption process. Figure 3 shows the bifurcation diagram for a family of orbits {fpN} for a control parameter i 6 [0.799, 0.801].
Fig. 3. Zoom on the bifurcation diagram for the family of orbits with m = 1, 2, 3, …, when the tent map was not scaled and discretized and i 6 [0.799, 0.801]
Chaos Annulling
When the 1-D chaotic maps are used in a computer, there are problems that must be considered. There is at least one initial condition for which chaos is not only sustained but also collapsed; this is an interesting result, and it can be noticed, that at the parameter value for which this occurs (u= 4, x0 = 0.5 for logistic map), generates a condition called "chaos annulling trap" or CAT. CAT condition can be achieved as a result of the rounding off done by the computer; due to it, IEEE recommends calculations in double precision. In similar way, there are other x0 values that produce a similar condition, which is called "chaos fixed trap" or CFT. There are two methods to determine the initial condition that cause either a CAT or a CFT condition for chaotic map: Analytic and brute force method [9]. Additionally, when a 1-D chaotic map is intended to be used as noise function in stream or block cryptosystems, a scaled and discretized version of the chaotic map must be considered, which is not necessarily a chaotic map, and therefore this condition must be analyzed.
Cryptosystem Behavior Analysis
The proposed algorithm evaluation was done using essentially three concepts: the entropy and randomness of the cryptograms and the mutual information of the encryption process. For this evaluation 5 files with different formats and sizes were used, and the proposed cryptosystem was compared with common cryptosystems as AES and IDEA.
The entropy is used as a measure of the message diffusion by the encryption process. So that, if the cryptogram entropy is maximum, it means that the cryptogram will be able to have a statistical distribution very near to the uniform distribution. This condition seeks to affect the statistical distribution of plaintext, and thus the cryptogram will achieve the state of greatest uncertainty. In the calculations a maximum entropy HMAX = 8 has been considered for the cryptograms. Table 1 shows the results of the entropy for each cryptogram.
Mutual information measures the amount of information that contributes on a variable, the knowledge of another one. In this case, the mutual information is used as a measure of the relationship between plaintext and its respective cryptogram (see Table 2). A cryptosystem can be considered safe if the amount of information contributed by the knowledge of the cryptogram C in the entropy of the plaintext M is zero.
The randomness of the produced cryptograms has been evaluated using the NIST random tests [10]. Table 3 shows the results of applying the suite of NIST tests to a specific file, which was ciphered with each one of the different cryptosystems. In order to be able to apply the tests, the cryptosystems were binarized in a stream of 100 million bits. Note that proposed cryptosystem was successful in all the NIST SP800-22 test suite cases; this means that the cryptogram has the appearance of a random sequence.
Table 1. Entropy of the cryptograms using the proposed, AES and IDEA cryptosystems
|
Entropy |
|||
File type |
Plaintext |
Proposed |
AES |
IDEA |
|
|
cryptosystem |
|
|
TXT |
5.0802508 |
7.999173637 |
7.9989214 |
7.9992133 |
DOC |
5.8174680 |
7.999426499 |
7.9994851 |
7.9995290 |
RTF |
3.5727449 |
7.999939016 |
7.9999467 |
7.9999444 |
PPT |
6.6895915 |
7.999671958 |
7.9995576 |
7.9996626 |
XML |
5.4487835 |
7.999824941 |
7.9998163 |
7.9998091 |
Table 2. Mutual information of the proposed, AES, and IDEA cryptosystems
|
Mutual Information |
||
File type |
Proposed |
AES |
IDEA |
|
cryptosystem |
|
|
TXT |
0.069618783 |
0.0710524 |
0.0695141 |
DOC |
0.144927532 |
0.1434934 |
0.1449023 |
RTF |
0.004785542 |
0.0047777 |
0.0047549 |
PPT |
0.100683255 |
0.1013163 |
0.1014454 |
XML |
0.017484572 |
0.0177723 |
0.0177751 |
Table 3. Results of NIST SP800-22 Statistical tests
Results of NIST Pseudorandom tests |
||||
|
P-Value |
|
||
Test |
Proposed Cryptosystem |
AES |
DES |
Review |
Frequency |
0.5955 |
0.9463 |
0.0155 |
Approved |
Block-Frequency |
0.3669 |
0.4559 |
0.7399 |
Approved |
Cumulative-sums Forward |
0.9357 |
0.924 |
0.3504 |
Approved |
Cumulative-sums Reverse |
0.7197 |
0.7791 |
0.07571 |
Approved |
Runs |
0.9357 |
0.9558 |
0.2368 |
Approved |
Longest-Runs of Ones |
0.6579 |
0.7597 |
0.6371 |
Approved |
Rank |
0.3505 |
0.3504 |
0.319 |
Approved |
Spectral FFT |
0.0428 |
0.0757 |
0.2896 |
Approved |
Overlapping-templates |
0.7792 |
0.3838 |
0.419 |
Approved |
Non-Overlapping-templates |
0.4461 |
0.5749 |
0.3838 |
Approved |
Universal |
0.3345 |
0.6786 |
0.924 |
Approved |
Approximate Entropy |
0.4012 |
0.7597 |
0.3504 |
Approved |
Random-Excursions |
0.5047 |
0.02818 |
0.2492 |
Approved |
Random-Excursions-Variant |
0.3789 |
0.1005 |
0.1453 |
Approved |
Serial |
0.8669 |
0.6371 |
0.01559 |
Approved |
Conclusions
In this paper, it is proposed a cryptosystem that includes pseudorandom sequences generators using 1-D chaotic maps. These generators have been built with piecewise linear maps because they do not have stability islands in the chaotic region. The partition made on the definition interval of the 1-D chaotic map and its association with the Extended ASCIII alphabet avoids the periodicity problems in the generated sequences. These problems are derived from the scaling and discretization of the chaotic map used in cryptosystems. In summary, the implementation of a block chaotic cryptosystem is shown, and its behavior is analyzed using the concepts of information theory and the suite of random test of NIST SP800-22. The proposed chaotic crypto-system was made using a 1-D chaotic tent map, which has not stability islands into the chaotic region. The entropy and mutual information results show that the proposed cryptosystem is a good alternative to affect the syntactic, semantic and the statistical distribution of a plaintext. Cryptosystems as the one proposed in this paper can be useful components in software applications that provide security to stored or communicated information, because they have similar behavior to the one of the algorithms currently used, and they are designed with chaotic sequence generators, which are aperiodic by definition.