Vous êtes sur la page 1sur 82

HOET Thomas LORENZI Baptiste SAHIN Serdar 2 IMACS Promotion 48

2011-2012

Baptiste SAHIN Serdar 2 IMACS – Promotion 48 2011-2012 La cryptographie chaotique Alexandre Lyapunov (1857-1918)

La cryptographie chaotique

– Promotion 48 2011-2012 La cryptographie chaotique Alexandre Lyapunov (1857-1918) Mathématicien russe

Alexandre Lyapunov (1857-1918) Mathématicien russe

Soutenance : 16 Janvier 2012

HOET Thomas LORENZI Baptiste SAHIN Serdar 2 IMACS Promotion 48

2011-2012

La cryptographie chaotique

Soutenance : 16 Janvier 2012

Sommaire

Introduction

 

1

Chapitre 1 : L’utilisation du chaos pour crypter

2

1.

Généralités et petit historique

2

2.

La synchronisation des systèmes chaotiques

2

a. Synchronisation par remplacement complet

2

b. Synchronisation par couplage diffusif (rétroaction négative)

4

c. Démonstration de la synchronisation sur un attracteur de Rössler

5

3.

L’utilisation du chaos pour la communication sécurisée instantanée

7

a. Les méthodes par masquage et synchronisation

7

b. Des simulations sur la synchronisation par masquage

9

c. Les méthodes utilisant la modulation avec synchronisation

12

4.

L’utilisation du chaos dans la cryptographie informatique

13

Chapitre 2 : Réalisation d’un crypteur chaotique électronique

16

1.

Le circuit de Chua

16

a. Présentation du circuit de Chua

16

b. Etude de la diode de Chua

17

2.

Analyse d’un système de communication

17

a. Etude de la bifurcation

17

b. Choix des valeurs des composants

18

3.

Etude de la synchronisation

19

a. La faisabilité de la synchronisation

19

b. Les effets du montage de Cuomo à retour sur le signal chaotique

20

4.

Conception d’un système émetteur-récepteur

22

a.

Principe du système

22

b.

Réalisation d’un émetteur

24

c.

Réalisation d’un récepteur

25

5.

Exemple de cryptage

26

6.

Limites

28

7.

Améliorations possibles

29

Chapitre 3 : Etude des systèmes de cryptage discrets

33

1.

Etude d’un crypteur/décrypteur de fichier par la méthode de Baptista

33

b. Conception d’un crypteur/décrypteur

35

c.

Limites et améliorations possibles

40

2. Etude d’un crypteur/décrypteur d’image

42

a. Principe d'un crypteur chaotique

42

b. Algorithme du crypteur

42

Conclusion

45

Annexes

A0

Introduction

Cacher des informations particulières à certaines personnes a toujours été un des intérêts principaux de l’Homme. On a ainsi cherché à établir des techniques dites de « cryptage » afin de rendre ces informations incompréhensibles à ceux qui n’ont pas accès à une « clé » secrète. Ces techniques intéressent des personnes de divers domaines que ce soit le militaire, le commercial ou tout simplement personnel.

Au cours de l’Histoire diverses techniques cryptographiques ont été développées, les premières datant de l’antiquité comme la scytale ou le codage de César. Ces techniques primitives ont évoluées vers l’apparition des techniques de masquage, puis vers l’utilisation des machines automatisées et actuellement à l’utilisation des ordinateurs. En effet ceux-ci apportent une puissance de calcul remarquable qui a donné naissance à des techniques complexes comme le RSA ou le DES.

Dans le siècle passé, plusieurs chercheurs se sont intéressées aux comportements inhabituels des systèmes non linéaires et on a découvert que certains systèmes présentaient des instabilités de nature très étranges. Ce fût la découverte des signaux chaotiques qui ont un comportement complètement déterministe mais qui font penser à des allures pseudo- aléatoires. Une définition universelle du chaos n’existe pas vraiment, les mathématiciens qui étudient les systèmes non linéaires utilisent certaines caractéristiques de la stabilité du système (les exposants de Lyapunov) pour définir un comportement chaotique.

Ces signaux de nature très « imprévisibles » et qui ne semblaient pas être faciles à contrôler n’intéressait point les cryptologistes… ils avaient tort !

Chapitre 1 : L’utilisation du chaos pour crypter

1. Généralités et petit historique

Les oscillations chaotiques sont déterministes mais fortement sensible aux conditions initiales et présentent une allure « pseudo-aléatoire. Ces propriétés peuvent être affinées pour simuler les caractéristiques d’un bruit blanc ou d’un autre signal « aléatoire », ce qui fait du chaos un phénomène très intéressant pour cacher des signaux d’informations afin de transmettre ceux-ci d’une manière « sécurisée ».

En 1990, Pecora et Carroll ont publié un article dans lequel ils présentent la démonstration théorique et expérimentale de la possibilité de synchroniser deux systèmes chaotiques. Ici, la synchronisation signifie que deux systèmes chaotiques ayant la même structure mais forcement des conditions initiales différentes sont amenés à reproduire le même signal chaotique. Ce phénomène qui semblait être impossible pour les systèmes chaotiques (ceux-ci étant très sensibles à des perturbations sur leurs trajectoires) fut une révolution dans la communauté scientifique. C’est ainsi que l’utilisation du chaos dans la cryptographie à vue le jour.

Dans un premier temps, plusieurs montages électroniques simulant la synchronisation des systèmes de Lorenz ou Rössler ont été réalisés. Ils ont été suivis par de nombreuses configurations pour permettre la transmission de signaux « sécurisés », les plus notables étant ceux de Cuomo en 1992 qui utilisaient une transmission par masquage et étalement de spectre. Dans la décennie qui a suivie il y a eu de nombreuses autres configurations et des améliorations de celles déjà existantes. Dans notre rapport on étudiera en détail la transmission par masquage mais les configurations utilisées pourront être appliquées à d’autres techniques de communication.

Cependant, les difficultés issues de la synchronisation en temps continu ont mené certains chercheurs à mettre au point d’autre techniques de « synchronisation » comme le Chaos Shift Keying(CSK), proposé par Kolomban et Kennedy, qui est utile pour la transmission en temps continu des signaux binaires. Cela a mené les chercheurs comme Baptista à utiliser le chaos pour le cryptage d’une séquence d’information dans un alphabet donné.

2. La synchronisation des systèmes chaotiques

a. Synchronisation par remplacement complet

Pecora et Carroll ont recherché une méthode de synchronisation dite par remplacement complet et ont montré que sous certaines conditions, on peut synchroniser en ce sens deux copies d’un même système chaotique. Dans un premier temps on va étudier cette méthode de synchronisation et ses conditions puis on verra sa généralisation. Cette section utilise certaines notions de l’analyse des systèmes non linéaires qui sont définies dans l’annexe 1.

On rappelle qu’un système chaotique est défini par

 

est un

vecteur à

dimensions et ce système est très sensible aux conditions initiales. On a deux

systèmes

identiques

(de

commande)

et

(de

réponse)

de

vecteurs

d’états

respectifs

et

qui ont des conditions initiales différentes. Ces

systèmes possèdent le même attracteur chaotique mais suivent des trajectoires qui divergent exponentiellement.

La méthode de remplacement complet consiste à amener au moins un signal au système pour remplacer les signaux correspondants par ceux-ci. Donc le vecteur d’état du

système de réponse sera

On sépare alors le système en deux

sous-systèmes

tels

que

avec

et

Donc la méthode de remplacement revient à avoir

 

.

La synchronisation a lieu si

. On pose

. On veut que le système qui

définie le vecteur d’état

admette un point fixe asymptotiquement stable à l’origine. On a

On retrouve l’équation variationelle qu’on a lors de calcul des exposants de Lyapunov. Donc en utilisant les résultats de l’annexe 1, on déduit que si l’on veut que ce sous-système admette un point fixe asymptotiquement stable à l’origine, il faut que tous ses exposants de Lyapunov soient strictement négatifs. Ces exposants de Lyapunov sont dits conditionnels car ils dépendent aussi du signal de la commande . Cette étude apporte une condition minimale pour que synchronisation ait lieu sans être suffisante dans tous les cas.

Intégrateur

Intégrateur

Intégrateur
Intégrateur
Intégrateur

Fig. 1 : Décomposition d’un système autonome en deux sous systèmes

Figure 1 : Décomposition d'un système autonome en deux sous systèmes

En résumé on obtient le théorème suivant :

Théorème : On peut synchroniser ce système en utilisant la méthode de remplacement complet

est

à dimensions et

conditionnels de Lyapunov négatifs.

dimensions telle que l’un d’entre eux n’ait que des exposants

si on peut séparer ce système en deux sous systèmes

et

est à

Montage de synchronisation par remplacement complet :

Supposons que nous avons deux systèmes identiques (de commande) et (de réponse) respectant les conditions de synchronisation au sens de Pecora et Carroll. On veut que synchronise . On supposera que sera le sous système peu sensible aux perturbations. Comme nous le voyons sur le schéma ci-dessous, doit être un système autonome capable de délivrer les signaux de son sous système et le montage de la réponse doit être reconstruit de façon à recevoir le signal délivré par par . Si les conditions de synchronisation sont satisfaites, tends vers au bout d’un certains temps. Dans certains cas on peut faire une extension au montage bleu clair de la figure si est stable vis-à-vis d’un commande venant de

Canal Système de commande Système de réponse
Canal Système de commande Système de réponse
Canal Système de commande Système de réponse
Canal Système de commande Système de réponse

Canal

Canal Système de commande Système de réponse

Système de commande

Système de réponse

Fig. 2 : Montage de synchronisation par remplacement complet

Figure 2 : Montage de synchronisation par remplacement complet

b. Synchronisation par couplage diffusif (rétroaction négative)

Les recherches qui ont suivies celles de Pecora et Carroll ont montré que la synchronisation par remplacement complet n’était qu’un cas très particulier de la méthode que nous allons maintenant présenter dans ce paragraphe.

Dans la globalité on garde les mêmes notations pour le système chaotique étudié mais sans le séparer en sous-systèmes. Pour que la synchronisation ait lieu, on prend au moins un des signaux et on ajoute un facteur amortissant qui a pour valeur la différence au système de réponse. On a alors :

et

Où est le facteur de couplage et est une fonction linéaire qui définit la combinaison linéaire des signaux qui seront utilisés pour l’amortissement. Puis, similairement, on pose et on a :

Pour avoir la stabilité asymptotique on calcule les exposants de Lyapunov correspondants à

l’équation variationelle sur

les exposants les plus négatifs possibles. Si le facteur de couplage tends vers alors on se

et on choisit ce facteur de manière avoir

en fonction de

retrouve dans le cas de la synchronisation par remplacement complet car la matrice remplacera dans toutes les par Mais les exposants de Lyapunov des signaux utilisés ne seront pas forcement négatifs dans le cas limite.

Montage de synchronisation: Canal Intégrateur Intégrateur Système de commande
Montage de synchronisation:
Canal
Intégrateur
Intégrateur
Système de commande

Système de réponse

Figure 3 : Synchronisation par couplage diffusif

Fig. 3 :

Remarque : le montage de synchronisation est unidirectionnel, c’est-à-dire il est composé d'un système maitre qui commande un système esclave. On peut aussi réaliser des montages de synchronisation mutuels à couplage en ajoutant à l’équation différentielle du système dans ce cas le résultat est similaire mais les exposants dépendront de deux variables. Si on a alors les exposants de Lyapunov sont les mêmes que ceux du couplage unidirectionnel mais avec un facteur .

c. Démonstration de la synchronisation sur un attracteur de Rössler

Le système de Rössler est un système tridimensionnel défini par :

. Ce système présente un attracteur chaotique pour, par exemple,

. On étudiera la synchronisation de deux systèmes de Rössler ayant ces paramètres par les deux méthodes. Dans un premier temps nous allons étudier les exposants conditionnels de Lyapunov pour bien choisir les sous-systèmes puis on effectuera une simulation de la synchronisation sur Simulink.

Calcul des exposants pour remplacement complet:

(Sous-)Système

Exposants (conditionnelles) de Lyapunov

Commentaire

   

Vérifie les propriétés chaotiques définies dans l’annexe 1

   

N’est pas stable

   

Stable

   

N’est pas stable

en

commande et en réponse. On effectue alors le montage suivant pour comparer la performance des deux méthodes de synchronisation.

Donc la seule séparation en sous systèmes

que

l’on

peut

synchroniser

est

Figure 4 : Synchronisation sur l'attracteur de Rössler Nous avons aussi placé une copie du

Figure 4 : Synchronisation sur l'attracteur de Rössler

Nous avons aussi placé une copie du sous-système à partir du sous-système synchronisé.

en réponse pour reproduire le signal

synchronisé. en réponse pour reproduire le signal Figure 5 : Erreur de synchronisation pour différentes
synchronisé. en réponse pour reproduire le signal Figure 5 : Erreur de synchronisation pour différentes

Figure 5 : Erreur de synchronisation pour différentes conditions

