Exemple de calcul de la matrice de diffusion
3.5 Analyse de la sécurité des crypto‐systèmes et résultats expérimentaux Les crypto‐systèmes SPN et Feistel sont composés de plusieurs couches consécutives
La façon de réaliser et d’enchaîner ces couches, détermine les performances des crypto‐ systèmes en termes de rapidité d’exécution et de robustesse vis‐à‐vis des attaques cryptographiques. Dans cette partie nous nous proposons d’étudier et de quantifier les performances des fonctions chaotiques (cartes chaotiques) utilisées dans les différentes couches afin de quantifier les performances des crypto‐systèmes proposés. A ce propos, nous nous appuyons sur les outils d’analyse des performances des crypto‐systèmes de la littérature spécialisée.
D’après Shannon, si les différentes couches d’un crypto‐système donné sont performantes, alors le crypto‐système en question est performant.
Nous commençons par introduire tous les outils nécessaires à l’analyse de la sécurité, puis nous considérons les performances :
‐ de la couche de substitution, réalisée par la carte chaotique Skew tent,
‐ de la couche de permutation, réalisée par la carte chaotique Skew tent, puis par la carte chaotique 2‐D,
‐ de la couche de diffusion, réalisée par la matrice binaire statique, et par la carte cat dynamique multidimensionnelle.
Enfin, nous évaluons les performances des crypto‐systèmes proposés aux différentes attaques cryptographiques connues :
‐ sensibilité aux textes en clair (mesure de l’effet d’avalanche) ‐ sensibilité à la clé secrète en émission et en réception
‐ analyse statistique de la sécurité (chi‐carré, entropie, histogramme, corrélation), temps de calcul.
3.5.1 Outils d’analyse de la sécurité
Préliminaires : 2.5.1.1 Attaques statistiques Shannon [Shannon, 1949] a dit ʺil est possible de casser un bon nombre de crypto‐systèmes par une analyse statistique de ces derniersʺ. Pour résister à lʹattaque statistique il faut que :‐ lʹhistogramme de lʹimage chiffrée soit quasi uniformément distribué, de cette manière l’attaquant ne peut pas avoir de l’information sur lʹimage en clair.
‐ les coefficients de corrélation des pixels adjacents de l’image chiffrée dans toutes les directions soient proches de zéros.
2.5.1.2 Attaques différentielles et linéaires
Les attaques les plus puissantes et les plus courantes sur les algorithmes de chiffrement/déchiffrement par bloc sont les attaques linéaire [Matsui, 1993] et différentielle
[Biham et Shamir, 1991]. Selon [Koo et al, 2003], la résistance contre ces deux types d’attaques, dépend essentiellement de la robustesse de la couche de substitution et de la couche de diffusion. La couche de substitution doit assurer que le maximum des probabilités d’approximation linéaire et différentielle soit le plus faible possible (2‐6 dans le cas de l’AES,
et entre 2‐5,8 et 2‐5 pour nos crypto‐systèmes). La couche de diffusion doit assurer un nombre
de branches linéaires grand (5 pour l’AES, et entre 8 et 10 pour les crypto‐systèmes proposés).
Les couches de confusion/diffusion utilisées dans les crypto‐systèmes proposés sont dynamiques, car les clés utilisées dans ses couches varient pour chaque itération, par conséquent les crypto‐systèmes proposés résistent à ces deux types d’attaques et possèdent une complexité supplémentaire contre la cryptanalyse par rapport à l’utilisation des couches statiques.
2.5.1.3 Attaques à texte en clair/chiffré connu ou choisi
Les crypto‐systèmes proposés assurent l’effet d’avalanche. En effet, quelle que soit la position d’un bit changé dans un bloc de texte en clair ou chiffré, ceci provoque pratiquement le changement de 50% des bits entre les deux blocs chiffré ou déchiffrée respectivement (effet d’avalanche).
La mesure de l’effet d’avalanche doit être faite au niveau du bloc et non au niveau de l’image. Par ailleurs, pour réaliser l’effet d’avalanche, certains crypto‐systèmes basés chaos relient le processus de génération des clés dynamiques ou de permutation avec le bloc chiffré précédent, ceci entraine des erreurs de propagation.
Parmi, les différents modes opératoires cryptographiques, le mode CBC est le mode qui réalise le plus l’effet d’avalanche dans un sens.
2.5.1.4 Attaque exhaustive de la clé secrète
Pour résister à lʹattaque exhaustive de la clé secrète, un crypto‐système devrait avoir une clé secrète de taille assez grande 128 bits). Dans les crypto‐systèmes basés chaos, la clé secrète est celle du générateur des séquences chaotiques utilisé. Elle est formée des conditions initiales et des paramètres de contrôle du générateur en question.
Les générateurs chaotiques proposés et utilisés dans nos crypto‐systèmes, possèdent un espace de clé secrète plus grand que 2128 bits, et donc ils résistent à lʹattaque exhaustive.
2.5.1.5 Sensibilité à la clé secrète en émission/réception
Un crypto‐système est dit sensible à la clé secrète en émission/réception, si :
‐ le chiffrement à l’émission d’une même image avec deux clés qui diffèrent d’un seul bit, donne deux images chiffrées qui diffèrent de 50 % en bits ;
‐ le déchiffrement à la réception d’une même image chiffrée mais avec deux clés qui diffèrent d’un bit, fournit deux images déchiffrées qui diffèrent de 50% en bits.
Cette sensibilité est classiquement mesurée par deux paramètres qui sont le NPCR (Number of Pixel Change Rate) et le UACI (Unified Average Changing Intensity) définis plus loin. Les séquences pseudo‐chaotiques générées, sont utilisées pour former les clés dynamiques des différentes couches des crypto‐systèmes proposés. Le moindre changement de la clé secrète du générateur engendre un changement quasi‐chaotique dans les clés dynamiques et donc les crypto‐systèmes proposés assurent la sensibilité à la clé secrète en émission/réception.
2.5.1.6 Attaque sur l’implémentation
Dans les crypto‐systèmes basés sur la génération de séquences chaotiques, en réception, le déchiffrement d’un bloc nécessite d’abord la génération de tous les échantillons nécessaires au calcul des différentes clés dynamiques avant de procéder au déchiffrement. Ceci nécessite donc, de stocker ces échantillons pour une itération j, dans une mémoire protégée contre ce type d’attaque.