0% ont trouvé ce document utile (0 vote)
51 vues11 pages

Codes linéaires en cryptographie

Ce document présente les principes de base des codes linéaires, y compris leur définition, propriétés et applications comme les codes de Hamming et de Reed-Muller. Le document est long et contient de nombreuses informations sur les codes linéaires.

Transféré par

Mohamed Mohamed
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
51 vues11 pages

Codes linéaires en cryptographie

Ce document présente les principes de base des codes linéaires, y compris leur définition, propriétés et applications comme les codes de Hamming et de Reed-Muller. Le document est long et contient de nombreuses informations sur les codes linéaires.

Transféré par

Mohamed Mohamed
Copyright
© © All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Théorie de l'information et codage

Master de cryptographie

Cours 4 : Codes linéaires

19 et 22 janvier 2009

Université Rennes 1

Master Crypto (2008-2009) Théorie de l'information et codage 19 et 22 janvier 2009 1 / 11


Dénition
On note F2 = {0, 1} le corps à 2 éléments.
Un code (n, k , d )-code linéaire C est un sous espace vectoriel de F2 de n

dimension k et de distance minimale d .


Propriété
La distance minimale d'un code linéaire est égal à son poids minimal

Matrice génératrice
C'est une matrice k × n G dont les lignes forment une base de C.
L'application linéaire associée de F2 dans F2 dénit le codage
k n

C = {aG , a ∈ F2 }. k

G est dite sous forme normale si elle est de la forme (Id , P ). Les k
k

premiers bits d'un mot de C sont alors les bits d'information et les n − k
suivant les bits de redondance.
Master Crypto (2008-2009) Théorie de l'information et codage 19 et 22 janvier 2009 2 / 11
Codes équivalents

Dénition
C et C 0 sont équivalents si C 0 peut être obtenu à partir de C en appliquant
une permutation sur les symboles.

Théorème
En appliquant les opérations
permutation des lignes ou des colonnes
addition de deux lignes
sur une matrice génératrice d'un code C , on obtient une matrice
génératrice d'un code équivalent à C .
Conséquence : on suppose qu'un code est toujours donné par une matrice
sous forme normale.

Master Crypto (2008-2009) Théorie de l'information et codage 19 et 22 janvier 2009 3 / 11


Codage/Décodage
Codage
Si on veut coder x ∈ F2 , on calcule xG
k
= [x , xP ]

Matrice de Contrôle
C'est la matrice H = [ P, I t
n −k ]. On a alors

x = [x1 , · · · , x n ]∈C ⇔H t
x =0
Décodage de y ∈ F2 n

On calcule H y , le syndrome d'erreur.


t

Le vecteur d'erreur e = y − x est l'unique élément de F2 de poids n

minimal tel que H e = H y . t t

On construit la table des syndromes de taille 2 − composée des e de n k


i

poids minimum tel que les H e forment l'image de H (i.e. F2− ).


t
i
n k

Il sut de chercher à quel e correspond H y et de renvoyer y − e


i
t
i

Master Crypto (2008-2009) Théorie de l'information et codage 19 et 22 janvier 2009 4 / 11


Codes duaux

Dénition
Si hx , y i = n
x y , le code dual C ⊥ de C est donné par
P
i =1 i i

C ⊥ = {y ∈ F2 /∀x ∈ C , hx , y i = 0}
n

Propriété
Si C est un (n, k )-code linéaire de matrice de contrôle H , alors C ⊥ est un
(n, n − k )-code linéaire engendré par H .

Un code est dit auto-dual si il est équivalent à son dual.

Master Crypto (2008-2009) Théorie de l'information et codage 19 et 22 janvier 2009 5 / 11


Quelques propriétés des codes linéaires

Borne de Singleton
Si C est un (n, k , d )-code linéaire, alors
d ≤n−k +1
Théorème
Soit C un (n, k )-code linéaire de matrice de contrôle H .
Si D désigne le nombre maximal de colonnes de H linéairement
indépendantes, alors la distance minimale de C vaut D + 1.