Les deux courbes à droite représentent l’erreur de synchronisation avec la méthode de couplage diffusif (CD) avec des coefficients de couplages différents et ayant des conditions initiales bien écartées. Pour choisir le meilleur coefficient il faudra tracer les variations des exposants conditionnels de Lyapunov en fonction de .

Les autres courbes sont celles de la méthode de remplacement complet (RC), l’une avec des conditions initiales exactement égales, l’autre avec des conditions initiales très faiblement écartées. Les signaux et convergent très rapidement dans les deux cas, par contre le signal diverge très rapidement dès qu’une différence entre les conditions initiales apparait.

Cette divergence est surement due à l’instabilité du sous-système . Pour prouver cela, nous avons calculé l’exposant de Lyapunov du sous système commandé par le signal et nous avons constaté qu’il valait . Donc pour la méthode par RC on pourrait utiliser comme directement le signal reçu par la commande mais dans certains cas il serait intéressant de le reproduire. La méthode CD semble plus efficace sur ce point.

3. L’utilisation du chaos pour la communication sécurisée instantanée

a. Les méthodes par masquage et synchronisation

La communication sécurisée par masquage consiste à cacher un signal d’information dans un autre signal qui a un spectre plus répandu et qui a une allure pseudo-aléatoire. On transmet le signal dans le but de réduire la possibilité d’interception de . Au récepteur on reproduit le même signal pseudo-aléatoire pour l’enlever à afin de retrouver .

Figure 6 : Spectre d'un signal d'information et signal chaotique
Figure 6 : Spectre d'un signal d'information et signal chaotique

On souhaite mettre en place un tel système de communication en utilisant un signal chaotique pour masquer le signal d’information. Pour produire le chaos il faut avoir au moins un système à trois dimensions Supposons que ce système chaotique est synchronisable et a pour sous système stable . Alors un premier montage simple que l’on peut imaginer serait celui donné sur la figure7.

montage permet la

transmission avec peu d’erreurs (dues aux bruits venant du canal)

du signal mais ce montage comporte beaucoup de défauts :

Quel que soit le montage de transmission par masquage, pour bien cacher le signal il faut que soit beaucoup plus grand que le

signal donc va avoir une allure globalement similaire à . D’autre part on transmet le signal aussi donc les intercepteurs ont accès aux allures de deux signaux chaotiques et produits par le système ce qui peut leurs permettre de facilement identifier le système.

Canal Système émetteur Système récepteur
Canal
Système émetteur
Système récepteur

Figure 7 : Communication par masquage direct

Ce

En 1993, Cuomo a proposé un montage beaucoup plus intéressant pour ce type de communication. En effet, au lieu de transmettre deux signaux, il est possible de réaliser un montage avec seulement le signal chaotique qui commandera le sous-système stable au récepteur. Le signal sera masqué par celui-ci avec une faible amplitude. Le sous-système étant stable aux perturbations qui viendraient du signal d’information, il pourra se synchroniser correctement. On illustre ce montage sur la figure 8 où le sous-système stable est et serait le signal chaotique de commande. Par contre, cette technique nécessite que le sous-système soit stable en étant commandé par .

Canal Système émetteur Système récepteur
Canal
Système émetteur
Système récepteur

Figure 8 : Montage de Cuomo

Ce montage a l’avantage de révéler moins d’informations sur la nature du système mais la synchronisation sera évidemment moins bien donc le signal récupéré peut être bruité. En choisissant un rapport d’amplitude suffisamment bas et ayant un qui a un spectre assez large et régulier, ce système peut être assez efficace pour la sécurisation de l’information. Néanmoins, comme toute méthode de masquage, le système est susceptible d’être identifié en ayant l’allure de .

En 1996 une amélioration de ce montage avec un bouclage de l’émetteur sur lui-même a été proposée et cette méthode assure une synchronisation de plus grande qualité mais en

introduisant le risque de déformation du signal chaotique trop grande.

généré si l’amplitude du signal

est

Canal Système émetteur Système récepteur
Canal
Système émetteur
Système récepteur

Figure 9 : Montage de Cuomo avec retour

Ce système peut permettre de récupérer un signal quasiment parfait si le bruit sur le canal et venant des composants du montage est très faible. Mais le signal chaotique dépendra de donc il faudra faire une étude des limites d’amplitude et de spectre à respecter selon le système étudié.

b. Des simulations sur la synchronisation par masquage

Nous allons comparer les performances de ces deux derniers montages pour le cryptage d’une sinusoïde pure sur un système de Lorenz avec une simulation sur Simulink.

Le système de Lorenz est un système tridimensionnel similaire à celui du Rössler mais qui produit une attracteur plus complexe. Il est définie par

, pour

on obtient deux attracteurs chaotiques.

(Sous-)Système

Exposants (conditionnelles) de Lyapunov

Commentaire

   

Vérifie les propriétés chaotiques définies dans l’annexe 1

   

Non Stable

   

Stable

   

Stable

On choisit comme signal de commande et comme sous système stable car ceux-ci

ont des exposants beaucoup plus négatifs que les autres, ce qui assure une meilleure stabilité. D’autre par l’exposant de Lyapunov du système en réponse commandée par vaut

par RC.

donc on peut synchroniser la variable

Dans les montages suivants le signal

chaotique masquant

.

à une amplitude de -20dB comparé au signal

Le montage de Cuomo simple

On a constaté que la synchronisation a lieu quelles que soient les conditions initiales mais le temps du régime transitoire augmente avec la différence entre les conditions initiales.

augmente avec la différence entre les conditions initiales. Figure 10 : Montage de Cuomo simple Avec

Figure 10 : Montage de Cuomo simple

Avec une sinusoïde pure à 16 Hz, on obtient :

Cuomo simple Avec une sinusoïde pure à 16 Hz, on obtient : Figure 11 : Résultat
Cuomo simple Avec une sinusoïde pure à 16 Hz, on obtient : Figure 11 : Résultat

Figure 11 : Résultat de communication

On constate que la synchronisation entre les signaux chaotiques est assez bonne surtout en fréquence et en phase mais il y a des faibles différences en amplitude. Cette différence fait que le signal récupéré comporte des parasites en amplitude qui montent jusqu’à 20% du signal. Elle a une allure correcte mais un filtre passe-bas pourrait l’améliorer.

Une sinusoïde pure à 950 Hz donne les courbes suivantes :

Une sinusoïde pure à 950 Hz donne les courbes suivantes : Figure 12 : Résultat de

Figure 12 : Résultat de communication

On constate que pour des signaux d’information avec des fréquences plus hautes, la synchronisation est meilleure. En effet ceci est du à l’effet filtre qui est appliqué sur le signal dans les sous systèmes de réception qui peuvent éliminer le signal d’information et donc avoir moins de perturbations sur . Pour un masquage efficace il faut transmettre des signaux qui ont un spectre couvert par celui du signal chaotique et qui sont atténués au maximum par les sous systèmes : il faut faire un compromis entre la sécurité et la propreté de la transmission. On n’effectuera pas cette étude sur cet exemple simple mais on le verra plus tard dans le montage de Chua.

Le montage de Cuomo à retour

Ce montage a l’avantage de réaliser une synchronisation parfaite donc un signal récupéré très propre dans des hypothèses idéales et l’absence de bruit mais il déforme le signal chaotique utilisé.

idéales et l’absence de bruit mais il déforme le signal chaotique utilisé. Figure 13 : Montage

Figure 13 : Montage de Cuomo à retour

En utilisant une sinusoïde pure à 160 Hz on a les courbes suivantes :

une sinusoïde pure à 160 Hz on a les courbes suivantes : Figure 14 : Résultat

Figure 14 : Résultat de communication

La synchronisation des signaux sera toujours parfaite en raison de la structure du montage mais la fréquence et l’amplitude des signaux à transmettre seront limités car ils modifient le signal chaotique : si le signal masquant perd sa propriété chaotique alors le montage n’a plus d’intérêt. Mais comparé à l’autre méthode présentée, celle-ci présente une gamme de fréquence d’utilisation beaucoup plus large.

Nous n’avons vu que le cas de transmission des signaux sinusoïdaux, en effet lorsqu’on transmet un signal beaucoup plus complexe en général la transmission est meilleure car le spectre est beaucoup plus étalé et le signal d’information est beaucoup plus difficile à détecter en regardant le signal crypté.

c. Les méthodes utilisant la modulation avec synchronisation

Il existe bien évidemment d’autres méthodes plus efficaces pour crypter que de faire une simple somme de signaux parmi celles-ci on note notamment celles de la modulation. Il existe différentes techniques de modulation pour le chaos comme par modulation sur fréquence (chaotic frequency modulation : CFM), par étalement de spectre (spread spectrum communication) ou par déplacement de chaos (chaos shift keying : CSK) et on peut même utiliser notre créativité pour mettre en place un algorithme de modulation qui nous est propre, à condition d’assurer que ça fonctionne. Ici nous n’allons pas donner plus de détails sur ces techniques mais dans la partie sur le circuit de Chua on donnera un exemple un peu plus concret de l’utilisation de CSK. On présente ci-dessous un schéma atypique qui donne une idée sur ces méthodes :

