American Journal of Signal Processing
p-ISSN: 2165-9354 e-ISSN: 2165-9362
2012; 2(2): 15-22
doi: 10.5923/j.ajsp.20120202.03
J. S. Armand Eyebe Fouda 1, J. Yves Effa 2, Bertrand Bodo 1, Maaruf Ali 3
1Department of Physics, University of Yaoundé I, Yaoundé, P.O. Box 812, Cameroon
2Department of Physics, University of Ngaoundéré, Ngaoundéré, P.O. Box 454, Cameroon
3College of Computer Science and Engineering, University of Ha’il, Ha’il, Kingdom of Saudi Arabia
Correspondence to: J. Yves Effa , Department of Physics, University of Ngaoundéré, Ngaoundéré, P.O. Box 454, Cameroon.
| Email: | ![]() |
Copyright © 2012 Scientific & Academic Publishing. All Rights Reserved.
It is commonly known that mathematical representation of chaotic systems can be used as good candidates for information security. In this paper, we propose an image encryption algorithm based on the use of chaotic sequences sorted by ascending or descending order. The permutation key is defined as a distribution of indices derived from the sorting. This method allows us to easily achieve high performance of pseudorandom permutation through any type of chaotic systems using the true precision of the computer; high-speed encryption algorithm which could meet one of the multimedia encryption specific requirements such as the real-time constraint and high robustness against statistical cryptanalysis. The efficiency of the proposed algorithm is studied in the cases of the piecewise linear chaotic map (PWLCM) and the hyperchaotic Lorenz system. Statistical analyses of the simulation results confirm a high security level of the proposed cipher.
Keywords: Chaos Cryptography, Cryptanalysis, Random Permutation, Adaptable Cipher
- that is the total number of possibilities for each pixel. For the Xiang permutation algorithm for example, the cyclic shift concerns blocks of bits and the number of bits to be shifted is controlled by the logistic map. For instance, for a block of N-bits divided into two blocks of length N1 and N2, the total number of permutation is
whereas using the cyclic shift the number of permutations is only
(
). Whatever the size of block of bits considered, for images encoded on eight bits the significant number of bit permutation per pixel cannot exceed
.P. Fei et al. also proposed an algorithm for image encryption[15] in which the aim was to randomly encrypt the three colours red (R) green (G) and blue (B) with three chaotic systems. The computational time was relatively large and the algorithmic steps could not be repeated for more security, as it is the case for many other encryption algorithms. Moreover, the correlation of adjacent pixels presented by this method could be improved, according to those presented in[14].Chen et al.[16] proposed a symmetric cipher in which a two-dimensional chaotic map is generalized to three dimensions for designing a secure real-time image encryption scheme. This approach employs the three-dimensional cat map to shuffle the positions of the image pixels and another chaotic map to confuse the relationship between the original and the ciphered images. Guan et al.[17] presented an image encryption scheme in which shuffling the positions and changing the grey values of image pixels are combined to confuse the relationship between the plain-image and ciphered image.The aims of the proposed algorithm are to easily achieve high performance of pseudorandom permutation through utilization of any type of chaotic systems using the true precision of the computer (without the need for digitization); high-speed encryption algorithm which could meet one of the multimedia encryption specific requirements such as the demanding real-time constraint and high robustness against statistical cryptanalysis.The work is organized as follows: the algorithm is proposed in Section Two; the results are discussed in Section Three and the conclusions are made in Section Four.
; 2. Chose a 256-key and generate a chaotic sequence of length
, then sort it in the ascending or descending order and save the corresponding distribution of indices
as a permutation key;3. Reshape the whole image into a 1-D signal of length L and split it into windows of length
; 4. Shuffle pixels in each of the signal window with the permutation key;5. Mask the pixels in each of the shuffled window with the values in
;6. Generate two chaotic integers k and l less than L and permute blocks of pixels
and
, thereafter
and
in the whole image;7. Repeat steps four to six p times;8. Reshape the shuffled 1-D signal into 2-D image (ciphered image).Initial conditions and control parameters of the chaotic systems constitute the secret key of the proposed cipher.Steps one to three of the algorithm concern the initialization and steps four to six perform the pixels and bits shuffling. The digitization of the chaotic sequence values does not allow the exploitation of the real accuracy of the computer like sorting. Therefore, digitization appears only in step six, which increases the sensitivity of our algorithm to any fluctuation that could occur in the chaotic sequence. Presented in this form, the proposed algorithm can be efficiently combined with any type of chaotic system.
as a chaotic sequence and
as the corresponding sorted sequence. We also defined
as the distribution of values in the sequence
,was so
rted by ascending. Sequences
and
can then be expressed by:![]() | (1) |
![]() | (2) |
being the length of
. In the sequence
, values were randomly distributed and these values were all different according to the statistic properties of the chaotic system and the precision of the computer. Sorting the sequence
by ascending, we obtained a new sequence
in which the indices (positions) of the values were randomly distributed:![]() | (3) |
be the sequence containing the position of the values of
in the sequence
, from (3),
was expressed as:![]() | (4) |
differs from a sequence to another when
is a chaotic sequence. In this point of view,
can be seen as a random variable and the number of probable events is equal to the number of permutations of the indices, this means
.To a sequence
obtained by reshaping an image
, where
, we applied the distribution
. Values in
were initially ranked by ascension of the corresponding indices:![]() | (5) |
with
, we obtained a new sequence
such that:![]() | (6) |
corresponds to the permuted image and the reconstruction of
cannot be made unless the distribution
is determined. Pixels permutation does not modify the entropy of the image, but it reduces the correlation between adjacent pixels. Increasing the image entropy requires the construction of new words in the image. This result can be performed by bit operations - hence the step of masking.
for the pixels masking. Since this distribution presents values ranging from 1 to
, it is necessary to bring back values greater than 255 among[0, 255], according to the image format. The setof values used for this operation is given by:![]() | (7) |
and
first and for the second time blocks
and
in the whole image. The initial condition of the chaotic system used for the generation of k and l are derived from the following relation:![]() | (8) |
. Choosing large number of rounds makes it impossible for any statistical attack[18].
, where Si are ASCII symbols) to derive initial conditions and control parameters of the chaotic system. The key is divided into two blocks of 16 ASCII symbols for the determination of the system control parameter and the initial condition respectively. For each block of 128 bits (corresponding to 16 ASCII symbols), we defined:![]() | (9) |
is the value from which the control parameters and initial conditions will be deduced, depending on the chaotic system. By considering the possible maximum value of ASCII symbols equal to 255 and the upper limit of the weight coefficient
equal to 2, the value of the W presents an upper limit
, which is used for the normalization of W.
); the image of mandrill (size
) and a uniformly black image (size
) whose statistical properties are summarized in Table 1.
|
and
is defined by:![]() | (10) |
![]() | (11) |
being the size of images and . Similarly, the unified average changing intensity (UACI) is defined by:![]() | (12) |
![]() | (13) |
is the probability of the event
and b the number of bits.![]() | (14) |
is within
and its initial condition chosen within the interval
[20]. For this purpose, the control parameter and the initial condition
are deduced from the key through the following relation:![]() | (15) |
is a constant chosen such that the behavior of the PWLCM remains chaotic for any key derived from (9). In step six was also used the PWLCM with
as initial condition.Two encryption sub-keys
and
were used respectively for the control parameter and the initial condition, thus forming a 32 ASCII symbols key T1T2:(
).
, provided that the length of each block to be shuffled is such that
. By considering only symbols “a-z”, “A-Z” and “0-9”, the scheme presents
secret keys. A cipher with such a large key space can resist all present kinds of brute-force attack.b) Sensitivity of the KeyHigh key sensitivity is generally required for preventing adaptive chosen-plaintext attacks and linear cryptanalysis. The key T2 was partially changed to perform the test on the sensitivity of the key with the proposed approach. The sensitivity of the key is then performed according to the following steps:First the image of Lena is encrypted by using
as key for initial condition;Then the least significant bit of T2 is changed, so that the initial key becomes
in this example, which is used to encrypt the same image of Lena;Finally, the above two ciphered images, encrypted by the two slightly different keys are compared.The number of rounds in this experiment is p=10. The results thus obtained are illustrated in Figure 1. From left to right and from top to bottom are presented the original image, the first and second encrypted images and the difference of the two encrypted images. The comparison of the ciphered images shows that the image encrypted by
has 99.63% difference from the image encrypted by the key
in terms of pixel grey scale values, although there is only one bit difference in the two secret keys.In order to quantify the dependency between the two ciphered images, the Pearson’s correlation coefficient
is used:![]() | (16) |
![]() | Figure 1. Key sensitive test (result 1). a) Plain-image, b) Image encrypted by T2a, c) Image encrypted by T2b, d) Difference of the two ciphered images |
![]() | Figure 2. Key sensitive test (result 2). a) Plain-image, b) Image encrypted by T2a, c) Image decrypted by T2a, d) Image decrypted by T2b |
and the one used for decryption is
. From left to right and from top to bottom are presented the original, the encrypted, the decrypted and the unsuccessfully decrypted images. There is also only one bit difference between the two keys. The results in Table 2 and Figure 2 show that there is no relation existing amongst the encrypted images corresponding to a small change in the key, thus confirming that the proposed algorithm is highly key sensitive.![]() | Figure 3. Histograms of plain-images and ciphered images. a)-c) plain-images, d)-f) histograms of plain-images, g)-i) histograms of ciphered images |
![]() | Figure 4. Distribution of horizontally adjacent pixels in plaintext and ciphered images. a)-c) plain-images, d)-f) correlations in plain-images, g)-i) correlation in ciphered images |
![]() | (17) |
|
|
| ||||||||||||||||||||||||||||
|
rounds and a window of size
pixels. Now, let us study the effect of these two parameters on the ciphered image of the mandrill. Figure 5 shows the behaviors of correlation coefficients of adjacent pixels and correlation between plaintext and ciphered images in terms of the number of rounds and the size of the window. From left to right, the columns represent respectively the correlation of horizontally, vertically and diagonally adjacent pixels; the fourth column represents the correlation between plaintext and ciphered images. From top to bottom, are presented in each row, the results of windows of size 32×32, 64×64, 128×128 and 256×256 pixels. It appears on this figure that the increase of the size of the permutation window allows the reduction of the correlation between adjacent pixels. The behavior of these correlation coefficients in terms of the number of rounds is not uniform; large number of rounds does not necessarily guarantee small correlation coefficients. However, the number of rounds should be greater than two for obtaining a high security level. The security level can also be strengthened in step six, by combining more than two permutations.![]() | Figure 5. Correlation coefficients in terms of the number of rounds and the size of the permutation window. column 1: correlation of horizontally adjacent pixels, column 2: correlation of vertically adjacent pixels, column 3: correlation of diagonally adjacent pixels, column 4: correlation between plaintext and ciphered image |
![]() | Figure 6. NPCR (column 1), UACI (column 2) and average time/round (column3) in terms of the number of rounds and the size of the permutation window |
![]() | (18) |
,
,
and
. The initial conditions are chosen such that
,
,
and
, the system exhibits hyperchaotic behavior as shown in[21]. As in the case of the PWLCM,
and
are varied as follows:![]() | (19) |
,
,
and: ![]() | (20) |
![]() | Figure 7. Encrypted and decrypted images by the hyperchaotic Lorenz system: a)-c) plain-images; d)-f) ciphered images; g)-i) deciphered images |
and
, and the results produced are given in Table 7. Figure 7 shows the corresponding encrypted and decrypted images presented as follows: plain-images are shown in the first column, the ciphered images in the second and the decrypted images in the third. For this experiment, the number of rounds was also equal to ten and only sequences given by the state
of the hyperchaotic sytem was used. The complexity of the algorithm could be enhanced by combining the four states
,
,
and
in steps four to six. According to Table 7, the sensitivity of the key remains higher, as in the case of the PWLCM.
|
| [1] | L. Tang, “Methods for encrypting and decrypting MPEG video data efficiently”, in Proceedings of the 4th ACM International Multimedia Conference, pp. 219-230, 1996 |
| [2] | H. Cheng, and X. Li, “Partial encryption of compressed images and videos”, IEEE Transactions on Signal Processing, 48, pp. 2439-2451, 2000 |
| [3] | J.-C. Yen, and J.-I. Guo, “A new chaotic key-based design for image encryption and decryption”, in Proceedings of 2000 IEEE International Conference on Circuits and Systems, ISACS 2000, 4, pp. 49-52, 2000 |
| [4] | B. Bhargava, C. Shi, and S.-Y Wang, 2004, MPEG video encryption algorithms: Multimedia Tools and Applications, Kluwer Academic Publishers, 24(1), 57–79. |
| [5] | A. Riaz, and M. Ali, “Chaotic Communications, Their Applications and Advantages over Traditional Methods of Communication”, IEEE Commun. Syst., Networks Digital Signal Process, pp. 21-24, 2008 |
| [6] | G.J. Millérioux, M. Amigo, and J. Daafouz, 2008, A Connection between Chaotic and Conventional Cryptography, IEEE Trans. Circuits Syst., 55(6), 1695-1703. |
| [7] | L. Kocarev, 2001, Chaos Based Cryptography: A Brief Overview, IEEE Trans. Circuits Syst. Mag., 1(3), 6-21. |
| [8] | G. Alvarez, and S. Li, 2006, Some Basic Cryptographic Requirements for Chaos Based Cryptosystems, Int. J. Bifurcation Chaos, 16(8), 2129-2151. |
| [9] | T. Yang, C.W. Wu, and L.O. Chua, 1997, Cryptography Based on Chaotic Systems, IEEE Trans. Circuits Syst., 44(5), 469-472. |
| [10] | G. Jakimoski, and L. Kocarev, 2001, Chaos and Cryptography: Block Encryption Ciphers Based on Chaotic Maps. IEEE Trans. Circuits Syst., 48(2), 163-169. |
| [11] | S. Li, G. Chen, and X. Zheng, Chaos-based encryption for digital images and videos, in B. Furht and D. Kirovski (Eds.), Multimedia Security Handbook, 4 of Internet and Communications Series, Ch. 3, CRC Press, December 2004. |
| [12] | T. Xiang, X. Liao, K. Wong, G. Tang, and Y. Chen, “A Novel Block Cryptosystem Based on Iterating a Chaotic Map”, Phys. Lett. A 349, pp. 109-115, 2006 |
| [13] | D. Socek, S. Li, S. S. Magliveras, and B. Furht, “Enhanced 1-D Chaotic Key Based Algorithm for Image Encryption”, IEEE Security Privacy for Emerging Areas in Commun Networks, pp. 406-407, 2005 |
| [14] | A. Awad, and D. Awad, “Efficient image chaotic encryption algorithm with no propagation error”, ETRI journal 32, pp. 774-783, 2010 |
| [15] | P. Fei, S-S. Qiu, and L. Min, “An image encryption algorithm based on mixed chaotic dynamic systems and external keys”, IEEE int conf commun Circuits & systems, pp. 1135-1139, 2005 |
| [16] | G. Chen, Y. Mao, C.K. Chui, “A symmetric image encryption based on 3D chaotic maps”, Chaos, Solitons and Fractals, 21, pp. 749-761, 2004 |
| [17] | Z.H. Guan, F. Huang, and W. Guan, “Chaos-Based Image Encryption Algorithm”, Phys. Lett. A 346, pp. 153-157, 2005 |
| [18] | S.G. Lian, J. Sun, Z. Wang, “A block cipher based on a suitable use of chaotic standard map”, Chaos, Solitons and Fractals ,26, pp. 117-29, 2005 |
| [19] | D.R. Stinson, Cryptography: theory and practice, CRC Press, second edition, 2002 |
| [20] | H. Zhou, A design methodology of chaotic stream ciphers and the realization problems in finite precision, Ph.D. thesis, Department of Electrical Engineering, Fudan University, Shanghai, China, 1996. |
| [21] | D. Lu, A. Wang, and X. Tian, “Control and synchronization of a new hyperchaotic system with unknown parameters”, International Journal of Nonlinear Science 6, pp. 224-229, 2008 |