Vous êtes sur la page 1sur 5

20IO International Conference on Computer Application and System Modeling (ICCASM 2010)

A Data Encryption Algorithm based on Dual Chaotic System

Yi Chen, Li Zhang, Yifang Weng


College of Computer and Information Engineering
Beijing Technology and Business University,
Beijing, P.R.China, 100048
chenyi@th.btbu.edu.cn

Abstract-A new data encryption algorithm based on dual Xn+1= �n(1-xn)' JiE [0, 4],xn E (0,1) , n = 1, 2,... (1)
chaotic system, DCS-EA, was presented in this paper. DCS-EA
is a stream cipher algorithm that introduced three new Logistic map is a typical nonlinear chaotic equation. It
techniques in order to heighten the data security. First, it used shows all the basic properties of chaotic motion. When the
two simple Logistic mappings with different system value of parameter f1 is determined, arbitrary initial value
parameters and initial value of variable, which can create more
complex chaotic signals to insist the threat of chaotic
Xo E (0,1) can generate a fixed sequence {X1,X2,...xJ. For

reconstruction, to generate key stream of encryption algorithm. different values of parameter f1 , Logistic sequence will
Second, linear congruence method was applied to involve in present different characteristics. It is continuous undergoing
fusion perturbation to enlarge the value field of key stream so bifurcation with the increasing of parameter f1 values, and
as to solve the finite precision problem of chaos sequence in the
computer. Third, it introduced the length of plaintext as the
achieving chaos state ultimately. When.u > 3.57, movement
parameter to control the iteration-times of dual-chaos system, form of the sequence {x,,} generated by the Logistic
which can increase the uncertainty of key generation process.
mapping appears typical chaotic characteristics.
Experimental and analytical results indicate that the algorithm
possessed excellent security and real-time characteristics. The a. Randomness. When Ji > 3.57 , Logistic mapping
results applied in a distributed simulation network
appear unstable motion within the limited iteration,
demonstrate that it can satisfy the requirements both in
and then long-term dynamic behavior shows
security and speed when encrypting real-time data.
randomness.
b. Certainty. Chaos sequence is generated by a certain
Keywords- Logistic map; dual chaotic system;data encryption;
equation. It can reproduce chaos state as long as the
linear congruence method.
parameters and initial values of equation are the
same.
I. INTRODUCTION c. Ergodicity. Ergodicity of chaotic motion is that
Chaotic signal possesses good randomness, especially chaotic variables can traverse all the states within a
after being processed in some certain ways. Chaotic system certain range on the basis of itself regularity, and its
can be used to generate high security key stream for data traversal will not repeat.
encryption algorithm. However, a single chaotic system is d. Sensitivity to initial values. The slight changes of
vulnerable to be attacked by chaotic reconstruction. The initial value Xo (as 1016
. ) will lead to enormous
paper proposed a new data encryption algorithm based on difference of the long-term behavior of the
dual-chaos system. The algorithm used dual chaotic system sequence { x n}
to generate key stream, which not only increased the number
.

of control parameter, but also can resist the threat of chaotic


III. DCS-EA ALGORITHM PRINCIPLE
reconstruction. In order to solve the finite precision problem
of chaos sequence in the computer, the Linear Congruence
A. Dual Chaotic system design
Method is introduced to involve in fusion perturbation, to
A single chaotic system is vulnerable to be attacked by
enlarge the value field of key stream. This will make the
chaotic reconstruction because of it has simple form and less
chaotic sequence to be better randomness. Finally, in order to
control parameters. High-dimensional chaotic system has the
increase the uncertainty of the key generation process, the
complex form and more parameters. But its computing load
length of plaintext was introduced to control initial iteration
is hea . The dual chaos system can balance these two
times of dual-chaos system and linear congruence equation. Y:(:
factors[ ,4J. We designed a dual-chaos system that consists of
So, we can get two very different ciphertexts when using the
two one-dimensional Logistic maps LOG 1 and LOG2 with
same initial key to encrypt two plaintexts with parts of same
different parameters to generate chaotic sequence. The
content but different length. This can increase the difficulty
of decryption greatly. equation of LOG 1and LOG2 are shown as equation (2) and
equation (3).
II. LOGISTIC CHAOTIC SYSTEM
LOG1: X,,+1= ,ux,,(1-x,,) , f.1E [3.57,4],XE (0,1) (2)
Logistic map was proposed by the biologist R. May in
19 76[2 � Its model is shown in equation (1).

978-1-4244-7237-6110/$26.00 .2010 IEEE V4-43 I


2010 International Conference on Computer Application and System Modeling (ICCASM 2010)

LOG2: YIl+1= 1JY1l(1-YIl) ' 'fiE [3.57,4],yE (0,1) (3) The dual chaotic system shows better sensitivity to initial
condition than the single chaos system, and can meet the
Where,11 and 11 are control parameters, Xo and Yo are initial encryption requirement better.
values respectively in two equations.
In this dual-chaos system, Xn+1 is the output of chaotic
system LOG1, Yn+1 is the output of chaotic systems LOG2 0.6
with Yo= Xn+1. So, chaotic sequence {y n} is the final output of 0.6
this two dual-chaos system. It is produced by compositing 0.4
chaotic system LOG I and chaotic system LOG2. This
technique makes chaotic behavior more complex, and more 1 0.2

\I
difficult to analyze and predict. It also makes output chaotic 0

sequence having better randomness and can resist -0.2
reconstruction attacks.
-0.4
The simulation experiment is done with Matlab in order
to test and compare the sensitivity to initial value Xo of single -0.6

Logistic chaotic system and dual-chaos system. In the single -0.8


0 10 20 30 40 50 6() 70 BO 90 100
Logistic chaotic system, when � = 3.95, Xo= 0.1 and
xo=0.1+10-16 respectively, we can get two chaotic sequence
Figure 2. The difference between two chaotic sequences with different xO
{xn} and {x�} . In the dual Logistic chaotic system, when � in dual chaotic system
= 3.95, T) = 3.86, Xo= 0.1 and xo=0.1+10-16 respectively, we
can get two chaotic sequences {Yn} and {y�}. Defining the B. Generation of perturbation sequence
difference {exn} between {xn} and {x�} as exn= xn-xn' , and The state of an ideal chaotic system is unlimited and not
the difference {eyn} between {Yn} and {Y;,} as eyn= Yn-Yn' , repetitive. But in practical application, the chaotic iteration
n=O, I ,2,.... Let the iterating times of two chaotic systems be inevitably introduces quantization error due to the limitation
100. The changing trend of difference between two chaotic of computer finite precision, so that it is impossible to get an
sequences with different Xo in single chaotic system exn with ideal chaotic sequence. The value of chaotic sequence
increasing n is shown in Figurel. The changing trend of generated by pure dual-chaos system is in the range of (0, 1).
difference between two chaotic sequences with different Yo It can not meet the encryption requirements better. In order
in single chaotic system eyn with increasing n is shown in to increase randomness of chaotic sequence, perturbation
Figure2. sequence is introduced to map chaotic sequence that is in the
range of (0, I) to a larger integer space. This algorithm
utilizes the Linear Congruence Method (LCM) to generate
perturbation sequence that involved in fusion perturbation,
0 .6
and to amplify the range of chaotic sequence. The formula of
0.4
the Linear Congruence Method is shown in equation (4) [5,6J.

0.2 LCM: zn+1= (azn+c) modm , n=O,l,oo. (4)


-

� Where, a is the multiplier (0 <a <m), c is the increment (0
� :S c <m), Zo is initial value of z sequence (O:Szo<m) , m is
-0.2
modulus (m> 0). The larger the value of m, the better
-0.4 sequence random. Taking into account the efficiency of
random number generation, modulus m is usually equal to
-0.6
the integer power of 2. Given a set of parameters a, c, m, Zo,
-0.
800---,':10--::"20
':--3::'::-
we can get a certain perturbation sequence.
0 ---,'
4 ,,-
0 -:5
- :'::- 0 -::':
0 --='60,,---::7:'::- 8 0:---::
9'::- 1 00
0 ---:-:'
Control parameters of the equations (2), (3) and (4) can
be obtained by inputting directly or obtaining from the user.
Figure 1. The difference between two chaotic sequences with different Xo The chaotic sequence and the perturbation sequence are
in single chaotic system generated through iteration of dual chaotic system and Linear
Congruence Equation respectively. The more control
We can see from Figure 1 and Figure 2, when the parameters, the greater the difficulty of cracking, the more
difference between two initial values is 10-16, the difference the security of algorithm. Therefore, dual chaotic sequence
between two pseudo-random sequences is very small, and DLOGL is generated by Logistic chaotic system LOG1 and
iterative value is also very close. However, with the increase LOG2 and linear congruence sequence LCML is produced
of iteration times (iteration times of the single chaos is more by the Linear Congruence Equation. Pseudo-random
than 70 times, while iteration times of the dual chaos is sequence KL used to generate key sequence can be gotten
greater than 50 times), the difference gradually increases. through multiplying DLOGL by LCML.

V4-432
2010 International Conference on Computer Application and System Modeling (ICCASM 2010)

C. Computing iteration times


The initial iteration times of chaotic system will influence
the output of key sequence that furthermore will result in
different ciphertext. Generally, we set iteration times as a
fixed value, but in order to increase the uncertainty of the
key sequence generation process, the length of the plaintext
is introduced as a control parameter to control the initial
iteration times of the chaotic system and participate
perturbation. First, calculating plaintext length before
encryption, and mapping to a value FNum in a integer
interval [0, M-l] by the function Fmod, then obtaining the
system initial iteration times by adding the basic iteration
times BNum. The value FNum is obtained by equation (5), Integer Sequence
CKU
and the value Num is gained by equation (6): Num

FNum = Fmod(size) = sizemodM (5)

Num = FNum + BNum (6)


The basic iteration times BNum is used to ensure that the
number of iteration can not equal to zero when Fmod (size)
is zero. Taking into account the encryption speed, and
ensuring the system is in chaotic state, the analysis to the
dual chaotic system indicates that the sensitivity of initial
value is better when the initial iteration times of the dual
chaotic system is more than 50 times. Therefore, in this Pn
paper, we set the basic iteration times BNum = 200, which
simultaneously meets the requirements of encryption speed
and iteration times. Different value of M will affect the
encrypted speed and the encrypted results. For a certain
plaintext, its length is determinate. The smaller the value of Notes: Rectangle box shows operation process, round box shows generated
parameter M, the smaller the space of FNum change, and the sequence, • denotes multiplication operation, + denotes XOR operation.
smaller Num's scope is. So that the variable space of
Figure 3. DCS-EA encryption process
ciphertext will become smaller. When M = 0, the plaintext
length will no longer be involved in encryption. When M is
c. Select four parameters a, c, m, Zo of the Linear
too large, it will affect the encrypted speed. The test results
Congruence Perturbation equation (4) , and iterate times
show, when M = 256, encryption speed and encryption
effects are both better. Nurn, finally obtain perturbation sequence LCML {z n} .
Through the above analysis, the encryption process of the d. Multiply the chaotic sequence by the perturbation
DCS-EA is shown in Figure3. sequence {z n} , namely, the chaotic sequence is
First, selecting the parameters Il and 11 of dual chaotic mapped to an integer space. Finally, it generates
system and the initial value Xo and the parameters a,c,m,zo of pseudo-random sequence {k n} .
the Linear Congruence Equation as seed key. Among them,
iteration times are determined by the length of plaintext and e. The generated pseudo-random sequence kn does
initial iteration times. Specific encryption process is as k n mod 256 , namely, k� =mod ( kn ' 256), such as
follows: '
a. First, read the plaintext length 'size' and 927 � 159, to get a new integer sequence kn in the
calculate FNum size mod 256 ; Then, let the basic
=
interval [0,255].
iteration times BNum 200; The result f. Then the obtained integer sequence k,� are transformed
Num = FNum + BNum will be obtained as the
iteration times of the dual chaotic system and LCM. to a binary sequence and obtained key sequence Sn. For
b. Select system parameters Il, 11 and the initial value of example 159�1001111. Finaly, ciphertext sequence en
variable Xo; Calculate Xn according to LOG I and the Yn can be obtained by XOR key sequence Sn with plaintext
according to LOG2. Their iterate times are both equal sequence Pn'
to Num. Finally obtain chaotic sequence LOGL {xn}. The DCS-EA is the symmetric encryption algorithm. The
decryption process is similar. The length of ciphertext is
equal to the length of plaintext. During the decryption
process, the ciphertext length is needed to be as control
parameter.

V4-433
2010 International Conference on Computer Application and System Modeling (ICCASM 2010)

IV. EXPERIMENTAL RESULTS AND Yn are two sequences whose length is N. The
PERFORMANCE ANALYSIS autocorrelation function and the cross-correlation
function are defined as equation (7) and equation (8) [7]:
A. Experimental results
1 N
The experiment of using DCS-EA to encrypt information
has been done, in which the parameters j.l =3.95 , f\
Rx(J)=-L>iXi+J
N i=1
(7)

=3.86 , xo=O.ll , a=16807, c=O, m=231-1=2147483647,


Zo=8, BNum =200. Encryption and decryption results are
(8)
shown in Figure 4.
,�� Jt31
Where, N is the length of sequence, j is the distance
Control Parameters:
between two elements in chaotic sequence. Let
: 'I: xO 10 11 Bllum
� j3.95 f85 � Xu 0. 01= sequence length N 1000 the =

a: 116807 c:
r- m: 12147483647 zO:
� autocorrelation curve is shown in figure5; Let Xu 0.01 , =

Plaintext: - Ciphertext: 1 Plaintext: l Yo 0. 010001 , sequence length N 1000 ,the cross­


=

correlation curve is shown in figure 6, in which x-axis


=

Iplaintext ImWyFUl.n%h Iplaintext


shows correlation distance, y-axis shows correlation
Iplaintext-e encrypt I IkLGIlb&zap) d decryptl Iplaintext-e coefficient.
Iplaintex loJrxFe#s Iplaintex

I I
Figure 4, The results of encryption and decryption
0.8
0.6
From figure4, we can get the following conclusions. First, �
the length of ciphertext is the same with the length of 0.4
a:

plaintext encrypted. Second, the very different ciphertext can


be gotten when using the same initial key to encrypt two 0.2

plaintexts with parts of same content but different length. For ..O...",L ...' ...k old,.J I I L.,ll!oJL, \,"', ,_""... ,"
example, three segments of plaintext, 'plaintext' , 'plaintext­ 0 l r
11' "I
e' and 'plaintex' in figure4 have the same first eight -0.2
-1000 -800 -GOO -400 -2OJ 0 20J 400 GOO 800 1000
characters, but their ciphertexts are very different instead of
having the same first eight characters in ciphertexts. It is
because the length of plaintext involved in the process of key Figure 5, The autocorrelation curve of dual chaotic sequence
stream generation. It is very difficult for attackers to find the
relationship between plaintext and ciphertext.
B. Performance analysis
The performance of the DCS-EA in following aspects is
analyzed. 0.8
a. Sensitivity to initial value
A maior characteristic of Logistic chaotic system is 0.6
extremely sensitive to initial value. Therefore, a dual =

0.4

Logistic chaotic system is constructed for getting a more a:


x

complicated chaotic sequence by increasing a system


parameter f\. This paper uses the Matlab method to simulate 0.2
the initial value sensitivity of dual chaotic sequence, as
a
'" .1.1, .1,\ .. Wt...IL'"'II,,",I.l,I.,,II,�l.
shown in figure2 of section3. Although the difference of l'
"IT "\1 r ,. , ' ''1' '-r �!J'"
initial value is only 10-16, after about 50-times iteration, the
two chaotic sequences will appear obvious difference. It -� ?OC,OO:-_,-:'OS- -'- O --6 ,,---4
:-'- 00 ---- 00 -2"-:: 00---'--2,-:'0-,-0-4--'-O,,-
-'- :---:- O0-
-- 6-'-00:---:-S"-:
O --: : --='1000
indicates that the dual chaotic system has extremely sensitive
dependence to initial value. Figure 6. The cross-correlation curve of dual chaotic sequence
b. Correlation
The correlation of chaotic sequence is also one
indicator of cryptography security. It is divided into
In the field of cryptography application, the
auto-correlation and cross-correlation. Supposing Xn and
autocorrelation characteristic of pseudo-random sequence

V4-434
2010 International Conference on Computer Application and System Modeling (ICCASM 2010)

should be similar to the function 8, and the cross-correlation [4] Yong Wang,Shengzhu Li, Maokang Du, "Block Encryption
Algorithm Based on Multiple Logistic Maps", Computer Engineering,
value should be close to zero. From Figure 5, we can see that
VoU3, No.20, Oct.2007, pp.l62-164.
the dual chaotic sequence has good autocorrelation property,
[5] Yonghui Hu, Xingye Li, "Image encryption algorithm based on inter­
which is sharp peak when j=O, and is similar equal to 0 when perturbation of dual chaotic systems",Journal of Computer
.i is equal to other values. So, the autocorrelation property is Applications, VoI.29,No.ll, Nov.2009, pp.2993-2997.
similar to the function 8, with white noise. From Figure6, we [6] Shuai Chen,Xianxin Zhong, Shiyong Zhu, "Image Encryption
can see that the length of sequence is 1000, the cross­ Through Pseudo-Random Sequence Based on Linear Congruence",
correlation values of the sequence are mainly distributed in Computer Technology and Development, Vo1.l6,No.4, Apr.2006,
(0,0.05). That is, dual chaotic sequence has very small cross­ pp.17-IS.

correlation value almost close to zero with the increase of [7] Sanguo Yan, Yongbin Chen, "Perfonnance Analysis of Full Mapping
Chaotic Sequence about Logistic", Electronic Technology,
sequence length. Therefore, the generated chaotic sequence 2010,pp.194-197.
has ideal autocorrelation and cross-correlation.
c. Algorithm cost
Algorithm costs include time cost and space cost. Time
cost is divided into preparation time and encryption time.
The DCS-EA belongs to the stream cipher encryption
algorithm for a very short preparation time. As only XOR
operation has been done to each bit of data during the
encryption. Encryption time has been spent only on the
production of key stream. The cost of time is less than the
other type of encryption algorithms. The cost of space is also
divided into the static space of algorithm implementation and
the space in the running. The static space is itself occupied
space when the algorithm become a procedure, namely, the
length of the implementation code. Running state space is the
temporary space required during the encryption process.
Because temporary variables of the DCS-EA are not more, it
generates key stream through recycling, and storage
variables of recycling process are fewer. Therefore, the DCS­
EA just takes up very small running state space.

V. CONCLUSION
The data encryption algorithm based on dual chaotic
system, DCS-EA presented in this paper has excellent
security. It introduced three new techniques. First, it used
two simple Logistic mappings with different system
parameters and initial value of variable to generate more
complex chaotic sequence as key stream. So that it can insist
the threat of chaotic reconstruction. Second, linear
congruence method was applied to involve in fusion
perturbation to enlarge the value field of key stream so that it
solved the finite precision problem of chaos sequence in the
computer. Third, it introduced the length of plaintext as the
parameter to control the iteration-times of dual-chaos system
and LCM equation, so that it increased the uncertainty of key
generation process. The results applied in a distributed
simulation network demonstrate that it can satisfy the
requirements both in security and speed when encrypting
real-time data.

REFERENCES

[I] HaoFu, "Analysis and Study of Chaotic Encryption Method" ,


Infonnation technology, 2007(1), pp. 60-63.
[2] K. Kiristina, "General design rules for chaos-based encryption
systems", International Symposium Nonlinear Theory and its
Applications, 2005(1),pp.465-46S.
[3] En Li, Min Wu, Yonghua Xiong, "Design and application of
encryption algorithm based on double chaos map", Application
Research of Computers, 2009(4),pp. 1512-1514.

V4-435

Vous aimerez peut-être aussi