Signal d’information Modulateur Démodulateur Signal décrypté Signal crypté Traitement du signal (filtre
Signal d’information
Modulateur
Démodulateur
Signal décrypté
Signal crypté
Traitement du signal
(filtre blanchissant)
Canal
Traitement du signal
(filtre blanchissant)
Synchronisation
Système
Système
chaotique
chaotique
Figure 15 : Montage généraliser avec modulation

Ici l’étape de traitement de signal consiste à modifier les propriétés du signal chaotique afin de lui donner une allure plus « pseudo-aléatoire » et mieux adapté aux méthodes de modulations.

En particulier on peut annoncer les trois axiomes qu’un signal à allure pseudo-aléatoire doit satisfaire selon S. W. Golomb :

Avoir une densité repartie équitablement comme la loi uniforme, à peu près constante.

• Avoir une fonction d’auto-corrélation nulle partout sauf en 0.

• Avoir une fonction d’inter-corrélation nulle avec d’autres signaux pseudo aléatoires ou de même nature que lui mais avec des conditions initiales différentes.

En effet on essaye toujours d’amener les signaux chaotiques vers ce modèle idéal avant de les utiliser.

4. L’utilisation du chaos dans la cryptographie informatique

Avec la découverte de la possibilité de synchronisation, des chercheurs ont étudié d’autres techniques de contrôle des systèmes chaotiques. Ils ont constaté qu’en utilisant des petites perturbations on pouvait contrôler le chaos et diriger sa trajectoire dans un endroit souhaité de l’espace de phase. Ce fait a donné naissance à des techniques de cryptage ou de communication sécurisée. En effet le transmetteur envoie des faibles perturbations pour diriger la trajectoire d’un système chaotique dans le récepteur vers des régions spécifiques de l’espace de phase qui correspondent à un élément de l’alphabet. Les perturbations sont générées de manière à diriger la trajectoire sur les régions correspondant aux lettres de notre message, décodé par le récepteur.

Jusque là nous avons seulement étudié le cryptage des signaux en temps réel dans le cadre d’un système de communication. Nous allons maintenant nous intéresser au cas des signaux représentant des données informatiques comme un texte, une image ou un fichier quelconque qui peuvent être stockés. Remarquons dans un premiers temps que tout ce que l’on a vu pour les signaux analogiques peut être aussi appliqué à des signaux numériques. Par exemple, on

pourrait considérer les octets d’un fichier comme un échantillonnage d’un signal temporel et on peut échantillonner le signal chaotique et appliquer les mêmes techniques de masquage ou modulation sur ces données. En plus la synchronisation ne poserait pas un problème car il suffit de poser les conditions initiales comme une clé secrète pour le décryptage. Mais dans le cadre de ce rapport nous allons étudier des algorithmes qui utilisent le chaos d’une manière plus intelligente.

Nous allons d’abord voir la méthode de Baptista qui consiste à utiliser la trajectoire de la suite logistique dans son espace de phase qui est découpé en plusieurs régions correspondant à des éléments de l’alphabet. Puis nous allons voir une différente technique qui utilise l’attracteur de Lorenz pour crypter une image.

Sources :

- M. Pecora, T. L. Carroll, « Synchronization in chaotic systems », Physical Review Letters 64

L.

p. 821-824 (1990)

- M. Pecora, T. L. Carroll, « Synchronizing chaotic circuits », IEEE Transactions on Circuits and

L.

Systems , Volume: 38, Issue: 4, Pages: 453-456 (1991)

- M. Pecora, T. L. Carroll, « Driving systems with chaotic signals », Physical Review A 44

L.

p. 2374-2383 (1991)

- M. Pecora, T. L. Carroll, « Synchronized chaotic signals and systems », IEEE International

L.

Conference on Acoustics Speech and Signal Processing , Volume: 4, Pages: 137-140, (1992)

- K. M. Cuomo, A. V. Oppenheim, S. H. Isabelle, « Spread spectrum modulation and signal masking using synchronized chaotic systems », RLE Technical Report No. 570, February 1992

- K. M. Cuomo, « Synchronization of Lorenz-based chaotic circuits with applications to communications », IEEE Transactions On Circuits And Systems-11: Analog And Digital Signal Processing, Vol. 40, No. 10, October 1993

- V. Milanovid and M.E. Zaghloul, « Improved masking algorithm for chaotic communications systems », Electron. Lett. -- Volume 32, Issue 1, p.1112 -- 4 January 1996

- L. M. Pecora, T. L. Carroll, G. A. Johnson, D. J. Mar, J. F. Heagy, « Fundamentals of synchronization in chaotic systems, concepts, and applications », Chaos 7, 520 (1997)

Chapitre 2 : Réalisation d’un crypteur chaotique électronique

1. Le circuit de Chua

a. Présentation du circuit de Chua

Un circuit électronique doit respecter certaines conditions pour montrer un comportement chaotique, appelés critères chaotiques. Il doit contenir :

Un élément non linéaire ou plus.

Une résistance localement active ou plus.

Trois éléments de stockage d’énergie ou plus.

En 1983, l’ingénieur Leon Ong Chua a mis au point le plus simple circuit électronique respectant ces critères. Il comporte deux condensateurs, une bobine, une résistance active et une diode de Chua. La diode de Chua peut être réalisée de différente manière, nous avons choisis de la faire à l’aide de deux montages à impédance négative en parallèle.

Voici un circuit de Chua que nous avons réalisé à l’aide du simulateur Isis Proteus :

V C2 V C1
V C2
V C1

Figure 16 : Un circuit de Chua

Au sein de ce circuit, on déduit des lois de Kirchhoff les équations suivantes :

b. Etude de la diode de Chua

La diode de Chua représente l’élément non linéaire du circuit. Nous avons réalisé une étude de cet élément (disponible en Annexe 2) qui nous a permis de connaitre sa réponse en courant. Nous en avons déduit le graphe suivant :

en courant. Nous en avons déduit le graphe suivant : Figure 17 : Caractéristique i=f( )

Figure 17 : Caractéristique i=f(

) de la diode de Chua

2. Analyse d’un système de communication

a. Etude de la bifurcation

En appliquant les lois de Kirchhoff dans le circuit de Chua que nous avons réalisé, nous obtenons le système d’équations suivant :

Ces équations sont difficiles à manipuler pour de l’analyse théorique ou numérique du comportement. On préfère alors les normaliser et les écrire sous une forme sans dimension.

Pour cela on effectue les changements de variables et on effectue

une l’homothétie temporelle

. Cela nous permet d’écrire ce système avec :

Où Figure 18 : Diagramme de bifurcation du système d’équation normalisé du circuit de Chua 1

Figure 18 : Diagramme de bifurcation du système d’équation normalisé du circuit de Chua 1

L’image ci-dessus nous montre le comportement du système en fonction des paramètres et . Ces deux paramètres sont dépendants des valeurs des composants du système. Si nous choisissons et dans la zone bleu, le système va converger vers un point. Dans la zone verte,

Dans la zone jaune on a un attracteur chaotique

le système sera périodique autour d’un

similaire à celui de Rössler. La zone rose foncé nous amène à un système qui oscille autour de deux points et finalement, la zone rose clair est un cycle limite stable.

Nous souhaitons nous trouver dans la zone rose foncé, qui nous permettra d’avoir un système qui oscille entre deux points. En effet, il s’agit du comportement typique d’un circuit de

Chua. Nous choisissons donc le couple .

b. Choix des valeurs des composants

Nous pouvons donc en déduire la valeur des composants

:

1 IEEE Trans. Circuits and Systems-I, Volume 33, Issue 11, 1986

modéliser

l’élément non linéaire.

On trouve alors que approximativement cela.

Nous avons simulé le circuit de Chua avec ces valeurs et nous obtenons bien le comportement souhaité. L’affichage à l’oscilloscope de la tension V C2 en fonction de la tension V C1 donne le graphe suivant, typique des système chaotique :

qui satisfont

On

prend

qui

sont

souvent

utilisés

pour

: qui satisfont On prend qui sont souvent utilisés pour Figure 19 : Vc2 en fonction

Figure 19 : Vc2 en fonction de Vc1

3. Etude de la synchronisation

a. La faisabilité de la synchronisation

La synchronisation est le principal problème que l’on rencontre dans un circuit crypteur comme celui que nous avons réalisé. Il s’agit ici de faire en sorte que les signaux chaotiques soient identiques et synchronisés dans le temps. Si ces conditions ne sont pas vérifiées, le récepteur ne pourra pas correctement restituer le signal contenant l’information. En effet, si l’on soustrait un signal chaotique différent ou non synchronisé avec celui que l’on a ajouté à , la sortie du récepteur sera différente de l’entrée de l’émetteur.

Pour réaliser ce système de communication nous avons décidé d’utiliser le montage de Cuomo à retour que nous avons étudié dans le chapitre précédent. Pour pouvoir appliquer ce montage il faut que notre circuit soit décomposable en deux sous-systèmes où chacun est stable vis-à-vis de l’autre. Pour cela on calcule les exposants de Lyapunov des différents sous- systèmes :

(Sous-)Système

Exposants (conditionnelles) de Lyapunov

Commentaire

   

Vérifie les propriétés chaotiques définies dans l’annexe

1

   

N’est pas stable

   

Stable

   

Stable

On a deux possibilités pour choisir le sous-système qu’on veut stabiliser mais on choisit car il a des exposants conditionnels plus négatifs, et donc plus stable que l’autre. Maintenant nous devons vérifier que le sous-système est stable vis-à-vis de et cela est

vérifié car son exposant de Lyapunov conditionnel vaut

.

Nous réalisons la séparation de ces deux sous-systèmes en utilisant deux amplificateurs

opérationnels en montage suiveur et en utilisant une copie de la résistance

.

b. Les effets du montage de Cuomo à retour sur le signal chaotique

Dans le chapitre 1 on a vu que le montage de Cuomo modifié avec un rebouclage du système maitre sur lui-même permettait de réaliser une communication par masquage avec une très bonne synchronisation. Mais ce montage avait le défaut de déformer le signal chaotique dans certains cas. Cela peut réduire significativement la sécurité du système de communication :

pour observer plus précisément les effets de cela nous allons faire une petite étude analytique sur le circuit de Chua.

Si on réécrit les équations de Chua en considérant le montage de Cuomo, on a récepteur :

Où on suppose que

est le signal d’information.

au

En dérivant l’équation sur

on a :

et . L’équation qu’on a obtenue est une équation différentielle

linéaire à coefficients constants et second membre variable dans le temps dont une partie est composée par le comportement chaotique autonome et l’autre partie vient du signal d’information. En utilisant la propriété de la linéarité, on a :

Avec

Il est facile de déterminer la solution parasite en régime permanant en utilisant la transformée de Laplace (variable de Laplace sera noté ) en supposant des conditions initiales nulles et en notant

Figure 20 : Diagramme de Bode

Figure 20 : Diagramme de Bode

 

On

a

et

En utilisant ces

. paramètres on dessine le

diagramme

de

Bode de cette fonction de transfert. On en

déduit qu’en régime permanant on

a :

possède l’allure sur la figure 20, c'est-

à-dire,

et

on

perd

par

décade.

Nous avons aussi dessiné la réponse de la fonction de transfert précédemment déterminée vis-à-vis de

Nous avons aussi dessiné la réponse de la fonction de transfert

précédemment déterminée vis-à-vis de la

fonction de Heaviside sur la figure 21 pour déterminer la durée du régime

transitoire qui dure environ

.

 

Ayant la solution de

on peut

maintenant

déterminer

les

effets

de

sur

 

.

Figure 21 : Réponse indicielle

Figure 22 : Diagramme de Bode
Figure 22 : Diagramme de Bode

On ne peut pas directement utiliser les équations différentielles cette fois car on a des membres non linéaires qui varient en fonction de c’est pour ça qu’on utilise le Control System Toolbox de Matlab pour linéairiser le sous-système et déterminer son diagramme de Bode en fonction de son entrée .

21

pour des basses

fréquences, puis on subit

Donc en superposant les deux fonctions de transfert, on peut dire que pour des fréquences éloignées de avec une amplitude raisonnablement faible devant l’amplitude du signal

chaotique on peut réduire les effets du signal Ces effets restent un peu imprévisibles en

. Si le signal attaque avec une amplitude assez

grande et une fréquence pas très éloignée de le signal s risque de s’amplifier et de détruire le chaos.

raison de la non linéarité sur la tension

par décade à partir d’environ

On observe un gain qui est de type passe bas qui vaut environ

.

4. Conception d’un système émetteur-récepteur

a. Principe du système

Nous souhaitons réaliser un système de communication sécurisé. Nous divisons donc ce système en deux parties : l’émetteur et le récepteur.

L’émetteur doit prendre en entrée un signal contenant une information et donner en sortie le signal crypté.

Le récepteur doit prendre en entrée le signal crypté et donner en sortie le signal contenant l’information.

Pour cela, nous allons nous aider du circuit de Chua étudié précédemment. Ce circuit nous permet d’introduire un signal chaotique qui sera utilisé pour crypter et décrypter les signaux.

issu du circuit de Chua,

l’émetteur réalisera l’opération . A l’inverse, le récepteur fera l’opération , où est le signal chaotique généré dans le récepteur.

Si l’on considère un signal d’information

et le signal chaotique

Emetteur Récepteur
Emetteur
Récepteur

Figure 23 : Montage de masquage de Cuomo avec retour

Figure 24 : Détail de Sous-système 2 (x---(y,z)) E Figure 25 : Détail de Sous-système

Figure 24 : Détail de Sous-système 2 (x---(y,z)) E

Figure 24 : Détail de Sous-système 2 (x---(y,z)) E Figure 25 : Détail de Sous-système 1

Figure 25 : Détail de Sous-système 1 (x---(y,z)) E

E Figure 25 : Détail de Sous-système 1 (x---(y,z)) E Figure 26 : Détail de la

Figure 26 : Détail de la fonction NR1 présente dans Sous-système 1 (x---(y,z))E

Les sous-systèmes du récepteur sont identiques à ceux de l’émetteur (seuls les noms des variables d’entrés et de sorties changent).

b. Réalisation d’un émetteur

Notre émetteur est constitué d’un circuit de Chua et d’un sommateur. Voici le schéma du circuit que nous avons réalisé :

Voici le schéma du circuit que nous avons réalisé : Figure 27 : Schéma électronique de

Figure 27 : Schéma électronique de l’émetteur

Etudions le montage sommateur :

En posant

De plus, nous prenons des valeurs de résistances élevées pour qu’il y ait adaptation en impédance.

La mise en place du suiveur dans le circuit de Chua nous permet de le séparer en deux sous systèmes comme nous l’avons fait dans la partie précédente. Les deux autres suiveurs permettent de faire une adaptation en impédance.

Notre émetteur réalise bien la fonction souhaitée. En effet, on trouve en entrée le signal contenant l’information et en sortie la somme de ce signal avec le signal chaotique, c’est-à-dire le signal crypté.

c. Réalisation d’un récepteur

Notre récepteur est constitué

du même circuit de Chua que l’émetteur et d’un montage

différentiel. Voici le schéma du circuit que nous avons réalisé :

Voici le schéma du circuit que nous avons réalisé : Figure 28 : Schéma électronique du

Figure 28 : Schéma électronique du récepteur

Etudions le montage différentiel :

En posant

De plus, nous prenons des valeurs de résistances élevées pour qu’il y ait adaptation en impédance.

La raison de la présence de trois suiveurs est identique à ceux de l’émetteur. C’est-à-dire qu’ils permettent de distinguer les deux sous-systèmes et de faire des adaptations en impédances.

L’émetteur réalise bien la fonction souhaitée. En effet, on trouve en entrée le signal crypté et en sortie le signal contenant l’information.

5. Exemple de cryptage

Nous choisissons un extrait de musique comme signal d’entrée. Cela nous permettra de voir rapidement si le signal de sortie est bien fidèle au signal d’entrée. Nous avons simulé l’allure des différents signaux que l’ont trouve dans notre circuit lorsque l’on applique cet extrait en entrée, les voici :

lorsque l’on applique cet extrait en entré e, les voici : Figure 29 : Signal s(t),

Figure 29 : Signal s(t), entrée de l’information (extrait d’une musique)

s(t), entrée de l’information (extrait d’une musique) Figure 30 : Signal chaotique x(t) (émetteur) Figure 31

Figure 30 : Signal chaotique x(t) (émetteur)

musique) Figure 30 : Signal chaotique x(t) (émetteur) Figure 31 : Signal crypté r(t) On remarque

Figure 31 : Signal crypté r(t)

On remarque le que signal chaotique

ressemble fortement au signal

Cela est logique, car l’amplitude du signal chaotique est de 10V alors que celle du signal d’entrée n’est que de 200mV.

