You are on page 1of 93

1

PROTECTION OF INFORMATION
WITH CHAOS

CHAOS-BASED CRYPTOGRAPHY
2
CHAOTI C SYSTEMS I N COMMUNI CATI ONS
new designed communication systems are based on chaos
theory

chaotic systems widely used for improving security level

aspects regarding the implementation of digital chaotic maps

differences between different hardware solutions
Chaos-based cryptography
3
Chaos-based communication system
(t)
y(t) s(t)
Transmitted signal
Emitter

Receiver
I nformation
signal
Received
signal
Chaotic
generator
Chaotic
generator
Chaos-based cryptography
4
Low-dimensional nonlinear dynamical systems are capable of
complex and unpredictable behavior. In this case, a
dynamical system is called CHAOTIC.
x
n+1
= F(x
n
)
The set of points: {x
0
, F(x
0
), F
2
(x
0
), } is called a trajectory
(or orbit) of the initial condition x
0
.





x
0
is a plaintext to be encrypted
x
k
is a ciphertext

No finite computer program can predict a chaotic trajectory!
Dynamical chaotic systems
x
k

x
2

x
2


x
0

=x
0
+x
x
1

x
1


x
0

x
k


Chaos-based cryptography
5
What is chaos?
Exponential sensitivity dependent on initial conditions
( butterfly effect)
Continuous and wide power spectrum density
Exponential loss of information
Pseudo-randomness and unpredictability
Ergodicity: almost each orbit leads to the same distribution
Mixing: each initial region with positive area spreads to all
over the definition domain
Bifurcation
6
Why chaos?

Digital chaotic systems may be a new source of new
ciphers

Dynamical properties - cryptographic properties of good
ciphers

New chaotic ciphers can provide perfect cryptographic
properties

We believe that the chaotic cryptography will be helpful
to understand the essence of chaos and also security, and
enrich knowledge in cryptography
7
CHAOTIC CIPHERS
Secure communications or cryptosystems
based on chaos synchronization technique of
analog circuits

Chaos-based ciphers realized on digital circuits
or computers with finite precision
8
CHAOS-BASED CRYPTOGRAPHY- SCHOOLS
Chinese school

Shujun Li:
- analyses and design of digital chaotic ciphers
- improvements methods for Baptista cryptosystems type
- Chaotic Stream Ciphers construct with PRNG using chaos
- remedies to avoid dynamical degradation of chaotic systems

Wong:
- improve Baptista method
- use look-up table technique for authentication

Wang:
- use chaotic systems as tools to construct S-Boxes
cryptosystems that are compared with AES
9
CHAOS-BASED CRYPTOGRAPHY- SCHOOLS
American school

Kocarev:
- Chaosbased cryptography theoretician
- new direction in cryptography (chaos & classic)
- Public-Key encryption based on Chebyshev maps

Baptista:
- General chaotic encryption method based on searching plain text
in chaotic sequence

Tenny:
- use the non-linear dynamics to construct public-key cryptosystems

Fridrich:
- Cryptosystems for image files based on 2D chaotic maps
10
CHAOS-BASED CRYPTOGRAPHY- SCHOOLS
Spanish school

G. Alvarez:
- Analog cryptosystems based on chaotic systems
synchronisation
- VLSI implementation for dynamical chaotic systems

E. Alvarez:
- encryption method based on searching plain text in chaotic
sequence

Gonzales:
- Cryptosystem based on 3D chaotic map (Lorenz system)
FPGA implementation
11
ANALOG METHODS
chaotic masking

chaotic switching or chaos shift keying

chaotic modulation

chaos control methods

inverse system approach
12
CHAOS-BASED SECURE COMMUNICATIONS
The basic properties characterizing a secure object are
randomness-increasing and computationally unpredictable
Information
signal

Encrypted
signal

Recovered
signal
13
DIGITAL CRYPTOSYSTEMS - Directions
Stream ciphers based on chaos-based PRNG
(pseudo-random number generators)
Chaotic stream ciphers via inverse system approach
(with cipher text feedback)
Block ciphers based on forward/backward chaotic
iterations
Chaotic ciphers based on searching plain-bits in a
chaotic pseudo-random sequence
Cryptosystems based on 2-D chaotic maps for
image encryption
Block ciphers based on chaotic round function or S-
boxes
Public-key cryptosystems
14
Chaotic maps used in
cryptography
Logistic map
Quadratic map
Exponential map
Logarithmic map
Tent map
Piece Wise Linear Chaotic Map (PWLCM)
15
Chaotic map: the logistic map:

Chaos in Cryptography
1
(1 )
n n n
x x x
+
=
0 5 10 15 20 25
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
X
0
=0.
41

X
0
=0.
4

