Topological chaos and chaotic iterations. Application to Hash functions
aa r X i v : . [ c s . CR ] O c t Topological chaos and chaotic iterationsApplication to Hash functions
Christophe GuyeuxJacques M. Bahi, Senior Member IEEE
Abstract — This paper introduces a new notion of chaoticalgorithms. These algorithms are iterative and are based onso-called chaotic iterations. Contrary to all existing studieson chaotic iterations, we are not interested in stable states ofsuch iterations but in their possible unpredictable behaviors. Byestablishing a link between chaotic iterations and the notion ofDevaney’s topological chaos, we give conditions ensuring thatthese kind of algorithms produce topological chaos. This leadsto algorithms that are highly unpredictable. After presentingthe theoretical foundations of our approach, we are interestedin its practical aspects. We show how the theoretical algorithmsgive rise to computer programs that produce true topologicalchaos, then we propose applications in the area of informationsecurity.
I. INTRODUCTIONThe use of chaos in various fields of information securitysuch as data hiding, hash functions, or pseudo-random num-ber generators is almost always based on the conception of al-gorithms that include known chaotic maps such as the logisticmap. The goal is to obtain an algorithm which preservesthe chaotic properties of the included chaotic functions. Forexample, in [13] and [12], a watermark W is encrypted in W e by using the bitwise exclusive or: W e = W ⊗ X , where X is a logistic map. Then, pixels of the carrier image designedto embed these bits are selected with the 2-D Arnold’s catmap. A similar use of chaotic maps for watermarking canbe found in e.g. [15], [10], [7], [3] and [4]. In the domainof hash functions, the use of chaotic maps is seen in e.g.[6], [11], [14] and [8]. However, without rigorous proof itis not indisputable that an algorithm that includes chaoticfunctions preserves chaos properties: for example, using thelogistic function with other “obvious” parameters does notguarantee that the algorithm is chaotic. Moreover, even if thealgorithm obtained by the inclusion of chaotic maps is itselfchaotic, the implementation of this algorithm on a machinecan cause it to lose its chaotic nature. This is due to thefinite nature of the machine numbers set. These issues arediscussed in this document.In this paper we don’t simply integrate chaotic maps hop-ing that the security algorithm remains chaotic, we conceivealgorithms for computer security that we mathematicallyprove chaotic. We raise the question of their implementation,proving in doing so that it is possible to design a chaoticalgorithm and a chaotic computer program. Christophe Guyeux and Jacques M. Bahi are with the Computer ScienceLaboratory LIFC, University of Franche-Comte, 16, route de Gray - 25030Besanc¸on, France (phone: +33 381 666948; email: { christophe.guyeux,jacques.bahi } @univ-fcomte.fr). The chaos theory we consider is Devaney’s topologi-cal chaos. In addition to being recognized as one of thebest mathematical definition of chaos, this theory offers aframework with qualitative and quantitative tools to evaluatethe notion of unpredictability. As an application of ourfundamental results, we are interested in the area of infor-mation security. We propose in this paper a new approach ofsecurity which is based on unpredictability as it is definedby Devaney’s chaos.The paper begins by introducing the theoretical foundationof the new approach. We recall the definition of Devaney’stopological chaos as well as the definition of discrete chaoticiterations. Although these definitions are distinct from eachother, we establish a link between them by giving conditionsunder which chaotic discrete iterations generate a Devaney’stopological chaos. Because chaotic iterations are very suitedfor computer programming, this link allows us to generateDevaney’s chaos topological in the computer science field.After having studied the theoretical aspects of our approachwe focus on practical aspects. The important question is howto preserve the topological chaos properties in a set of a finitenumber of states. This question is answered by introducinga concept we call secure chaotic information machine . Thisis a Mealy machine generating chaos as defined by Devaney(Section IV). We also give some applications of our approachof chaos, in the domain of information security. Algorithmsintended for information security and based on this newapproach are explained in Section V, in the hash functiondomainThe rest of this paper is organized as follows. In SectionII, the definitions of Devaney’s chaos and discrete chaoticiterations are recalled. A link between these two notionsis established and sufficient conditions to obtain Devaney’stopological chaos from discrete chaotic iterations are given inSection III. In Section IV, the question on how to apply thetheoretical result is raised and applications in the computerscience field are given in Section V. The paper ends with aconclusion in which our contribution is summarized and theplanned future work is discussed.II. BASIC RECALLSThis section is devoted to basic definitions and terminolo-gies in the field of topological chaos and in the one of chaoticiterations. . Devaney’s chaotic dynamical systems
Consider a metric space ( X , d ) and a continuous function f : X −→ X . Definition f is said to be topologically transitive if, for anypair of open sets U , V ⊂ X , there exists k > f k ( U ) ∩ V , ∅ . Definition
An element (a point) x is a periodic element (point) for f of period n ∈ N ∗ , if f n ( x ) = x . The set ofperiodic points of f is denoted Per ( f ) . Definition ( X , f ) is said to be regular if the set of periodicpoints is dense in X , ∀ x ∈ X , ∀ ε > , ∃ p ∈ Per ( f ) , d ( x , p ) ε. Definition f has sensitive dependence on initial conditions if there exists δ > x ∈ X and anyneighborhood V of x , there exists y ∈ V and n > | f n ( x ) − f n ( y ) | > δ . δ is called the constant of sensitivity of f .Let us now recall the definition of a chaotic topologicalsystem, in the sense of Devaney [5]: Definition f : X −→ X is said to be chaotic on X if,1) f has sensitive dependence on initial conditions,2) f is topologically transitive,3) ( X , f ) is regular.Therefore, quoting Robert Devaney: “A chaotic map pos-sesses three ingredients: unpredictability, indecomposabilityand an element of regularity. A chaotic system is un-predictable because of the sensitive dependence on initialconditions. It cannot be broken down or decomposed intotwo subsystems, because of topological transitivity. And, inthe midst of this random behavior, we nevertheless have anelement of regularity, namely the periodic points which aredense.” Fundamentally different behaviors are thus possibleand occur in an unpredictable way. B. Chaotic iterations
In the sequel S n denotes the n th term of a sequence S , V i denotes the i th component of a vector V and f k = f ◦ ... ◦ f denotes the k th composition of a function f . Finally,the following notation is used: ~ N (cid:127) = { , , . . . , N } . Letus consider a system of a finite number N of elements (or cells ), so that each cell has a boolean state . Then a sequenceof length N of boolean states of the cells corresponds to aparticular state of the system . A sequence which elementsbelong to ~ N (cid:127) is called a strategy . The set of all strategiesis denoted by S . Definition
The set B denoting { , } , let f : B N −→ B N be afunction and S ∈ S be a strategy. Then, the so-called chaoticiterations are defined by x ∈ B N and ∀ n ∈ N ∗ , ∀ i ∈ ~ N (cid:127) , x ni = x n − i if S n , i (cid:16) f ( x n − ) (cid:17) S n if S n = i . (1) In other words, at the n th iteration, only the S n − th cell is“iterated”. Note that in a more general formulation, S n canbe a subset of components and f ( x n − ) S n can be replaced by f ( x k ) S n (where k n − A. The new topological space
In this section we will put our study in a topologicalcontext by defining a suitable metric space where chaoticiterations are continuous.
1) Defining the iteration function and the phase space:
Let δ be the discrete boolean metric , δ ( x , y ) = ⇔ x = y . Given a function f , define the function: F f : ~ N (cid:127) × B N −→ B N ( k , E ) (cid:16) E j .δ ( k , j ) + f ( E ) k .δ ( k , j ) (cid:17) j ∈ ~ N (cid:127) , where + and . are the boolean addition and product opera-tions. Consider the phase space: X = ~ N (cid:127) N × B N , and the map defined on X : G f ( S , E ) = (cid:16) σ ( S ) , F f ( i ( S ) , E ) (cid:17) , (2)where σ is the shift function defined by σ ( S n ) n ∈ N ∈ S −→ ( S n + ) n ∈ N ∈ S and i is the initial functioni : ( S n ) n ∈ N ∈ S −→ S ∈ ~ N (cid:127) . Then the chaotic iterationsdefined in (II-B) can be described by the following iterations: ( X ∈ X X k + = G f ( X k ) . With this formulation, a shift function appears as a com-ponent of chaotic iterations. The shift function is a famousexample of a chaotic map [5] but its presence is not sufficientenough to claim G f as chaotic. In the rest of this sectionwe prove rigorously that under some hypotheses, chaoticiterations generate topological chaos. Furthermore, due to thesuitability of chaotic iterations for computer programming wealso prove that this is true in the computer science field.
2) Cardinality of X : By comparing S and R , we have theresult. theorem 1 The phase space X has, at least, the cardinalityof the continuum.Proof: Let ϕ be the map which transforms a strategyinto the binary representation of an element in [0 , n th term of the strategy is 0, then the n th associ-ated digit is 0, or else it is equal to 1. With this construction, ϕ : ~ N (cid:127) N −→ [0 ,
1] is surjective. But ]0 ,
1[ is isomorphicto R ( x ∈ ]0 , tan ( π ( x − )) is an isomorphism), so thecardinality of ~ N (cid:127) N is greater or equal to the cardinality of R . As a consequence, the cardinality of the Cartesian product X = ~ N (cid:127) N × B N is greater or equal to the cardinality of R . emark 1 This result is independent from the number ofcells of the system.3) A new distance:
We define a new distance between twopoints X = ( S , E ) , Y = ( ˇ S , ˇ E ) ∈ X by d ( X , Y ) = d e ( E , ˇ E ) + d s ( S , ˇ S ) , where d e ( E , ˇ E ) = N X k = δ ( E k , ˇ E k ) , d s ( S , ˇ S ) = N ∞ X k = | S k − ˇ S k | k . If the floor value ⌊ d ( X , Y ) ⌋ is equal to n , then the systems E , ˇ E differ in n cells. In addition, d ( X , Y ) − ⌊ d ( X , Y ) ⌋ is ameasure of the differences between strategies S and ˇ S . Moreprecisely, this floating part is less than 10 − k if and only if thefirst k terms of the two strategies are equal. Moreover, if the k th digit is nonzero, then the k th terms of the two strategiesare different.
4) Continuity of the iteration function:
To prove thatchaotic iterations are an example of topological chaos in thesense of Devaney [5], G f must be continuous in the metricspace ( X , d ). theorem 2 G f is a continuous function.Proof: We use the sequential continuity. Let ( S n , E n ) n ∈ N be a sequence of the phase space X , which converges to( S , E ). We will prove that (cid:16) G f ( S n , E n ) (cid:17) n ∈ N converges to (cid:16) G f ( S , E ) (cid:17) . Let us recall that for all n , S n is a strategy,thus, we consider a sequence of strategies ( i.e. a sequence ofsequences).As d (( S n , E n ); ( S , E )) converges to 0, each distance d e ( E n , E )and d s ( S n , S ) converges to 0. But d e ( E n , E ) is an integer, so ∃ n ∈ N , d e ( E n , E ) = n > n .In other words, there exists a threshold n ∈ N after whichno cell will change its state: ∃ n ∈ N , n > n = ⇒ E n = E . In addition, d s ( S n , S ) −→ , so ∃ n ∈ N , d s ( S n , S ) < − for all indexes greater than or equal to n . This means thatfor n > n , all the S n have the same first term, which is S : ∀ n > n , S n = S . Thus, after the max ( n , n ) th term, states of E n and E areidentical and strategies S n and S start with the same firstterm.Consequently, states of G f ( S n , E n ) and G f ( S , E ) are equal,so, after the max ( n , n ) th term, the distance d between thesetwo points is strictly less than 1.We now prove that the distance between (cid:16) G f ( S n , E n ) (cid:17) and (cid:16) G f ( S , E ) (cid:17) is convergent to 0. Let ε > • If ε >
1, we see that distance between (cid:16) G f ( S n , E n ) (cid:17) and (cid:16) G f ( S , E ) (cid:17) is strictly less than 1 after the max ( n , n ) th term (same state). • If ε <
1, then ∃ k ∈ N , − k > ε > − ( k + . But d s ( S n , S )converges to 0, so ∃ n ∈ N , ∀ n > n , d s ( S n , S ) < − ( k + , thus after n , the k + S n and S are equal.As a consequence, the k + G f ( S n , E n ) and G f ( S , E ) are the same ( G f is a shift ofstrategies) and due to the definition of d s , the floating part ofthe distance between ( S n , E n ) and ( S , E ) is strictly less than10 − ( k + ε .In conclusion, ∀ ε > , ∃ N = max ( n , n , n ) ∈ N , ∀ n > N , d (cid:16) G f ( S n , E n ); G f ( S , E ) (cid:17) ε. G f is consequently continuous.In this section, we proved that chaotic iterations can bemodeled as a dynamical system in a topological space. Inthe next section, we show that chaotic iterations are a caseof topological chaos, according to Devaney. B. Discrete chaotic iterations as topological chaos
To prove that we are in the framework of Devaney’stopological chaos, we have to find a boolean function f suchthat G f satisfies the regularity, transitivity and sensitivityconditions. We will prove that the vectorial logical negation f ( x , . . . , x N ) = ( x , . . . , x N ) (3)is a suitable function.
1) Regularity: theorem 3
Periodic points of G f are dense in X .Proof: Let ( ˇ S , ˇ E ) ∈ X and ε >
0. We are looking fora periodic point ( e S , e E ) satisfying d (( ˇ S , ˇ E ); ( e S , e E )) < ε . As ε can be strictly lesser than 1, we must choose e E = ˇ E . Let usdefine k ( ε ) = ⌊ log ( ε ) ⌋ + S ˇ S , k ( ε ) = n S ∈ S / S k = ˇ S k , ∀ k k ( ε ) o . Then, ∀ S ∈ S ˇ S , k ( ε ) , d (( S , ˇ E ); ( ˇ S , ˇ E )) < ε .It remains to choose e S ∈ S ˇ S , k ( ε ) such that( e S , e E ) = ( e S , ˇ E ) is a periodic point for G f . Let J = n i ∈ { , ..., N } / E i , ˇ E i , where ( S , E ) = G k f ( ˇ S , ˇ E ) o , i = card ( J ) and j < j < ... < j i the elements of J .Then, e S ∈ S ˇ S , k ( ε ) defined by • e S k = ˇ S k , if k k ( ε ), • e S k = j k − k ( ε ) , if k ∈ { k ( ε ) + , k ( ε ) + , ..., k ( ε ) + i } , • and e S k = e S j , where j k ( ε ) + i is satisfying j ≡ k (mod k ( ε ) + i ), if k > k ( ε ) + i ,is such that ( e S , e E ) is a periodic point, of period k ( ε ) + i ,which is ε − closed to ( ˇ S , ˇ E ).As a conclusion, ( X , G f ) is regular. ) Transitivity: theorem 4 ( X , G f ) is topologically transitive.Proof: Let us define E : X → B N , such that E ( S , E ) = E . Let B A = B ( X A , r A ) and B B = B ( X B , r B ) be two open ballsof X , with X A = ( S A , E A ) and X B = ( S B , E B ). We are lookingfor e X = ( e S , e E ) in B A such that ∃ n ∈ N , G n f ( e X ) ∈ B B . e X must be in B A and r A can be strictly lesser than 1, so e E = E A . Let k = ⌊ log ( r A ) + ⌋ . Then ∀ S ∈ S , if S k = S kA , ∀ k k , then ( S , e E ) ∈ B A . Let us notice ( ˇ S , ˇ E ) = G k f ( S A , E A ) and c , ..., c k the elements of the set { i ∈ ~ , N (cid:127) / ˇ E i , E ( X B ) i } . Soany point X of the set { ( S , E A ) ∈ X / ∀ k k , S k = S kA and ∀ k ∈ ~ , k (cid:127) , S k + k = c k } is satisfying X ∈ B A and E (cid:16) G k + k f ( X ) (cid:17) = E B . Lastly, let usdefine k = ⌊ log ( r B ) ⌋ +
1. Then e X = ( e S , e E ) ∈ X defined by:1) e X = E A ,2) ∀ k k , e S k = S kA ,3) ∀ k ∈ ~ , k (cid:127) , e S k + k = c k ,4) ∀ k ∈ N ∗ , e S k + k + k = S kB ,is such that e X ∈ B A and G k + k f ( e X ) ∈ B B .
3) Sensitive dependence on initial conditions: theorem 5 ( X , G f ) has sensitive dependence on initial con-ditions.Proof: Banks et al. proved in [2] that having sensitivedependence is a consequence of being regular and topologi-cally transitive.
4) Devaney’s Chaos:
In conclusion, ( X , G f ) is topolog-ically transitive, regular and has sensitive dependence oninitial conditions. Then we have the following result: theorem 6 G f is a chaotic map on ( X , d ) in the sense ofDevaney. remark 2 We have proven that the set C of the iteratefunctions f so that ( X , G f ) is chaotic (according to thedefinition of Devaney), is a nonempty set. In future work, wewill deepen the study of C , among other things, by computingits cardinality and characterizing this set. IV. CHAOS IN A FINITE STATE MACHINE
A. The approach presented in this paper
In the section above, it has been proven that discretechaotic iterations can be put in the field of discrete dynamicalsystems: ( x ∈ X x n + = G f ( x n ) , (4)where ( X , d ) is a metric space and G f is a continuousfunction. Thus, it becomes possible to study the topolog-ical behavior of those chaotic iterations. Precisely, it hasbeen proven that if the iterate function is based on thevectorial logical negation f , then chaotic iterations generatechaos according to Devaney. Therefore chaotic iterations, asDevaney’s topological chaos, satisfy: sensitive dependence on the initial conditions, unpredictability, indecomposability,and uniform repartition.Two major problems typically occur when trying to de-velop a computer program with chaotic behavior. First,computers have a finite number of states, so the computationsalways enter into cycles. Second, the properties of chaoticalgorithms are inherited from a real chaotic sequence (likea logistic map) and this behavior is lost when computingfloating-point numbers (unlike real numbers, floating-pointnumbers have a finite decimal part). These two problems aresolved in this paper due to the two following ideas:1) Chaotic iterations are Mealy machines. At each iter-ation, data corresponding to the current strategy II-Bare taken from the outside world, then computations arerealized into the memory (the updates of the finite stateof the system). The last state is returned after a desirednumber of iterations. Contrary to the existing points ofview, based on a Moore machine, this machine can passtwo times in a same state, without continuing the sameevolution. Section IV-B explains in detail this originalcontribution, which allows the realization of true chaosin computers.2) As mentioned above, the strategy S defined in II-Bwill not depend on real numbers, but on integers takenfrom the outside world. We work with the set X definedin Subsection III-A.1 which has the cardinality of thecontinuum. Section IV-C discusses the consequencesof dealing with finite strategies in practice. B. A chaotic Mealy machine
The algorithms considered chaotic usually follow the prin-ciple of a Moore machine. After having received its initialstates, the machine works alone with no interaction withthe outside world. Its outputs only depend on the differentstates of the machine. The main problem is that when amachine with a finite number of states reaches a same statetwice, the two following evolutions are identical. Such analgorithm always enters into a cycle. This behavior is highlypredictable and cannot be set as chaotic. Attempts to definea discrete notion of chaos have been proposed, but they arenot completely satisfactory and are less recognized than thenotion of Devaney’s topological chaos. This problem doesnot occur in a Mealy machine. This finite state transducergenerates an output O computed from its current state E and the current value of an input S (Fig. 1). By this accord,even if the machine reaches the same state twice, the corre-sponding following evolutions may be completely differentdepending on the values of the inputs. The method presentedhere is based on such a machine. Indeed, chaotic iterationsare a Mealy machine: at each iteration, the computations takeinto account new inputs (strategies) which are obtained, forexample, from the media on which our algorithm applies.Roughly speaking, as the set of all media is infinite, weobtain a finite state machine which can evolve in infinite ig. 1M EALY MACHINE FOR CHAOTIC ALGORITHMS . ways, thus making it possible to obtain a true chaos incomputers. Definition
A Mealy machine is said to be chaotic if thismachine has a chaotic behavior, as expressed by Devaney.The Mealy machine we used in this document will be thechaotic iterations with G f as iterate function. Because thesechaotic iterations satisfy the Devaney’s definition of chaos,as stated in Section III-B.4, we can conclude that our Mealymachine is a chaotic machine. C. The practical case of finite strategies
It is worthwhile to notice that even if the set of machinenumbers is finite, we deal in practice with the infinite set ofstrategies that have finite but unbounded lengths. Indeed, assuggested before, it is not necessary to store all the termsof the strategy in the memory. Only its n th term (an integerless than or equal to N ) has to be stored at the n th step,as it is illustrated in the following example. Let us supposethat a given text is input from the outside world into thecomputer character by character and that the current term ofthe strategy is computed from the ASCII code of the currentstored character. Since the set of all possible texts of theoutside world is infinite and the number of their charactersis unbounded, we work with an infinite set of finite butunbounded strategies. Of course, the previous example is asimplistic one. A chaotic procedure should to be introducedto generate the terms of the strategy from the stream ofcharacters.In the computer science framework, we also have to dealwith a finite set of states of the form B N and as statedbefore an infinite set S of strategies. The sole differencewith the theoretical study is that instead of being infinitethe sequences of S are finite with unbounded length.The proofs of continuity and transitivity are independent ofthe finiteness of the length of strategies (sequences of S ).Sensitivity can be proved too in this situation. So even inthe case of finite machine numbers, we have the two funda-mental properties of chaos: sensitivity and transitivity, whichrespectively implies unpredictability and indecomposability(see [5], p.50). The regularity supposes that the sequencesare of infinite lengths. To obtain the analogous of regularityin the context of finite sets, we define below the notion of periodic but finite sequences. Definition
A strategy S ∈ S is said to be periodic but finite if S is a finite sequence of length n and if there exists a divisor p of n , p , n , such that ∀ i n − p , S i = S i + p . A point( E , S ) ∈ X is said to be periodic but finite , if its strategy S is periodic but finite.For example, (1 , , , , , , ,
2) ( p =2) and (2 , ,
2) ( p =1),are periodic but finite. This definition can be interpreted asthe analogous of periodicity definition on finite strategies.Following the proof of regularity (Section III-B.1), it canbe proven that the set of periodic but finite points is denseon X , hence obtaining a desired element of regularity infinite sets, as quoted by Devaney ([5], p.50): “two pointsarbitrary close to each other could have completely differentbehaviors, the one could have a cyclic behavior as long asthe system iterates while the trajectory of the second could‘visit’ the whole phase space”. It should be recalled that theregularity was introduced by Devaney in order to counteractthe effects of sensitivity and transitivity: two points close toeach other can have fundamentally different behaviors.V. HASH FUNCTIONS BASED ON TOPOLOGICALCHAOS A. Introduction
The use of chaotic maps to generate hash algorithmshas seen several developments in recent years. In [6] forexample, a digital signature algorithm based on an ellipticcurve and chaotic mapping is proposed to strengthen thesecurity of an elliptic curve digital signature algorithm. Otherexamples of the generation of a hash function using chaoticmaps can be found in e.g. [11], [14] and [8]. However, asfor digital watermarking, the use of any chaotic map doesnot guarantee that the resulting hash function would behavechaotically too. To our knowledge, this point is not discussedin these referenced papers, however it should be consideredas important. We define in this section a new way to constructhash functions based on chaotic iterations. As a consequenceof the theory presented before, the generated hash functionssatisfy the topological chaos property. Thus, various desiredproperties in this domain are guaranted by our approach.For example, the avalanche criterion is closely linked to thesensitivity property.
B. A chaotic machine for hash functions
In this section, we explain a new way to obtain a hashvalue of a digital medium described by a binary sequence.It is based on chaotic iterations and satisfies the topologicalchaos property. The hash value will be the last state of somechaotic iterations: the initial state X , finite strategy S anditerate function must then be defined. The initial condition X = ( S , E ) is composed by a N =
256 bits sequence E anda chaotic strategy S . In the following sequence, we describein detail how to obtain this initial condition from the originalmedium.
1) How to obtain E:
The first step of our algorithm is totransform the message in a normalized 256 bits sequence E .To illustrate this step we state that our original text is: “ Theoriginal text ”. Each character of this string is replaced by itsASCII code (on 7 bits). Then, we add a 1 to this string.
So, the binary value (1111000) of the length of this string(120) is added, with another 1:
The whole string is copied, but in the opposite direction. Thisgives:
So, we obtain a multiple of 512, by duplicating this stringenough and truncating at the next multiple of 512. This stringin which the whole original text is contained, is denoted by D .Finally, we split our obtained string into blocks of 256bits and apply the exclusive-or function, obtaining a 256 bitssequence. So, in the context of Subsection V-B, N =
256 and E is theabove obtained sequence of 256 bits.We now have the definitive length of our digest. Note thata lot of texts have the same string. This is not a problembecause the strategy we will build depends on the wholetext. Let us now build the strategy S .
2) How to choose S :
To obtain the strategy S , an inter-mediate sequence ( u n ) is constructed from D as follows: • D is split into blocks of 8 bits. Then u n is the decimalvalue of the n th block. • A circular rotation of one bit to the left is applied to D (the first bit of D is put on the end of D ). Then thenew string is split into blocks of 8 bits another time.The decimal values of those blocks are added to ( u n ). • This operation is repeated again 6 times.It is now possible to build the strategy S : S = u , S n = ( u n + × S n − + n ) ( mod . S will be highly dependent to the changes of the originaltext, because θ θ ( mod
1) is known to be chaotic asdefined by Devaney [5].
3) How to construct the digest:
To construct the digest,chaotic iterations are done with initial state X , f : ~ , (cid:127) −→ ~ , (cid:127) ( E , . . . , E ) ( E , . . . , E ) , as iterate function and S for the chaotic strategy.The result of those iterations is a 256 bits vector. Its compo-nents are taken 4 per 4 bits and translated into hexadecimalnumbers, to obtain the hash value: To compare, if instead of using the text “
The original text ”we took “ the original text ”, the hash function returns:
In this paper, the generation of hash value is done with thevectorial boolean negation f defined in eq. (3). Nevertheless,the procedure remains general and can be applied withany function f such that G f is chaotic. In the followingsubsection, a complete example of the procedure is given. C. Application example
Let us consider the two black and white images of size64 ×
64 in Fig. 2, in which the pixel in position (40,40) hasbeen changed. In this case, our hash function returns: for the Fig. 2(a) and for the Fig. 2(b).Let us consider now the two 256 graylevel images of Lena(256 ×
256 pixels) in figure 3, in which the grayscale levelof the pixel in position (50,50) has been transformed from93 (fig. 3(a)) to 94 (fig. 3(b)). In this case, our hash function a) Original image. (b) Modified image.Fig. 2H
ASH OF SOME BLACK AND WHITE IMAGES .(a) Original lena. (b) Modified lena.Fig. 3H
ASH OF SOME GRAYSCALE LEVEL IMAGES . returns: FA9F51EFA97808CE6BFF5F9F662DCD738C25101FE9F7F427CD4E2B8D40331B89 for the left Lena and
BABF2CE1455CA28F7BA20F52DFBD24B76042DC572FCCA4351D264ACF4C2E108B for the right Lena.These examples give an illustration of the avalanche effectobtained by this algorithm. A more complete study of theproperties possessed by our hash functions and resistanceunder collisions will be studied in future work.VI. CONCLUSIONIn this paper, a new approach to generate algorithms withchaotic behaviors is proposed. This approach is based onthe well-known Devaney’s topological chaos. The algorithmswhich are of iterative nature are based on the so-calledchaotic iterations. This is achieved by establishing a link be-tween the notions of topological chaos and chaotic iterations.This is the first time that such an approach is consideredfor chaotic iterations. Indeed, we are not interested in stablestates of such iterations as it has always been the case in theliterature, but in their unpredictable behavior. After a solidtheoretical study, we consider the practical implementation ofthe proposed algorithms by evaluating the case of finite sets.We study the behavior of the induced computer programs proving that it is possible to design true chaotic computerprograms. A simple application is proposed in the area ofhash functions. The security in this case is defined by theunpredictability of the behavior of the proposed algorithm.The algorithm derived from our approach satisfies importantproperties of topological chaos such as sensitivity to initialconditions, uniform repartition (as a result of the transitivity),and unpredictability. The results expected in our study havebeen experimentally checked. The choices made in this firststudy are simple: the aim was not to find the best hashfunction, but to give simple illustrated examples to provethe feasibility in using the new kind of chaotic algorithms incomputer science. In future work, we will investigate otherchoices of iteration functions and chaotic strategies. We willtry to characterize transitive functions. Other properties in-duced by topological chaos, such as entropy, will be exploredand their interest in the information security framework willbe shown. R
EFERENCES[1] J. M. Bahi and S. Contassot-Vivier. Stability of fully asynchronousdiscrete-time discrete state dynamic networks.
IEEE Transactions onNeural Networks , 13(6):1353–1363, 2002.[2] J. Banks, J. Brooks, G. Cairns, and P. Stacey. On devaney’s definitionof chaos.
Amer. Math. Monthly , 99:332–334, 1992.[3] Jin Cong, Yan Jiang, Zhiguo Qu, and Zhongmei Zhang. A waveletpackets watermarking algorithm based on chaos encryption.
LectureNotes in Computer Science , 3980:921–928, 2006.[4] Zhao Dawei, Chen Guanrong, and Liu Wenbo. A chaos-basedrobust wavelet-domain watermarking algorithm.
Chaos, Solitons andFractals , 22:47–54, 2004.[5] Robert L. Devaney.
An Introduction to Chaotic Dynamical Systems,2nd Edition . Westview Pr (Short Disc), March 2003.[6] Peng Fei, Qiu Shui-Sheng, and Long Min. A secure digital signaturealgorithm based on elliptic curve and chaotic mappings.
CircuitsSystems Signal Processing , 24, No. 5:585–597, 2005.[7] Shao-Hui Liu, Hong-Xun Yao, Wen Gao, and Yong-Liang Liu. Animage fragile watermark scheme based on chaotic image pattern andpixel-pairs.
Applied Mathematics and Computation , 185:869–882,2007.[8] F. Peng, S.-S. Qiu, and M. Long. One way hash function constructionbased on two-dimensional hyperchaotic mappings.
Acta Phys. Sinici. ,54:98–104, 2005.[9] F. Robert.
Discrete Iterations: A Metric Study , volume 6 of
SpringerSeries in Computational Mathematics . 1986.[10] Chang song Zhou and Tian lun Chen. Extracting information maskedby chaos and contaminated with noise: Some considerations on thesecurity of communication approaches using chaos.
Physics LettersA , 234(6):429 – 435, 1997.[11] X. M. Wang, J. S. Zhang, and W. F. Zhang. One-way hash functionconstruction based on the extended chaotic maps switch.
Acta Phys.Sinici. , 52, No. 11:2737–2742, 2003.[12] Xianyong Wu and Zhi-Hong Guan. A novel digital watermarkalgorithm based on chaotic maps.
Physics Letters A , 365(5-6):403– 406, 2007.[13] Xianyong Wu, Zhi-Hong Guan, and Zhengping Wu. A chaos basedrobust spatial domain watermarking algorithm.
Lecture Notes inComputer Science , 4492:113–119, 2007.[14] Di Xiao, Xiaofeng Liao, and Yong Wang. Improving the security of aparallel keyed hash function based on chaotic maps.
Physics LettersA , 373(47):4346 – 4353, 2009.[15] Jian Zhao, Mingquan Zhou, Hongmei Xie, Jinye Peng, and Xin Zhou.A novel wavelet image watermarking scheme combined with chaossequence and neural network.