Figure 32 : Signal chaotique x’(t) (réce pteur) Figure 33 : Signal s’(t), (sortie de

Figure 32 : Signal chaotique x’(t) (récepteur)

Figure 32 : Signal chaotique x’(t) (réce pteur) Figure 33 : Signal s’(t), (sortie de l’information)

Figure 33 : Signal s’(t), (sortie de l’information)

Figure 33 : Signal s’(t), (sortie de l’information) Figure 34 : Signal d’entrée s en fonction

Figure 34 : Signal d’entrée s en fonction du signal de sortie s’

Le signal étudié étant une musique, nous constatons en écoutant que le son en sortie est semblable à celui en entrée. Cependant nous pouvons entendre un très léger bruit de fond. Il semble tout de même négligeable. De façon plus rigoureuse, nous constatons que la courbe de en fonction de est proche de l’identité, cela nous prouve bien que le signal de sortie est quasi identique au signal d’entrée. Nous pouvons donc affirmer que

Figure 35 : Spectre de Fourier du signal chaotique r (rou ge) et du signal

Figure 35 : Spectre de Fourier du signal chaotique r (rouge) et du signal contenant l’information s (bleu)

Pour dessiner ce graphe, nous avons mis une amplitude de sur le signal d’entrée afin qu’il soit visible sur le graphe du spectre. Nous constatons que le spectre du signal contenant l’information est correctement dissimulé dans le spectre du signal crypté. Le signal est donc transmis en toute sécurité.

6. Limites

Nous constatons que le signal d’entrée ne doit pas dépasser une certaine amplitude. En effet, au delà de , le signal déstabilise le signal chaotique . Si l’on dépasse cette valeur, le cryptage n’est plus assuré de façon sécuritaire, cependant on retrouve quand même un signal de sortie cohérent avec le signal d’entrée. Pour limiter ce problème, nous fixons l’amplitude du signal d’entrée à 200mV.

nous fixons l’amplitude du signal d’en trée à 200mV. Figure 36 : Allure de la déstabilisation

Figure 36 : Allure de la déstabilisation du signal chaotique x pour une entrée s dont l’amplitude est supérieure à

1.4V

D’un point de vue de la sécurité, le spectre de Fourier du signal d’entrée doit être compris dans le spectre du signal chaotique. Dans le cas le plus défavorable, on transmet une sinusoïde pure. On verrait dans le spectre du signal crypté une pointe à la fréquence de cette sinusoïde. Alors, nous ne pouvons pas dire que le signal est transmis en toute sécurité puisqu’une analyse du spectre du signal crypté pourrait amener à retrouver la fréquence de la sinusoïde. Cependant, le fait de limiter le signal d’entrée en amplitude à 200mV permet de réduire les effets de ce problème. Il en résulte qu’une transmission d’une sinusoïde pure est peu sécurisée si elle a une fréquence supérieure à environ 500Hz. Nous avons simulé l’allure du spectre du signal crypté pour différentes amplitudes d’entrées et différentes fréquences de sinusoïdes pures en entrée.

Spectre de Fourier du signal crypté

(rouge) et du signal d’entrée

, une sinusoïde pure (bleu) :

et du signal d’entré e , une sinusoïde pure (bleu) : Figure 37 : Déformation du
et du signal d’entré e , une sinusoïde pure (bleu) : Figure 37 : Déformation du
et du signal d’entré e , une sinusoïde pure (bleu) : Figure 37 : Déformation du
et du signal d’entré e , une sinusoïde pure (bleu) : Figure 37 : Déformation du

Figure 37 : Déformation du spectre par une sinusoïde

La bande passante du spectre du signal chaotique est d’environ 0kHz – 4 kHz. En effet, les fréquences au delà de 4kHz ne seront pas ou très peu masquées par le signal chaotique, puisque le spectre de celui-ci devient très faible une fois cette fréquence dépassée.

Comme tout système chaotique, le circuit est hypersensible aux conditions initiales. Cela pose un problème pour la réalisation de ce système. Les valeurs des composants dans l’émetteur et dans le récepteur doivent être précises sous peine de ne pas pouvoir reconstituer correctement le signal chaotique et donc de ne pas pouvoir décrypter correctement le signal.

7. Améliorations possibles

La plupart des limites qu’on a vues proviennent de l’utilisation de la technique de masquage notamment ceux liées à la bande passante faible du signal chaotique généré par le système de Chua.

On peut toujours maintenir cette technique de montage mais changer le signal chaotique utilisé. En effet le spectre du signal chaotique généré par le circuit de Chua n’est pas uniforme comme on le souhaiterait et présente même des pics à certaines fréquences ce qui fait qu’on

Une solution pour régler ces problèmes serait

peut parfois observer des allures périodiques.

l’utilisation d’une filtre blanchissant comme dont nous avons parlé dans le chapitre 1 afin d’approcher le signal chaotique du modèle idéal de Golomb. Cela nécessiterait deux copies du filtre, à l’émetteur et au récepteur et un autre filtre qui réalise l’inverse de l’autre qu’on utilisera pour faire les bouclages.

Une autre solution possible serait de carrément changer le système chaotique utilisé, par exemple un système de Lorenz peut assurer une bande passante un peu plus large jusqu’à environs mais cela ne résous pas le problème totalement. Mais il existe une solution bien meilleure : l’utilisation des systèmes à équations différentielles à retard. En effet lorsqu’on utilise un système d’équations différentielles ordinaire d’ordre l’espace des phases est à dimension et les attracteurs chaotiques possibles ne peuvent pas dépasser les dimensions. L’utilisation d’une équation différentielle à retard rend la dimension de l’espace phase infinie et la dimension des attracteurs chaotiques restes finis mais peut atteindre des centaines ! Les signaux générés par de tels attracteurs possèdent des spectres uniformes sur une bande passante aussi large que l’on veut. On peut citer en particulier une

équation très simple à implémenter :

en particulier une équation très simple à implémenter : Figure 38 : Attracteur chaotique avec le

Figure 38 : Attracteur chaotique avec le système de Mackey

où est une fonction non

linéaire, le retard sur

du système. Une des équations de ce type la plus étudié est celui de Mackey où

. On peut concevoir des circuits électroniques analogiques qui réalisent ce signal assez

facilement comme un filtre RC, un circuit de retard avec des réseaux de filtre LCL en forme de T (qui à par contre une bande passante limitée pour réaliser un retard constant, des circuits à retards numériques sont plus fiables pour des large bande passantes) et l’élément non linéaire en utilisant quelques transistors et amplificateur opérationnels.

D’autres types d’améliorations peuvent être amenés en maintenant le système de Chua mais en utilisant des techniques de communication plus complexes. En effet le cas particulier de Chua est un très mauvais exemple, ce circuit possède des caractéristiques plutôt faibles pour une communication sécurisée. La marine américaine avait tenté de l’utiliser pour établir un système de communication sécurisée avec ses sous-marins mais le montage bien sécurisé qu’ils avaient établi au bout des nombreuses études avait un débit de l’ordre d’un bit par jour… 2 Par contre il existe une technique de modulation appelée codage par déplacement de chaos (Chaos Shift Keyin, CSK) particulièrement efficace pour la transmission des signaux binaires en utilisant le système de Chua. Dans l’émetteur, une modulation du signal chaotique est réalisée en mettant en place une diode de Chua qui modifie sa valeur pour des états bas ou pour des états hauts et au niveau du récepteur on possède deux circuits de Chua dont l’un synchronise qu’avec des états bas, l’autre qu’avec des états hauts. Puis en étudiant les corrélations de signaux synchronisés et signaux reçu on peut retrouver les états hauts et les états bas.

et

la constante de temps

2 D’après P. Acco

Figure 39 : Emetteur et Récepteurs du montage par CSK 31
Figure 39 : Emetteur et Récepteurs du montage par CSK 31
Figure 39 : Emetteur et Récepteurs du montage par CSK 31

Figure 39 : Emetteur et Récepteurs du montage par CSK

Sources :

- L. Chua, M. Komuro, T. Matsumoto, « The double scroll family », IEEE Trans. Circuits and Systems-I, Volume 33, Issue 11, 1986

- L.J. Kocarev, K.S. Halle, K. Eckert, L.O. Chua , U. Parlitz, « Experimental demonstration of secure communication via chaotic synchronization », International Journal Of Bifurcation And Chaos, Volume: 2, Issue: 3, Pages: 709-713 (1992)

- R. Kılıç, A practical guide for studying Chua’s circuits, World Scientific Series on Nonlinear Science, 2009, 220 pages

- T.H.A. v.d. Broek, « Chua’s Circuit : Synchronisation », Technische Universiteit Eindhoven,

2004

- Namajūnas, K Pyragas, A. Tamaševičius, « An electronic analog of the Mackey-Glass system », Physics Letters A 1995

- L. Larger, J.P. Goedgebuer, « Dynamiques chaotiques appliquées à la cryptographie. De nouveaux outils pour la sécurisation de l’information », Société française d'optique, Orsay, FRANCE (2001) (Revue)

- H. Dedieu, M.P. Kennedy, « Chaos Shift Keying : Modulation and Demodulation of a Chaotic Carrier Using Self-Synchronising Chua’s Circuits », IEEE 1995

Chapitre 3 : Etude des systèmes de cryptage discrets

1. Etude d’un crypteur/décrypteur de fichier par la méthode de Baptista

En 1998, M.S Baptista a publié un article dans lequel il présente un algorithme simple pour crypter un message écrit dans un alphabet à caractères en utilisant les propriétés chaotiques de la suite logistique. Dans l’annexe 3 on vous présente une étude des bifurcations de cette attracteur chaotique. Dans cette partie on commencera par vous présenter le fonctionnement général de la méthode de Baptista suivie par la conception d’une application de cryptage et de décryptage qui utilise cette méthode. Pour finir on étudiera les faiblesses et les améliorations possibles de cette technique.

a. Description de la méthode de Baptista

Cette méthode consiste globalement à diviser l’intervalle de phase d’un attracteur chaotique à une dimension en autant de sous intervalles qu’on a des caractères différents. Puis le nombre d’itérations nécessaires pour que l’orbite chaotique entre dans l’intervalle correspondant au caractère qu’on veut coder est utilisé comme le « caractère » crypté. Comme il existe plusieurs codages possibles pour un même caractère, on utilise un nombre pseudo- aléatoire pour choisir l’un d’entre eux.

en

utilisant la méthode généralisée de Baptista on commence par définir les caractéristiques du système :

On choisit un système chaotique discret à une dimension avec une fonction qui définit la relation de récurrence

Si on veut crypter un message écrit dans un alphabet à

caractères

On choisit un intervalle qu’on divise en intervalles définies par

avec

On définit une application bijective

à chaque intervalle) et une fonction

(donc on associe un unique caractère

On choisit le vecteur de paramètres de et

tels que

et tels que veut qu’au bout de chaque intervalle.

. Autrement dit, on itérations, l’orbite du système chaotique passe au moins une fois par

Alors la procédure de cryptage d’un message

Demander à l’utilisateur une clé

et un paramètre

est :

. On pose

On

lit

le

ème

caractère

et

on

itère

la

relation

de

récurrence

Puis on itère cette relation tant qu’on n’a pas atteint

obtenir

itérations et à chaque

fois

pour

itération

on vérifie si

Lorsqu’on trouve un pratique) et si on a

.

qui satisfait cette égalité on génère un nombre aléatoire on pose notre caractère crypté comme