2 2.2 2.4 2.6 2.8 3 3.2 3.4 3.6 3.8 4
0
0.1
0.2
0.3
0.4
0.5
0.6
0.7
0.8
0.9
1
Sensitivity of the initial
conditions

The bifurcation diagram

X
18

X
18
16
Logistic map behavior
( 1) ( ( ))
L
x n f x n + =
( ) (1 ), ( ) (0,1)
L
f x x x x = e
:(0,1) (0,1)
L
f
17
Logistic map behavior
( 1) ( ( ))
L
x n f x n + =
( ) (1 ), ( ) (0,1)
L
f x x x x = e
:(0,1) (0,1)
L
f
18
Tent map behavior
, 0
( )
1
, 1
1
T
x
x p
p
f x
x
p x
p

< s

< <

:(0,1) (0,1)
T
f
( 1) ( ( ))
T
x n f x n + =
19
PWLCM behavior
( 1) ( ( ))
PWLC
x n f x n + =
:(0,1) (0,1)
PWLC
f
, 0
1
( ) , 0.5
0.5
(1 ) 0.5
PWLC
PWLC
x
x p
p
x
f x p x
p
f x x

< s


= < s

>

20
The best chaotic map
bifurcation diagrams PWLCM


physical resources logistic map


randomness tests - PWLCM
21
Logistic map
| | | | | | ( )
1 1 x n k x n x n + =
xe ( 0, 1) - initial condition

ke (3,57; 4] - parameter
22
Logistic generator on 32 bits VHDL simulation
x0 =0.34
k =3.996
| | | | | |
( )
1 1 x n k x n x n + =
23
Differences between Matlab and VHDL values
on 32 bits
24
Differences between Matlab and VHDL values
on 16 bits
Communications 2006
25
Logistic map values on 8 bits
26
METHODS USED
TO AVOI D DYNAMI CAL DEGRADATI ON
higher finite precision

perturbation - based algorithms

cascading multiple chaotic systems
27
Stream ciphers with chaos-based
PRBG
extracting from some bits of the chaotic orbits

determining by which interval the chaotic orbits
reach

equaling the chaotic orbits
28
Couple Chaotic Systems Based PRBG
CCS-PRBG
Tent maps

p1, p2 control parameters

x1(0) and x2(0) initial conditions

{x1(i)} and {x2(i) } chaotic orbits

Pseudo-random sequence
29
CCS-PRBG
Digital Realization with Perturbation

30

Logistic map:


Private-key system:
=3.78
x
0
=0.432031250
I=[0.2;0.8]
homogeneous split of domain

