Crypto et sécurité de l’information
Ce matériel couvre les concepts fondamentaux et avancés de la cryptographie appliquée à la sécurité de l’information, avec un accent particulier sur les cryptosystèmes chaotiques, la cryptanalyse, la crypto-compression et le tatouage d’images.
D'après le document Crypto et sécurité de l’information
Cet article a été rédigé automatiquement à partir du document source, puis vérifié avant publication.

Document source
Cryptography, Information Security · ENIT · PDF · 76 pages · 2060
Afficher l'aperçu du document
Ce matériel couvre les concepts fondamentaux et avancés de la cryptographie appliquée à la sécurité de l’information, avec un accent particulier sur les cryptosystèmes chaotiques, la cryptanalyse, la crypto-compression et le tatouage d’images. Il s’adresse aux étudiants en informatique, cybersécurité et traitement du signal souhaitant comprendre les techniques modernes de protection des données numériques et des images.
Introduction à la sécurité et à la cryptographie
Avec l’évolution des technologies telles qu’Internet, le courrier électronique, la mobilité et les réseaux sans fil, la sécurité des systèmes d’information est devenue un enjeu majeur. Les objectifs fondamentaux de la sécurité sont :
- Authentification : vérifier l’identité des utilisateurs.
- Contrôle d’accès : limiter l’accès aux ressources.
- Vie privée : protéger la confidentialité des données.
- Intégrité des données : garantir que les données ne sont pas altérées.
- Surveillance : détecter les intrusions ou anomalies.
- Non-répudiation : empêcher le déni d’une action ou d’un message.
La cryptographie est un outil essentiel pour atteindre ces objectifs, notamment par :
- Le chiffrement pour la vie privée.
- Les signatures numériques pour l’authentification.
- Les fonctions de hachage pour l’intégrité.
- La combinaison de ces mécanismes pour la non-répudiation.
Les raisons de crypter les données sont multiples : protéger contre les pirates, concurrents, ex-employés, comptables malhonnêtes, agents de change, espions ou terroristes.
Les domaines d’application incluent la guerre, la protection des transactions bancaires, la confidentialité des échanges et le stockage sécurisé.
Cryptographie classique et ses limites
La cryptographie classique repose sur :
- Le chiffrement : transformation d’un texte clair pour en cacher le sens.
- Le déchiffrement : récupération du texte clair à partir du texte chiffré grâce à une clé.
- Les cryptosystèmes à clé privée (exemple : DES) où la même clé sert au chiffrement et au déchiffrement.
- Les cryptosystèmes à clé publique (exemple : RSA) utilisant une clé publique pour chiffrer et une clé privée pour déchiffrer.
Les problèmes majeurs sont la distribution des clés, la dépendance à la théorie des nombres et la vulnérabilité face aux avancées technologiques, notamment l’ordinateur quantique.
Des alternatives émergent, comme la cryptographie basée sur la physique (cryptographie quantique) ou sur des systèmes chaotiques.
Cryptosystèmes chaotiques
Les cryptosystèmes chaotiques utilisent des fonctions dynamiques non linéaires pour chiffrer les données. Un exemple est le cryptosystème de Baptista basé sur la fonction logistique :
f(xk) = λ xk (1 − xk)
L’intervalle [xmin, xmax] est divisé en S sous-intervalles, chacun associé à un caractère. La clé secrète comprend le paramètre λ, la condition initiale x0 et l’association des sous-intervalles aux symboles.
Exemple de chiffrement et déchiffrement avec Baptista
Soit le plaintext P = "hi".
- Le caractère 'h' correspond à l’intervalle I104 = [0.44140625, 0.44375].
- Le caractère 'i' correspond à l’intervalle I105 = [0.44375, 0.44609375].
Chiffrement :
C = (1713, 364)
Déchiffrement :
- Itérer la fonction logistique 1713 fois à partir de x0 pour obtenir x1713 ∈ I104 → 'h'.
- Itérer 364 fois à partir de x1713 pour obtenir x2077 ∈ I105 → 'i'.
Le plaintext est donc retrouvé : "hi".
Limites du cryptosystème de Baptista
- Très lent pour un usage en temps réel.
- Distribution non uniforme des cryptogrammes, vulnérable aux attaques statistiques (attaque de l’entropie).
- La fonction logistique présente des faiblesses : diagramme de bifurcation avec fenêtres de défaillance, densité naturelle invariante non uniforme, faible entropie des symboles générés.
Un nouveau cryptosystème chaotique pour images couleurs
Ce cryptosystème utilise des vecteurs chaotiques pour chiffrer chaque composante couleur (R, G, B) d’une image. Les formules de chiffrement et déchiffrement sont :
Chiffrement : Cn(1) = (Rn + int(xn(1) × L) + Cn−1(1)) mod 256 Cn(2) = (Gn + int(xn(2) × L) + Cn−1(2)) mod 256 Cn(3) = (Bn + int(xn(3) × L) + Cn−1(3)) mod 256 Déchiffrement : Rn = (Cn(1) − int(yn(1) × L) − Cn−1(1)) mod 256 Gn = (Cn(2) − int(yn(2) × L) − Cn−1(2)) mod 256 Bn = (Cn(3) − int(yn(3) × L) − Cn−1(3)) mod 256
où xn et yn sont des vecteurs chaotiques, L une constante, et Cn−1 la valeur chiffrée précédente.
Analyse statistique
L’histogramme de l’image cryptée est uniformément réparti, contrairement à l’image originale. La corrélation entre pixels adjacents chute drastiquement après chiffrement :
| Image | Corrélation horizontale | Corrélation verticale |
|---|---|---|
| Originale | 0.9006 | 0.8071 |
| Cryptée | 0.0681 | 0.0845 |
Sensibilité et robustesse
Le système est sensible à un changement d’un seul bit de la clé, ce qui garantit une bonne sécurité. Les métriques NPCR (Nombre de Pixels Changés au Taux de Changement) et UACI (Taux d’Intensité de Changement Moyen) confirment la résistance aux attaques :
- NPCR proche de 99.6 %.
- UACI proche de 33.4 %.
Entropie et vitesse
L’entropie des images cryptées est proche de 8 (valeur maximale pour 8 bits), indiquant un fort degré d’aléa :
- HR(m) = 7.9732
- HG(m) = 7.9750
- HB(m) = 7.9715
La vitesse de chiffrement/déchiffrement mesurée sur un PC standard est d’environ 7 Mb/s, adaptée aux applications pratiques.
Cryptanalyse
La cryptanalyse est l’art de casser les messages secrets. Les types d’attaques classiques sont :
- Attaque par texte chiffré seul (Ciphertext-only attack) : analyse statistique sans connaissance du texte clair.
- Attaque par texte clair connu (Known-plaintext attack) : connaissance de paires (texte clair, texte chiffré).
- Attaque par texte clair choisi (Chosen-plaintext attack) : capacité à obtenir le texte chiffré d’un texte clair choisi.
- Attaque par texte chiffré choisi (Chosen-ciphertext attack) : capacité à obtenir le texte clair d’un texte chiffré choisi.
Exemple de cryptanalyse d’un cryptosystème d’images basé sur la diffusion
L’algorithme de chiffrement est :
C = CKS ⊕ VD(HD(P ⊕ X))
avec :
- MIX1 : F = P ⊕ X
- Diffusion horizontale (HD) : E = HD(F)
- Diffusion verticale (VD) : D = VD(E)
- MIX2 : C = D ⊕ CKS
Une attaque par texte clair choisi (CPA) permet de trouver Y :
- Choisir P = 0...0 ⇒ C = Y ⊕ VD(HD(0)) = Y
Une attaque par texte clair connu (KPA) permet également de récupérer Y :
- Connaissant une paire P/C, on calcule Y = VD(HD(P)) ⊕ C
Avec Y, l’adversaire peut retrouver le plaintext :
P = HD⁻¹(VD⁻¹(C ⊕ Y))
Les fonctions HD et VD ne dépendent pas de la clé secrète, ce qui rend le système vulnérable.
Crypto-compression : Chaotic Huffman Tree (CHT)
La crypto-compression combine chiffrement et compression. Le CHT est une variante du codage de Huffman classique où l’arbre de Huffman est muté dynamiquement selon une séquence chaotique.
Principe du codage de Huffman classique
Pour un message M composé de symboles S = {A, B, C, D, E, F} avec des fréquences données, on construit un arbre binaire où chaque symbole est codé par un mot binaire de longueur variable, plus court pour les symboles fréquents.
Mutation de l’arbre de Huffman
Chaque nœud a deux branches étiquetées "0" à gauche et "1" à droite. En changeant cette convention pour certains nœuds selon une séquence chaotique, on obtient un arbre muté qui sert à coder le message, augmentant la sécurité sans modifier le modèle statistique.
Algorithme CHT
- Générer l’arbre de Huffman T pour le message M.
- Itérer une fonction chaotique f pour générer une séquence xn.
- Calculer le nœud ri à muter selon xn et la valeur du symbole précédent.
- Muter les labels des branches du nœud ri dans l’arbre T.
- Coder le symbole courant mi avec l’arbre muté pour obtenir le code ci.
- Répéter jusqu’à la fin du message.
- Transmettre le code C et l’arbre initial T au décodeur.
Performances
Les temps de chiffrement et déchiffrement sont comparables à ceux du codage de Huffman classique suivi d’un chiffrement, avec un ratio ciphertext/plaintext autour de 60 %, proche du codage classique.
Tatouage d’images
Le tatouage numérique consiste à insérer une marque invisible dans une image pour :
- Protéger les droits d’auteur (copyright).
- Assurer l’authentification et l’intégrité du contenu.
Contraintes du tatouage
- La marque doit être invisible et difficile à détecter.
- Ne pas dénaturer l’image originale.
- Être indélébile, même après attaques (robustesse).
Types de tatouage
- Fragile : ne résiste à aucune attaque.
- Semi-fragile : résiste à certaines attaques.
- Robuste : résiste à toutes les attaques.
Types d’attaques sur le tatouage
- Volontaires : rotation, découpage, filtrage, changement d’échelle, retournement horizontal.
- Involontaires : compression JPEG, conversion GIF, altérations dues aux copies, égalisation d’histogrammes.
Exemple d’algorithme de tatouage robuste
Pour une image originale X de taille 256 × 256 et un logo W de 30 × 30 :
- Nombre de bits du tatouage : 30 × 30 = 900 bits.
- Nombre total de bits insérés : N = 30 × 30 × 2 × 4 = 7200 bits.
Mesure de l’imperceptibilité
Le PSNR (Peak Signal-to-Noise Ratio) est utilisé pour évaluer la qualité de l’image tatouée :
PSNR = 10 log10 (d² / EQM) EQM = (1 / M²) Σ(i=1 à M) Σ(j=1 à M) (X(i,j) − Y(i,j))²
où X est l’image originale, Y l’image tatouée, et d la valeur maximale possible d’un pixel.
Un PSNR entre 30 et 40 dB indique une bonne qualité. L’algorithme proposé atteint ce niveau.
Robustesse
Le tatouage résiste à des attaques telles que rotation, redimensionnement, coupure, ajout de bruit, estompage et compression JPEG.
Tatouage pour le contrôle d’intégrité
Le tatouage permet de détecter les altérations sur l’image. Le procédé utilise la Generalized Cat Map définie par :
(x_{i+1}, y_{i+1}) = ((1 a) (x_i)) mod N
(b ab+1) (y_i)
avec une période T telle que :
(1 a)^T ≡ (1 0) (b ab+1) (0 1) (mod N)
Par exemple, pour a = b = 1, une image 256 × 256 divisée en blocs 4 × 4 génère une matrice 64 × 64 avec une période T = 48.
Détection des altérations
Les pixels sont classés en :
- True Positive (TP) : pixels altérés correctement détectés.
- False Positive (FP) : pixels non altérés détectés à tort comme altérés.
- True Negative (TN) : pixels non altérés correctement identifiés.
- False Negative (FN) : pixels altérés non détectés.
Le taux d’altération ρ est défini par :
ρ = ((FN + TP) / M²) × 100%
Les métriques de performance sont :
- True Positive Rate (TPR) = TP / (TP + FN) × 100%
- False Positive Rate (FPR) = FP / (FP + TN) × 100%
Un bon algorithme semi-fragile doit avoir 40 % < TPR < 80 % et FPR < 1 %.
Exemple de résultats
| Image | ρ (%) | TPR (%) | FPR (%) |
|---|---|---|---|
| Clock | 2.23 | 0.13 | 61.49 |
| Barche | 3.57 | 0.08 | 47.46 |
| Tracks | 7.21 | 0.16 | — |
| Jet | 10.81 | 0.38 | 78.66 |
| Aerial2 | 1.36 | 0.25 | 65.92 |
| Lena | 24.26 | 0.59 | 35.8 |
Moyenne : ρ = 8.24 %, TPR = 0.26 %, FPR = 56.55 %.
Glossaire des termes clés
- Authentification : Processus de vérification de l’identité d’un utilisateur ou d’un système.
- Chiffrement : Transformation d’un message clair en message codé pour en cacher le contenu.
- Cryptanalyse : Étude des méthodes pour casser les systèmes cryptographiques.
- Cryptosystème à clé privée : Système où la même clé sert au chiffrement et au déchiffrement.
- Cryptosystème à clé publique : Système utilisant une clé publique pour chiffrer et une clé privée pour déchiffrer.
- Diffusion : Technique pour disperser l’information d’un message sur plusieurs éléments chiffrés.
- Entropie : Mesure de l’aléa ou de l’incertitude dans un ensemble de données.
- Fonction logistique : Fonction chaotique utilisée en cryptographie pour générer des séquences pseudo-aléatoires.
- Histogramme : Représentation graphique de la distribution des valeurs de pixels dans une image.
- NPCR (Nombre de Pixels Changés au Taux de Changement) : Mesure de la différence entre deux images chiffrées.
- PSNR (Peak Signal-to-Noise Ratio) : Indicateur de la qualité d’une image après modification.
- Tatouage numérique : Insertion d’une marque invisible dans un média pour la protection ou l’authentification.
- True Positive Rate (TPR) : Taux de détection correcte des altérations.
- False Positive Rate (FPR) : Taux d’erreurs de fausses alertes.
Points clés à retenir
- La cryptographie classique repose sur des clés privées ou publiques mais présente des limites face aux nouvelles technologies.
- Les cryptosystèmes chaotiques offrent une alternative basée sur des systèmes dynamiques non linéaires.
- Le cryptosystème de Baptista est un exemple historique, mais il est lent et vulnérable à certaines attaques.
- Un cryptosystème chaotique pour images couleurs peut assurer une bonne sécurité avec une distribution uniforme et une forte entropie.
- La cryptanalyse exploite différents types d’attaques, dont certaines peuvent casser des systèmes basés sur la diffusion.
- La crypto-compression combine chiffrement et compression, améliorant l’efficacité du traitement des données.
- Le tatouage d’images protège les droits d’auteur et assure l’intégrité, avec des exigences d’invisibilité et de robustesse.
- Les métriques PSNR, NPCR, UACI, TPR et FPR sont essentielles pour évaluer la qualité et la sécurité des systèmes.
- La Generalized Cat Map est utilisée pour le contrôle d’intégrité via le tatouage semi-fragile.
Commentaires
Aucun commentaire pour le moment. Posez la première question.