(pseudo-aléatoire en

et on recommence la procédure avec le caractère suivant. Sinon on continue à

itérer.

On répète ces étapes pour tous les caractères du message à coder.

La procédure de décryptage est :

Demander à l’utilisateur la clé qui était utilisée pour crypter le fichier. On pose

On lit le ème caractère crypté et on itère la relation de récurrence fois pour obtenir

Le caractère décodé est

. On pose

.

On répète ces étapes pour tous les caractères du message à coder.

En particulier l’exemple qui est présenté dans l’article de Baptista consistait à crypter un

. Son crypteur a les caractéristiques

message codé en alphabet ASCII qui correspond à suivantes :

codé en alphabet ASCII qui correspond à suivantes : L’attracteur chaotique utilisé est l’un des systèmes

L’attracteur chaotique utilisé est l’un des systèmes chaotiques à une dimension le plus étudié : la suite logistique. Pour celui-ci présente un comportement chaotique (voir

l’annexe) et donnait place à un ensemble de point dense dans . Baptista a constaté en divisant en sous intervalles que si on itérait l’attracteur fois chaque intervalle était visité au moins fois. Les itérations initiales sont utilisées pour se

débarrasser du régime transitoire. L’application

choisie par Baptista est triviale : c’est

l’application qui fait correspondre au ème intervalle le ème caractère de l’alphabet (une sorte d’identité).

Ce crypteur peut en particulier crypter les octets (l’alphabet de 256 caractères) d’un fichier par des entiers non signés à 2 octets (un alphabet à 65 536 éléments). Donc le fichier crypté sera deux fois plus gros que le fichier original.

On peut remarquer qu’il y a un risque qu’on ne puisse pas coder un caractère si est très grand. En effet si on prend le cas du crypteur du Baptista, l’intervalle le moins visité est visité fois, si on prend il y a de fortes chances que chacun de ces codages possibles soient refusés et qu’on itère jusqu’à la limite de Baptista dans son article suppose que la probabilité que ça y arrive est faible mais cela reste non nul… Donc pour éviter ce problème nous avons apporté une petite modification aux procédures de Baptista : si on itère jusqu’à sans trouver aucun code possibles alors on met à 0 et on recommence à itérer depuis la condition initiale précédente, dans ce cas on est sur de trouver un code sans perdre beaucoup de temps, même si le paramètre perds son effet pour ce caractère particulier.

Les points forts de cette méthode :

On a plusieurs paramètres qui nous permettent de personnaliser le système au maximum, en particulier le choix de la bijection permet de complexifier la relation entre les intervalles et les caractères, et permet de définir l’alphabet des caractères chiffrées (entiers à octets … ) . Le vecteur de paramètres permet de régler la nature chaotique du système chaotique utilisé et/ou sa densité sur les intervalles.

La condition initiale change à chaque itération.

Le paramètre réduit les chances d’utiliser les mêmes codes pour un caractère donné.

On peut régler la nature chaotique de manière à rendre le système hyper sensible aux conditions initiales.

b. Conception d’un crypteur/décrypteur

Nous avons voulu concevoir une application qui utilise la méthode de Baptista sans beaucoup de modifications pour vous présenter les différents facteurs qu’on étudie avec un exemple simple. Nous commençons avec les caractéristiques suivantes et nous allons choisir les paramètres manquants.

suivantes et nous allons choisir les paramètres manquants. Le choix des paramètres avec des analyses numériques

Le choix des paramètres avec des analyses numériques :

Le choix de ce paramètre modifiera plusieurs aspects du système comme sa densité d’apparition sur un intervalle ou sa sensibilité aux conditions initiales. Nous avons décidé de mettre l’accent dans un premier temps sur sa nature chaotique, donc pour mesurer sa sensibilité aux conditions initiales nous allons choisir un pour laquelle l’exposant de Lyapunov du système est le plus grand possible. On vous présente la courbe d’évolution des exposants zoomée autour de son maximum pour Mais n’est pas un bon choix car il est très évident à trouver comme valeur.

Figure 40 : Exposant de Lyapunov en fonction de Suite à quelques calculs numériques sur

Figure 40 : Exposant de Lyapunov en fonction de

Suite à quelques calculs numériques sur Matlab on a constaté que la trajectoire de la suite logistique était très sensible à la valeur de , même une différence de provoquait des énormes différences. Donc pour exploiter cette propriété on a choisi

est

pour

lequel

l’exposant

de

Lyapunov

, donc proche de son maximum.

Maintenant on s’intéresse parallèlement à

pour faire un bon choix sur la

définie le nombre d’octet sur laquelle on codera le

densité mais en considerant le fait que message crypté.

Dans un premiers temps, en observant le diagramme de bifurcations donné en annexe on peut plus ou moins voir comment évolue la densité des points sur l’orbite en fonction de avec des points plus ou moins sombres. On observe que quand est proche de globalement la densité semble être uniforme sauf aux extrémités. Donc on peut choisir un intervalle dans avec une densité à peu près uniforme. Mais il faut se rappeler qu’on itère cette suite que fois donc si l’intervalle qu’on choisit est petit il contiendra très peu de points ce qui causera un temps d’exécution plus long pour le cryptage. Pour un temps d’exécution meilleur il faut choisir un tel que l’ensemble des orbites de la suite logistique soit . Sur le diagramme de bifurcation on voit que cela est possible mais la densité n’est plus uniforme. Nous avons décidé de donner plus d’importance à l’uniformité et on garde notre proche de .

puis on le divise

en 256 sous intervalles. Sur la figure 41 on vous donne la densité de mesure en fonction des

intervalles calculés pour

. On calcule une

Pour vérifier notre conjecture sur la densité, on pose

itérations avec

et

densité moyenne de

moyenne). On observe bien l’allure qu’on avait prévue en regardant les diagrammes de bifurcations.

occurrences par intervalle en