Block cipher encryption (8-bits)
) 1 (
1 k k k
X X X =
+

Specific parameters for some
chaotic cryptosystems
Bifurcation diagram
31
Baptista Method
Algorithm of Baptista:
Description:

Result

I
n
p
u
t


32
Baptista Method
Advantages:
- produce different ciphers for the same message using
logistic function
- n coefficient is known only by emitter

Disadvantages:
- slow cipher
- cipher text is bigger than plain text
- vulnerable to the attack using tables to store
plaintext/ciphertext pairs
33
Baptista Method
Attack of Jakimosky-Kocarev :

254 272 521 530 835 1120 1434 1710 2132
t s o u b j e c t
Moments of interest referenced in a table:
Recovered text : to
34
Improvements of Baptista Method

- secretly mask C
i
with a pseudo-random number stream
- pseudo-random number stream can be generated using the
chaotic system
- use look-up table
- initial iterations
35
Improvements for Algorithm of Baptista
Baptista Method
36
0 1000 2000 3000 4000 5000 6000 7000 8000
0
5
10
15
20
25
30
35
40
45
0 1 2 3 4 5 6 7
x 10
4
0
2
4
6
8
10
12
Algorithm of Baptista Algorithm of Baptista with improvements
Baptista Method
37
Method with Look-up table



*

@




@

*


Before updat e Aft er updat e
i
j
ASCII ASCII
x
min
x
max
255
0
134
88
min
max min
( ) mod
x x
j i N N
x x

= +


38
A discrete chaotic and hashing
scheme with Wong method
N
x x
x x
v

= ) (
min max
min
] mod ) 1 2 [( ] mod ) 1 [( N v i N v i + + + +
] mod ) 2 3 [( ] mod ) 2 2 [( N v i N v i + + + +
] mod )) 1 ( [( ] mod )) 1 ( ) 1 ( [( N p v p i N p v p i + + + +

39
Method with Look-up table
Clear text - Chaotic dynamical cryptosystem
Received look-up table
Computed at decryption look-up table
Modified ciphertext
40
Data integrity - Look-up table
41
Chaotic cipher based on searching the
plaintext in the chaotic sequence
Chaotic cipher based on searching
the plaintext in the chaotic
sequence

Block cipher with variable length


(x0,p) system key


Ciphertext number of iteration
42
Encryption algorithm
43
Decryption algorithm
44
Diffusion
45
External key cryptosystem
key on 128 bits


block cipher on 8 bits


logistic map




46
Encryption algorithm
47
Decryption algorithm
48
Plaintext/ciphertext distribution
49
A discrete chaotic cryptosystem using external key
Advantages:
- a symmetric key block cipher using the essence of chaos
- uses an external key for parameter and the initial condition
- the encryption of each block of plaintext is dependent on the
secret key
- encryption/decryption of the next block depends on the X
new

and C
i-1

- feedback mechanism
50
Public Key Cryptosystems based on Chebyshev Polynomials
51
Public Key Cryptosystems based on Chebyshev Polynomials
Public key generation algorithm:

1. Generating the private key s (integer)

2. Select a number x and compute the public key
(x, T
s
(x))

T
n
(x) : [1, 1] [1, 1]
T
n
(x) = 2 x T
n1
(x) T
n2
(x)

52
Public Key Cryptosystems based on Chebyshev Polynomials
Encryption steps:
Sender, in order to encrypt a message:
1. Obtains receivers authentic public key (x, T
s
(x))
2. Represents the message as a number Me [1 1]
3. Generates a large integer r
4. Computes T
r
(x), T
rs
(x) = T
r
(T
s
(x)) and X = M T
rs
(x)
5. Sends the ciphertext C = (T
r
(x),X) to receiver

T
n
(x) : [1, 1] [1, 1] T
n
(x) = 2 x T
n1
(x) T
n2
(x)

53
Public Key Cryptosystems based on Chebyshev Polynomials
Decryption steps

Receiver, in order to obtain the message:

1. Compute T
sr
(x) = T
s
(T
r
(x)) and X = M T
rs
(x)

2. Plain text is M_d=X/ T
sr
(x)

T
n
(x) : [1, 1] [1, 1] T
n
(x) = 2 x T
n1
(x) T
n2
(x)

54
Public Key Cryptosystems based on Chebyshev Polynomials

- the cryptosystem can be implemented by using any
chaotic map x
n+1
= F
p
(x
n
), F
p
(x) = f(p f
1
(x)),
F
p
(F
s
(x)) = F
ps
(x) - it enjoys the semigroup property
- Jacobian Elliptic Chebyshev Rational Maps represent a
class of maps enjoying such a property
- is not secure - an adversary can recover the plaintext
from a given ciphertext
55
Combined Cryptosystem (classical/chaotic)
56
Combined Cryptosystem (classical/chaotic)
57
Combined Cryptosystem (classical/chaotic)
Coupled chaotic maps
58
Combined Cryptosystem (classical/chaotic)
S-box
59
Combined Cryptosystem (classical/chaotic)
Since 1990s, many researchers have
noticed that there exists an
interesting relationship
between chaos and cryptography:
many properties of chaotic systems
have their corresponding
counterparts in traditional
cryptosystems that use
computational methods.
The property of ergodicity is similar
with the confusion because the
output
Since 1990s, many researchers have
noticed that there exists an
interesting relationship
between chaos and cryptography:
many prope%s of chaotic
systems have their corresponding
counterparts
@ K:tion+WEosystems
that use computational methods.
ThCES_ $6 is
(7 H
Plain text Decrypted text with a difference for
a
j
values with 0.2
60
Combined Cryptosystem (classical/chaotic)
Plain text Decrypted text with a difference for
a
j
values with 0.2
61
Combined Cryptosystem (classical/chaotic)
Since 1990s, many
researchers have noticed that
there exists an interesting
relationshipbetween ch
qRzEpF
J`63EO7y\ )
{[UysL_{e
iy=:]-:l<=
,>\5@#NCB
Plain text Decrypted text with a difference for
a
j
values with 0.2
62
Plain text Decrypted text with a difference for
a
j
values with 0.2
Combined Cryptosystem (classical/chaotic)
63
Chaotic-cryptosystems sensitivities
' 6
0 0
10 x x

= +
' 6
10

= +
' 3
min min
10 x x

= +
Plaintext / ciphertext
Key of the
cryptosystem
t e x t
Initial state 1173 2368 1185 801
1192 482 4835 244
3441 1248 184 435
1736 2420 570 376
1235 123 506 1528
' 2
max max
10 x x

= +
64
Input seed
value/ System
initialisation
Set the number of
generated bytes
Computing style
(fixed point /
double)
Save
mode
Keystream
generated
Pseudo-random generateor block
Input seed
value/ System
initialisation
Select input/
output file
Operation
encryption/decryption
Validate the
operation
Ciphertext /
Plaintext
Encryption/Decryption block
Chaos-based cryptosystems software
implementation
65
Pseudo-random generator implementation
66
Encryption algorithm
, 0
1
( ) , 0.5
1
2
(1 ) 0.5
HLC
HLC
x
x p
p
x
f x p x
p
f x x

< s


= < s

>

67
Coupled chaotic system
1
(1,1) (1 ) [ (1,1)] [ (2 2 )]
n n n
y f y f x m N c c
+
= + +
68
Aspects regarding software implementation
Fixed-point representation:
- representation precision influenced the performances
- computing speed
- advantage no dependence on the hardware system

Floating-point arithmetic:
- a discrete approximation
- operations order is important
- dependence on the hardware system
69
Chaos-based cryptosystem
hardware implementation
70
71
Encryption block
72
Logistic map
implementation
73
Logistic map simulation
74
Ciphertext distribution 8 bii
75
Confusion

Plain text Cipher text
External key method
76
DYNAMI CAL DEGRADATI ON
OF DI GI TAL CHAOTI C SYSTEMS
statistical degradation of the digital chaotic maps -
affects the properties of the chaotic cryptosystems
cause weak keys in the whole space of the chaotic
cryptosystem
in finite precision - short length cycle of chaotic
map values
precision of L (bits) - the length cycle << 2
L
77
METHODS USED
TO AVOI D DYNAMI CAL DEGRADATI ON
higher finite precision

perturbation - based algorithms

cascading multiple chaotic systems
78
The perturbation - based algorithms
PRNG - small perturbation signal S
p
(i)
S
p
(i) control the chaotic orbit at every N iterations
Configuration A: x(i+1) = F
n
(x(i)) S(i)
Configuration B: x(i+1) = F
n
(x(i) S(i))
S(i)=S
p
(i/N) if i mod N= 0 else S(i)=0
advantage - prolong cycle lengths of pseudo orbits
79
Systems with perturbation-based algorithm
Configuration A: x(i+1) = F
n
(x(i)) S(i)
Configuration B: x(i+1) = F
n
(x(i) S(i))
80
Dynamical degradation
8 bits representation
Logistic map Tent map
81
Logistic map - behaviour
on 16 bits
on 32 bits
82
Tent map - behaviour
on 16 bits
on 32 bits
83
Perturbed logistic map - 8 bits representation
N=10 iterations N=5 iterations
84
Perturbed tent map - 8 bits representation
N=10 iterations N=5 iterations
85
Logistic map in 8 bits precision
controlled by another logistic map
86
Weaknesses & I mprovements
1 1
1 2
( , )
( , )
n n
n n
x F x p
y F y p
+
+
=
=
1 1 1
1 1
n n n
n n n
x x y
y x y
+ + +
+ +
=
=
i i
i i
i mod 256 1
X' = + if X =0
256 ( i mod 256 ) +3
i mod 256 1
Y' = + if Y=0
256 ( i mod 256 ) +3
Chaotic map: apply a perturbation
Perturbation
Avoid null values
Iteration of
the map
87
Values obtained with an improved map on 8 bits
Good results with statistical tests (NIST) : 16/22
Weaknesses & I mprovements
88
Dynamical degradation of digital chaotic maps
low computing precision (small digital devices,
microcontrollers) - dynamical degradation

the periodic orbits are lower than we expected

perturbing the system we avoid the periodicity and
we improved the performances
89
How to make a good chaotic cipher
increase security using multiple chaotic systems
improve encryption speed
select an appropriate chaotic systems
simple chaotic maps
simple implementation - low cost
90
CLASSICAL METHODS vs. CHAOTIC CRYPTOSYSTEMS
Phase space: finite set of integers
Phase space: (sub)set of real
numbers
Algebraic methods Analytic methods
Rounds Iterations
Key (Boolean) - Discrete keyspace
Parameters (real) - Continuous
keyspace
Diffusion

Sensitivity to a change in
- initial condition/parameters
Digital realizations by integer
arithmetic
Digital realization by non integer
arithmetic which approximates
continuous-value systems
Security and performance ?
91
Questions about chaos-based cryptography
not answered yet


Many questions but yet few answers!
Pseudo-random
ensembles
Chaotic signals
(Chaotic
system)
unpredictable
Probabilistic
polynomial-time
Turing-machines
?
? Infinite powerful machines unpredictable
Central question of chaos-based cryptography:
Whether and under what conditions a chaotic system is unpredictable
by probabilistic polynomial-time machines?
92
Future directions
Theory about chaos in discrete space
Unpredictability of the pseudo-randomness
generated by digital chaos
Chaos in conventional ciphers
93
Conclusions
conventional ciphers and chaotic ciphers have
similarities
chaos and cryptography - systems in which a small
variations of any variable changes the outputs
systems used in chaos - real numbers
classical cryptography - finite number of integers
chaos theory could be used to explain the nonlinear
functions and operations used in conventional
ciphers
chaotic systems can be a new source of
cryptography