Le bruit dans les transmissions Christophe Chabot Université de Limoges - XLIM - DMI - PI2C INRIA Rocquencourt - Projet CODES Séminaire des doctorants - 07/12/2007
Sommaire 1 Introduction 2 Diérents types de données 3 Codes correcteurs d'erreur 4 Quelques problèmes diciles 5 Conclusion
Introduction Canaux : Transformations : Télégramme Chirement CD-ROM Code correcteur d'erreurs Clé USB Brasseur, entrelaceur Fibre optique Modulation... Liaison satellite...
Bruit Données numériques, binaires. Exemple : Salut 1100101010000110001101101010111000101110 0001100000000000000000001111000000000000 Kalzt 1101001010000110001101100101111000101110
Diérents types de données Voix :
Diérents types de données Voix : Taux d'erreur 0.001 0.005 0.01 0.05 0.1 Message reçu
Diérents types de données Texte :
Diérents types de données Texte :
Diérents types de données Texte : Sans erreur
Diérents types de données Texte : Erreur : 0.01
Diérents types de données Texte : Erreur : 0.05
Diérents types de données Code-source ou exécutable :
Diérents types de données Code-source ou exécutable :
Diérents types de données Code-source ou exécutable : Sans erreur
Diérents types de données Code-source ou exécutable : Avec un peu d'erreur
Codes correcteurs d'erreur pas facile à manipuler tel quel. structures algébriques : sous-ensemble de l'espace ambiant ensemble ni métrique linéarité (sous-espace vectoriel de F n q ). polynômes (idéaux de F q [X ]/ X n 1 ).
Codes linéaires en blocs Dénition : Un code C de paramètres [n, k, d] Fq est un sous-espace vectoriel de F n q de dimension k. Pour c = (c 1,..., c n ) C, w(c) = #{i/c i 0}. d = min{w(c)} est appelée la distance minimale du code. c C Matrice génératrice : G M k,n[f q ] dont les lignes engendrent C. Capacité de correction : Pour tout x F n d 1 q, à distance au plus t = du code C, 2 il existe un unique mot c de C tel que d(x, c) t.
Incompatibilité avec le bruit Linéarité C : sous-espace vectoriel de F n q de dimension k. n mots de C pivot base k n mots de C bruités pivot base n
Incompatibilité avec le bruit Polynômes C = g(x ) : idéal principal de F q [X ]/ X n 1. Division Euclidienne : p(x ) = a(x )q(x ) + r(x ) p(x ) + e(x ) = a(x )q(x ) + r(x ) + e(x) si deg(e) < deg(q) p(x ) + e(x ) = n'importe quoi sinon Décodage : p(x ) + e(x )= a(x )g(x ) + e(x) si deg(e) < deg(q) pgcd : encore pire! pgcd(p(x ) + e(x ), q(x ) + e (X )) = n'importe quoi! Reconstruction : pgcd(mots de C) = g(x ).
Quelques problèmes diciles Réduction de rang : NP-complet Etant donnés X M N,n[F 2 ] et ω N, existe-t-il E M N,n[F 2 ] telle que : poids(e) ω et rg(x + E) k?
Quelques problèmes diciles Décodage par maximum de vraisemblance : NP-complet Etant donnés C F n 2 un code, x Fn 2 existe-t-il e F n 2 tel que : et ω N, poids(e) ω et x + e C? Décodage borné : conjecturé NP-complet Etant donnés C F n 2 un code, x Fn 2 existe-t-il e F n 2 tel que : et ω N, poids(e) d 1 2 et x + e C?
Le bruit et la cryptographie problème NP-complet = problème dicile = système de chirement à clef publique Système de chirement de Mc Eliece : Clefs privées : Clef publique : S M k,k[f] inversible. G M k,n[f] génératrice de C. Le produit SGP. P M n,n[f] permutation. Chirement : Déchirement : x xsgp + e (xsgp + e)p 1 = xsg + ep 1. décodage xs S 1 x
Conclusion présent dans toutes les transmissions. codes correcteurs d'erreurs. ennemi juré des structures algébriques. solutions : tests statistiques...
Questions?