(ce correspond à environ

occurrences par intervalle en (ce correspond à environ Figure 41 : Densité d en fonction de

Figure 41 : Densité d en fonction de x

mais les pics aux extrémités

posent problème. On observe que dans la densité est à peu près constante. Mais

lorsqu’on a divisé ce sous intervalle en

mal sur les extrémités. Donc suite à quelques essais, l’intervalle nous a semblé

intervalle en fonction

de pour itérations avec

d’apparitions moyennes de

et . Nous avons un nombre

optimal. Sur la figure 42 on vous donne le nombre d’apparitions d’une

et qu’on a calculé sa densité on a vu qu’il variait pas

L’idéal serait en effet d’avoir une densité constante de

(correspond à une densité de

).

Figure 42 : Nombre d'apparition n en fonction de x on cherche maintenant à optimiser

Figure 42 : Nombre d'apparition n en fonction de x

on cherche maintenant à optimiser . En effet

nous avons utilisé comme Baptista, ce qui permet de coder sur deux octets. On s’est demandé si on ne pouvait pas réduire ça à un octet en mettant et mais on a rapidement observé que la plupart des intervalles n’étaient jamais visités. Donc on ne peut pas réduire le nombre d’octets, par contre on peut l’augmenter si on veut compliquer les codes davantage mais cela augmentera significativement le temps de calcul et la taille du fichier crypté. Donc on gardera les valeurs de Baptista pour ceux-ci.

Ayant choisi

La conception algorithmique d’une application de cryptage/décryptage :

Nous avons utilisé le langage de programmation C++ avec la bibliothèque d’interface graphique Qt de Nokia pour mettre en place une application facile à utiliser qui utilisera la méthode de Baptista avec les paramètres que nous avons choisis. L’algorithme que nous avons utilisé est une utilisation directe de la procédure de Baptista mais avec plus de détails au niveau de la lecture et de l’écriture en binaire. Nous avons baptisé cette application « le Cryptonite du DGEI ».

Figure 43 : Aperçues de l'application Nous avons testé cette application sur plusieurs formats de

Figure 43 : Aperçues de l'application

Nous avons testé cette application sur plusieurs formats de fichier comme .txt, .bmp, .mp3, .doc ou .pdf et on a constaté que le cryptage et le décryptage fonctionnaient correctement et même une erreur de l’ordre de sur la clé utilisée changeait tous les résultats et on ne pouvait pas décrypter. Voici un exemple de résultats obtenus sur un fichier .txt

et

un exemple de résultats obtenus sur un fichier .txt et Figure 44 : Fichier initial Figure

Figure 44 : Fichier initial

obtenus sur un fichier .txt et Figure 44 : Fichier initial Figure 45 : Fichier décrypté

Figure 45 : Fichier décrypté

Figure 44 : Fichier initial Figure 45 : Fichier décrypté Figure 46 : Fichier décrypté avec

Figure 46 : Fichier décrypté avec

(variation de

)

Nous avons aussi constaté que le temps de cryptage pouvait être très long par exemple on met environ 1 minute pour crypter un fichier de 400Ko, cela est monté jusqu’à 40 minutes pour le cryptage d’un fichier de 4.2Mo.

c. Limites et améliorations possibles

On a vu que cette méthode offrait une technique de cryptographie intéressante mais comme tout algorithme cryptographique, il présente des faiblesses. Dans cette section nous allons citer les plus notables de ces points faibles, les attaques possibles sur ce système et quelques améliorations qui ont été proposées.

Défauts :

Lors de la conception du système chaotique précédente nous pouvons constater quelques défauts :

La densité de la suite logistique n’est pas uniforme donc certains caractères ont moins de codes possibles que d’autres.

Baptista dans son article montre que la probabilité de trouver une code décroit

exponentiellement au cours des itérations ce qui ralentit d’avantage la procédure de cryptage.

La rapidité d’exécution dépend fortement de la technique algorithmique utilisée et il y a toujours au moins itérations qui sont faites avant de coder un caractère, ce qui ralentit fortement l’algorithme pour le cryptage des gros fichiers.

La taille d’un caractère crypté est plus grande que celui d’un caractère original.

La méthode présente des faiblesses vis-à-vis de certains types d’attaques.

Cryptanalyse :

On appelle cryptanalyse l’étude des tentatives pour déchiffrer les messages cryptés par un système de cryptage sans avoir la clé secrète. On s’en sert souvent pour étudier la performance des techniques cryptographiques en réalisant des attaques. Il existe différentes catégories d’attaques parmi lesquelles on note :

Attaques sur texte chiffré seul : on ne possède que le message crypté et on essaye de

retrouver le message en clair. Ce sont les attaques les plus difficiles.

Attaques à texte clair connu : on possède quelques messages en clair et leurs versions

cryptées, on essaie de pouvoir déchiffrer n’importe quel message crypté à partir de ceux-ci.

Attaques à texte clair choisi : on peut obtenir la version cryptée de n’importe quel message,

on essaye de déterminer le système de cryptage.

La méthode de Baptista est inefficace contre les attaques à texte clair choisi, en effet si on

réécrit plusieurs centaines de fois on peut

retrouver toutes les codes possibles qui chiffrent ce caractère. En faisant de même pour tous les caractères, on peut établir une table qui fait correspondre chaque code à son caractère en clair. Les effets de cette attaque peut être considérablement réduits si on utilise un très grand et un qui est beaucoup plus large pour avoir davantage de chiffrements possibles. Mais cela augmentera beaucoup le temps d’exécution et n’assure pas une sécurité totale. D’autres mesures qu’on pourrait prendre pour ce problème est d’utiliser un nombre de bits « spécial » pour stocker les codes. Par exemple si notre message à caractères on peut utiliser seulement bits pour stocker le code ce qui pourrait être imprévisible pour l’attaqueur car en général on stocke des codes dans des octets. Si on décompose le message en clair dans un alphabet à

choisit un texte clair composé d’un seul caractère

bits pour stocker les caractères cryptés. D’autre

part utiliser un alphabet à caractères réduit remarquablement la vitesse d’exécution de l’algorithme jusqu’à un facteur de 11.

caractères, on peut utiliser seulement

Certaines techniques d’attaques à texte clair connu ont été proposées contre la méthode de Baptista, comme ceux de Jakimoski-Kocarev qui consiste à déterminer les associations entre tous les caractères et les codes qu’on dispose. Puis dans certains cas on pourrait deviner ou décrypter par analyse statistique les autres caractères.

Finalement, dans le cas des attaques à texte chiffré seul la méthode de Baptista est bien résistante : chaque caractère peut être codé d’au moins manières différentes ce qui empêche l’analyse fréquentielle ou une attaque statistique. La force brute pourrait décrypter un fichier… en essayant tout réel de l’intervalle avec 16 chiffres après la virgule pour déterminer la condition initiale… Sachant qu’à chaque tentative, la durée de décryptage s’ajoute ce qui fait qu’avec les technologies informatiques actuelles cette attaque est lente. En utilisant des nombres encore plus précis par exemple sur 128bits, on pourrait augmenter le nombre maximum de tentatives pour le décryptage.

Autres améliorations possibles :

En plus des améliorations précédentes on peut citer quelques autres :

Une méthode proposée par Wong en 1999 consiste à générer un nombre aléatoire sur un intervalle et à utiliser comme le Cette méthode ne modifie pas la procédure de décryptage mais change la sélection d’un code acceptable parmi d’autres. On peut choisir l’application aussi complexe qu’on veut pour sécuriser d’avantage l’algorithme et le personnaliser mais en particulier on peut citer une technique différente d’association des intervalles et la trajectoire qui normalise la densité d’apparition des différents sous-intervalles. En effet pour être plus correct, on n’utilisera pas un intervalle associé à un caractère mais plusieurs. Cette fonction est définie par :

avec

un facteur diviseur entier. Cette expression associe

intervalles éloignés à une même caractère, par exemple et

sont tous les deux associés à

,

si

on

a

,

et

des

associé à

un même caractère et chaque intervalle à

densité

idéale uniforme. Voir la figure 47 pour avoir un aperçu de la densité pour notre

une

. petits intervalles de largeur

Plus

est

qui

grand plus

tends

vers

on

la

a

densité

système avec

cette

choisir n’importe quel sous intervalle de

on

de

. On remarquera que

application

pour

choisir

nous

permettra

donc

remarquera que application pour choisir nous permettra donc peut utiliser cette intervalle même comme F i

peut utiliser cette intervalle même comme Figure 47 : Densité avec ce

une clé supplémentaire pour complexifier le cryptage. Il existe d’autres améliorations qui utilisent des attracteurs chaotiques à plusieurs dimensions et utilisent par exemple un des signaux chaotiques pour associer les intervalles et les caractères, un autre pour choisir la nouvelle condition initiale etc… Une autre amélioration proposée par Wong consiste à utiliser un autre attracteur chaotique en plus de la suite logistique pour masquer avec un signal pseudo-aléatoire les caractères cryptés donnés par la méthode de Baptista. Mais il faudra utiliser des algorithmes plus complexes pour qu’un décryptage ait lieu sans erreurs.

2. Etude d’un crypteur/décrypteur d’image

a. Principe d'un crypteur chaotique

Nous allons essayer, dans cette partie, de créer un crypteur/décrypteur d'image à l'aide de l'attracteur étrange de Lorenz étudié dans l’annexe 4.

Pour cela, nous nous appuyons sur les travaux faits par la « School of Information Science and Engineering » de l'université Shenyang, Chine, sur le cryptage d'une image basé sur le système chaotique de Lorenz.

Le principal avantage d'utiliser l'attracteur étrange de Lorenz est le fait qu'il soit en trois dimensions. Grâce à cela, nous pouvons obtenir trois éléments de codage en une seule itération du système. Ici, les deux premières coordonnées (x et y) serviront à la permutation des pixels de l'image, tandis que la coordonnée z va influencer sur les niveaux de gris. Ainsi, un pixel peut être chiffré en une seule itération, au lieu de trois avec un système chaotique à une dimension.

Cela permet également d'avoir une taille de clé de cryptage beaucoup plus grand qu’avec un système chaotique à une dimension. On estime qu'un système chaotique à une dimension ne peut donner qu'une clé de taille de 2 53 , alors que l'Advanced Encryption Standard, ou AES, l'algorithme de chiffrement le plus utilisé actuellement, peut monter jusqu'à une clé de taille 2 256 (couramment 2 128 ). Avec le système chaotique à trois dimensions, on monte à 2 158 .

La première difficulté est d'obtenir une séquence chaotique idéale, pour cela on veut effectuer un traitement pour obtenir une séquence qui vérifie les conditions de Golomb annoncées en chapitre 1.

b. Algorithme du crypteur

Pour complexifier davantage le cryptage, nous passons deux fois par le système de Lorenz. La première fois va nous permettre d'obtenir des conditions initiales « idéales » générées chaotiquement à partir de ce qu’on lui fournit. On itère ce système jusqu’à un nombre donnée qui peut être aussi une partie de la clé et les coordonnées du dernier point nous permettent d'avoir de nouvelles conditions initiales qui seront utilisées pour générer la séquence chaotique qu’on utilisera pour crypter.

A partir de ce point, on génère de nouveau un attracteur de Lorenz afin de traiter les séquences en x, y et z. De plus, on le traite au préalable afin d'augmenter le phénomène pseudo- aléatoire pour une sécurité optimale.

Pour cela, on tronque la partie entière de x, y et z afin d'uniformiser le domaine de valeurs et d'être sur un intervalle plus petit, afin de se rapprocher des conditions de Golomb. Enfin, on décale la virgule k fois (k fixé !) vers la droite et on reprend la partie décimale du nombre obtenu. Donc en notent le signal traité associé à on a :

Grâce à ces manipulations sur les séquences x, y et z, on arrive à obtenir des séquences finales pseudo-aléatoires très proches du modèle idéal proposé par Golomb, avec des fonctions d'auto corrélation et de corrélation croisées idéaux. On obtient ainsi trois séquences pseudo- aléatoires dans l’intervalle .

Afin de pouvoir les exploiter et les mettre à profit du cryptage, il faut à présent quantifier ces séquences obtenues, puis les mettre dans une matrice. Par exemple, pour crypter une image de M pixels de haut par N pixels de large, on va prendre les x et y et les quantifier de sorte que les x aillent de 0 à M-1 et les y aillent de 0 à N-1. De plus, pour rendre encore plus difficile la cryptanalyse, on peut sélectionner le premier terme comme étant la L-ième itération.

Cette disposition permettra de permuter les pixels : par exemple, si dans la matrice le (x0,y0) correspond au pixel (52,37), le pixel ira en position (0,0) . A ceux ci nous allons associer les z de manière à en avoir M*N quantifiés entre 0 et 255. Afin de chiffrer la couleur, il faut faire un ou exclusif sur l'échelle de gris de l'image avec le z correspondant pour la substitution des niveaux de gris. Voici la matrice qui est utilisé pour cette procédure, à chaque pixel on associe l’élément de la matrice donc la position correspondante à ce pixel :

Nous avons ainsi étudié un cryptage chaotique à partir des équations de Lorenz avec une optimisation des séquences dans le but d'avoir celles ci à un niveau pseudo-aléatoire très élevé. L'avantage principal de ce chiffrement est dû à l'instabilité aux conditions initiales de l'attracteur de Lorenz, qui assure un non décryptage de l'élément même si les conditions initiales sont très proches de celles utilisées.

De plus, étant en trois dimensions, la taille de la clé est considérablement augmentée comparée aux cryptages chaotiques à une dimension, et il y a besoin de moins d'itérations pour chiffrer un élément (ici l'image) du fait que chaque itération apporte trois nombres stochastiques. La structure tridimensionnelle est très complexe de surcoût, ce qui ajoute à la difficulté du décryptage.

Sources :

- M.S. Baptista, « Cryptography with chaos », Physics Letters A 240 (1998) p.50-54

-M.K. Ho, « Chaotic encryption techniques », (2000-2001),

http://www.hkstar.com/~hmk409/research/ces/research/200107/project.htm

-

G.

Jakimoski,

L.

Kocarev,

« Analysis

of

some

recently

proposed

chaos-based

encryption

algorithms », Physics Letters A 291 (6) (2001) p.381384.

 

-

S.Li, X. Mou, Z. Ji, J. Zhang, Y. Cai, « Performance analysis of Jakimoski-Kocarev attack on a class of chaotic cryptosystems », Physics Letters A 307 (1) (2003), p.22-28

-

S. Li, G. Chen, K. Wong, X. Mou, Y. Cai, « Baptista-type chaotic cryptosystems : Problems and countermeasures », Physics Letters A 332 (5-6) (2004)

-

N. Rebhi, M.A. Ben Farah, A. Kachouri, M. Samet, « Analyse de sécurité d’une nouvelle méthode de cryptage chaotique », SETIT 2007

Conclusion

Au cours de ce projet, nous avons effectué des recherches sur plusieurs axes de la cryptographie chaotique. Nous avons étudié ses origines avec la découverte de la synchronisation et son apogée avec les techniques de « sécurisation » les plus célèbres comme le masquage ou la méthode de Baptista.

Puis pour aller au cœur des ces exemples typiques nous avons décrit les techniques de conception ou de simulation de tels systèmes. Ces études ont utilisées dans divers domaines scientifiques comme les mathématiques (bien évidemment !), l’automatique, l’électronique et l’informatique.

Nous avons pu constater que ces systèmes offraient chacun de grands potentiels même si on y trouve quelques défauts. C’est une technologie assez jeune et qui évolue rapidement :

nous avons croisé des centaines de publications très récentes sur ces sujets au cours de nos recherches. Pour chaque système particulier que nous avons étudié, on a essayé de présenter les défauts majeurs et les améliorations qui étaient proposées et qui pouvaient résoudre ces problèmes.

Enfin, ce projet nous a apporté un aperçu d’un domaine scientifique bien spécialisé et qui a beaucoup de lien avec la spécialité que nous souhaitons faire (AE). D’autre part, on a développé nos compétences en recherche et en lecture des articles scientifiques.

Annexes

Annexe 1 : Des notions sur l’analyse des systèmes non linéaires

A1

1. Le cas des systèmes continus

A1

a. Définitions

A1

b. Le comportement limite des trajectoires

A1

c. La notion de stabilité

A2

d. Les bifurcations

A5

2. Le cas des systèmes discrets

A5

a. Définitions

A5

b. Le comportement limite des trajectoires

A5

c. La notion de stabilité

A6

d. Les bifurcations

A6

Annexe 2 : L’étude de la diode de Chua

A8

Annexe 3 : L’étude de la suite logistique

A13

1. Divergence grossière vers

de

A13

2. Etude analytique des points attractifs de

A13

a. Etude des points fixes

A13

b. Etude des points périodiques

A14

c. Sur le reste de l’intervalle

A15

3. Etude numérique des points attractifs de

A16

a. Etude numérique des bifurcations

A16

b. Etude numérique de la « chaoticité »

A18

Annexe 4 : L’étude d’un générateur de chaos tridimensionnel : les équations de Lorenz

A21

Annexe 5 : Le code source du « Cryptonite du DGEI »

A26

A0

Annexe

1 : Des

notions

sur

l’analyse

des

systèmes

non

linéaires

Dans cette annexe on va résumer quelques points essentiels utilisés lors de l’analyse des systèmes non linéaires dont nous nous servons dans ce rapport.

1. Le cas des systèmes continus

a. Définitions

Les systèmes continus dans le temps sont représentés par un système d’équations différentielles qu’on classe sous deux catégories : autonomes ou non-autonomes. Les équations représentant des systèmes non autonomes dépendent explicitement du temps, mais il est possible en introduisant un nouvelle variable (donc en augmentant la dimension du système) de les modéliser par des modèles autonomes. Un système continu autonome est modélisé par :

évolue dans un espace euclidien de dimension linéaire et on peut le représenter par une matrice d’état.

Dans le cas des systèmes linéaires,

est

est l’espace de phase. Les solutions d’un système représenté dans (où

est le segment sur lequel évolue le temps) sont appelées des trajectoires et lorsque celles-ci

sont seulement représentées dans l’espace de phase on parle d’orbites. On appelle la

L’espace

jacobienne d’une fonction vectorielle

la matrice

.

Une trajectoire est représentée par la fonction

valeur initiale

au cours du temps.

b. Le comportement limite des trajectoires

qui décrit l’évolution du point

de

Etant donnée une valeur initiale la trajectoire suivie est unique pour les systèmes autonomes. Ces trajectoires peuvent diverger vers l’infinie (instabilité, répulsion…) ou réaliser des comportements plus intéressants dans l’espace de phase comme le chaos, des cycles périodiques ou des orbites constantes. Parmi ces solutions on note :

Les points de l’espace de phase pour lesquelles sont les points d’équilibre (aussi appelées points critiques ou points fixes). Si un point fixe est stable il peut être attractif (convergence du système) ou donner naissance à un cycle limite.

On appelle cycle limite une orbite solution du système fermé et isolé dans l’espace de phase. Il s’agit d’une solution (orbite) périodique du système. La trajectoire vérifie alors

A1

l’orbite.

. Le plus petit réel

satisfaisant cette égalité est la période de

Le Théorème de Poincaré-Bendixson explique que si une orbite pénètre dans une région bornée de l’espace de phase et n’en ressort plus alors soit il s’agit d’une orbite convergente vers un point d’équilibre ou vers un cycle limite stable soit cette orbite est elle-même un cycle limite stable.

Le théorème de Bendixson nous donne une méthode simple pour déterminer les cycles limites : si et ne change pas de signe dans un domaine de l’espace de phase, alors il n’existe pas de cycle limite dans ce domaine.

Dans le cas des systèmes à deux dimensions on ne peut rencontrer que des orbites qui divergent vers l’infini, qui convergent vers un point d’équilibre ou un cycle limite ou qui soient eux-mêmes un cycle limite. Mais quand on passe aux dimensions supérieures on observe des comportements plus compliqués comme des tores, des attracteurs étranges ou le chaos.

On va maintenant s’intéresser à la stabilité de ces différentes orbites pour pouvoir notamment étudier le comportement du système à l’infini.

c. La notion de stabilité

Un point fixe d’un système peut être stable ou instable selon les comportements des orbites autour de ce point. On observe trois définitions de la stabilité (au sens de Lyapunov) pour un point d’équilibre :

Ce type

de stabilité peut correspondre à une orbite qui converge vers un point fixe attractif ou vers un cycle limite stable au voisinage de ce point fixe.

Stabilité simple :

Stabilité asymptotique : est stable et Ce type de stabilité assure une convergence vers le point d’équilibre.

Stabilité exponentielle :

est asymptotiquement stable et

est appelé le taux de convergence.

Cette définition de stabilité donne en plus une indication sur la vitesse de convergence vers le point fixe mais il est difficile de réaliser le calcul proprement.

A2

Linéarisation :

Dans le cas des systèmes linéaires un système est stable si les valeurs propres de la matrice d’état ont une partie réelle négative et il est asymptotiquement stable si les valeurs propres ont une partie réelle strictement négative.

Si les parties réelles des valeurs propres de la jacobienne de la fonction d’état sont non nulles en un point , alors on peut linéariser le système au voisinage de ce point avec son développement de Taylor de premier ordre :

En un point d’équilibre

cela donne :

La première méthode de Lyapunov nous permet d’étudier la stabilité locale d’un système

non linéaire

stable alors le système non linéaire est asymptotiquement stable. Si le système linéarisé n’est pas stable, le système non linéaire est instable. On ne peut pas conclure dans le cas où le système linéarisé est tout simplement stable (si il présente des cycles limites on a des valeurs propres à partie réelle nulles, l’ordre du développement de Taylor est insuffisant…).

est asymptotiquement

: Si le système linéarisé

La figure 48 présente les différents comportements que les orbites peuvent avoir au voisinage d’un point fixe à l’origine dans le cas des systèmes à deux dimensions (où le déterminant et la trace permettent de déterminer précisément les signes des deux valeurs propres).

précisément les signes des deux valeurs propres). Figure 48 : Stabilité d'un point fixe en fonction