Master Crypto (2008-2009) Théorie de l'information et codage 19 et 22 janvier 2009 6 / 11


Codes de Hamming

Donnés par leur matrice de contrôle.


la i -ème colonne de H se trouve le vecteur (ε1 , · · · , ε ) où
Sur P r

i = =−01 ε − 2 .
r

i r i
i

Théorème
C'est un (2 − 1, 2 − r − 1)-code linéaire.
r r

Il corrige une erreur (d = 3).


C'est un code parfait.

Décodage de y ∈ F2 n

On calcule z = H y . t

z est l'écriture binaire de i (la i -ème colonne vaut alors H y ).


t

On retourne y après avoir changé son i -ème bit.

Master Crypto (2008-2009) Théorie de l'information et codage 19 et 22 janvier 2009 7 / 11


Codes de Reed-Muller
Très utiles sur des canaux très brouillés (satellites)
Dénition inductive
On note RM (r , m) le code de Reed-Muller d'ordre r ≤ m et de longueur
2 dénit par
m

RM (0, m) = {00 · · · 00, 11 · · · 11}


RM (m, m) = {0, 1}2m
RM (r , m) = {(x , x + y )/x ∈ RM (r , m − 1), y ∈ RM (r − 1, m − 1)}

Matrices génératrices
G (r , m − 1)
G (r , m − 1 )
 
G (r , m ) = 0 G (r − 1, m − 1)
G (m − 1, m)
 
avec G (0, m) = (11 · · · 11) et G (m, m) =
00 · · · 01

Master Crypto (2008-2009) Théorie de l'information et codage 19 et 22 janvier 2009 8 / 11


Propriétés des codes de Reed-Muller

Théorème
RM (r , m) a les caractéristiques suivantes
1 longueur n = 2 . m

2 distance minimale d = 2 − . m r

dimension k = =0 C . r
P i
3
i m

4 contenu dans RM (r + 1, m) pour r < m.


5 dual RM (m − 1 − r , m) si r < m.

Décodage de R (1, m)
Pour un mot recu, trouver le mot de RM (1, m) le plus proche.
Par recherche exhaustive.
Transformée de Hadamard.

Master Crypto (2008-2009) Théorie de l'information et codage 19 et 22 janvier 2009 9 / 11


Code de Golay étendu

Soit B la matrice symétrique 12x12


110111000101
 

 101110001011 


 011100010111 


 111000101101 


 110001011011 


 100010110111 

000101101111
 
 
001011011101
 
 
010110111001
 
 
101101110001
 
 
011011100011
 
 
111111111110

On note C24 le code de matrice génératrice G = (Id12 , B ).


Master Crypto (2008-2009) Théorie de l'information et codage 19 et 22 janvier 2009 10 / 11
Propriétés de C24
1 C24 est un (24, 12)-code linéaire.
2 H1 = (Id12 B ) et H2 = (B Id12 ) sont des matrices de contrôle de C24 .
3 (B , Id12 ) est aussi une matrice génératrice de C24 .
4 C24 est auto-dual.
5 Sa distance minimale est 8 et il corrige 3 erreurs.
6 C24 est parfait et unique.
Décodage de y
1 Calculer le syndrome s1 = H1 y t

si w (s1 ) ≤ 3 alors e = ( s1 , 0)
t

si w (s1 + B ) ≤ 2 alors e = ( s1 + B , ε )
i
t t
i i

2 Calculer le syndrome s2 = H2 y = Bs1


t

si w (s2 ) ≤ 3 alors e = (0, s2 )


t

si w (s2 + B ) ≤ 2 alors e = (ε , s2 + B )
i i
t t
i

où B est la i -ème colonne de B et ε


i i = (0..010..0).
Master Crypto (2008-2009) Théorie de l'information et codage 19 et 22 janvier 2009 11 / 11

Vous aimerez peut-être aussi