Figure 48 : Stabilité d'un point fixe en fonction de J 3

Les exposants de Lyapunov :

Dans un système à dimension, chaque orbite a exposant de Lyapunov, chacun mesure le taux de séparation causé par une perturbation sur directions orthogonales. Ceux-ci sont donc particulièrement intéressants pour étudier la sensibilité aux conditions initiales ou la stabilité d’un point d’équilibre. On commence par choisir un point de départ et on prend

3 Source : http://www.augustana.ualberta.ca/~hackw/mat332/exhibit/fxdpt2d.html

A3

comme la condition initiale de la trajectoire déviée

.

On linéarise le

système au voisinage

et on obtient une équation variationelle sur

:

Donc en notant

la solution de l’équation matricielle

,

on

a

. Par intégration on trouve que

. Cette matrice décrit l’évolution

des perturbations sur la trajectoire. Par définition, les exposants de Lyapunov décrivent la variation sur la norme euclidienne du vecteur On a :

Alors les exposants de Lyapunov sont

En particulier, on peut définir le plus grand exposant de Lyapunov(ou parfois appelé l’exposant de Lyapunov) comme

Evidemment comme ces perturbations grandissent exponentiellement, le plus grand exposant de Lyapunov l’emporte sur les autres et en prenant une perturbation , de direction quelconque, on peut facilement calculer numériquement le plus grand exposant. Par contre pour pouvoir calculer le spectre d’exposants, il faut orthogonaliser les matrices régulièrement lors du calcul numérique pour que les autres exposants n’affectent pas le résultat de l’un d’entre eux. Un algorithme célèbre pour calculer cela utilise la formule d’orthogonalisation de Gram-Schmidt.

le

comportement des orbites à l’infinie, le chaos, la synchronisation du chaos etc.

Les attracteurs non chaotiques ont des exposants de Lyapunov négatifs ou nul et leur somme est négative. On peut même aller plus loin et déterminer leur nature :

Les

valeurs

de

ces

exposants

permettent

d’étudier

plusieurs

notions

comme

asymptotiquement stable. Si un exposant est nul et le reste est strictement négatif, il s’agit d’un cycle limite stable.

Si

tous

les

exposants

sont

nuls

sont

et

strictement

le

reste

et

négatifs,

il

s’agit

négatif

d’un point d’équilibre

on

observe

un

tore

Si

d’ordre

exposants

strictement

asymptotiquement stable.

On peut aussi définir des conditions pour les attracteurs étranges chaotiques : il faut qu’au moins un exposant soit positif, il faut avoir un exposant nul et la somme de toutes les exposants doit être négative.

A4

d.

Les bifurcations

On appelle bifurcation un changement qualitatif du comportement du système causé par une variation des paramètres de la fonction d’état . Les bifurcations locales peuvent être observées sur les changements de stabilité des points fixes ou des orbites périodiques. Pour le cas des systèmes continus cela correspond à une annulation de la partie réelle d’une valeur propre de la matrice jacobienne. On représente ces phénomènes avec des diagrammes de bifurcation qui illustrent l’apparition et la disparition des différents points attractifs (points d’équilibre ou cycles limites) en fonction du paramètre étudié.

2. Le cas des systèmes discrets

a. Définitions

Pour des systèmes discrets autonomes on a la relation analogue :

. passer d’un modèle continu à une modèle discret avec une approximation de la dérivée

On peut

On peut directement donner

en notant

est la période d’échantillonnage. En utilisant cela on étend les mêmes notions

avec quelques changements.

Les définitions sur l’espace de phase, trajectoires, orbites et la jacobienne sont identiques

pour

les

systèmes

discrets.

Les

trajectoires

sont

définies

par

l’ensemble

de

points

b. Le comportement limite des trajectoires

sont les points fixes (aussi

appelés points critiques ou points d’équilibres).

La définition d’un cycle limite et d’une orbite périodique restent vrais pour les systèmes discrets.

et tels que soit le plus petit entier satisfaisant cela.

Il s’agit alors d’un point périodique de période . Une orbite ayant pour point

initial

Les points

de l’espace de phase pour lesquels

Soit un point

tels que

périodique est appelée une orbite

périodique.

Le théorème de Poincaré-Bendixson est aussi applicable pour ces systèmes.

Comme pour les systèmes continus, on souhaite étudier le comportement à l’infini et on commencera par revoir la notion de stabilité.

A5

c.

La notion de stabilité

Pour étudier la stabilité des systèmes discrets on se sert encore de la jacobienne.

Les points fixes: Si les modules des valeurs propres de la matrice sont strictement inférieurs à alors est attractif, sinon si le module de ces valeurs propres sont tous strictement supérieurs à alors est répulsif.

l’orbite périodique correspondante au cycle limite

. Le calcul de peut être

difficile,

. Si les modules de ces valeurs propres sont strictement inférieurs à alors ce cycle limite est attractif, sinon si les modules de ces valeurs propres sont tous strictement supérieurs à alors le cycle limite est répulsif.

étudié. Alors on calcule les valeurs propres de

Les cycles limites: Soit

donc

on

utilise

la

règle

de

composition des dérivées pour écrire

Les exposants de Lyapunov existent aussi pour les systèmes discrets et permettent de donner des conclusions similaires sur la nature des différents attracteurs, chaotiques ou non. Une orbite est chaotique si elle ne converge pas vers un cycle limite, si aucun des exposants n’est nul et si le plus grand exposant est positif. Pour leurs calculs on procède similairement, on prend un trajet dévié par à l’instant initial et on trouve :

Et

par

récurrence

on

similairement on a

d. Les bifurcations

obtient

.

et

Pour les systèmes discrets, les bifurcations consistent aussi à observer les points fixes ou périodiques attractifs. Les bifurcations locales ont lieu lorsque le module de la partie réelle d’une valeur propre de la matrice jacobienne vaut 1. Plus précisément si la valeur propre vaut 1 il s’agit d’une bifurcation de type nœud-col, transcritique ou fourche. Lorsqu’on a une valeur propre qui vaut il s’agit d’un doublement de période d’un cycle limite. Dans les autres cas il s’agit souvent d’une bifurcation dit de Hopf.

A6

Sources :

- Cours d’analyse de systèmes non linéaires d’INSAT par D. Fournier et V. Mahout

- K.T. Alligood, T.D. Sauer, J.A. Yorke, CHAOS : An Introduction to Dynamical Systems, Springer; Corrected edition (September 30, 1996)

- F.Christiansen H.H. Rugh, « Computing Lyapunov spectra with continous Gram-Schmidt orthonormalization » , Nonlinearity Issue 5 (September 1997)

- Contributions à l’amélioration des systèmes de communication multi-utilisateur par chaos :

synchronisation et analyse des performances, thèse doctorale de G. KADDOUM

A7

Annexe 2 : L’étude de la diode de Chua

La diode de Chua est constituée de deux montages à impédance négative en parallèle. Celles-ci sont réalisées à l’aide d’une rétroaction à la fois positive et négative, par l’intermédiaire de deux résistances. De plus, l’entrée négative de l’amplificateur est reliée à la masse par une autre résistance.

On va chercher à exprimer le courant d’entrée

en fonction de la tension d’entrée. C’est-à-dire la

caractéristique

. On pourra alors en déduire la réponse en intensité de la diode de Chua

et

de

même

Sur ce montage, nous avons les relations suivantes :

même Sur ce montage, nous avons les relations suivantes : Figure 49 : Montage à impédance

Figure 49 : Montage à impédance négative

En régime non linéaire, sortie saturée à l’état haut

On a

Nous avons ici un coefficient directeur

Cherchons le point de cassure

, c’est-à-dire la valeur à laquelle la tension d’entrée doit

descendre pour repasser dans le régime linéaire :

En régime non linéaire, sortie saturée à l’état bas

On a

On retrouve le même coefficient directeur

Ici, on cherche la valeur à laquelle la tension d’entrée doit monter pour que la sortie bascule à l’état haut. Par symétrie, on peut directement dire qu’il s’agit de

En régime linéaire

On a

A8

Nous avons ici un coefficient directeur

Bilan

On remarque que

, ce qui nous simplifie l’écriture du courant :

De plus,

opérationnel.

Avec les valeurs sur la figure et en supposant

doit rester dans l’intervalle *-15V, +15V+ sous peine d’endommager l’amplificateur

:

* - 15V, +15V+ sous peine d’endommager l’amplificateur : Figure 50 : Caractéristique de la première

Figure 50 : Caractéristique de la première impédance négative

De la même manière, on détermine les équations pour le deuxième montage. On obtient alors :

En régime non linéaire, sortie saturée à l’état haut

, coefficient directeur

, point de cassure

En régime non linéaire, sortie saturée à l’état bas

, coefficient directeur m 2 , point de cassure

En régime linéaire

, coefficient directeur

Bilan

On remarque que

, ce qui nous simplifie l’écriture du courant :

A9

De

plus,

doit

rester

dans

l’intervalle

l’amplificateur opérationnel.

Avec les valeurs sur la figure et en supposant

*-15V,

+15V+

:

sous

peine

d’endommager

et en supposant * -15V, +15V+ : sous peine d’endommager Figure 51 : Caractéristique de la

Figure 51 : Caractéristique de la deuxième impédance négative

Conclusion sur la diode de Chua

Notre diode de Chua est constituée de deux montages à impédances négatives en parallèle.

Suite à l’étude que nous avons réalisée, nous connaissons le comportement de ces montages. La

loi des nœuds nous donne la relation entre l’intensité des deux montages qui nous avons étudié :

qui entre dans la diode et les intensités . Nous avons finallement :

La zone de fonctionnement qui nous intéresse correspond au fonctionnement d’au moins un amplificateur en régime linéaire, on a alors :

A10

Figure 52 : Caractéristique de la diode de Chua A11

Figure 52 : Caractéristique de la diode de Chua

A11

Sources :

- M. Mulukutla and C. Aissi, « Implementation of the Chua’s circuit and its applications », Proceedings of the ASEE Gulf-Southwest Annual Conference, American Society for Engineering Education, Lafayette, La, USA, March 2002.

A12

Annexe 3 : L’étude de la suite logistique

qui nous permet d’écrire la relation de . On s’intéresse aux

et donc

bifurcations de ce système discret, on doit donc étudier les points attractifs de cette suite. Une étude théorique et analytique de ceux-ci est très longue et sort du contexte de ce rapport, nous allons donc nous contenter d’étudier seulement les points fixes et quelques points périodiques. L’étude principale des bifurcations sera faite numériquement. Mais avant tout cela, éliminons tous les cas inintéressants.

On définit la fonction récurrence comme

1. Divergence grossière vers

de

En étudiant les variations de la fonction on constate que s’il existe tel que

alors

tends vers

.

Une application directe du théorème des valeurs intermédiaires montre que

. Donc pour

si

alors la divergence grossière

vers l’infinie n’a pas lieu. Si dans ce cas

diverge vers l’infini. Donc dans tout ce qui suit on travaillera dans .

alors on sort de cet intervalle et la suite

2. Etude analytique des points attractifs de

a. Etude des points fixes

Les points fixes

de la suite logistique sont les solutions de l’équation

, soit :

Ayant trouvé l’ensemble de ses points fixes on va étudier leurs attractivités. D’après les

résultats de l’annexe

, ces points fixes sont attractifs lorsque la valeur absolue de

est

strictement inférieure à 1 en ces points. On a

.

En

donc sera attractif dans l’intervalle .

donc

est un point attractif pour

. Et pour

On s’intéresse naturellement au point propos de ces points. En effet,

bifurcation. Il s’agit d’une bifurcation transcritique : un point d’équilibre stable devient instable

où l’on a pu déduire un résultat quelconque à ce qui signifie qu’en ce point on observe une

A13

et un autre point d’équilibre instable devient stable. Avec une étude de convergence on peut montrer que pour reste toujours attractif.

L’autre point intéressant est et on a ce qui signifie qu’une bifurcation de type doublement de période a lieu. Une étude de convergence montre qu’en la suite converge .

vers

il y a deux points fixes

converge vers ces points fixes

pour . Les points fixes de sont répulsifs pour et on a vu qu’il y a un

qui se complètent avec une bifurcation transcritique et

Nous avons fini l’étude des points fixes de

, on a vu que sur

doublement de période en

donc on va faire face à une orbite 2-périodique.

b. Etude des points périodiques

On a prévu que pour certains dire qu’il existe deux points

rang

l’équation

on se trouverait dans une orbite 2-périodique, c'est-à-

pour tout à partir d’un certain

les

de

tels que

En

si

cette

orbite

.

est

attractive.

effet

ces

deux

points

sont

solutions

Donc l’équation qu’on cherche à résoudre devient :

On constate que sont solutions de cette équation ce qui est normal car les points

fixes ou les points périodiques sont aussi des points

étudié ces points on s’intéresse aux autres solutions de cette équation. Après avoir effectué une

division euclidienne par , on se retrouve avec une équation de second ordre :

. Ayant déjà

périodiques avec

Donc

sont réelles, donc lorsque

. Ces solutions sont intéressantes lorsqu’elles

. On note

Maintenant il faudra étudier la stabilité de l’orbite composée par ces deux points, cet orbite

est attractive lorsque

est strictement inférieure à 1. On a :

A14

Donc

est

Nous avons déjà vu ce

et

qui se passe en

, donc

ici

le

pas évident

oscille encore entre

ce qui signifie qu’une bifurcation

seul point

qui n’est

On peut montrer par une étude de limite que

. en ce point et d’autre part,

par doublement de période a lieu.

périodique et que de même les orbites

continuent de doubler cette période à vers l’infini sur des intervalles de plus en plus petits tels que le rapport entre deux intervalles tendent vers la constante de Feigenbaum et ce comportement à lieu jusqu’à

soit

. La démonstration de ce résultat et d’autres résultats beaucoup

plus détaillés ont été réalisé par Feigenbaum.

En effet l’orbite suivie par

sera

. Et

tel que l’orbite suivie par

périodique sur

c. Sur le reste de l’intervalle

Sur le comportement est globalement chaotique mais il existe des valeurs particulières de pour lesquelles le comportement redevient périodique. En particulier à partir

de

intéressant d’appliquer le théorème suivant sur la suite logistique.

périodiques. On trouve alors

, il y a un intervalle où l’on constate des orbites

Théorème de Charkovski : Soit un

intervalle

et

est continue. Alors si

admet un point périodique de période

où alors pour tout

tels

que dans l'ordre de Charkovski, admet un point périodique de période L’ordre de Charkovski est une relation d’ordre donnée par :

Une implication de ce théorème est que si une telle suite admet un point périodique alors cette suite admet des points périodiques de n’importe quelle période (l’ordre de Charkovski trie tout les entiers naturels) sur . Comme précisé plus haut la suite logistique

A15

admet des orbites périodiques (ça ne sera pas démontrée ici, c’est très compliqué) donc sur , elle admettra des orbites de n’importe quelle période, ce qui « explique » le chaos (les justifications rigoureuses du chaos sont très complexes pour être abordées dans cette annexe).

3. Etude numérique des points attractifs de

Nous avons vu que l’étude analytique des points attractifs devenait vite très compliquée suite à quelques bifurcations et la théorie mathématique qui justifie le comportement complet de n’est pas très parlante. Donc dans cette section on utilisera quelques méthodes numériques pour avoir un aperçu correct des bifurcations et du chaos de cette suite.

a. Etude numérique des bifurcations

On souhaite obtenir le diagramme des bifurcations de cette suite pour bien visualiser les divers comportements que la suite logistique peut présenter en fonction du paramètre . Ce diagramme consistera à donner les coordonnées des points attractifs (fixes ou périodiques) en fonction de . Cela revient à placer les points de l’orbite de en régime permanant pour les choisis. En créant un algorithme qui réalise cela sur Matlab, on obtient la figure 53.

qui réalise cela sur Matlab, on obtient la figure 53. Figure 53 : Diagramme de bifurcation

Figure 53 : Diagramme de bifurcation de la suite logistique

On constate grossièrement que l’allure correspond à nos prévisions théoriques, mais la région intéressante n’est pas vraiment accentuée sur le figure précédente donc on a créé deux courbes plus focalisées sur les zones critiques sur le figure 54.

A16

Figure 54 : Diagramme de bifurcation de la suite logistique zoomée Sur ces graphiques on
Figure 54 : Diagramme de bifurcation de la suite logistique zoomée Sur ces graphiques on

Figure 54 : Diagramme de bifurcation de la suite logistique zoomée

Sur ces graphiques on peut dans un premier temps dire que les bifurcations qu’on avait prévu étaient correctes et on peut observer la conséquence du théorème de Charkovski : sur certains intervalles on peut observer des orbites périodiques impaires (comme 5 vers 3.91 ou 9 vers 3.86) et qui subissent des doublement de périodes. On peut aussi remarquer la densité des points attractifs sur qui deviennent très régulièrs au voisinage de sauf aux extrémités (une étude spécifique de la densité serait faite lors de la conception du crypteur par la méthode de

A17

Baptista). On peut noter aussi la similarité de ce diagramme à une fractale avec les répétitions d’allures similaires.

b. Etude numérique de la « chaoticité »

Dans cette section on se servira des exposants de Lyapunov pour mesurer la sensibilité aux conditions initiales de la suite logistique pour des différents On a vu dans les résultats précédents que lorsque admet un point fixe ou périodique, celui-ci est indépendant des conditions initiales. Les régions chaotiques devront être très sensibles aux conditions initiales donc dans le cas de ce système discret à une dimension, son exposant de Lyapunov doit être positif. Et plus cet exposant est grand, plus l’orbite est sensible aux petites variations dans les conditions initiales. Sachant cela, il serait intéressant de tracer la courbe des exposants en fonction de On a pour grand :

de tracer la courbe des exposants en fonction de On a pour grand : Figure 55

Figure 55 : Evolution de

en fonction de

A18

On constate que sur des intervalles correspondants aux points fixes ou périodiques attractifs, l’exposant de Lyapunov est négatif. On peut remarquer des points où il devient très négatif (serait si on ne faisait pas une approximation), c’est lorsqu’un point périodique ou fixe devient super attractif : la convergence est très rapide. Plus l’exposant est positif, plus les orbites sont sensibles aux conditions initiales, donc chaotiques.

A19

Sources :

- D. Perrin, La suite logistique et le chaos, (IREM Paris 7, mars 2008, école été Saint-Flour août 2008)

(69p)

A20

Annexe 4 : L’étude d’un

tridimensionnel : les équations de Lorenz

générateur

de

chaos

Présentation de l'attracteur de Lorenz : Il s'agit d'un système chaotique découvert en 1963 par Edward Lorenz, météorologue américain au MIT, qui s'intéressait aux mouvements turbulents d'un fluide comme l'atmosphère. Il modélisait le mouvement des masses d'air grâce à des équations (simplifiées) de thermodynamique et de dynamique des fluides, et ensuite utilisait son ordinateur pour les résoudre numériquement. Un jour, reprenant les résultats de la veille, il prit un arrondi à 10 -3 et relança les mêmes calculs. Au lieu d'obtenir un résultat identique ou très proche, la simulation devint très différente de la veille, le mouvement des masses d'air changeait complètement pour une variation de conditions initiales différentes à 10 -4 . Cette sensibilité aux conditions initiales est appelée couramment l'effet papillon, est due à une instabilité totale du calcul numérique.

Il donna une définition du chaos : « Un système agité par des forces où seules existent trois fréquences indépendantes, peut se déstabiliser, ses mouvements devenant alors totalement irréguliers et erratiques. »

Les équations différentielles de départ d'Edward Lorenz étaient (et sont toujours) celles ci :

Dans la météorologie, ces constantes son bien connues :

- est appelé le nombre de Prandtl : elle caractérise la viscosité et la conductivité thermique du fluide

- est appelé le nombre de Rayleigh : elle représente la différence de température entre le bas et le haut du réservoir

- mesure le rapport entre hauteur et largeur du système de convexion.

Dans

ses

expériences,

Lorenz

utilisait

comme

valeur

.

Usuellement, les expériences avec l'attracteur étrange de Lorenz se font avec celles ci, sauf que nous faisons varier.

On peut noter que toutes les valeurs ne donnent pas de systèmes chaotiques, comme le prouve les figures suivantes (code sous Matlab en annexe).

A21

Figure 56 : Tentative de génération d'attracteur avec σ = 10, ρ = 28 et

Figure 56 : Tentative de génération d'attracteur avec σ = 10, ρ = 28 et b = 0

génération d'attracteur avec σ = 10, ρ = 28 et b = 0 Figure 57 :

Figure 57 : Tentative de génération d'attracteur avec σ = 10, ρ = 10 et b = 8/3

A22

En ne s'occupant que de

, on peut remarquer quatre cas différents :

- : le système est attiré vers l'origine.

- : le système est attiré vers un point qui varie selon

.

4 : on observe un brusque changement de comportement du système, mais le système tend toujours vers un point dépendant de

- : le système devient chaotique, cette bifurcation s'appelle bifurcation de

Hopf. La particule tourne autour de l'attracteur étrange et les coordonnées calculées deviennent quelconques. Nous ne nous intéresserons qu'à ce cas pour la suite.

-

.

ne nous intéresserons qu'à ce cas pour la suite. - . Figure 58 : Attracteur de

Figure 58 : Attracteur de Lorenz « usuel » avec σ = 10, ρ = 28 et b = 8/3

L'attracteur ressemble aux deux ailes déployées d'un papillon, dont chaque aile est formée par des séries de cercles concentriques qui semblent se répéter à l'infini. Les points décrivent plusieurs cercles sur une aile puis bascule sur l'autre sans rythme particulier et sans jamais couper leurs trajectoires. Il a donné son nom à « l'effet papillon », qui dit : « Un simple battement d'ailes d'un papillon peut-il déclencher une tornade à l'autre bout du monde ? ». Cette citation traduit l'instabilité aux conditions initiales de l'attracteur de Lorenz.

Par exemple, voici les coordonnées pour les 30 000 ème itérations avec des coordonnées de départ très proches :

A23

On constate très bien le caractère chaotique de ce système à la vue de ces résultats : la variation infime des conditions initiales bouleverse complètement le système final, bien que la modélisation semble donner la même chose.

bien que la modélisation semble donner la même chose. Figure 59 : Attracteur de Lorenz «

Figure 59 : Attracteur de Lorenz « usuel » avec coordonnées de départ excentrées

Également, on remarque que peu importe les coordonnées de départ, le système est attiré par les deux boucles : c'est ce qui qualifie cet attracteur d'étrange. De plus, les trajectoires ne se coupent jamais et semblent pourtant évoluer au hasard. Enfin, il se stabilise toujours dans une région de l’espace de phases défini par -20 < x < 20, -28 < y < 28 et 0 < z < 50.

Nous avons donc étudié l'attracteur étrange de Lorenz, et grâce à Matlab nous avons pu modéliser différents cas, selon les conditions initiales/paramètres de contrôle et les coordonnées de départ. La caractéristique intéressante pour la suite est l'instabilité qui permet de générer un système très différent suite à une très faible modification des données. Étant chaotique et non pas linéaire, il est donc presque impossible de retrouver le système sans avoir les données exactes.

Ce point précis a fortement intéressé la communauté de la cryptologie. Arriver à générer un chiffrement chaotique permet de créer une sécurité toute nouvelle, bien plus robuste que l'actuelle à l'épreuve des cryptanalyses.

A24

Sources :

- L'attracteur étrange de Lorenz, http://bcev.nfrance.com/Lorenz/equations.htm

- Attracteurs Etranges et Chaos, http://www.cax.free.fr/chaos/chaos.html

A25

Annexe 5 : Le code source du « Cryptonite du DGEI »

 

main.cpp

#include <QtGui/QApplication> #include "mainwidget.h"

 

int main(int argc, char *argv[])

{

 

QApplication a(argc, argv); MainWidget w; w.show(); return a.exec();

 

}

 

mainwidget.H

#ifndef MAINWIDGET_H #define MAINWIDGET_H #include <cstdlib> #include <time.h> #include <iostream> #include <fstream> #include <ostream> #include <string> #include <math.h> #include <QApplication> #include <QWidget> #include <QVBoxLayout> #include <QHBoxLayout> #include <QLabel> #include <QGroupBox> #include <QCheckBox> #include <QPushButton> #include <QRadioButton> #include <QTabWidget> #include <QLineEdit> #include <QComboBox> #include <QFileDialog> #include <QString> #include <QMessageBox>

#include <QProgressDialog> class MainWidget : public QWidget

{

 

Q_OBJECT

 

public:

explicit MainWidget(QWidget *parent = 0);

 

~

MainWidget ();

public slots:

 

void getFileEncryptDir(); void getFileDecryptDir(); void setRPStatus(int state); void encrypt(); void decrypt(); private:

QVBoxLayout *m_layoutExt; QLabel *m_labelLogo; QTabWidget *m_tabWidget; QWidget *m_tabEncrypt; parameter, File directory) QVBoxLayout *m_layoutEncrypt;

//Main layout of the widget to contain logo and tab widget

//Tab widget //Encrypt tab contains (IC:initial condition, RP:rejection

//main layout of tab page to contain description and parameter

 

inputs

 

QLabel *m_labelDefEncrypt;

//encryption description

QHBoxLayout *m_layoutEncryptInt1;//layout containing IC input QLabel *m_labelEIC; QLineEdit *m_inputEIC; QHBoxLayout *m_layoutEncryptInt2;//layout containing RP input QLabel *m_labelRP; QLineEdit *m_inputRP; QCheckBox *m_RPact; QHBoxLayout *m_layoutEncryptInt3;//layout containing file input QLabel *m_labelFileEncryptDir; QLineEdit *m_FileEncryptDir; QPushButton *m_selectFileEncryptDir; QPushButton *m_encryptFile;

 

QWidget