la cryptographie du point de vue de la théorie de l'information

120
La cryptographie du point de vue de la théorie de l’information: Stratégies de codage sécuritaire pour la sécurité cryptographique Mémoire Tarek Araar Maîtrise en génie électrique Maître ès sciences (M.Sc.) Québec, Canada © Tarek Araar, 2015

Upload: dotuyen

Post on 31-Dec-2016

213 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: La cryptographie du point de vue de la théorie de l'information

La cryptographie du point de vue de la théorie del’information:

Stratégies de codage sécuritaire pour la sécuritécryptographique

Mémoire

Tarek Araar

Maîtrise en génie électriqueMaître ès sciences (M.Sc.)

Québec, Canada

© Tarek Araar, 2015

Page 2: La cryptographie du point de vue de la théorie de l'information
Page 3: La cryptographie du point de vue de la théorie de l'information

Résumé

L’amélioration de la sécurité des communications et la confidentialité de l’information exige de dé-

velopper des nouvelles solutions reposant sur diverses stratégies. Une solution de sécurité multi-

couche pour les systèmes de communication numérique est d’abord explorée en considérant les effets

conjoints de sécurité de codage de canal de la couche physique avec la couche d’application de la

cryptographie.

Nous présentons ensuite des modèles pratiques de codage qui peuvent être utilisés en conjonction

avec la cryptographie pour assurer des taux d’erreur importants sur les observations d’un espion sur

les données chiffrées, tout en garantissant des communications idéalement sans erreur pour les utili-

sateurs légitimes. Dans ce mémoire, on présente une étude des techniques de sécurité au niveau de

la couche physique récemment proposées dans la littérature. Ces techniques utilisent les codes LDPC

avec ensembles d’arrêt permettant de nuire au processus de décodage par un utilisateur non légitime,

ou espion, à de faibles taux d’erreur. Ces codes sont très efficaces lorsque le récepteur légitime béné-

ficie d’un canal de retour authentifié.

On s’intéresse également au codage sécuritaire à travers un canal gaussien AWGN. L’objectif est de

construire des codes permettant de compromettre le décodage au niveau de l’espion aussitôt que le

bruit au niveau du canal d’écoute dépasse un certain seuil. Les techniques utilisées dans ce contexte

reposent sur les codes LDPC avec poinçonnage, avec insertion des bits virtuels et avec brouillage.

iii

Page 4: La cryptographie du point de vue de la théorie de l'information
Page 5: La cryptographie du point de vue de la théorie de l'information

Abstract

Improving communications security and confidentiality of information requires the development of

new solutions based on various strategies. A multilayer security solution for digital communication

systems is first explored by considering the effects of joint security channel coding at the physical

layer with cryptography at the application layer.

We then present practical coding models that can be used in conjunction with cryptography to ensure

high error rate observations for an eavesdropper on encrypted data, while ensuring reliable communi-

cations for the legitimate users.

In this Master’s thesis, we present a study of security techniques at the physical layer recently pro-

posed in the literature. These techniques use LDPC codes with stopping sets to prevent the decoding

of information by the eavesdropper even with the lowest error rates. These codes are very efficient

when the legitimate receiver has access to an authenticated feedback channel.

The thesis also focuses on secure coding through AWGN Gaussian channels. The goal is to construct

codes that prevent proper decoding at the eavesdropper end’s as soon as the noise in the wiretap chan-

nel exceeds a certain threshold. The techniques used in this context are based on LDPC codes with

puncturing, insertion of dummy bits and scrambling.

v

Page 6: La cryptographie du point de vue de la théorie de l'information
Page 7: La cryptographie du point de vue de la théorie de l'information

Table des matières

Résumé iii

Abstract v

Table des matières vii

Liste des tableaux ix

Liste des figures xi

Liste des symboles xiii

Abréviations xvii

Remerciements xix

1 Introduction 11.1 Mise en contexte et problématique . . . . . . . . . . . . . . . . . . . . . . . . . 11.2 Organisation du mémoire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 2

2 Quelques notions de théorie de l’information 52.1 Notions de théorie de l’information . . . . . . . . . . . . . . . . . . . . . . . . . 52.2 Exemples des canaux de communication . . . . . . . . . . . . . . . . . . . . . . 82.3 Modèle de canal de communication sécurisé . . . . . . . . . . . . . . . . . . . . 112.4 Cryptographie et couche physique . . . . . . . . . . . . . . . . . . . . . . . . . 132.5 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 16

3 Codes correcteurs LDPC et décodage itératif 173.1 Codage de canal . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 173.2 Codes correcteurs et détecteurs des erreurs . . . . . . . . . . . . . . . . . . . . . 183.3 Codes à faible densité de parité LDPC . . . . . . . . . . . . . . . . . . . . . . . 203.4 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 32

4 Sécurité au niveau de la couche physique 334.1 Introduction . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 334.2 Modèle de canal de communication . . . . . . . . . . . . . . . . . . . . . . . . 334.3 Modèle du canal de communication sous écoute . . . . . . . . . . . . . . . . . . 364.4 Codage secret . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 414.5 Critères de secret algébrique . . . . . . . . . . . . . . . . . . . . . . . . . . . . 43

vii

Page 8: La cryptographie du point de vue de la théorie de l'information

4.6 Méthodes de codage . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 454.7 Analyse comparative de codes secrets . . . . . . . . . . . . . . . . . . . . . . . 474.8 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52

5 Stratégie de codage sécuritaire 535.1 Métriques de sécurité . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 535.2 Aperçu de la méthode de codage secret . . . . . . . . . . . . . . . . . . . . . . . 555.3 Conception de codes LDPC avec ensemble d’arrêt . . . . . . . . . . . . . . . . . 575.4 Sécurité pour les canaux indépendants avec effacements . . . . . . . . . . . . . . 675.5 Sécurité pour les canaux corrélés avec effacements . . . . . . . . . . . . . . . . 695.6 Étude de cas et simulation des canaux indépendants avec effacements . . . . . . 715.7 Étude de cas et simulation des canaux corrélés avec effacements . . . . . . . . . 755.8 Amélioration de la sécurité cryptographique . . . . . . . . . . . . . . . . . . . . 775.9 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 79

6 Analyse de la sécurité pour les canaux gaussiens sous écoute 816.1 Transmission via un canal gaussien . . . . . . . . . . . . . . . . . . . . . . . . . 816.2 Codage sécuritaire pour les canaux gaussiens . . . . . . . . . . . . . . . . . . . 826.3 Minimisation de l’écart de sécurité par le poinçonnage de codes LDPC . . . . . . 846.4 Minimisation de l’écart de sécurité par brouillage . . . . . . . . . . . . . . . . . 906.5 Comparaison des différentes stratégies de codage sécuritaires . . . . . . . . . . . 916.6 Conclusion . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92

7 Conclusion 937.1 Rappel du contexte . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 937.2 Synthèse du mémoire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 937.3 Contributions du mémoire . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 947.4 Suggestions de travaux futurs . . . . . . . . . . . . . . . . . . . . . . . . . . . . 95

Bibliographie 97

viii

Page 9: La cryptographie du point de vue de la théorie de l'information

Liste des tableaux

4.1 Structure imbriquée d’un code secret [1]. . . . . . . . . . . . . . . . . . . . . . . . 494.2 Ensemble des possibilités de mots de code pour les patrons à deux effacements. . . . 494.3 Analyse de fuites d’informations du code secret présenté par Harrison et al.[1] au

tableau 4.1 : fuites d’informations selon le nombre d’effacements. . . . . . . . . . . 504.4 Structure imbriquée d’un code secret proposé. . . . . . . . . . . . . . . . . . . . . . 504.5 Analyse de la fuite d’information pour le code secret proposé selon le nombre d’effa-

cements. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 514.6 Comparaison en fonction de l’incertitude entre le code présenté dans [1] et le code

proposé. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 52

5.1 Effet du poinçonnage sur le numbre de paquets restaurés par Eve. . . . . . . . . . . 65

6.1 Distributions de poinçonnage optimisées pour la sécurité : PeEmin a été fixé à 0.49 [2],

[3]. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 89

ix

Page 10: La cryptographie du point de vue de la théorie de l'information
Page 11: La cryptographie du point de vue de la théorie de l'information

Liste des figures

2.1 Relations entre la théorie de l’information et d’autres domaines scientifiques. . . . . 62.2 Relation entre l’entropie et l’information mutuelle. . . . . . . . . . . . . . . . . . . 72.3 Système de communication. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 82.4 Canal symétrique binaire (BSC). . . . . . . . . . . . . . . . . . . . . . . . . . . . . 92.5 Canal binaire avec effacement (BEC). . . . . . . . . . . . . . . . . . . . . . . . . . 102.6 Modèle de canal à effacement de paquet (PEC). . . . . . . . . . . . . . . . . . . . . 102.7 Modèle de canal à bruit blanc gaussien additif (AWGN). . . . . . . . . . . . . . . . 102.8 Modèle de canal de communication sécurisé proposé par Shannon [4]. . . . . . . . . 112.9 Exemple de chiffrement avec masque jetable OTP (chiffrement de Vernam) [4]. . . . 122.10 Comparaison entre pile de protocoles de modèle Internet (à gauche) et modèle OSI (à

droite). . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 142.11 Présentation générale d’une approche multicouche de sécurité [5]. . . . . . . . . . . 15

3.1 Modèle d’un système de communication. . . . . . . . . . . . . . . . . . . . . . . . 173.2 Codage de canal pour un canal bruité. . . . . . . . . . . . . . . . . . . . . . . . . . 203.3 Matrice de parité d’un code LDPC régulier (5, 10) de taille n = 1000 et de rendement

R = 0.5. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 213.4 Graphe bipartite de Tanner GT d’un code LDPC. . . . . . . . . . . . . . . . . . . . 213.5 Exemple d’une matrice de parité du code LDPC régulier C(20,3,4) [6],[7]. . . . . . 233.6 Exemples de graphs de codes LDPC avec des cycles de longueur 4, 6 et 8 [8]. . . . . 243.7 Représentation sous forme pseudo triangulaire inférieure de la matrice de parité H [6],

[9]. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 283.8 Illustration de la mise à jour des messages mvc [10]. . . . . . . . . . . . . . . . . . . 303.9 Illustration de la mise à jour des messages mcv [10]. . . . . . . . . . . . . . . . . . . 303.10 Exemple de déroulement de décodage itératif sur un graphe de Tanner du code LDPC. 31

4.1 Modèle mathématique d’un système de communication point à point [4]. . . . . . . . 344.2 Un modèle de communication point à point avec canal de retour [11], [12]. . . . . . 364.3 Modèle de canal de communication sous écoute dégradé de Wyner [13],[4]. . . . . . 374.4 Forme typique de la région du taux d’équivocation RDWTC(pX). . . . . . . . . . . . 404.5 Canal binaire à effacement sous écoute [4]. . . . . . . . . . . . . . . . . . . . . . . 414.6 Structure d’un tableau standard. . . . . . . . . . . . . . . . . . . . . . . . . . . . . 434.7 Tableau standard pour un code binaire C(6,3). . . . . . . . . . . . . . . . . . . . . . 434.8 Codage de coset avec des codes LDPC de type deux arêtes [1]. . . . . . . . . . . . . 464.9 Structure imbriquée d’un code secret [1] . . . . . . . . . . . . . . . . . . . . . . . . 48

5.1 Modèle de canal sous écoute avec retour en supposant des canaux d’effacement paquetà la fois pour le canal principal Qm et le canal sous écoute Qw[14]. . . . . . . . . . . 55

xi

Page 12: La cryptographie du point de vue de la théorie de l'information

5.2 Graphe de Tanner GT pour le décodage itératif avec échange de messages MP avec unensemble d’arrêt dû aux effacements aux nœuds de variables v2, v5 et v7. . . . . . . . 58

5.3 Diagramme bloc détaillé de l’encodeur [14]. . . . . . . . . . . . . . . . . . . . . . . 605.4 Sous graphe induit par V ′ = 1, 3, 4. . . . . . . . . . . . . . . . . . . . . . . . . . 625.5 Entrelacement d’un mot de code x de 16 bits, divise en L = 4 blocs de longueur 4, et

en paquets η = n/α = 4 avec α = 1. . . . . . . . . . . . . . . . . . . . . . . . . . . 665.6 Entrelacement d’un mot de code X de 16 bits, divise en L = 4 blocs de longueur 16,

et en paquets η = n/α = 2 avec α = 2. . . . . . . . . . . . . . . . . . . . . . . . . 665.7 Processus de décodage [14]. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 675.8 Courbe théorique [14] et résultat des simulations : probabilité que le nombre de degrés

de liberté soit supérieur à une valeur de seuil D avec β = 1, α = 1, η = 100. . . . . 725.9 Courbe théorique et résultat des simulations : probabilité que le nombre de degrés de

liberté soit supérieur à une valeur de seuil D avec β = 50, α = 1, η = 100. . . . . . 735.10 Courbe théorique et résultat des simulations : probabilité que le nombre de degrés de

liberté soit supérieur à une valeur de seuil D avec β = 1, α = 1, η = 5000. . . . . . 735.11 Courbe théorique [14] et résultat des simulations : probabilité que le nombre de degrés

de liberté soit supérieur à une valeur de seuil D avec β = 50, α = 1, η = 5000. . . . 745.12 Courbe théorique [15] et résultat des simulations : Pr(D ≥ 1) lorsque le nombre de

paquets η = 100, α = 1 et la probabilité d’effacement δ = 0.5. . . . . . . . . . . . . 765.13 Courbe théorique [15] et résultat des simulations : Pr(D ≥ 50) lorsque le nombre de

paquets η = 5000, α = 1 et la probabilité d’effacement δ = 0.5. . . . . . . . . . . . 765.14 Courbe théorique [15] et résultat des simulations : Pr(D ≥ 50) lorsque le nombre de

paquets η = 1250, α = 4 et la probabilité d’effacement δ = 0.5. . . . . . . . . . . . 775.15 Taux d’erreurs simulés dans M cryptogrammes décodés pour γ erreurs d’estimation

des valeurs de bits pour D degrés de liberté dans les mots de code reçus par Eve. . . . 78

6.1 Canal sous écoute gaussien [3],[2]. . . . . . . . . . . . . . . . . . . . . . . . . . . . 836.2 Écart de sécurité Sg [3],[2]. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 846.3 Schéma du codeur proposé dans [3], [2]. . . . . . . . . . . . . . . . . . . . . . . . . 866.4 BER de Eve contre les performances de l’écart de sécurité Sg [3], [2]. . . . . . . . . 876.5 Taux d’erreur par bit pour l’écouteur Eve en fonction de l’écart de sécurité Sglorsque

les bits de message sont transmis. . . . . . . . . . . . . . . . . . . . . . . . . . . . 886.6 Probabilité d’erreur pour les codes LDPC avec k = 1576 et R = 2/3, en adoptant la

transmission systématique, et transmission avec poinçonnage p = 0.4. . . . . . . . . 896.7 Probabilité d’erreur par rapport à l’écart de sécurité pour les techniques considérées

[16]. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 91

xii

Page 13: La cryptographie du point de vue de la théorie de l'information

Liste des symboles

A Ensemble de bits effacés dans un mot de code reçu

A Ensemble d’arrêt maximale non vide

b Mot de code avant le poinçonnage

C Capacité d’un canal

Cs Capacité secrète

Cs Capacité secrète forte

Cm Capacité du canal principal

Cw Capacité du canal d’écoute

C Code linéaire

cl(X ) Fermeture de l’ensemble XD Ensemble fini de messages chiffrés

D Nombre de degrés de liberté

DMP Nombre de degrés de liberté après décodage itératif MP

dH Distance de Hamming

d Nombre de bits manquants

E Cryptogramme

E Ensemble des arcs d’un graphe

E(C) Équivocation du code CE[D] Espérance mathématique de la variable aléatoire D

Eb Énergie par bit de message

Ec Énergie par bit codé transmis

e Séquence d’erreur

F Nombre total de "1" dans la matrice de parité

GT Graphe de Tanner

G Graphe

G′ Sous graphe

G Matrice génératrice

GF(2) Corps de Galois binaire

xiii

Page 14: La cryptographie du point de vue de la théorie de l'information

G Géométrie finie

H(X) Entropie d’une source X

H(X |Y ) Entropie conditionnelle de X étant donné Y (équivocation)

H(XY ) Entropie conjointe des sources X et Y

H Matrice de parité

Hb Fonction d’entropie binaire

Ik×k Matrice identité de rang k

I(X ;Y ) Information mutuelle moyenne entre X et Y

I(X) Information propre de X

K Ensemble fini de clés

K Clé de chiffrement

k Dimension d’un code

Ker(H) Kernel ou noyeau de la matrice HL Nombre de blocs de mot de code

logb |X | Logarithme dans la base b de X

L(C) Fuite de l’information du code CM Message binaire chiffré envoyé

M Estimation de message M observé par le récepteur légitime (Bob)

M Estimation de message M observé par l’espion (Eve)

m Message binaire

m′ Partie systématique dans le mot de code

npi Longueur du bloc de l’encodeur après poinçonnage

n Longueur du bloc de l’encodeur

P Ensemble fini de messages en clair

P Probabilité d’un événement sur X

P Matrice de probabilité de transition

p Mot de code aprés le poinçonnage

pX(x) Distribution de la probabilité de X

pX |Y (x|y) Distribution de la probabilité conditionnelle de X sachant Y

pXY (x,y) Distribution de la probabilité conjointe de X et Y

Pe Probabilité d’erreur

PeB Probabilité d’erreur de Bob

PeE Probabilité d’erreur d’Eve

Pr(Ω) Probabilité d’intercepter un paquet sans erreur

pi Fraction de tous les bits poinçonnés

Qm Canal principal

Qw Canal de l’espion

Q Ensemble des nœuds de variables non poinçonnés

R Modèle de poinçonnage

xiv

Page 15: La cryptographie du point de vue de la théorie de l'information

R Région taux d’équivocation faible

R Région taux d’équivocation fort

RDWTC Région taux d’équivocation faible pour DWTC

RDWTC Région taux d’équivocation fort pour DWTC

Rc Indice des bits effacés dans un mot de code

Rp Ensemble de tous les paquets effacés

R Taux de code

Rs Taux de secret

Rres Taux de code poinçonné

Re Taux d’équivocation

S Ensemble d’arrêt maximal non vide en AS Matrice de brouillage

Sg Écart de sécurité

S−1 Matrice de brouillage inverse

s Nombre de bits de message source

s Syndrome

t Vecteur de signal d’émission

U Ensemble des nœuds de parités du graphe de Tanner GT

V Ensemble des nœuds de variables du graphe de Tanner GT

E Ensemble de arcs du graphe

w(c) Poids d’un mot de code

wr Nombre d’éléments non nuls pour chaque ligne (poids de la ligne)

wc Nombre d’éléments non nuls pour chaque colonne (poids de la colonne)

X Alphabet ou ensemble

X Variable aléatoire

x mot de code

|X | Cardinalité de l’ensemble X

xn Séquence x1, x2, ..., xn

Y Observation du récepteur légitime

Z Observation de l’espion

ε Probabilité d’effacement du canal de l’espion

δ Probabilité d’effacement du canal principal

η Nombre de paquets

ρth Seuil de corrélation

σ2 Variance

πi Fraction des nœuds de variables de degré i qui sont poinçonnés

λ (x) Polynôme de degré de distribution de nœud de variable

ρ(x) Polynôme de degré de distribution de nœud de parité

? Symbole d’effacement

Ω Evénement d’interception d’un paquet sans erreur

xv

Page 16: La cryptographie du point de vue de la théorie de l'information
Page 17: La cryptographie du point de vue de la théorie de l'information

Abréviations

ARQ Automatic Repeat Request / Requête automatique de répétition

AWGN Additive White Gaussian Noise / Bruit blanc gaussien additif

BPSK Binary Phase-Shift Keying / Modulation binaire par changement de la phase

BCC Broadcast channel with confidential messages /

Canal de diffusion des messages confidentiels

BEC Binary erasure channel / Canal binaire à effacement

BSC Binary symmetric channel / Canal symétrique binaire

BP Belief propagation / Propagation de croyance

BF Bit flipping / Basculement de bits

BC Broadcast Channel / Canal de diffusion

BER Bit Error Rate / Taux d’erreur par bit

CSI Channel State Information / Information sur l’état du canal

DoF Degrees of Freedom / Degrés de liberté

DMS Discrete memoryless source / Source discrète sans mémoire

DMC Discrete memoryless channel / Canal discret sans mémoire

DWTC Degraded wiretap channel / Canal dégradé sous écoute

IID Independent and identically distributed random variables /

Variables indépendantes et identiquement distribuées

LDPC Low-Density Parity-Check / Faible densité de bits de parité

MP Message passing / Passage de messages

ML Maximum-likelihood / Vraisemblance maximale

MAP Maximum a Posteriori / Maximum a posteriori

OTP One Time Pad / Masque jetable

OSI Open Systems Interconnection model / Modèle d’interconnexion de systèmes ouverts

PEC Packet Erasure Channels / Canaux à effacements de paquets

PEG Progressive Edge Growth / Croissance progressive des arêtes

P2P Point-to-point / Point à point

OTP Signal to Noise Ratio / Rapport signal sur bruit

WTC Wiretap Channel / Canal sous écoute

SNR Signal to Noise Ratio / Rapport signal sur bruit

xvii

Page 18: La cryptographie du point de vue de la théorie de l'information
Page 19: La cryptographie du point de vue de la théorie de l'information

Remerciements

Je voudrais tout d’abord adresser toute ma gratitude à mon directeur de recherche, le professeur Jean-

Yves Chouinard, pour sa patience, sa disponibilité permanente et surtout son engagement total qui

nous permet d’acquérir de nouvelles connaissances pendant les séances de cours et les recherches

effectués au laboratoire. Le déroulement de mon projet de recherche a été sagement guidé par des

réunions régulières aux cours desquelles il a su combiner sympathie et sérieux afin de me faire profiter

de son expertise pour évaluer mes travaux de recherche et de ses conseils enrichissants pour diriger

l’évolution de mon cursus académique ainsi celle de mon projet de recherche.

Je ne sais comment exprimer ma gratitude au professeur Mohamed Mejri pour son soutien et son aide.

Je tiens à remercier spécialement le docteur Berdai Abdallah de m’avoir orienté, aidé et conseillé.

Je désir aussi remercier, le chercheur postdoctoral Mohamed Haj Taieb pour ses directives précises

et efficaces pour l’avancement de mes recherches, ses conseils, ses idées innovatrices et sa sympathie

m’ont effectivement aidé pour progresser dans mon travail de recherche.

Je dédie, à l’âme de mon père qui m’a quitté sans voir le fruit de son éducation. Lui qui m’a transmis

l’amour de vivre, l’amour du sacrifice et celui de continuer à donner sans limite.

A ma mère, à celle qui a passé sa vie, une main levée me souhaitant la grâce et la bénédiction et l’autre

main me réveillant à l’aube, en me disant que le jour et le soleil n’attendent pas. Elle m’a appris que

je dois faire mes invocations pour réveiller le jour et le soleil, et que je ne dois pas laisser endormis

mes bonnes actions, mon imagination, ma chance et mon esprit.

J’adresse mes plus sincères remerciements à mon épouse, ma petite fille Yasmine et tous les membres

de ma famille, qui m’ont aidé et toujours soutenu et encouragé au cours de la réalisation de ce mé-

moire.

Mes profonds remerciements vont à mon ami Farid et son épouse, qui m’ont toujours m’encouragé

durant ma présence au Québec.

Je tiens à exprimer ma sincère gratitude à mon pays l’Algérie et surtout mon organisme employeur

qui m’offre une bourse pour terminer mes études.

J’ai une pensé toute particulière à la mémoire des martyrs de la révolution Algérienne et le devoir

xix

Page 20: La cryptographie du point de vue de la théorie de l'information

national.

Enfin, j’adresse ensuite mes remerciements à tous les étudiants et amis du laboratoire de radiocom-

munication et de traitement de signal (LRTS) et tout le corps enseignant et administratif qui ont fait

en sorte que le cadre de travail soit instructif, propice et agréable.

xx

Page 21: La cryptographie du point de vue de la théorie de l'information

Chapitre 1

Introduction

1.1 Mise en contexte et problématique

L’avancement technologique rapide dans le domaine des communications et la diversité des méthodes

d’attaques utilisées par les espions pour récupérer de l’information, qu’elles soient claires ou chiffrées,

affaiblit la sécurité dans la couche d’application de la cryptographie. Cet inconvénient majeur a poussé

les chercheurs dans le domaine de la théorie de l’information à trouver de nouvelles solutions reposant

sur la sécurité du codage de canal qui opère au niveau de la pile de protocoles par la collaboration entre

la couche physique et la couche d’application de la cryptographique.

La possibilité de mettre en œuvre la sécurité de la transmission de la couche physique est connue

depuis de nombreuses années, mais celle-ci est en train de gagner un intérêt croissant en raison de ses

nombreuses applications possibles. Il a été démontré que les techniques de codage canal peuvent être

efficacement exploitées pour concevoir des systèmes de sécurité de la couche physique, d’une manière

telle qu’un attaquant, qui connaît un canal différent de celui du récepteur légitime, n’est pas en mesure

de recueillir toutes les informations.

Nous discutons de la possibilité de codage de canal pour améliorer la sécurité cryptographique. À cette

fin, nous présentons la métrique de secret de degrés de liberté dans l’observation de l’attaquant du

cryptogramme. En utilisant cette notion de secret, nous montrons comment un système spécifique de

codage de canal pratique peut être utilisé pour cacher des informations sur le texte chiffré, augmentant

ainsi la difficulté d’attaques cryptographiques. La conception amplifie les erreurs se produisent lorsque

les ensembles d’arrêts, de telle sorte, qu’un récepteur doit éstimer tous les bits effacés correctement

pour éviter un taux d’erreur de 0.5 dans le texte chiffré.

Nous présentons un système de codage pour le canal d’écoute gaussien AWGN sur la base de codes

LDPC. Les messages sont transmis sur des bits poinçonnés à masquer les données à l’espion. Il est

démontré par l’évolution de la densité que le BER (taux d’erreur par bit) d’un espion, augmente

autour de 0.5 à moins de quelques (dB). Il est montré aussi, comment l’application de poinçonnage

optimisé sur les codes LDPC peut être conçue dans le but d’atteindre une haute fiabilité entre des

1

Page 22: La cryptographie du point de vue de la théorie de l'information

parties légitimes et la sécurité contre un espion passif tout en gardant l’écart de sécurité aussi faible

que possible.

Nous étudions l’utilisation de codes LDPC non systématiques mis en œuvre par la matrice de brouillage

pour assurer la sécurité cryptographique. Il a été proposé d’exploiter les techniques de poinçonnage

afin de réduire l’écart en matière de sécurité entre les canaux principaux et canaux d’écoute. Nous

montrons que l’écart de sécurité peut encore être réduit en utilisant des codes non systématiques,

capables de brouiller les bits d’information dans le mot de code transmis.

Le but de ce travail est d’étudier et d’analyser les stratégies de codage sécuritaires, proposées dans

[14], [15], [3] et [16], reposant sur l’approche de la sécurité multicouche (couche physique et couche

application cryptographie).

1.2 Organisation du mémoire

À cet effet, nous détaillons, dans le deuxième chapitre les principes de la théorie de l’information et

expliquons comment ils ont été exploités pour le codage du canal secret. Nous rappelons la notion

de secret parfait de Shannon, et le théorème de la confidentialité parfaite. Pour l’étude de la sécurité

d’un système cryptographique, il y a deux grands concepts : la notion de confidentialité parfaite de

Shannon et le concept de sécurité calculatoire.

Ensuite, au chapitre 3, nous abordons une définition plus détaillée de codage de canal, les codes

correcteurs d’erreurs, et en particulier les codes LDPC : les principes de fonctionnement des codes

LDPC, la construction des codes LDPC, le codage, la description du décodage itératif, les critères de

performance des codes LDPC et les architectures relatives aux codes LDPC. Pour le décodage itératif,

nous avons spécifié le décodage itératif sur un canal à effacement.

Nous présentons, au chapitre 4, le modèle du canal sous écoute [13], avec certaines métriques pro-

posées dans le but d’assurer la sécurité et la fiabilité des systèmes de communication. Donc, nous

commençons par des définitions sur les principes de la sécurité de la couche physique. Par la suite,

nous présentons les notions de bases de la capacité secrète, le taux de compression, le taux de trans-

mission et le taux d’équivocation. Nous détaillons les méthodes de codage pour le secret faible et le

secret fort. À la fin de ce chapitre, nous effectuons une analyse détaillée sur le code proposé dans [1],

et puis, nous proposons un nouveau code sécuritaire de longueur n = 4, permettant de minimiser la

quantité de fuite d’information. Une comparaison détaillée effectué sur ce code par rapport au code

proposé dans [1] en termes de l’équivocation et le nombre de patrons qu’a une fuite d’information.

Au chapitre 5, nous utilisons la notion de degrés de liberté (degrees of freedom) dans les messages

chiffrés observés par l’attaquant [14]. Nous étudions comment un système spécifique de codage de ca-

nal pratique peut être utilisé pour cacher des informations, augmentant ainsi la difficulté des attaques

cryptographiques. La conception des codes repose sur le poinçonnage de codes LDPC non systéma-

tique et sur les ensembles d’arrêt dans le décodeur. Nous présentons la sécurité pour les modèles avec

2

Page 23: La cryptographie du point de vue de la théorie de l'information

plusieurs récepteurs et les attaquants en collaboration. La sécurité cryptographique est renforcée dans

tous ces cas, en exploitant les propriétés de la couche physique. À la fin de ce chapitre, nous reprodui-

sons les courbes théoriques à partir des expressions de [14], [15], et aussi nous effectuons une série

de simulations pour tracer les courbes de probabilité de sécurité où le nombre de degrés de liberté soit

supérieur à une valeur de seuil D.

Le chapitre 6, quant à lui, se concentre principalement sur la ré-implémentation des systèmes proposés

dans [3], [2] et [16]. La conception repose sur l’étude des applications de poinçonnage sur les codes

LDPC et met l’accent sur la sécurité de la couche physyique. Nous présentons un système de codage

pour le canal d’écoute gaussien AWGN sur la base de codes LDPC. Les messages sont transmis sur

des bits poinçonnés à masquer les données à l’espion. Il est démontré par l’évolution de la densité que

le BER (taux d’erreur par bit) d’un espion, augmente autour de 0.5 à moins de quelques (dB). Il est

montré aussi, comment l’application de poinçonnage optimisé sur les codes LDPC peut être conçue

dans le but d’atteindre une haute fiabilité entre des parties légitimes et la sécurité contre un espion

passif tout en gardant l’écart de sécurité aussi faible que possible. Enfin, il est montré comment les

codes LDPC non systématiques mis en œuvre par la matrice brouillage [16], peuvent être utilisés pour

minimiser l’écart de sécurité.

Nous présentons, au chapitre 7, une conclusion générale récapitulant les travaux effectués dans ce

mémoire de maîtrise. Nous y indiquons les contributions de ce mémoire. Nous présentons, à cet effet,

quelques directions pour des investigations futures pouvant améliorer la sécurité cryptographique au

niveau de la couche physique.

3

Page 24: La cryptographie du point de vue de la théorie de l'information
Page 25: La cryptographie du point de vue de la théorie de l'information

Chapitre 2

Quelques notions de théorie del’information

Dans ce chapitre, nous faisons un rappel de la théorie de l’information et résumons les idées sur le

codage du canal secret. Ainsi, nous rappelons les notions du secret parfait de Shannon et son théorème

de confidentialité parfaite. Nous donnons aussi des définitions sur les différents canaux utilisés dans

ce mémoire, et à la fin de ce chapitre, nous abordons le sujet du modèle d’interconnexion des systèmes

ouverts (OSI).

2.1 Notions de théorie de l’information

La théorie de l’information est la science qui s’intéresse à l’étude de l’information à transmettre par

la détermination des ressources adéquates et nécessaires pour permettre une transmission fiable des

informations depuis une source vers un destinataire. Le fondement de cette théorie fut inventé en 1948

par Claude Elwood Shannon [17] : il démontra la relation entre le taux de transmission et la capacité

du canal de transmission, de telle sorte que l’on peut atteindre un taux d’erreur aussi proche de zéro

que désiré si le taux de transmission est inférieur à la capacité du canal.

En effet, lorsqu’on peut minimiser la probabilité d’erreur à un niveau arbitrairement faible par l’ap-

plication de codage du canal, on peut transmettre l’information dans un canal sous l’influence de bruit

ou d’interférences sans perdre son contenu à la réception. Malheureusement, le théorème de codage

n’indique pas comment construire les codes correcteurs d’erreurs. Plusieurs chercheurs ont approfondi

leurs études dans ce sujet pour trouver des meilleures conceptions de codes pour atteindre la capacité

de Shannon.

Aujourd’hui, on peut considérer que la théorie de l’information existe en tant que domaine propre,

avec non seulement des applications en communication, mais aussi en statistique, en cryptographie,

en informatique, en économie, en mécanique statistique, etc., comme illustré à la figure 2.1.

5

Page 26: La cryptographie du point de vue de la théorie de l'information

Théorie de l'information

Codage de canal

Transmission

Codage de source

Compression

Tests d'estimation

Statistiques

Clé secrète

Cryptographic

Complexité

Informatique

Investissement

Economie

Thermodynamique

Mécanique statistique

FIGURE 2.1: Relations entre la théorie de l’information et d’autres domaines scientifiques.

2.1.1 Mesure quantitative de l’information :

La quantité d’information (l’information propre) associée au message xi avec une probabilité d’occur-

rence de p(xi) est définie comme une fonction logarithmique croissante de l’improbabilité 1/p(xi) où

b représente la base logarithmique [18], [19]. L’unité de mesure de l’information est exprimée soit en

sh, logons ou hartley [19] :

IX(xi)∆= logb

1p(xi)

=− logb p(xi) (2.1)

La quantité d’information de deux messages xi et y j, apportant la somme des quantités d’information

de chaque message s’écrit comme suit :

IXY (xi,y j) = IX(xi)+ IY (y j|xi) (2.2)

2.1.2 Fonction d’entropie

On définit l’entropie H(X) associée à une source d’information X , comme étant la moyenne de l’in-

formation propre de chaque message xi où i = 0, . . . , N . L’entropie s’exprime comme suit [19] :

H(X)∆= E [IX (x)] = ∑

x∈Xp(x) IX (x) =

N

∑i=1

p(xi)IX (xi) =−N

∑i=1

p(xi) logb p(xi) (2.3)

L’entropie d’une source représente la quantité d’information moyenne associée à chaque symbole de

la source. Pour une source binaire avec une distribution de symboles de la source 0 ≤ p(x1) ≤ 1 et

p(x2) = 1− p(x1), l’entropie est donnée par :

H(X) =− [p(x1) logb p(x1)+(1− p(x1)) logb (1− p(x1))] (2.4)

2.1.3 Entropie conjointe

Soient deux variables aléatoires (discrètes) X et Y où X = x1, x2, . . . , xK et Y = y1, y2, . . . , yJ,l’entropie conjointe de X et de Y qui mesure l’incertitude sur X et sur Y est définie par [19] :

H(XY ) =− ∑x∈X

∑y∈Y

p(x,y) logb p(x,y) =−K

∑k=1

J

∑j=1

p(xk,y j) logb p(xk,y j) (2.5)

6

Page 27: La cryptographie du point de vue de la théorie de l'information

2.1.4 Entropie conditionnelle

L’entropie conditionnelle de X étant donné Y , mesure l’incertitude sur X après l’observation de Y est

définie [19] par :

H(X |Y ) =− ∑x∈X

∑y∈Y

p(x,y) logb p(x |y) =−K

∑k=1

J

∑j=1

p(xk,y j) logb p(xk∣∣y j)

(2.6)

2.1.5 Information mutuelle

Soient deux variables aléatoires (discrètes) X et Y où X = x1, x2, . . . , xK et Y = y1, y2, . . . , yJ,l’information mutuelle I(X ;Y ) entre X et Y représente la quantité d’information que Y donne à propos

de X (et l’inverse) [19] :

I(X ;Y ) = ∑x∈X

∑y∈Y

p(x,y) logb

[p(x |y)p(x)

]=

K

∑k=1

J

∑j=1

p(xk,y j) logb

[p(xk∣∣y j)

p(xk)

](2.7)

Le but du récepteur est de déduire le symbole X qui a été transmis connaissant la valeur Y reçue. On

peut l’exprimer aussi sous la forme d’information mutuelle :

I(X ;Y ) =H(X)−H(X |Y ) (2.8)

L’information mutuelle I(X ;Y ) entre X et Y est plus grande ou égale à 0, I(X ;Y ) ≥ 0. Si l’entropie

conditionnelle H(X |Y ) = 0, alors le canal est parfait et a transmis l’information sans aucune erreur.

Dans ce cas, la valeur de Y est déterminée par la valeur de X : l’incertitude sur cette première H(X) =

0. Donc, l’information mutuelle atteint le maximum lorsque I(X ;Y ) =H(X).

Si les deux variables X et Y sont indépendantes, H(X |Y ) = H(X), ce qui donne I(X ;Y ) = 0, alors

le canal est complètement bruité, et il est alors impossible de transmettre une information correcte

sur ce canal. Le diagramme à la figure 2.2 réprésente, à titre intuitif, la relation entre l’entropie et

l’informatiom mutuelle.

( )H Xémetteur

( )H Yrécepteur

( )H Y X

( )H X Y

( , )H X Y ( ; )I X Y

FIGURE 2.2: Relation entre l’entropie et l’information mutuelle.

7

Page 28: La cryptographie du point de vue de la théorie de l'information

2.1.6 Chaîne de Markov

On dit que le triplet ordonné de variables aléatoires (X ,Y,Z) est une chaîne de Markov si et seulement

si :

p(z|x,y) = p(z|y) (2.9)

2.1.7 Canal de communication

On définit un canal de communication discret (voir figure 2.3), comme étant un support qui permet

de relier l’émetteur au récepteur afin de faciliter l’acheminement d’un message. Il consiste en un

alphabet d’entrée X , un alphabet de sortie Y et une matrice de probabilité de transition P qui exprime

la probabilité d’obtenir Y à la sortie du canal sachant que nous envoyons le symbole X . Le canal est

dit sans mémoire si la distribution de probabilité du signal de sortie ne dépend que de l’entrée.

M

message estimé

M

messagenX nY

|Y Xp

CanalEncodeur Décodeur

FIGURE 2.3: Système de communication.

La loi de transition entre X et Y est définie par la probabilité de chaque couple de valeurs d’entrée et

de sortie, Y et X :

∀(X ,Y ) ∈ X ×Y, PY |X(y|x) =PXY (x,y)

PX(x)(2.10)

2.1.8 Capacité d’un canal

On définit la capacité de canal C pour un canal discret sans mémoire comme suit [20] :

C = maxp(x)

I(X ,Y ) = maxp(x)

K

∑k=1

J

∑j=1

p(xk, y j)I(xk, y j) (2.11)

où le maximum est pris sur toutes les distributions possibles d’entrée p(x).

2.2 Exemples des canaux de communication

2.2.1 Canal binaire symétrique (BSC)

Un canal est dit symétrique, si les lignes de la matrice de probabilité de transition P sont des permuta-

tions des autres lignes et les colonnes sont des permutations des autres colonnes. Le cas le plus simple

de canal discret sans mémoire DMC est le canal binaire symétrique BSC (voir la figure 2.4), pour

lequel l’alphabet d’entrée X = 0, 1, l’alphabet de sortie Y = 0, 1 et sa matrice de probabilités de

8

Page 29: La cryptographie du point de vue de la théorie de l'information

transition P(y|x) est [19] :

P =

[(1− ε) ε

ε (1− ε)

]

1x

2x

1y

2y

1 1 1p y x

2

1

py

x

12

py

x

2 2 1p y x

FIGURE 2.4: Canal symétrique binaire (BSC).

2.2.2 Canal binaire à effacements (BEC)

Le canal binaire à effacements BEC, représenté à la figure 2.5, a été inventé en 1955 par P. Elias

[21]. Dans ce canal, une partie de l’information est perdue et le reste demeure sans changement.

Soit un canal discret sans mémoire BEC avec probabilité d’effacement ε , un alphabet binaire d’entrée

X = 0, 1, un alphabet de sortie ternaire Y = 0, 1, ?, où ”?” représente un symbole effacé, et défini

par une matrice de probabilités de transition [20],[19] :

P =

[1− ε ε 0

0 ε 1− ε

]On peut exprimer ses valeurs comme suit :

PX |Y (0|0) = 1− ε

PX |Y (1|0) = 0

PX |Y (?|0) = ε

PX |Y (0|1) = 0

PX |Y (1|1) = 1− ε

PX |Y (?|1) = ε

2.2.3 Canal à effacement de paquets (PEC)

La transmission des données en paquets est différente de celle par bits. Ici, les données sont regroupées

sous forme des groupes de bits appelés paquets qui peuvent aller de quelques octets (8 bits) à plusieurs

Giga-octets. Dans ce cas, on introduit un modèle plus général appelé canal à effacement de paquets où

les données après la transmission sont bien reçues ou sont effacées comme illustré à la figure 2.6. Il y a

plusieurs systèmes de détection des erreurs assurant l’intégration du paquet tel que : CRC, "checksum"

TCP ou UDP, et les fonctions de hachage [22].

9

Page 30: La cryptographie du point de vue de la théorie de l'information

1x

2x

1y

3y

1 1 1p y x

21

p y x

2

2p y x

2y

3 2 1p y x

FIGURE 2.5: Canal binaire avec effacement (BEC).

MM X YEncodeur Décodeur

p paquet reçu

paquet perdu

FIGURE 2.6: Modèle de canal à effacement de paquet (PEC).

2.2.4 Canaux additifs gaussiens (AWGN)

On appelle un canal à bruit blanc gaussien additif (AWGN), un canal de transmission dans lequel les

données transmises sont affectées par un bruit blanc gaussien de moyenne nulle et de variance σ2. La

distribution de ce bruit se définit par la loi normaleN (0, σ2) et on considère que ce bruit a une densité

spectrale de puissance constante de N0/2 sur la bande de fréquences du canal [6]. Le signal de sortie

Yn = Xn +Zn, avec Zn ∼N(0, σ2

Z), comme illustré à la figure 2.7.

1, , , ,

source d'information

n NX X X X 1, , , ,

séquence reçue

n NY Y Y Y

1, , , ,

bruit additif gaussien

n NZ Z Z Z

canal

entrée sortie

FIGURE 2.7: Modèle de canal à bruit blanc gaussien additif (AWGN).

10

Page 31: La cryptographie du point de vue de la théorie de l'information

2.3 Modèle de canal de communication sécurisé

2.3.1 Modèle de canal de communication sécurisé de Shannon

Dans un système de communication, notre souci est de rendre une communication établie entre deux

parties légitimes bien sécurisée et fiable, où d’une part, un récepteur légitime peut recevoir les mes-

sages envoyés sans aucune erreur, et d’autre part, l’espion ne doit permis récupérer des informations

concernant ces messages. En 1949, Shannon a présenté [17] les principales notions d’un système

secret tel que présenté à la figure 2.8. Il est constitué de deux parties légitimes, un émetteur et un ré-

cepteur, appelés respectivement Alice et Bob. La communication se déroule en présence d’un espion

nommé Eve.

clé secrète K

M MAlice Encodeur Décodeur Bob

Eve

X

messagemessage mot de code

FIGURE 2.8: Modèle de canal de communication sécurisé proposé par Shannon [4].

Lorsque Alice code son message M en mot de code X et l’envoie via un canal de communication à

Bob, Eve essaie d’intercepter le message par le biais de son canal. Dans le pire des cas, le canal de

l’espion n’est pas dégradé et est sans bruit. En réalité, les systèmes de communication sont affectés

par le bruit, lequel engendre des erreurs. À cet effet, il y a des systèmes de codage reposant sur

la compression et la redondance pour minimiser la probabilité d’erreur. D’autres conceptions sont

basées sur l’utilisation de la cryptographie pour permettre à l’émetteur et au récepteur légitimes de

partager entre eux une clé secrète K [4]. Dans ce cas, le mot de code X est obtenu par l’application

des algorithmes de chiffrements appropriés.

2.3.2 Confidentialité parfaite de Shannon

Shannon a défini dans [17] la notion de secret qui eut une influence sur la sécurité cryptographique, en

se basant sur le calcul de l’équivocation (entropie conditionnelle) de l’espion. Plus tard, cette définition

a fondé les bases de la cryptographie moderne. Pour l’étude de la sécurité d’un système cryptogra-

phique, il y a deux grands concepts : la notion de confidentialité parfaite de Shannon et le concept

de sécurité calculatoire. Intuitivement, la confidentialité parfaite est définie à la base lorsqu’un espion

n’a pas la possibilité d’obtenir les informations sur les messages en clair en interceptant les messages

chiffrés. Shannon a modélisé que, les messages et les mots de codes comme des variables aléatoires,

de telle sorte que la confidentialité parfaite est atteinte si la quantité H(M|X) égale à l’entropie de

11

Page 32: La cryptographie du point de vue de la théorie de l'information

message M [4].

H(M|X) =H(M) (2.12)

Soit un texte clair x et un texte chiffré y. On dit qu’un système cryptographique assure une confiden-

tialité parfaite si l’on a p(x|y) = p(x), c’est-à-dire, si la probabilité de x après l’observation de y est

égale à la probabilité x.

2.3.3 Caractérisation de la confidentialité parfaite

Nous supposerons un système cryptographique constitué d’un ensemble fini P de messages clairs,

d’un ensemble fini D de messages chiffrés, et d’un ensemble fini K de clés. Pour chaque clé K ∈K on suppose une fonction injective de chiffrement eK de P dans D et une fonction injective de

déchiffrement dK de eK(P) dans P de telle sorte que dK eK = dK(eK) = IdP .

Théorème de Shannon

Soit une procédure de chiffrement telle que le nombre d’éléments dans P , dans D et dans K soient

tous égaux à un certain entier n > 0. Ce système assure une confidentialité parfaite si, et seulement

si, chaque clef est utilisée avec une probabilité 1n (toutes les clés sont équiprobables), et pour chaque

message est clair x ∈ P et pour chaque message chiffré y ∈D, il existe une clé unique K ∈K telle que

eK(x) = y (et donc dK(y) = x).

Exemple : Dans la réalisation de la confidentialité parfaite, on peut citer le chiffrement célèbre de

Vernam, également connu sous les noms de masque jetable ou one-time-pad, comme illustré à la figure

2.9. Il fut inventé par Gilbert Vernam en 1917 pour chiffrer et déchiffrer des messages télégraphiques.

Il est intéressant de noter que le chiffrement de Vernam fut admis "incassable" pendant des années

avant que Shannon ne le prouve trente ans plus tard grâce à la notion de confidentialité parfaite.

Message M 0 1 0 1 0 0 0 1 1 0 1Clé K 1 0 0 1 1 0 0 0 1 0 1

Message chiffré M⊕K 1 1 0 0 1 0 0 1 0 0 0

FIGURE 2.9: Exemple de chiffrement avec masque jetable OTP (chiffrement de Vernam) [4].

Soit un entier n ≥ 1 fixé et soient P = D = K = Zn2, c.-à-d. que les messages en clair, les messages

chiffrés et les clés sont des vecteurs de n bits définis sur Zn2 = 0, 1n. Pour K = (K1, K2, . . . , Kn)∈Zn

2

et x = (x1, x2, . . . , xn), on définit :

eK(x) = (x1⊕K1, x2⊕K2, . . . , xn⊕Kn) (2.13)

12

Page 33: La cryptographie du point de vue de la théorie de l'information

où ⊕ est l’opération de ou-exclusif (XOR). L’opération de déchiffrement est identique à l’opération

de chiffrement, de sorte que, si y = (y1, y2, . . . , yn), l’opération de déchiffrement est définie comme :

dK(y) = (y1⊕K1, y2⊕K2, . . . , yn⊕Kn) (2.14)

car l’addition et la soustraction modulo 2 sont identiques sous l’opération ⊕. Par l’application du

théorème de Shannon, on déduit que le chiffrement de Vernam assure une confidentialité parfaite. Si

on ne connaît que le texte chiffré et que toutes les clés sont équiprobables, alors tous les textes clairs

sont possibles et avec la même probabilité. Néanmoins, ce procédé est vulnérable, parce que après

plusieurs attaques, la connaissance d’une partie du texte clair et du chiffré correspondant donnent la

partie de la clé utilisée [23]. En effet, si on connaît le texte chiffré y = (y1, y2, . . . , yn) et le texte clair

correspondant x = (x1, x2, . . . , xn), alors on retrouve la clé k utilisée en calculant :

(x1⊕ y1, x2⊕ y2, . . . , xn⊕ yn) = K (2.15)

Ceci tient au fait de la propriété du ou-exclusif : b⊕ b = 0 quelle que soit la valeur du bit b. Si

y = eK(x), alors quel que soit i = 1, · · · , n, xi⊕Ki = yi :

xi⊕ yi = xi⊕ (xi⊕Ki) = xi⊕ xi︸ ︷︷ ︸=0

⊕Ki = Ki (2.16)

En résumé, la connaissance du ième bit xi de x et du ième bit yi de y permet de retrouver le ième bit Ki

de la clé K utilisée.

On peut assurer la confidentialité parfaite par le chiffrement de Vernam OTP il faut que la taille de la

clé soit identique à celle du message chiffré, que la clé soit utilisée une seule fois, et que la clé soit

choisie d’une manière aléatoire.

2.4 Cryptographie et couche physique

2.4.1 Architecture en couches de protocoles

Une pile de protocoles est construite d’un ensemble de protocoles [24], chaque protocole ayant une

fonctionnalité dans les communications réseau. On peut citer les quelques modèles suivants :

– Le modèle de référence pour l’interconnexion des systèmes ouverts (OSI/ISO).

– Le modèle Internet.

Une comparaison entre les deux modèles est illustrée à la figure 2.10. Les composantes d’une pile de

protocole sont :

1. Couche physique : Les bits d’informations sont transférés sous formes des signaux et transpor-

tés via un support de communication (cuivre, fibre optique, etc.).

2. Couche liaison : Permet l’envoi et la réception de paquets d’informations entre deux équipe-

ments voisins tout en gérant le partage du même support physique.

13

Page 34: La cryptographie du point de vue de la théorie de l'information

3. Couche réseau : Ajoute la notion de routage des paquets d’information depuis une adresse

source et en les transférant de proche en proche vers une adresse destination.

4. Couche transport : Gère les communications de bout en bout entre processus.

5. Couche session : Le modèle OSI définit ici la synchronisation des échanges et les « transactions

», et permet l’ouverture et la fermeture de session.

6. Couche présentation : Définit la représentation des données de l’application et se charge de

leur codage/décodage.

7. Couche application : Cette couche fournit simplement le point d’accès au réseau par les appli-

cations.

.

Application

Transport

Réseau

Liaison

Physique

Application

Transport

Réseau

Liaison

Physique

Présentation

Session

FIGURE 2.10: Comparaison entre pile de protocoles de modèle Internet (à gauche) et modèle OSI (àdroite).

2.4.2 Sécurité calculatoire et parfaite au niveau de la couche physique

De nombreux systèmes de chiffrement mis en place aujourd’hui mesurent la sécurité et la complexité

calculatoire des attaques. Si toutes les attaques connues sont intraitables au niveau de la complexité

calculatoire, ce système est considéré comme sûr. Les principaux défauts de cette notion de sécurité

sont les hypothèses faites sur l’attaquant [14]. Tout d’abord, il est supposé que l’attaquant possède

des ressources limitées pour faire face au problème, même si ces ressources sont à l’état de l’art.

Deuxièmement, on suppose que l’attaquant utilise des attaques qui sont de notoriété publique, même

si une meilleure attaque peut exister. Claude Shannon a abordé ces lacunes en définissant la notion de

secret parfait (le système cryptographique est parfait si la connaissance du message chiffré n’apporte

aucune information sur le message clair). Soit un message secret M chiffré en un cryptogramme E

à l’aide d’une clé secrète K. Le secret parfait est obtenu si H(M|E) = H(M). Shannon a également

prouvé que le secret parfait ne peut être atteint que si la clé est au moins aussi longue que M, ce qui

14

Page 35: La cryptographie du point de vue de la théorie de l'information

est clairement impraticable. Cependant, le secret parfait fait également l’hypothèse de la limitation à

un attaquant qui a accès à un cryptogramme sans erreur, ce qui peut ne pas être le cas dans la pratique.

La figure 2.11 illustre une approche multicouche de sécurité, comprenant la cryptographie et de la

sécurité de la couche physique, dans un environnement de perte de paquets avec retour authentifié

pour Bob [14].

)(

)(

M

M

Y

ZCEP

CEP

mQ

wQ

M XEncodeur

Décodeur

Décodeur

canal de retour

Alice

Bob

Eve

Chiffrement

Déchiffrement

Déchiffrement

Clé

E

E

E

Clé

FIGURE 2.11: Présentation générale d’une approche multicouche de sécurité [5].

Aaron Wyner [4], [13], a introduit plus tard le modèle de canal sous écoute, avec une nouvelle condi-

tion pour le secret. Soit un message M de longueur k, codé par un mot de code X de longueur n, puis

transmis. Le taux de codage est R = k/n. Un récepteur légitime obtient Y sur le canal principal dénoté

Qm, et un espion obtient Z sur un canal sous écoute dénoté Qw. La condition du secret est

limk→∞

I(M;Z)k

= 0 (2.17)

où k représente la longueur de la séquence d’information. Wyner [13], [4] a montré que des taux allant

jusqu’à la capacité de secret Cs qui caractérise la limite fondamentale de communications sécurisées

sur des canaux bruités, existent avec des encodeurs et décodeurs qui peuvent satisfaire (2.17) et réa-

liser une probabilité d’erreur arbitrairement faible. Ceci est connu comme le modèle de canal sous

écoute dégradé. Csiszar et Korner [25] ont généralisé plus tard ces résultats pour enlever la restriction

de canal dégradé, mais en montrant encore que Cs > 0, si Qm est moins bruité que Qw [14].

Mais un autre des principaux défis dans ce domaine a été la conception de systèmes pratiques qui

permettent d’atteindre les taux de secret déterminés par la théorie. Ces systèmes exploitent le bruit

dans le canal au niveau de la couche physique du système de communication. Les conceptions pra-

tiques maximisant le secret dans la théorie de l’information ne sont pas négligeables. Par exemple, la

conception de code est souvent fonction de paramètres de canaux spécifiques CSI (channel state infor-

mation) vu par des récepteurs légitimes et des espions. Sans connaissance précise de l’état du canal,

les résultats de ces systèmes ne sont pas garantis. Par conséquent, les canaux avec divers paramètres

non connus posent des problèmes de conception. D’autres codes permettent la transmission secrète

pour des types spécifiques de canaux [14], ou seulement lorsque le canal de l’espion est dégradé.

D’autres modèles sont impraticables dans le monde réel en raison de la complexité de la conception,

15

Page 36: La cryptographie du point de vue de la théorie de l'information

de l’information latérale nécessaire pour le décodage légitime, ou d’autres limitations [14]. Enfin, la

lacune la plus flagrante de tout schéma qui dérive de la sécurité de la couche physique d’un système

de communication, est que si un espion a un meilleur canal que le récepteur légitime, le schéma est

susceptible d’échouer. Le cas extrême est quand un espion a un canal sans bruit et que Z = X . Il est

clair que cela nécessite un schéma de sécurité de la couche physique pour être couplé avec une autre

protection afin de préserver le secret dans le pire des cas.

2.5 Conclusion

Dans ce deuxième chapitre nous avons présenté les éléments de base relatifs à la sécurité et à la fiabilité

sur la base des notions de théorie de l’information. Nous avons insisté sur les points que nous consi-

dérons comme essentiels pour la bonne compréhension de la suite du mémoire. Nous avons donné un

bref apperçu sur le codage du canal secret en impliquant la couche physique et la couche d’application

cryptographique. Dans la suite du mémoire, nous nous intéressons à la définition des méthodes repo-

sant sur le codage secret pour sécuriser les communications. Le chapitre suivant s’intéresse au codage

de canal et en particulier aux codes LDPC.

16

Page 37: La cryptographie du point de vue de la théorie de l'information

Chapitre 3

Codes correcteurs LDPC et décodageitératif

Le codage de canal est considéré comme une pièce importante dans les systèmes de communication

modernes. À titre d’illustration, on peut mentionner le codage linéaire en bloc qui est utilisé dans les

standards CD et DVD et les codes pour LDPC qui seront utilisés pour récupérer les pertes de paquets

dans les réseaux qui distribuent leurs contenus sur l’internet.

Dans ce chapitre, nous donnons une vision introductoire mais relativement détaillée de la théorie mo-

derne du codage de canal. En particulier, nous voyons la théorie des codes LDPC avec les algorithmes

de décodage itératif.

3.1 Codage de canal

Dans le cas d’un canal soumis à des perturbations, le codeur joue un rôle très important dans la pro-

tection du message pendant sa transmission. En effectuant des opérations sur la sortie de la source

avant de transmettre l’information telle que la modulation, la compression et l’ajout des bits de redon-

dances, le décodeur peut restituer à la réception, l’information transmise par la source avec fiabilité.

La figure 3.1 représente une chaîne de transmission classique qui comporte les composantes de base

d’un système de communication typique :

Source

d'informationÉmetteur Canal Récepteur Destinataire

Source de

perturbations

message

émis

signal

émis

signal

reçu

message

reçu

bruit et

distorsions

FIGURE 3.1: Modèle d’un système de communication.

17

Page 38: La cryptographie du point de vue de la théorie de l'information

Source d’information : La source d’information délivre le message porteur de l’information. De

nature analogique ou numérique, elle peut être un signal audio, une vidéo, une image, un texte ou des

données brutes.

Émetteur : L’ensemble des opérations effectuées sur la source (modulation, compression, ajout de

redondance, etc).

Codage de source : Le coût élevé de l’usage du canal de transmission exige l’optimisation des

ressources nécessaires à la transmission (durée, puissance de canal, bande passante, etc.) afin de mi-

nimiser les coûts. On peut découper le message source en blocs de k bits aussi courts que possible ou

le compresser afin de réduire le nombre de bits à transmettre. De ce fait, on augmente l’efficacité.

Codage de canal : Le rôle principal du codage du canal est la protection de l’information transmise

contre les effets du bruit imposés par les caractéristiques physiques du canal de transmission. Le

codage consiste ainsi à modifier le contenu de l’information par l’ajout de symbole de redondance,

faisant ainsi une adaptation entre la source et le canal de transmission afin de minimiser la probabilité

d’erreur, et augmenter ainsi la résistance du système de communication contre l’effet de bruit de canal.

Décodage canal : Le décodeur de canal se fait au niveau du récepteur, permettant ainsi la restitution

du message émis par l’application des algorithmes et des méthodes de décodage bien définies pour la

détection et la correction des éventuelles erreurs de transmissions.

Canal : Le canal est le médium physique dans lequel transite l’information (codée) : ligne télépho-

nique, liaison radio, support magnétique, diffusion vidéo numérique, etc.

Récepteur : La reconstruction à partir de la sortie du canal de l’information fournie par la source.

Décodage de source : Le décodage de source effectue l’opération inverse du codage, il permet de

reconstituer le message initial à partir des séquences de substitution par l’exécution des algorithmes

appropriés de décodage de source (décompression par exemple).

3.2 Codes correcteurs et détecteurs des erreurs

La polyvalence des codes correcteurs d’erreurs dépend de leurs performances et de leurs méthodo-

logies, mais le principe de base est toujours le même, c.-à-d., l’ajout de symboles de redondance au

message à transmettre pour pouvoir détecter, à la réception, les éventuelles erreurs et les corriger pour

restituer le message original. On distingue deux grandes familles de codes correcteurs d’erreurs :

– Les codes en blocs (codes algébriques, codes linéaires, Hamming, BCH, RS, LDPC).

– Les codes convolutifs (codes en treillis, turbo-codes).

18

Page 39: La cryptographie du point de vue de la théorie de l'information

Codes linéaires en bloc

Le codage en bloc consiste à associer à chaque bloc de données de k symboles à l’issue de la source

d’information, un vecteur c, appelé mot de code. Le mot de code en bloc (n, k), est de longueur n et

de dimension k. La quantité (n− k) représente les symboles de redondance introduits par le code, le

rapport k/n est appelé le rendement du code ou le coefficient d’efficacité. Les symboles du message

d’information et du mot de code prennent typiquement leurs valeurs sur un corps fini de Galois GF(2).

On définit la distance de Hamming entre deux vecteurs, comme étant le nombre de bits dont ils dif-

fèrent. La distance minimale d’un code linéaire C, notée dmin, est égale au poids minimum de tous les

mots de codes non-nuls :

dmin(C) = min w(c, c′)c,c′∈C, c6=c′

(3.1)

On peut donc représenter le code linéaire par les trois paramètres (n, k, dmin), où n est la longueur du

code, k sa dimension et dmin sa distance minimale. Le poids d’un mot de code w(c) est égal au nombre

de ses eléments non nuls.

Pour le cas d’un code en bloc linéaire, on définit la matrice génératrice G du code, construite à l’aide

de vecteurs de la base. Chaque code en bloc linéaire C(n, k) est défini par sa matrice génératrice de k

lignes et n colonnes. Le mot de code est alors égal à :

c = m ·G (3.2)

À noter que la représentation du code fourni par G n’est pas unique. Elle peut être écrite sous la forme

G = [Pk×(n−k)|Ik], où Ik la matrice d’identité et P une matrice de dimension k× (n− k). En effet,

à partir d’une matrice génératrice G donnée, une autre matrice génératrice G′ peut être obtenue en

effectuant des opérations de permutation des lignes ou des colonnes. Ensuite, une opération de codage

défini par c = m ·G′ assigne le message m à un mot de code en C, mais ce n’est pas nécessairement le

même mot de code que l’on obtiendrait à l’aide de la matrice génératrice G [6].

À la réception, on définit la matrice de contrôle de parité dénotée H de taille (n−k)×n, avec laquelle,

on doit restituer le message émis de la source. On dit alors que le mot de code est valide si et seulement

si :

c ·HT = 0 (3.3)

À la figure 3.2, on présente les différentes étapes que subit le mot source depuis son émission jusqu’à

sa réception. Dans le canal, le mot de code va subir l’effet de bruit par l’addition d’une séquence

d’erreur. À la réception, on aura le message reçu suivant :

r = c+ e = m ·G+ e (3.4)

19

Page 40: La cryptographie du point de vue de la théorie de l'information

Encodeur

linéaire

G

C a n a l

b ru i té

r c e

c Décodeur

linéaire

H

m r m

FIGURE 3.2: Codage de canal pour un canal bruité.

On définit, à la réception, le syndrome s de longueur (n− k), utilisé pour la détection et la correction

des éventuelles erreurs de transmission. Il est en relation directe avec la séquence d’erreur e :

s =r ·HT

s =(c+ e) ·HT

s =c ·HT + e ·HT

s =e ·HT

(3.5)

Si la valeur du syndrome est non nulle, cela indique la présence d’erreur dans le mot code reçu. Dans

le cas contraire, il n’y pas eu d’erreur de transmission.

3.3 Codes à faible densité de parité LDPC

Les codes à faible densité de parité LDPC ont été inventés par Robert Gallager en 1962 [26], mais

vu leur complexité de décodage qui dépassait les capacités disponibles des moyens techniques à cette

date, ces codes ont été négligés pendant 30 ans, jusqu’à 1981 où Tanner [27] a donné une nouvelle

interprétation d’un point de vue graphique. Dans les années 90, Mackay et Neal [28] ont approfondis

les recherches et études effectuées sur les codes LDPC. Depuis, les codes LDPC constituent un do-

maine de recherche très actif, et ils sont aujourd’hui incontournables dans le domaine de la théorie des

codes. Ces codes sont caractérisés par leur matrice de contrôle de parité H. Dans le cas binaire, cette

matrice a la particularité de ne contenir que quelques bits non-nuls par rapport aux bits "0", c.-à-d.,

une faible densité de valeurs de "1" (matrice creuse) comme illustré à la figure 3.3.

3.3.1 Représentation graphique des codes LDPC

Les représentations graphiques ont été introduites pour visualiser les fonctions globales compliquées

qui peuvent être factorisées en produits de fonctions «locales». Le but principal est de faciliter la

compréhension du déroulement du processus de décodage itératif, en particulier, l’algorithme somme-

produit qui calcule diverses fonctions marginales dérivés d’une fonction globale. Donc, on peut re-

présenter graphiquement les codes LDPC à l’aide d’un graphe bipartite qui exprime la structure de la

factorisation, appelé aussi graphe de Tanner [27]. Il est composé de deux sous ensembles de nœuds :

– Le premier est constitué de n nœuds représentant les n bits d’un mot de code et est appelé

l’ensemle des nœuds de variables V .

20

Page 41: La cryptographie du point de vue de la théorie de l'information

0 100 200 300 400 500 600 700 800 900 1000

0

100

200

300

400

500

nz = 5000

FIGURE 3.3: Matrice de parité d’un code LDPC régulier (5, 10) de taille n = 1000 et de rendementR = 0.5.

– Le deuxième est constitué de k nœuds appelé l’ensemle des nœuds de parités U représentant les

contraintes de parité.

Le graphe possède des arêtes signifiant les liens entre les nœuds de variables et nœuds de parités. Un

nœud de variable vi sera connecté au nœud de parité ui dans la matrice, si hi, j = 1. Noter qu’il n’y a

pas de connections entre nœuds de même type. La figure 3.4 représente le graphe de Tanner GT d’un

code LDPC.

0u1u

2u3u 4u 5u

0v 1v 2v 3v4v

5v 6v 7v8v 9v 10v 11v

U

V

Noeuds de variable

Noeuds de parité

FIGURE 3.4: Graphe bipartite de Tanner GT d’un code LDPC.

21

Page 42: La cryptographie du point de vue de la théorie de l'information

Pour chaque nœud de parité, la somme modulo 2 des bits correspondants aux nœuds variables adja-

cents est nulle.

3.3.2 Représentation matricielle des codes LDPC

Un code LDPC est défini par sa matrice de parité H(n−k)×n . Cette matrice vérifie les propriétés sui-

vantes :

– Chaque ligne comprend un nombre d’éléments non-nuls wr ;

– Chaque colonne comprend un nombre d’éléments non-nuls wc ;

– Le nombre de "1"s communs entre deux colonnes quelconques n’est pas plus grand que 1.

La matrice H est à faible densité si wr n et wc s. La matrice de parité H pour le code LDPC

régulier (3, 6) défini par le graphe de Tanner de la figure 3.4 est donnée par :

H =

1 1 0 1 0 0 0 0 1 1 0 1

1 1 1 1 1 0 0 1 0 0 0 0

1 0 1 0 1 1 0 0 0 1 1 0

0 0 0 1 1 1 1 0 1 0 1 0

0 1 1 0 0 0 1 1 0 0 1 1

0 0 0 0 0 1 1 1 1 1 0 1

Le système linéaire correspondant, où les xi1≤i≤12 sont les variables représentant les bits, est alors :

H =

x1⊕ x2⊕ x4⊕ x9⊕ x10⊕ x12

x1⊕ x2⊕ x3⊕ x4⊕ x5⊕ x8⊕x1⊕ x3⊕ x5⊕ x6⊕ x10⊕ x11⊕

x4⊕ x5⊕ x6⊕ x7⊕ x9⊕ x11⊕x2⊕ x3⊕ x7⊕ x8⊕ x11⊕ x12

x6⊕ x7⊕ x8⊕ x9⊕ x10⊕ x12

= 0

= 0

= 0

= 0

= 0

= 0

3.3.3 Codes réguliers et irréguliers

Les codes LDPC sont groupés en deux classes suivant les distributions des éléments non nuls : les

codes LDPC réguliers et les codes LDPC irréguliers.

Un code LDPC (wc, wr) régulier [26], [6], est un code en bloc binaire C(n, k) qui a une matrice de

parité H avec un petit nombre fixe wc de "1" dans chaque colonne et un petit nombre fixe wr de "1"

dans chaque ligne. Nous notons wr le degré de nœud de variable et wc le degré de nœud de parité. La

figure 3.5 représente la matrice de parité du code LDPC régulier C(20, 3, 4). Un code LDPC irrégulier

[29], [28], [26], est un code en bloc binaire (n, k) qui a une matrice de parité H, avec un petit nombre

de "1" dans chaque colonne et un petit nombre de "1" dans chaque ligne. Le degré de nœud de variable

et le degré de nœud de parité n’est pas constant sur les lignes et / ou les colonnes.

22

Page 43: La cryptographie du point de vue de la théorie de l'information

1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

0 0 0 0 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0 1 1 1 1 0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 0 0 0 0

0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1

1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 0 0 0 0

0 1 0 0 0 1 0 0 0 1 0 0 0 0 0 0 1 0 0 0

0 0 1 0 0 0 1 0 0 0 0 0 0 1 0 0 0 1 0 0

0 0 0 1 0 0 0 0 0 0 1 0 0 0 1 0 0 0 1 0

0 0 0 0 0 0 0 1 0 0 0 1 0 0 0 1 0 0

H

0 1

1 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0 0

0 1 0 0 0 0 1 0 0 0 1 0 0 0 0 1 0 0 0 0

0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 0 1 0

0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 1 0 0 0

0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1

FIGURE 3.5: Exemple d’une matrice de parité du code LDPC régulier C(20,3,4) [6],[7].

Parfois, wr et wc sont appelés poids de la ligne (row weight) et poids de la colonne (column weight),

respectivement. Soit F le nombre total de "1" dans la matrice de contrôle de parité. Avec F = n ·wr =

s ·wc [6], nous obtenons le taux de codage R des codes LDPC réguliers comme [10] :

R =kn=

n− sn

= 1− sn= 1− wc

wr(3.6)

3.3.4 Distribution des degrés des nœuds dans un graphe de code LDPC

Nous caractérisons une classe de codes LDPC réguliers par un degré de nœuds de variable et un degré

de nœuds de parité. De la même façon, on associe une distribution de degrés avec une classe de codes

LDPC irréguliers. La spécification des degrés du point de vue d’arête, λi désigne la fraction des arêtes

liées à tous les nœuds de variables qui ont un certain degré wr = i. De même, ρ j désigne la fraction

des arêtes liées à tous les nœuds de parité qui ont un certain degré wc = j.

Soit wr, max le plus haut degré de nœud de variable et wc, max le plus haut degré de nœud de parité.

Le nombre total d’arêtes F (ou de façon équivalente le nombre total de "1" dans la matrice de contrôle

de parité) est égal à [10] :

F =1n

wr, max

∑i=1

λi

i=

1s

wc, max

∑i=1

ρ j

j(3.7)

De même, nous définissons le degré moyen de nœuds de variable wr et le degré moyen de nœuds de

parité wc pour les codes LDPC irréguliers comme

wr =Fn

; wc =Fs

(3.8)

23

Page 44: La cryptographie du point de vue de la théorie de l'information

où n est le nombre de nœuds de variable et s = n− k le nombre de nœuds de parité. Le taux de

conception de code (code design rate) pour les codes irréguliers résultant est :

R = 1− wc

wr(3.9)

Nous pouvons représenter la distribution des degrés par des polynômes du point de vue des arêtes.

Les polynômes associés sont :

λ (x)∆=

wr, max

∑i=1

λixi−1

ρ(x)∆=

wc, max

∑j=1

ρ jx j−1(3.10)

où λi et ρi sont les fractions des arêtes connectées respectivement aux nœuds symboles (variables)

et aux nœuds de parité n. Ces polynômes déterminent également le taux de codage de code pour les

codes irréguliers qui devient :

R = 1−

1∫0

ρ(x)dx

1∫0

λ (x)dx= 1−

∑j

ρ jj

∑i

λii

(3.11)

Lorsque la matrice possède une structure par bloc on pourra appliquer ces critères aux différents blocs

afin de déterminer le caractère régulier ou irrégulier du code.

3.3.5 Notion de cycle dans un graphe de Tanner

Un graphe de Tanner de code LDPC est caractérisé par un cycle lorsqu’il existe un chemin pour

quitter et revenir au même nœud de variable sans passer par les mêmes arêtes. Dans le cas où le

graphe contient des cycles, on appelle le nombre de branches constituant un cycle, la longueur de ce

cycle. On appelle "girth" du graphe, la longueur minimale des cycles sur ce graphe. Ce dernier a un

impact sur les performances d’un code LDPC. Un exemple de cycles de longueurs 4, 6 et 8 est illustré

à la figure 3.6. Un graphe sans cycles est appelé un arbre. On note que l’existence des cycles influe

négativement sur les performances d’un code LDPC.

1 1 1 0 0

0 1 1 1 0

0 0 0 1 1

1 1 0 0 1

1 1 1 0 0

0 1 1 1 0

0 0 0 1 1

1 1 0 0 1

1 1 1 0 0

0 1 1 1 0

0 0 0 1 1

1 1 0 0 1

1

1

1

1

1

1 1

1

1

1

1

1

1

1

11

1 1

FIGURE 3.6: Exemples de graphs de codes LDPC avec des cycles de longueur 4, 6 et 8 [8].

24

Page 45: La cryptographie du point de vue de la théorie de l'information

3.3.6 Critères de performance des codes LDPC

La performance d’un bon code LDPC se mesure par sa capacité à éliminer les cycles courts dans le

graphe de Tanner (à cause de l’influence de ces derniers sur le rendement de l’algorithme de décodage)

et à augmenter sa distance minimale vu que le code LDPC est un code en bloc linéaire. Ces exigences

de performance imposent certaines contraintes sur la matrice de parité H, à savoir [6] :

– La matrice H est de faible poids de colonne et de faible poids de ligne : wr n et wc s.

– Le chevauchement des valeurs "1" par colonne et par ligne doit être au plus égal à 1. Cela est

nécessaire pour éviter les cycles courts dans le graphe Tanner.

– wc ≥ 3 et wc > wr afin d’assurer une bonne distance.

3.3.7 Construction des codes LDPC

Pour construire un code LDPC, on définit la position de tous les éléments non-nuls dans la matrice

de parité. Toutefois, la principale difficulté dans la construction des codes LDPC réside dans le choix

des paramètres définissant le code. Ainsi, pour une taille et un rendement donné, il faut choisir dans

un premier temps le profil d’irrégularité des nœuds de variables et des nœuds de parité. On distingue

ainsi plusieurs méthodes pour la construction des codes LDPC. On cite la construction aléatoire et la

construction déterministe.

3.3.7.1 Construction aléatoire

On génère la matrice de parité d’une façon aléatoire permettant ainsi une distribution aléatoire des

bits "1" sur la colonne et la ligne appropriées, bien qu’il existe des exigences sur le chevauchement

des colonnes qui doivent être remplies. Ainsi, pour les codes LDPC réguliers, ils doivent respecter les

contraintes préfixées sur le nombre des éléments non-nuls distribués sur les colonnes et les lignes. La

matrice de parité est composée de plusieurs sous matrices obtenues par des permutations opérées sur

une matrice particulière ayant en général un poids sur les colonnes qui vaut 1.

Exemple (Construction aléatoire d’un code LDPC) : Dans cet exemple, nous présentons l’exemple

de Gallager [26], [7] pour la construction aléatoire d’un code LDPC de longueur n = 20. Il s’agit d’un

code C(20, 4, 3) où wr = 4 et wc = 3. Selon la définition, la matrice H est formée de k = wc = 3 sous-

matrices H1, H2, H3 de dimension 5, où chacune de ces matrices contient un seul "1" par colonne.

Dans ce cas, il n’y a aucune paire de lignes avec 2 "1" en commun [7].

La première sous-matrice H1 est construite telle que chaque colonne de la matrice identité sera répétée

wr = 4 fois.

H1 =

1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0

0 0 0 0 1 1 1 1 0 0 0 0 0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0 1 1 1 1 0 0 0 0 0 0 0 0

0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1 0 0 0 0

0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 1 1 1 1

25

Page 46: La cryptographie du point de vue de la théorie de l'information

Les wc−1 autres sous matrices s’obtiennent en appliquant wc−1 permutations aléatoires sur les co-

lonnes de la première sous matrice, de sorte que :

La deuxième sous-matrice H2 est une permutation des colonnes de la première sous matrice H1, où

H2 = ∏2(H1) avec ∏2(H1) = [1, 5, 9, 13, 2, 6, 10, 17, 3, 7, 14, 18, 4, 11, 15, 19, 8, 12, 16, 20] où ∏

est une fonction de permutation de colonnes.

H2 =

1 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 0 0 0 0

0 1 0 0 0 1 0 0 0 1 0 0 0 0 0 0 1 0 0 0

0 0 1 0 0 0 1 0 0 0 0 0 0 1 0 0 0 1 0 0

0 0 0 1 0 0 0 0 0 0 1 0 0 0 1 0 0 0 1 0

0 0 0 0 0 0 0 1 0 0 0 1 0 0 0 1 0 0 0 1

La troisième sous-matrice H3 aussi, est une permutation des colonnes de la premier sous matrice H1,

où H3 = ∏3(H1) avec ∏3(H1) = [1, 6, 12, 18, 2, 7, 11, 16, 3, 8, 13, 19, 4, 9, 14, 17, 5, 10, 15, 20].

H3 =

1 0 0 0 0 1 0 0 0 0 0 1 0 0 0 0 0 1 0 0

0 1 0 0 0 0 1 0 0 0 1 0 0 0 0 1 0 0 0 0

0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 0 1 0

0 0 0 1 0 0 0 0 1 0 1 0 0 1 0 0 1 0 0 0

0 0 0 0 1 0 0 0 0 1 0 0 0 0 1 0 0 0 0 1

Donc, on obtient la matrice de parité H avec wr = 4 et wc = 3.

H =

H1

H2

H3

On cite aussi la méthode de Mackay, qui consiste à minimiser le nombre de cycles courts dans le

graphe de tanner GT afin d’assurer que le chevauchement entre deux colonnes est d’au plus de 1 afin

d’éviter les cycles de longueur 4 (le cycle le plus court dans un code LDPC).

3.3.7.2 Construction géométrique

La construction aléatoire du code LDPC ne permet pas de garantir un cycle de longueur importante.

D’autres méthodes basées sur les lignes et les points d’une géométrie finie ont été développées pour

résoudre ce problème. Une géométrie finie est formée de points qui sont des m tuplets, GF(q)m, et

de lignes, sur lequels on définit des ensembles de points. Pour la construction des codes LDPC, la

géométrie finie G est employée, où G est une géométrie finie à n points et n− k lignes qui a les

propriétés suivantes [6], [30] :

1. Chaque ligne est composé de wr points ;

2. Chaque point appartient à wc lignes ;

3. Chaque paire de points est connectée par une seule ligne ;

26

Page 47: La cryptographie du point de vue de la théorie de l'information

4. Deux droites sont soit parallèles (n’ayant pas de point en commun), soit elles se coupent en

exactement un point.

Pour une telle géométrie G, les nœuds des variable d’un graphe sont les nœuds de parité pour l’autre

graphe. On peut former une matrice d’incidence binaire HG dont les lignes et les colonnes corres-

pondent à des lignes et des points de la géométrie finie G [31], respectivement, avec, hi, j = 1 si et

seulement si la ième ligne de G contient le jème point de G. Puis, chaque rangée de HG décrit les points

de G (et a un poids wr), et chaque colonne de HG décrit les lignes de G (et a un poids wc).

3.3.8 Encodage des codes LDPC

Pour effectuer l’encodage avec un code LDPC, on peut utiliser la matrice génératrice G comme pour

tout code linéaire : une multiplication d’un vecteur source par la matrice génératrice nous donne un

vecteur correspondant au mot de code. Cette approche présente cependant plusieurs inconvénients :

– La matrice génératrice doit être connue. Si ce n’est pas le cas, il faut la calculer par une éli-

mination de Gauss sur la matrice de parité, ce qui est une opération coûteuse. Cette opération

peut parfois être effectuée en avance et n’a donc pas d’impact sur la complexité de l’étape

d’encodage. Cependant, lorsque le code est généré à la volée, il est impossible d’effectuer ce

pré-calcul, et la matrice génératrice devra être calculée avant de pouvoir faire l’encodage.

– La multiplication par la matrice génératrice est coûteuse en nombre d’opérations (complexité

en O ((n− k)n)).

3.3.8.1 Encodage générique

Le concept du codage LDPC du point de vue général se base sur la matrice génératrice G. On déduit

cette dernière par transformation de la matrice de parité H(n−k)×n sous forme systématique :

H = [In−k|P] (3.12)

La matrice génératrice G s’écrit comme suit :

G = [Pk×(n−k)|Ik] (3.13)

suivi par une simple multiplication pour générer les mots de codes c = m ·G.

Dans le cas où la matrice de parité H n’est pas de forme systématique, nous appliquons l’élimination

gaussienne pour la rendre sous la forme (3.12), puis on construit la matrice génératrice de la forme

(3.13). Cette technique, relativement simple, a cependant l’inconvénient majeur que la matrice G n’est

pas nécessairement de faible densité. La complexité d’encodage augmente rapidement en O(n2), ce

qui rend cette opération trop complexe pour des codes de taille usuelle [6].

3.3.8.2 Encodage à complexité linéaire

Richardson et Urbanke [32] ont proposé une solution permettant un encodage quasi-linéaire (com-

plexité en O(n)), ainsi que des algorithmes permettant d’effectuer un prétraitement de la matrice de

27

Page 48: La cryptographie du point de vue de la théorie de l'information

parité H. Le but du prétraitement est de mettre H sous une forme presque triangulaire inférieure,

comme illustré à la figure 3.7, en utilisant uniquement des permutations de lignes ou de colonnes.

Cette matrice est composée de 6 sous-matrices, toujours creuses, notées A, B, C, D, E et d’une sous

matrice T triangulaire inférieure.

A B

C D E

T

01

1

11

11

1

11

n s g s g

s g

g

n

s

FIGURE 3.7: Représentation sous forme pseudo triangulaire inférieure de la matrice de parité H [6],[9].

Une fois que la matrice H est sous forme triangulaire inférieure, l’élimination de Gauss-Jordan est

appliqué pour rendre nulle la sous matrice E, ce qui revient à multiplier H par[I 0

−ET−1 I

]qui produit la forme :

H =

[I 0

−ET−1 I

]H =

[A B T

−ET−1A+C −ET−1B+D 0

]

où H est la matrice de parité pour un code équivalent.

Le mot de code recherché est décomposé en trois parties : c = (m, p1, p2), où m est la partie systéma-

tique de dimension k qui est connue, et les bits de redondance cherchés sont séparés en deux vecteurs

p1 et p2, de tailles respectives g et s−g. Donc (3.3) devient à deux équations :

c · HT= Am+Bp1 +Tp2 = 0 (3.14)

(−ET−1A+C)m+(−ET−1B+D)p1 = 0 (3.15)

Une fois le prétraitement de H achevé, le principe de l’encodage est basé sur la résolution du système

représenté par l’équation matricielle suivante :

c · HT= 0 (3.16)

28

Page 49: La cryptographie du point de vue de la théorie de l'information

L’équation (3.15) permet de trouver p1 en inversant X =−ET−1B+D. Puis l’équation (3.14) permet

de trouver p2 en inversant T. De nombreuses opérations coûteuses en temps peuvent être faites une

fois pour toute dans un prétraitement. Toutes les opérations répétées au cours de l’encodage ont une

complexité en O(n) sauf la multiplication de −ET−1A+C)m [6], et par la matrice −X−1(g×(n−s)) qui

après inversion, n’est plus creuse, d’où une complexité en O(g(n− s)).

3.3.9 Décodage des codes LDPC

Un code LDPC peut utiliser plusieurs méthodes pour le décodage, où certaines d’entre elles se basent

sur des méthodes de décodage avec des décisions fermes tel que le décodage à logique majoritaire

(MLG) et le décodage avec basculement de bits (BF), tandis que d’autres reposent sur le décodage avec

des décisions pondérées (souples), tel que l’algorithme probabilité à posteriori (APP) et l’algorithme

propagation de croyance (BP).

Les codes LDPC peuvent utiliser les deux méthodes, c’est-à-dire le décodage mixte (ferme et souple).

3.3.9.1 Description de décodage itératif

Le décodage LDPC adopte une approche itérative qui fonctionne sur les nœuds de variables et les

nœuds de parité pour trouver le mot de code le plus probable c, et qui satisfait la condition c ·HT = 0.

On peut considérer que le décodage itératif appliqué aux codes LDPCs est sous-optimal au niveau

de la capacité de correction qui est proche de la capacité du canal, il permet d’atteindre une capacité

de correction, élevée mais il a une complexité linéaire. Cette classe d’algorithmes de décodage a été

présentée initialement par Gallager [26], revue ensuite par Mackay [28], avec la théorie de graphes

sous le nom d’algorithme de propagation de croyance BP.

Cette classe d’algorithme repose sur l’échange d’information entre les nœuds du graphe à travers les

arêtes, mettant à jour itérativement des informations probabiliste sur l’état des nœuds dans le graphe

de Tanner. Les étapes de décodage se résument en [8] :

– Faire alternativement des mouvements horizontaux (décodage horizontal) pour évaluer les va-

leurs extrinsèques ;

– Faire des mouvements verticaux (décodage vertical) dont le but est de calculer les probabilités

a posteriori.

Le principe du codage itératif repose sur l’estimation de la probabilité a posteriori de chaque bit

d’information, c.-à-d, il nécessite d’évaluer les valeurs de fiabilité. Les fondations mathématiques du

décodage à décisions souples reposent sur l’application directe de la règle de Bayes pour vérifier les

bits de parité, ce qui nous donne une estimation pour chaque bit : les messages sont propagés sur les

arêtes du graphe afin de calculer une information a posteriori sur chaque bit.

L’algorithme de propagation de croyance consiste en trois étapes [8],[10] :

– Initialisation : initialiser les observations mv et les messages intermédiaires mvc et mcv à 1, où

mvc représente les messages se propageant d’un nœud de variable à un nœud de parité et mcv

représente les messages à la sortie d’un nœud de parité et transmis à un nœud de variable.

29

Page 50: La cryptographie du point de vue de la théorie de l'information

vm

( )l

vcm

( 1)

i

l

c vm

1rw

FIGURE 3.8: Illustration de la mise à jour des messages mvc [10].

– Itération : calculer les messages intermédiaires mvc et mcv après chaque itération comme suit :

le message mvc est calculé comme la somme de l’observation de la variable v et de toutes les

contributions à venir en v sauf celui de c (voir figure 3.8). Une fois la mise à jour faite, les

messages mvc sont propagés des nœuds de variables vers les nœuds de parité et les messages

mcv sont propagés des nœuds de parité vers les nœuds de variable :

m(l)vc = mv +∑c′∈Cv/cm(l−1)

c′v si l ≥ 1, (3.17)

où Cv/c représente toutes les contributions à venir en v sauf celui de c. Le message mcv est

obtenu par (voir figure 3.9) :

tanhm(l)

vc

2= ∏v′∈Vc/v tanh

m(l)v′c2

(3.18)

où Cv est l’ensemble des nœuds de parité incidents au nœud de variable v, et Vc est l’ensemble

des nœuds de message incidents au nœud c.

( )l

cvm

( 1)

i

l

v cm

1cw

FIGURE 3.9: Illustration de la mise à jour des messages mcv [10].

– Réalisation : la prise de décision se fait après calcul des probabilités à posteriori APPv :

APPv = mv +∑c′∈Cvm(l)

c′v (3.19)

30

Page 51: La cryptographie du point de vue de la théorie de l'information

3.3.9.2 Décodage itératif sur un canal à effacement

Dans les canaux à effacements (BEC), les nœuds variables peuvent prendre les 3 valeurs 0, 1, ?. Si

un nœud de parité reçoit plus d’un message effacé "?", il ne peut rien faire, et il retourne aux nœuds de

variables la valeur "?". Si un nœud de parité reçoit un seul message "?", il peut en déduire une nouvelle

valeur pour ce nœud, cette valeur étant la somme de tous les autres messages reçus (en effet la somme

des valeurs des nœuds variable adjacents à un nœud de contrôle doit être égale à zéro). L’algorithme

s’arrête quand il ne reste plus de nœuds de variable effacées, c.-à-d. ayant comme valeur "?". La figure

3.10 illustre un décodage itératif sur le graphe d’un code LDPC.

1 ? 0 ? 0 ? 0 1 ? 0 ? 0 0 0

1 ? 0 1 0 0 0 1 1 0 1 0 0 0

1v 6v5v4v3v2v 7v

1v 6v5v4v3v2v 7v 1v 6v5v4v3v2v 7v

1v 6v5v4v3v2v 7v

1u 2u 3u

1u 2u 3u1u 2u 3u

1u 2u 3u

FIGURE 3.10: Exemple de déroulement de décodage itératif sur un graphe de Tanner du code LDPC.

L’algorithme s’arrête quand il ne reste plus de variable indéterminée. Cet algorithme permet de recons-

truire au plus n− k symboles (1 symbole par équation). Chaque reconstruction nécessite de sommer

wr symboles. Le décodage nécessite donc au plus (n− k)×(wr−1) opérations sur les symboles. Pour

un rendement donné, la complexité de cet algorithme augmente donc de manière linéaire avec la di-

mension du code n.

À la figure 3.10, nous montrons le décodeur de MP appliquée au code LDPC par le graphe de Tanner.

Le mot de code envoyé est 1101000 et le mot reçu est une 1?0?0?0 dans l’étape d’initialisation. À la

première itération le décodeur parvient à récupérer v6 depuis le troisième nœud de parité u3, et puis

corrige v4 depuis le premier nœud de parité u1. À la dernière itération, le décodeur récupère v2 depuis

le deuxième nœud de parité u2.

31

Page 52: La cryptographie du point de vue de la théorie de l'information

3.4 Conclusion

Dans ce chapitre, nous avons exposé le principe de codage de canal. Nous avons décrit, et en par-

ticulier, les notions de base sur les codes LDPC, quelques méthodes de construction et différentes

méthodes d’encodage et décodage. Nous avons présenté le graphe de Tanner et la notion de cycles.

Les chapitres suivants s’intéressent à cette famille de codes, dans le contexte de la transmission fiable

de l’information vers les destinations légitimes, mais avec la contrainte de réduire la fuite d’informa-

tion vers les récepteurs "espions".

32

Page 53: La cryptographie du point de vue de la théorie de l'information

Chapitre 4

Sécurité au niveau de la couche physique

4.1 Introduction

Dans la conception de la sécurité au niveau de la couche physique, l’idée de base, non seulement est

d’obtenir une probabilité d’erreur de décodage faible pour le destinataire légitime Bob, comme pour

le codage de canal traditionnel, mais aussi pour fournir un niveau de protection contre un espion Eve.

L’étude de la sécurité de la couche physique est basée sur un modèle du canal sous écoute [13], et sur

certaines mesures proposées dans le but d’améliorer la sécurité de communication. Dans ce chapitre,

nous éclaircissons la notion théorique de la sécurité de la couche physique et comment on l’applique

pour renforcer la confidentialité des informations échangées entre les parties légitimes.

Nous présentons, aussi, un bref rappel sur les notions de base, tel que, la capacité secrète, le taux de

compression, et le taux de transmission. Et en particulier, nous détaillons les méthodes de codage pour

assurer la sécurité.

Le chapitre est organisé comme suit : à la section 4.2 nous décrivons le modèle de canal point à point.

À la section 4.3, on présente le modèle de canal sous écoute. Nous donnons à la section 4.4 une vision

introductoire mais relativement détaillée sur le codage secret, puis, à la section 4.5 les critères de

secret algébrique. À la section 4.6, nous citons les conditions pour la réalisation du codage secret, et

nous terminons par certaines méthodes de codage secret.

4.2 Modèle de canal de communication

4.2.1 Modèle de canal de communication point à point

Un modèle de communication point à point (P2P) est composé d’une source et d’un canal discret.

Le récepteur et l’émetteur sont d’accord sur un code commun, spécifié par une paire de codeur et

décodeur.

Comme illustré à la figure 4.1, nous considérons un système de communication dans lequel la source

est compressée avant d’être codée pour la transmission et les sorties des canaux sont décodées avant

33

Page 54: La cryptographie du point de vue de la théorie de l'information

HHH

SourcekU M

nX

nY

XYp |

g

MkU

Codeur

de source

Codeur

de canal

Canal

Décodeur

de canal

f

Décodeur

de sourceRécepteur

Up

FIGURE 4.1: Modèle mathématique d’un système de communication point à point [4].

d’être décompressées. Dans ce que suit, les relations de base entre les composantes illustrées à la

figure 4.1, sont décrites dans les lignes suivantes :

Source discrète sans mémoire : Une source discrète sans mémoire (DMS) (U , pU ) génère des

séquences indépendantes et identiquement distribuées (i.i.d.) de symboles de l’alphabet fini U en

fonction de la distribution de probabilité de pU . Le symbole de la source est représenté par une variable

aléatoire et est notée U [4].

Canal discret sans mémoire : Un canal discret sans mémoire (DMC) (X , pY |X ,Y) est composé par

un alphabet fini d’entrée X , un alphabet fini de sortie Y , et une probabilité conditionnelle pY |X [4], de

telle sorte que X et Y désignent l’entrée du canal et la sortie du canal, respectivement. L’ensemble des

probabilités conditionnelles peut être représenté par une matrice de probabilité de transition de canal(pY |X(y|x)

).

Taux de compression : Soient les codes de Ck(2kR, k) pour une source DMS (U , pU) composées de

[4] :

– Un alphabet des messagesM= [1, 2kR],

– Une fonction de codage φ : U k −→M, qui est associée à une séquence uk de k symboles à un

message m, et

– Une fonction de décodage ϕ :M−→U k ∪e, qui fait correspondre un message m à une sé-

quence de symboles source uk ∈ U k ou à une séquence d’erreur e.

34

Page 55: La cryptographie du point de vue de la théorie de l'information

Le taux de compression du code source est défini comme (1k ) log

⌈2kR⌉

bits par symbole source, et sa

probabilité d’erreur est [4] :

Pe (Ck)∆=P

[Uk 6=Uk|Ck

](4.1)

Taux de compression atteignable : On dit que le taux de compression atteignable pour une source

(U , pU ), s’il existe une séquence Ckk≥1 (2kR, k), est [4] :

limk→∞

Pe(Ck) = 0 (4.2)

c’est-à-dire que les séquences sources peuvent être reconstruites avec des probabilités d’erreur arbi-

trairement faibles et des taux de compression arbitrairement proches de R.

Taux de transmission : Soient les codes Cnn≥1 (2nR, n) pour un DMC (X , pY |X , Y) constitués de

[4] :

– Un alphabet des messagesM= [1, 2nR],

– Une fonction de codage f :M−→ Xn, associée chaque message m par un mot de code xn de

longueur n, et

– Une fonction de décodage g : Y n −→M∪e, qui fait correspondre chaque mot de code reçu

à la sortie de canal de longueur n à un message estimé m ∈M ou une séquence d’erreur e.

Le taux de transmission du canal est défini comme (1n) log

⌈2nR⌉

en bits par utilisation du canal, et sa

probabilité d’erreur est [4] :

Pe (Cn)∆=P

[M 6=M|Cn

](4.3)

Taux de transmission atteignable : Le taux de transmission atteignable pour un canal DMC (X , pY |X ,Y),s’il existe une séquence pour Cnn≥1 (2

nR, n), est [4] :

limn→∞

Pe(Cn) = 0 (4.4)

Les messages peuvent être transmis à un taux arbitrairement proche de R et décodés avec une proba-

bilité d’erreur arbitrairement faible. La capacité de canal du DMC est définie comme [4] :

C∆=supR : R le taux de transmission atteignable . (4.5)

4.2.2 Modèle de canal de communication point à point avec canal de retour

Considérons le modèle de communication (P2P) avec canal de retour tel que le montre la figure 4.2.

Nous supposons un canal discret sans mémoire DMC (X , pY |X , Y) se composent d’un alphabet fini

d’entrée X , un alphabet fini de sortie Y , et d’une probabilité conditionnelle pY |X . L’émetteur souhaite

communiquer de façon fiable un message discret M ∈M à un taux de transmission R avec le récepteur.

À cette fin, l’émetteur du message le code en un mot de code Xn et le transmet sur le canal en n

instances de temps. À la réception de la séquence bruitée Y n, le récepteur la décode pour obtenir

35

Page 56: La cryptographie du point de vue de la théorie de l'information

M iX iYEncodeur Décodeur MCanal

canal de retour

-1( , )i

iX M Y |Y Xp ( )nM Y

-1iY

FIGURE 4.2: Un modèle de communication point à point avec canal de retour [11], [12].

l’estimation du message M [11], [12]. Nous supposons que les symboles de sortie, causals et sans

bruit, sont renvoyés à l’émetteur. Le symbole Xi transmis à chaque fois i ∈ [1, n] = 1, . . . , N peut

dépendre à la fois de la séquence de bruit précédente de sortie de canal Y i−1 = (Y1, . . . , Yi−1) et du

message M.

Définition : Soit un code de canal Cnn≥1 (2nR, n) pour un DMC (X , pY |X , Y) composé de :

– Un alphabet des messagesM= [1, 2nR],

– Une fonction de codage f :M−→ Xn, qui attribue un symbole xi(m, yi−1) ∈ X pour chaque

message m ∈ [1, 2nR] et une séquence reçue à la sortie yi−1 ∈ Y i−1 pour i ∈ [1, n], et

– Une fonction de décodage g : Y n −→M∪e, qui fait correspondre un bloc de canal de n

sorties à un message source m ∈M ou une séquence d’erreur e.

Les performances d’un code donné sont mesurées par la probabilité d’erreur moyenne pour un code

et défini comme [4] :

Pe (Cn)∆=P

[M 6=M|Cn

](4.6)

On suppose que le message est distribué uniformément sur l’ensemble du message. Un taux de codage

R est dit atteignable, s’il existe une suite de mots de codes (2nR,n) tels que Pe→ 0 quand n→ ∞. La

capacité C est la borne supérieure sur tous les taux atteignables.

Shannon [33] a également montré que les rétroactions ne peuvent pas augmenter la capacité d’un

DMC. De sorte que, la capacité du canal discret sans mémoire DMC (X , pY |X , Y) avec canal de

retour est la même que la capacité du DMC sans canal de retour.

4.3 Modèle du canal de communication sous écoute

La capacité secrète a été initialement introduite par Aaron Wyner en 1975 [13], qui a donné la nais-

sance de la notion de la sécurité de la couche physique pour un modèle de canal appelé canal d’écoute

dégradé DWTC (voir la figure 4.3). Ce modèle permet d’introduire un grand nombre d’outils mathé-

matiques de la sécurité de l’information sans la complexité supplémentaire de modèles entièrement

généraux dans le but de comprendre comment on peut introduire un bruit aléatoire pour accroitre la

sécurité des communications. Les principes de fonctionnement de ces systèmes sont définis comme

suit : un émetteur, Alice, tente de communiquer avec un récepteur légitime, Bob, sur un canal bruité

36

Page 57: La cryptographie du point de vue de la théorie de l'information

principal dénoté Qm. Alors, un espion, Eve, observe une version dégradée du signal obtenu par le

récepteur légitime à travers un canal supplémentaire appelé le canal d’écoute Qw. Un canal discret

MM nX nY

nZ

Y Xp

|Z Yp

Encodeur DécodeurAlice Bob

Eve

FIGURE 4.3: Modèle de canal de communication sous écoute dégradé de Wyner [13],[4].

sans mémoire sous écoute (DWTC) (X , pZ|Y pY |X , Y, Z) se compose d’un alphabet fini d’entrée X ,

de deux alphabets finis de sortie Y et Z , et des probabilités conditionnelles de transition pY |X et pZ|Ytels que [4] :

∀n≥ 1 ∀(xn, yn, zn) ∈ Xn×Y n×Zn, pY nZn|Xn(yn, zn|xn) =n

∏i=1

pY |X (yi|xi) pZ|Y (zi|yi) (4.7)

Le DMC (X , pY |X , Y) caractérisé par les probabilités conditionnelles de transition pY |X que l’on ap-

pelle le canal principal, tandis que le DMC (X , pZ|X , Z), caractérisé par les probabilités de transition

conditinnelles pZ|X , est appelé le canal d’écoute.

En outre, pour assurer la confidentialité, Wyner a proposé une nouvelle contrainte de secret : le taux

d’équivocation (1n)H(M|Zn) est arbitrairement proche du taux d’entropie du message (1

n)H(M) avec

une longueur de mot de code n suffisamment grande [4].

Les codes qui assurent une probabilité d’erreur plus faibles sont appelés les codes sous écoute.

Avec cette condition de sécurité, on peut conclure qu’il existe des codes de canal qui assurent une pro-

babilité d’erreur plus faible au niveau du récepteur. Ces codes sont connus comme des codes d’écoute

(wiretap codes). La vitesse de transmission maximale réalisable est appelée la capacité secrète (se-

crecy capacity), et il peut être démontré strictement positif lorsque l’observation de Zn de l’espion est

plus bruités que Y n.

4.3.1 Taux d’équivocation

On utilise le taux d’équivocation (rate equivocation) normalisée Re comme métrique de performance

du secret [34] :

Re =1nH(M|Zn) (4.8)

Le taux de codage R, pour le récepteur légitime (Bob) [34] est donné par [4] :

R =log2 |M|

n(4.9)

37

Page 58: La cryptographie du point de vue de la théorie de l'information

4.3.1.1 Taux d’équivocation faible

Le taux d’équivocation faible (weak rate equivocation) (R, Re) est atteignable pour un canal dégradée

sous écoute DWTC, s’il existe une séquence de codes Cnn≥1 (2nR, n) telle que [4] :

limn→∞

Pe(Cn) = 0 et (4.10)

limn→∞

1n

E(Cn)≥ Re (4.11)

où l’équation (4.10) définit la condition de fiabilité et l’équation (4.11) la condition de secret faible.

La région taux-équivocation faible pour un DWTC est définie par [4] :

RDWTC ∆=cl((R, Re) : (R, Re) est atteignable) (4.12)

où cl représente la fermuture de l’ensemble, la capacité du secréte faible pour un DWTC est :

CDWTCs

∆=sup

RR : (R, R) ∈ RDWTC (4.13)

4.3.1.2 Taux équivocation fort

Le taux-équivocation fort (R, Re) est atteignable pour un canal dégradé sous écoute DWTC, s’il existe

une séquence de codes Cnn≥1 (2nR, n) avec [4] :

limn→∞

Pe(Cn) = 0 et (4.14)

limn→∞

[E(Cn)−nRe]≥ 0 (4.15)

La région taux d’équivocation fort pour un DWTC est [4] :

RDWTC ∆=cl((R, Re) : (R, Re) est atteignable) (4.16)

Ici encore, l’équation (4.14) définit la condition de fiabilité et l’équation (4.15) la condition de secret

fort.

La capacité secrète forte pour un DWTC est donnée par [4] :

CDWTCs

∆=sup

RR : (R, R) ∈ RDWTC (4.17)

4.3.2 Le secret faible

On définit la condition du secret comme suit :

limn→∞

I(M; Zn)

n= 0 (4.18)

que l’on appelle le secret faible.

Le secret faible impose que le taux de fuite d’information à un espion tend vers zéro quand la longueur

des blocs du codeur devient grande. Wyner a montré, dans le cas de DWTC dégradé, que des taux

38

Page 59: La cryptographie du point de vue de la théorie de l'information

allant jusqu’à la capacité de secret Cs existent pour les encodeurs et les décodeurs qui satisfont (4.18).

On réalise ainsi une probabilité d’erreur arbitrairement faible pour les parties destinées, c’est à dire

lorsque X → Y → Z forme une chaîne de Markov. Csiszar et Korner [25] ont plus tard généralisé ces

résultats supprimant la restriction de canal dégradé, ont démontré que Cs > 0, si Qm est moins bruité

que Qw. Cette version plus générale du modèle de canal sous écoute a été présentée à la figure 4.3.

Pour le canal sous écoute dégradée, la capacité de secret est définie dans [14],[4] :

Cs = maxpX (x)

I(X ; Y |Z)

= maxpX (x)

(I(X ; Y )− I(X ; Z))

≥maxpX (x)

(I(X ; Y ))− maxpX (x)

(I(X ; Z))

=Cm−Cw

(4.19)

où Cm est la capacité de canal pour le canal principal (ou légitime), et Cw est la capacité de canal pour

le canal sous écoute. Pour certains canaux, nous remarquons que Cs = Cm−Cw, mais dans le canal

sous écoute dégradé, la capacité secrète est au moins aussi grande que la différence entre la capacité

du canal principal et la capacité du canal de l’espion [14].

Intuitivement, d’autant plus que le canal légitime est meilleur que le canal de l’espion, d’autant plus

que le taux secret de donnés est élevé. Cette sécurisation est réalisée uniquement en utilisant la sécurité

de la couche physique. Il est pertinent de souligner qu’il s’agit d’une condition de secret plus de sens

significatif outre que du secret faible [14].

4.3.3 Le secret fort

Si on définit un système tel que [14], [4] :

limn→∞

I(M; Zn) = 0 (4.20)

alors le système atteint le critère secret fort.

Il est clair que cette condition est beaucoup plus restrictive sur la fuite d’informations que dans le cas

de canal de secret faible. En outre, on peut s’attendre à ce que Cs diminue si l’on définit la capacité

de secret comme le taux d’encodage maximal auquel le secret fort est réalisable, plutôt que le secret

faible.

La condition de secret faible est couramment utilisée en raison de sa plus grande traçabilité mathéma-

tique, mais c’est une moins bonne mesure de secret puisque qu’elle représente des schémas de codage

faiblement sécurisés avec des failles cryptographiques évidentes.

Du point de vue de la théorie de l’information, la mesure spécifique de l’indépendance statistique

asymptotique peut sembler hors de propos, et l’on peut être tenté de choisir une métrique sur la seule

base de sa traçabilité mathématique. Malheureusement, la condition de secret faible et la condition du

secret fort ne sont pas équivalentes. Plus important encore, il est possible de construire des exemples

de schémas de codage avec des failles de sécurité évidentes qui satisfont la condition de secret faible

39

Page 60: La cryptographie du point de vue de la théorie de l'information

[4].

Wyner a défini la région R d’un canal DWTC (X , pZ|Y pY |X , Y, Z) avec une distribution pX sur X ,

comme suit [4] :

RDWTC (pX)∆=(R, Re) :

0≤ Re ≤ R≤ I(X ; Y )

0≤ Re ≤ I(X ; Y |Z).(4.21)

où la distribution conjointe deX ,Y , etZ se factorise en pX pY |X pZ|Y . Ensuite, la région taux-équivocation

de la DWTC est la région convexe [4] :

RDWTC =⋃pX

RDWTC (pX) (4.22)

La forme typique de la région RDWTC (pX) est illustrée à la figure 4.4, que l’on peut décrire comme

suit : la limite de la région du taux d’équivocation atteignable [34] se compose de deux segments

AB et BC. Le segment AB correspond à un secret parfait atteignable c.-à-d. : Re = R ≤Cm−Cw. Le

point B correspond à la capacité parfaite. Le segment BC représente des taux plus élevés de transmis-

sion fiable. Dans ce cas, certaines informations sont divulguées à Eve (l’équivocation dans ce cas est

strictement inférieure au taux).

eR

Rm wC C

m wC C

A

B C

mC

FIGURE 4.4: Forme typique de la région du taux d’équivocation RDWTC(pX).

CDWTCs

∆=sup

RR : (R, R) ∈ RDWTC (4.23)

Wyner a défini le taux d’équivocation par le symbole ∆∆=(

1/k)H(M|ZnCn) avec k = log

⌈2nR⌉.

Puisque ∆=Re/R, la région du taux d’équivocation (∆, R) peut être obtenue à partir de la région du

taux d’équivocation (R, Re), mais, en général, la région (R, ∆) n’est pas convexe.

On peut exprimer la notion de capacité secrète par [4] :

CDWTCs =Cm−Cw (4.24)

40

Page 61: La cryptographie du point de vue de la théorie de l'information

4.4 Codage secret

Dans cette section, nous discutons de la construction de codes de canal pratiques assurant le secret.

La conception de codes pour le canal sous écoute se révèle être étonnamment difficile, et ce domaine

de la sécurité de la théorie de l’information n’est encore qu’à ses débuts. Dans une certaine mesure,

les principaux obstacles sur la route de la capacité secrète sont semblables à ceux qui se trouvaient sur

le chemin de la capacité du canal : pour établir la capacité secrète, les arguments du codage aléatoire

utilisés ne fournissent pas des constructions de code explicites. Cependant, la conception de tels codes

est en outre diminuée par l’absence d’une mesure simple, par exemple un taux d’erreurs BER, qui

peut être évalué numériquement.

Contrairement aux codes conçus pour une communication fiable, dont la performance peut être éva-

luée en traçant une courbe de taux d’erreur binaire, nous ne pouvons pas simuler un espion avec

une puissance de calcul illimitée. Par conséquent, les codes dédiés aux canaux sous écoute doivent

posséder assez de structure pour pouvoir prouver leur sécurité. Pour certains canaux, comme les ca-

naux binaires à effacement sous écoute, la contrainte du secret en théorie de l’information peut être

reformulée en termes de propriétés algébriques pour une matrice génératrice de code.

4.4.1 Codage secret dans un canal binaire à effacement sous écoute

Nous limitons notre attention du canal binaire à effacement sous écoute illustré à la figure 4.5, dans

lequel le canal principal sans bruit, tandis que le canal de l’espion est un BEC avec probabilité efface-

ment ε . La capacité secrète de ce canal est Cs = 1− (1− ε) = ε . Nous étudions une construction de

code basée sur les codes imbriqués (nested codes) [4]. Cependant, comme tout mot de code envoyé

par l’émetteur est reçu sans erreurs par le récepteur légitime, la construction est beaucoup plus simple

que dans le cas général : pour tout ensemble de sous codes disjoints Ci, le code mère C = ⋃iCi est

toujours un code fiable pour le canal principal [4]. Un ensemble de sous-codes qui conduit à un co-

M

M nX

nZ0

1 1

0

?

MEncodeur DécodeurAlice Bob

Eve

nYY X

p

FIGURE 4.5: Canal binaire à effacement sous écoute [4].

deur stochastique particulièrement simple est constituée d’une code linéaire binaire Ci(n, n−k) et ses

cosets. Pour ce choix de sous-codes, le code mère C est :

C =⋃

s∈GF(2)k

C0(s) = GF(2)n (4.25)

41

Page 62: La cryptographie du point de vue de la théorie de l'information

La procédure de codage correspondante est appelée codage pour coset (coset coding), il se compose

d’un opération de codage du message m ∈ GF(2)k par la sélection uniformément aléatoire d’un mot

de code dans l’ensemble des cosets de C0(m) avec syndrome s. Les opérations de codage et de dé-

codage en code par cosets peuvent être mises en œuvre de manière efficace avec des multiplications

matricielles.

4.4.2 Codage par coset

Soit un code de bloc linéaire C(n, n−k) de matrice de parité H et le syndrome s∈GF(2)k. L’ensemble

C (s) ∆=x ∈ GF(2)n : H ·x = s (4.26)

est appelé code de coset pour C avec le syndrome s ∈ GF(2)k, en particulier C = C (0).Un code de coset est également décrit selon le code original. Si x′ ∈ GF(2)n tel que H ·x′ = s, alors :

C (s) =

x′⊕x : x ∈ C

(4.27)

Un vecteur x′ ∈ C(s) avec un poids minimum est appelée coset leader de C(s) [4]. Il est possible de

montrer que code (n, n− k) a 2k cosets disjoints qui forment une partition de GF(2)n.

On résume les étapes de construction d’une coset de code comme suit [35] :

– La première rangée présente les mots de codes valides,

– La première colonne présente les patrons d’erreurs corrigibles,

– Toutes les 2n séquences (mots de codes valides et non valides) possibles sont inclues dans la

table, et

– Il n’y a pas de répétition des séquences.

La figure 4.6 montre un tableau standard [35]. À partir de cette figure, on définit le coset et le coset

leader comme suit : Coset : rangée associée à un vecteur d’erreur, et sous-codes de tous les patrons

possibles.

Coset leader : vecteur d’erreur à la première position de la rangée, et codes de cosets et mots de code

valides forment une partition de toutes les séquences possibles.

Exemple de code de coset : Un tableau standard pour un code binaire C(6, 3) avec sa matrice

génératrice G et sa matrice de parité H, où

G =

1 1 0 1 0 0

0 1 1 0 1 0

1 0 1 0 0 1

H =

1 0 0 1 0 1

0 1 0 1 1 0

0 0 1 0 1 1

est donné à la figure 4.7. Les mots de code sont les vecteurs de la première ligne du tableau. Notez

que ce code a une distance de 3.

42

Page 63: La cryptographie du point de vue de la théorie de l'information

-

1 2 i 2

2 2 2 i 2 22

3 2 3 i 3 32

2 i 2

2 i2 2 2 2 2

U U U U

e U +e U +e U +e

e U +e U +e U +e

e U +e U +e U +e

e U +e U +e U +e

k

k

k

k

n k n k n k k n k

j j j j

mots de codes valides

un coset

coset leader

erre

urs

corr

igib

les

FIGURE 4.6: Structure d’un tableau standard.

000000 110100 011010 101001 101110 110011 011101 000111

000001 110101 011011 101000 101111 110010 011100 000110

000010 110110 011000 101011 101100 110001 011111 000101

000100 110000 011110 101101 101010 110111 011001 000011

001000 111100 010010 100001 100110 111011 010101 001111

010000 100100 001010 111001 111110 100011 001101 010111

100000 010100 111010 001001 001110 010011 111101 100111

001100 111000 010110 010110 100101 111111 010001 001011

FIGURE 4.7: Tableau standard pour un code binaire C(6,3).

4.5 Critères de secret algébrique

Comme le codage coset peut être défini en termes de la matrice de parité et de la matrice génératrice

d’un code linéaire C0, la structure algébrique du code linéaire est susceptible d’avoir un effet critique

sur le secret. Par conséquent, afin de clarifier cette relation et de simplifier l’analyse, il est commode

de mettre au point un critère de secret équivalent algébrique de la théorie de l’information pour les

critères de secret pour le codage initial de coset [4].

On considère que dans une observation z, il y a des symboles non effacées dans les positions (i1, . . . , iµ)

si une séquence x ∈ GF(2)n est telle que :

(xi1 , . . . , xiµ

)=(zi1 , . . . , ziµ

)= z (4.28)

43

Page 64: La cryptographie du point de vue de la théorie de l'information

Alors la séquence est dite cohérente avec z. Si le code de coset C0 contient au moins une séquence xqui est cohérente avec z, puis le coset lui même est dit cohérente avec z. Le nombre total de cosets du

code C0 qui est cohérent avec z est noté N(C0, z).Lemme 1 [4] : Soit z l’observation de l’espion à la sortie d’un canal BEC. Alors tous les cosets du

code C0 qui sont cohérents avec z contiennent le même nombre des séquences cohérentes avec z.

Ainsi toutes les cosets du code C0 cohérents avec z contiennent exactement |ker(Gµ)| des séquences

cohérentes avec z, avec Gµ =(

gi1 , . . . , giµ

)où ker( f ) représente Le noyau d’un morphisme f . L’in-

certitude de l’espion sur M étant donné son observation z est définie comme suit :

H(M|z) = logN(C0, z) (4.29)

Soit C0(n, n− k) un code linéaire binaire avec sa matrice génératrice G, et gi la ième colonne de

G. Soit z une observation de l’espion avec µ symboles non effacées dans des positions (i1, . . . , iµ).

D’après Ozarour et Wyner [4], z est sécurisé par C0, si et seulement si la matrice est de rang µ .

Gµ =(

gi1 , . . . , giµ

)(4.30)

Le code de coset C0 assure le secret parfait face à un espion qui observe un ensemble de µ symboles

non effacées, si et seulement si toutes les sous-matrices de G avec µ colonnes ont un rang µ .

Exemple : Considérons la matrice G :

G =

1 0 1 0 1 0 0

0 1 0 0 1 0 1

0 1 0 1 0 1 0

1 1 0 0 0 0 1

0 0 1 1 0 1 0

0 0 1 1 1 0 0

Le rang de la matrice est égal à 6. Supposons que le mot de code est reçu avec les positions 1, 3 et 7

effacées, où le nombre des positions non effacées µ = 7−3 = 4. Alors la matrice Gµ devient :

Gµ =

0 0 1 0

1 0 1 0

1 1 0 1

1 0 0 0

0 1 0 1

0 1 1 0

Le rang de la matrice est 4. Dans ce cas, le rang de la matrice égale le nombre des positions non

effacées.

44

Page 65: La cryptographie du point de vue de la théorie de l'information

4.6 Méthodes de codage

4.6.1 Codage pour le secret faible

Dans cette section, nous décrivons des constructions de code qui permettent d’atteindre le secret faible.

Le principe commun à toutes ces constructions est de s’appuyer sur une structure de code imbriquée,

dans laquelle des mots de code Xn sont choisis en fonction du message M et d’un message auxiliaire

choisi au hasard M′. L’information divulguée sur le message M pour un espion observant Zn, peut être

bornée par [1] :1nI(M; Zn)≤Cw−

1nH(M′)+

1nH(M′|MZn) (4.31)

où Cw est la capacité du canal de l’espion, 1nH(M′) est le taux du sous-dictionnaire associé à un

message M, et 1nH(M′|MZn) est l’incertitude de l’espion concernant le message auxiliaire M′ dans le

sous-dictionnaire associé à M. Basée sur cette limite, une condition suffisante pour assurer le secret

faible est de choisir les sous-dictionnaires pour atteindre la capacité du canal de l’espion, de sorte que1nH(M′)≈Cw et 1

nH(M′|MZn)≈ 0 [4], [1].

4.6.2 Codes LDPC de type deux arêtes

Les codes LDPC à deux arêtes offrent un moyen naturel de mettre en œuvre un schéma de codage

imbriqué, avec une matrice de parité de la forme H =

[H1

H2

]où H est une matrice n(1−R)× n et

H1 est une matrice n(1−R1)×n, avec R1 > R [1]. La matrice génératrice associée à H est G. Le code

linéaire C défini par la matrice H est un sous-code du code linéaire C1 défini par la matrice H1, et

les cosets distincts de C en C1 forment une partition de C. Chaque cosets de C dans C1 est constitué

des solutions de l’équation x ·HT =[x ·HT

1 x ·HT2]= [0 m] pour certains m [1]. Par conséquent,

pour encoder n(R1−R) bits de message m, nous choisissons aléatoirement les nR bits de message

auxiliaire m′, et nous définissons G∗ = [gT1 gT

2 . . .gTn(R1−R)]

T où les rangées de G∗ sont linéairement

indépendantes. Lorsqu’il est complété avec les lignes de G, ils forment une base pour le code matrice

de parité H1. Enfin, nous calculons [1] :

m = [m m′]

[G∗

G

](4.32)

Le résultat est que x est choisi de manière aléatoire parmi l’ensemble des solutions de l’équation

x ·HT = [0 m]. La figure 4.8 représente la structure de mot de code en indiquant que les bits de

message m forment les bits de parité dans un sous-ensemble des nœuds de parité. Cette technique

de codage est appelée codage pour coset ou codage de syndrome lorsque le code C1 est tout l’espace0,1n. Lors de l’utilisation des codes LDPC à deux arêtes pour former cette structure imbriquée,

nous voyons que les nœuds de parité correspondant à H1 sont réguliers dans le sens que les nœuds

de variable de raccordement doivent correspondre exactement à zéro modulo deux. Les nœuds de

parité correspondant à H2 sont ceux qui somment les bits de message m, ou de manière équivalente,

l’ensemble associé de C correspondant à m en C1. À la figure 4.8, il est clair que le message auxiliaire

45

Page 66: La cryptographie du point de vue de la théorie de l'information

bits de message mbits de parité 0

bits aléatoires 'm bits de parité

FIGURE 4.8: Codage de coset avec des codes LDPC de type deux arêtes [1].

aléatoire m′ est responsable de la sélection d’un mot de code spécifique dans le coset prescrit [1].

Selon l’approche détaillée précédemment, cette construction atteint le secret faible si les classes du

code LDPC caractérisé par H sont égales à la capacité pour le canal de l’espion. Simultanément, le

code doit garantir une communication fiable, qui se produit lorsque le code LDPC défini par H1 a

un seuil qui permet une communication fiable sur le canal principal. On défini le seuil comme un

paramètre canal ε∗, tel que la probabilité d’erreur tends vers 0 pour n assez grand, si la probabilité

d’effacement ε est inférieur à ε∗.

4.6.3 Codage pour le secret fort

L’approche de codage pour le secret faible décrit précédemment a l’avantage de lier le secret à la

capacité, et donc permet de tirer parti de tous les progrès récents de la théorie du codage. Cependant,

il peut être démontré que les constructions de code résultant ne peuvent pas assurer le secret fort. Par

conséquent, des techniques alternatives sont nécessaires pour obtenir le secret fort [1].

4.6.4 Codage par coset avec le code dual LDPC

Considérons à nouveau le cas particulier du modèle de canal sous écoute à la figure 4.3, constitué d’un

canal principal sans bruit, et d’un canal d’espion BEC d’écoute avec probabilité d’effacement ε . Nous

considérons un code LDPC C(n, k) avec matrice de parité H de ((n− k)×n) de paire de distribution

de degrés (λ (x), ρ(x)) et avec un seuil ε∗(λ (x),ρ(x)) [1]. Soit C⊥ le code dual de C, c’est-à-dire le

code (n, n−k) avec la matrice génératrice H. Les cosets à 2k de C⊥ dans 0, 1n forment une partition,

qui peut être utilisée comme une structure de codeimbriqué secret .

Pour coder un message m de k bits, le codeur choisit alors une suite uniformément aléatoire dans

l’ensemble des cosets de C⊥ avec syndrome m, c’est-à-dire, une solution de l’équation x ·GT = m.

Cette opération peut être explicitement décrite comme suit. Depuis les rangées de H formant une base

de C⊥, nous pouvons augmenter la base de k vecteurs linéairement indépendants g1, g2, . . . , gk pour

46

Page 67: La cryptographie du point de vue de la théorie de l'information

former une base de 0,1n. G∗ = [gT1 gT

2 . . .gTk ]

T . Le codage de m avec un message auxiliaire m′ peut

être réalisé par [1] :

x = [m m′]

[G∗

H

](4.33)

Il peut également être démontré que les codes peuvent être décodés avec une faible complexité.

L’analyse de la confidentialité garantie par ces codes repose sur l’observation que, pour le canal de

l’espion considéré, le secret peut être lié à la probabilité d’erreur de décodage du code d’origine Cprécisément. On peut montrer que [1], [4] :

1n

I(M; Zn)≤ kn

Pe(C, 1− ε) (4.34)

où Pe(C, 1−ε) est la probabilité d’erreur de bloc de code C sur un BEC avec probabilité d’effacement

1− ε . Ainsi, si 1− ε < ε∗(λ , ρ), cette construction garantit le secret faible. Notez que la capacité à

atteindre le secret faible n’est pas liée à une propriété de capacité réalisation du code, mais simplement

au comportement de seuil.

Exemple : Supposons que nous utilisons le code LDPC avec taux de code R = 1/2 et une paire de

distribution de degrés [1] :

λ (x) =0.38354x+0.04327x2 +0.57409x3

ρ(x) =0.24123x4 +0.75877x5(4.35)

Le seuil pour ce code est défini selon ε∗(λ (x),ρ(x)) ≈ 0.4581. Par conséquent, pour de grandes lon-

gueurs de bloc, le code par coset avec le code dual pour ce code (4.35), garantissent le secret faible

pour ε > 0.5419 [1].

4.7 Analyse comparative de codes secrets

4.7.1 Codes secrets

Avant d’entrer dans les détails de codes spécifiques pour le secret, il est utile de développer une

compréhension intuitive de la structure de haut niveau de ces codes. En particulier, il est important de

comprendre pourquoi les codes usuels pour assurer la fiabilité ne sont pas appropriés pour les codes

de secret. Considérons, pour simplifier, un modèle de canal sous écoute tel que montre à la figure 4.3.

Le canal principal Qm sans bruit et l’espion observent la sortie d’un canal binaire avec effacement

d’écoute Qw [1].

Supposons maintenant qu’Alice souhaite transmettre un message binaire m ∈ 0, 1 avec un code de

correction d’erreur standard, caractérisé par le codage déterministe suivant de longueur n [1] :

0 7→ Xn0 = (x0, 1, . . . , x0, n) ∈ 0, 1n

1 7→ Xn1 = (x1, 1, . . . , x1, n) ∈ 0, 1n

47

Page 68: La cryptographie du point de vue de la théorie de l'information

En moyenne, Eve obtient une observation avec n(1− ε) symboles non effacées, ce qui ne devrait pas

lui permettre de déduire le message. En comparant les mots de code Xn0 et Xn

1 dans des positions non

effacées [1] :

? x0,2 ? ? x0,5 . . .x0,n−1 ? (les positions des symboles non effacés dans le mot de code Xn0 )

? x1,2 ? ? x1,5 . . .x1,n−1 ? (les positions des symboles non effacés dans le mot de code Xn1 )

La seule façon d’appliquer ce code pour le codage secret est de s’assurer que les symboles dans les

positions non effacées sont les mêmes pour Xn0 et Xn

1 puisque les positions des symboles non effacés

sont aléatoires, ce qui signifie que les deux mots de code doivent être égaux et qu’Alice ne peut

pas transmettre deux messages distincts simultanément. Par conséquent, l’encodage dans un code

secret doit choisir au hasard un des nombreux mots de code possibles associés à un message donné.

En d’autres termes, chaque mot de code est indexé par un message m et un message m′ choisis au

hasard, de sorte que, le codage de message m est stochastique [1]. Comme le montre la figure 4.9,

m

'm ( , ')m m

dictionnaire des mots de codes

sous-dictionnaire des

mots de codes

correspondant au

message m

x

FIGURE 4.9: Structure imbriquée d’un code secret [1]

un code secret doit présenter une structure de code imbriquée. Pour chacun desmessages distincts mà transmettre le secret, nous autorisons un message auxiliaire aléatoire m′ pour sélectionner l’un des

multiples mots de code possibles. L’ensemble des mots de code correspondant à un message donné msera appelée un sous-dictionnaire de l’intégralité du code correspondant au message m [1].

4.7.2 Code secret imbriqué de Harrison et al. [1]

Supposons que nous utilisons un code binaire sur le canal sous écoute. Ce code à les paramètres sui-

vants : taux de codage de 1/2, dimension de message k = 2 et longueur du mot de code n = 4, le canal

principal est sans bruit et le canal de l’espion est un BEC (voir figure 4.5). Considérons le dictionnaire

illustré au tableau 4.1 pour les messages à deux bits. La ligne est choisie en fonction du message m,

et la colonne est choisie en fonction du message auxiliaire aléatoire m′. Supposons que Eve obtienne

z = (? 0 1 ?) sur son canal. Puisque tous les sous-dictionnaires possèdent une correspondance avec

ce mot de code incomplet, et puisque la valeur du m′ est choisie au hasard, l’espion n’obtient pas

d’information sur le message de ses observations du canal [1]. La confusion de Eve pour ce modèle

48

Page 69: La cryptographie du point de vue de la théorie de l'information

(m,m′) 00 01 10 1100 0000 0011 1100 111101 0001 0010 1101 111010 1000 1011 0100 011111 1001 1010 0100 0111

Tableau 4.1: Structure imbriquée d’un code secret [1].

spécifique d’effacement résulte du choix aléatoire de mots de code dans le code imbriqué, mais la dif-

ficulté clé est de s’assurer d’une confusion similaire pour tous les modèles d’effacement. Considérons

à nouveau le dictionnaire de codes du tableau 4.1. Si Eve reçoit z = (0 0 ? ?), elle est en mesure de

déterminer que m ∈ 0, 1 en éliminant les messages 10 et 11. Il est à noter que ce code particulier

s’avère être le meilleur code de longueur n = 4 et de taux de 1/2 que l’on peut concevoir [1]. Le

tableau 4.2 présente toutes les possibilités de mots de code pour les patrons à deux effacements.

Patrons d’effacements??XX ?X?X ?XX? XX?? X?X? X??X

??00 0000 ?0?0 0000 ?00? 0000 00?? 0000 0?0? 0000 0??0 00000100 0010 0001 0001 0001 00101000 1000 1000 0010 0100 01001100 1010 1001 0011 0101 0110

??01 0001 ?0?1 0001 ?01? 0010 01?? 0100 0?1? 0010 0??1 00010101 0011 0011 0101 0011 00111001 1001 1010 0110 0110 01011101 1011 1011 0111 0111 0111

??10 0010 ?1?0 0100 ?10? 0100 10?? 1000 1?0? 1000 1??0 10001010 0110 1100 1001 1001 10100110 1100 0101 1010 1100 11001110 1110 1101 1011 1101 1110

??11 0011 ?1?1 0101 ?11? 0110 11?? 1100 1?1? 1010 1??1 10010111 0111 0111 1101 1011 10111011 1101 1110 1110 1110 11011111 1111 1111 1111 1111 1111

Tableau 4.2: Ensemble des possibilités de mots de code pour les patrons à deux effacements.

L’analyse du code secret présenté par Harrison et al. [1] démontre les possibilités de fuites d’informa-

tions selon le nombres d’effacements (le mot de code reçu contient seulement des 0 et " ?"), comme

indique au tableau 4.3. Pour trois effacements il n’y a pas de fuite d’information pour tous les patrons

(?XXX , X?XX , XX?X , XXX?), ici X ∈ 0,1, de sorte que, si on prend z = (0 ? ? ?), la probabilité

p(00) = p(01) = p(11) = p(11) = 1/4 et donc l’incertitude sur la valeur de m sachant que z est

H(m|z) =−∑ pi j log pi j =−4× 14 log 1

4 = log4 = 2, soit l’entropie du message H(m) elle-même. Par

contre pour deux effacements on a fuite d’information pour 2 patrons (??XX , XX??) parmi six patrons

(?X?X , ?XX?, X?X?, X??X).

49

Page 70: La cryptographie du point de vue de la théorie de l'information

Nombre Nombre de Patrons Exemple Fuite H(m|z) Nombred’effacements patrons possibles de séquence d’infor- de patrons

reçue mations avec fuite

Aucun(

40

)= 4!

0!·(4−0)! = 1 XXXX 0000 oui 0 0

effacement

1 effacement(

41

)= 4!

1!·(4−1)! = 4 ?XXX ?000 oui 1

X?XX 0?00 oui 1 4XX?X 00?0 oui 1XXX? 000? oui 1

2 effacements(

42

)= 4!

2!·(4−2)! = 6 ??XX ??00 oui 1

?X?X ?0?0 non 2?XX? ?00? non 2 2X??X 0??0 non 2X?X? 0?0? non 2XX?? 00?? oui 1

3 effacements(

43

)= 4!

3!·(4−3)! = 4 ???X ???0 non 2

?X?? ?0?? non 2 0??X? ??0? non 2???X ???0 non 2

4 effacements(

44

)= 4!

4!·(4−4)! = 1 ???? ???? non 2 0

Tableau 4.3: Analyse de fuites d’informations du code secret présenté par Harrison et al.[1] au tableau4.1 : fuites d’informations selon le nombre d’effacements.

4.7.3 Code secret imbriqué proposé

L’analyse de la méthode de [1] nous à conduit à la recherche d’autres codes. Nous avons construit un

code binaire, illustré au tableau 4.4 avec les paramètres suivants : le taux de codage de 1/2, la lon-

gueur de mot de code n = 4 et la dimension du message m, k = 2. Ce code assure une fuite minimale

d’information par rapport au code de référence présenté au tableau 4.1 [1].

Les performances de ce code sont comparées avec le code présenté dans [1]. En effet dans ce dernier,

(m,m′) 00 01 10 1100 0000 1101 0110 101101 0100 1001 0010 111110 1000 0101 1110 001111 1100 0001 1010 0111

Tableau 4.4: Structure imbriquée d’un code secret proposé.

il y a deux patrons a une fuites d’information (??XX , XX??) parmi les six patrons de deux efface-

ments, alors que la particularité du code proposé est que pour les six patrons de deux effacements

50

Page 71: La cryptographie du point de vue de la théorie de l'information

on a une fuite d’information pour un seul patron (X??X) parmi les six patrons (?X?X , ?XX?, X?X?,

X??X , ??XX , XX??), ce qui est considéré comme un gain supplémentaire en terme de sécurisation des

communications légitimes.

L’analyse de la fuite d’information pour ce code démontre les possibilités d’estimer le message reçu

par l’espion (le mot de code reçu contient seulement des 0 et ?), comme indiqué au tableau 4.5.

De façon globale l’incertitude d’équivocation H(m|z) au niveau de l’espion pour le code présenté

Nombre Nombre de Patrons Exemple Fuite H(m|z) Nombred’effacements patrons possibles de séquence d’infor- de patrons

reçue mations avec fuite

Aucun(

40

)= 4!

0!·(4−0)! = 1 XXXX 0000 oui 0 0

effacement

1 effacement(

41

)= 4!

1!·(4−1)! = 4 ?XXX ?000 oui 1

X?XX 0?00 oui 1 4XX?X 00?0 oui 1XXX? 000? oui 1

2 effacements(

42

)= 4!

2!·(4−2)! = 6 ??XX ??00 non 2

?X?X ?0?0 non 2?XX? ?00? non 2 1X??X 0??0 oui 1X?X? 0?0? non 2XX?? 00?? non 2

3 effacements(

43

)= 4!

3!·(4−3)! = 4 ???X ???0 non 2

?X?? ?0?? non 2 0??X? ??0? non 2???X ???0 non 2

4 effacements(

44

)= 4!

4!·(4−4)! = 1 ???? ???? non 2 0

Tableau 4.5: Analyse de la fuite d’information pour le code secret proposé selon le nombre d’efface-ments.

dans [1] à l’aide de l’entropie conditionnelle qui est vaut H(m|z) = 1.333 bits par mot de code. Dans

le code proposé l’incertitude au niveau de l’espion s’élève à H(m|z) = 1.366 bits par mot de code. Le

tableau 4.6 présente une comparaison entre le code proposé dans [1] et le nouveau code proposé en

fonction de l’incertitude pour tous les patrons possibles d’effacements.

4.7.4 Construction du code secret imbriqué proposé

Pour effectuer la construction d’un code, on commence par génèrer tous les patrons avec 2 efface-

ments. Pour chacun de ces patrons, on remplace les deux bits reçu (XX) par les 4 possibilités de bits de

51

Page 72: La cryptographie du point de vue de la théorie de l'information

Nombre Patrons H(m|z)[1] H(m|z)d’effacements possibles code proposéAucun effacement XXXX 0 01 effacements ?XXX

X?XX 1 1XX?XXXX?

2 effacements ??XX?X?X?XX? 1.666 1.833X??XX?X?XX??

3 effacements ???X?X?? 2 2??X????X

4 effacements ???? 2 2

Tableau 4.6: Comparaison en fonction de l’incertitude entre le code présenté dans [1] et le code pro-posé.

messages. Par exemple, si le patron d’effacement est ??XX , on obtient alors (??00, ??01, ??10, ??11).

Ensuite on remplace les 2 effacements pour les 4 éventualités possibles. On obtient alors pour ??00

les 4 vecteurs suivants : (0000, 0100, 1000, 1100). En répétant toutes ces étapes pour les différents

patrons d’effacements on obtient le tableau 4.2.

À partir de ce tableau, on construit notre code comme suit : on place les mots code possibles pour

chaque message m, i.e. 00, 01, 10 ou 11. Ensuite, on vérifie qu’il n’y a pas de fuite d’information.

Dans le cas où il y a une fuite, on remplace le mot de code par un autre mot code de la même colonne

(voir tableau 4.4). En répétant l’opération on obtient un nombre minimal de bits de fuite d’information.

4.8 Conclusion

Nous avons vu dans ce chapitre, les notions fondamentales liées à la base théorique de la sécurité de

la couche physique, et comment assurer la sécurité en se basant sur la capacité du canal, les notions

de taux de compression et transmission atteignables. Nous avons défini le codage secret et leur rôle de

permettre d’accroitre la sécurité de communication entre les parties légitimes. Nous avons analysé le

code secret présenté par Harrison et al. [1]. Nous avons proposé un exemple de code secret imbriqué

simple de longueur 4 permettant d’accroitre la sécurité et nous avons comparés les performances de

ce code avec le code présenté dans [1] selon les possibilités de fuites d’informations par rapport aux

nombre d’effacements. Dans les chapitres suivants, nous présentons des stratégies de codages pour

assurer la sécurité cryptographique reposant sur la sécurité de la couche physique.

52

Page 73: La cryptographie du point de vue de la théorie de l'information

Chapitre 5

Stratégie de codage sécuritaire

Dans ce chapitre, notre objectif est d’arriver à une meilleure conception pour améliorer la sécurité

cryptographique au niveau de la couche d’application. Nous étudions un système reposant sur la no-

tion de degrés de liberté. Au début, nous commençons par un aperçu relativement détaillée sur les

métriques de sécurité et la méthode de codage secret. Nous étudions la conception de codes LDPC

avec ensemble d’arrêt et nous effectuons une simulation pour la création de modèle de poinçonnage

de deux type de code LDPC. Nous détaillons la notion de sécurité pour les canaux indépendants et

corrélés avec effacements. Par la suite, nous effectuons des série de simulations pour reproduire les

courbes théoriques à partir des équations théoriques, et de tracer les courbes établies à l’aide de si-

mulations selon des critères de conception afin de maximiser le nombre de degrés de liberté lors du

décodage des codes LDPC. À la fin de ce chapitre, nous présentons des outils pour l’amélioration de

la sécurité cryptographique.

5.1 Métriques de sécurité

La mesure de renforcement de sécurité repose sur la cryptographie et le codage du canal. Notre objectif

est de concevoir un système offrant une solution plus complète en sécurité, pour empêcher l’attaquant

d’avoir des informations sur les messages chiffrés, par l’utilisation de codage du canal. Nous analysons

une nouvelle mesure de sécurité basée sur le codage secret au niveau de la couche physique : on

exploite les symboles manquants, D, correspondant aux degrés de liberté, dans les messages chiffrés

observés par l’espion.

On suppose que les symboles du message M sont uniformément distribués (i.i.d.) selon la loi de

Bernoulli : ils prennent la valeur 1 avec la probabilité p et 0 avec la probabilité q = 1− p. En d’autres

termes,

P(M = m) =

p si

1− p si

0 sinon.

m = 1

m = 0

53

Page 74: La cryptographie du point de vue de la théorie de l'information

Alors pour atteindre une parfaite confidentialité (sécurité) selon le modèle de Shannon, il faut que le

nombre de degrés de liberté D = k, i.e. le nombre de symboles du message. L’utilisation de degrés

de liberté en codage secret permet de traiter avec efficacité les attaques sur une couche d’application

[14].

Il a été déjà montré dans différents travaux de recherche que certaines attaques cryptographiques par

corrélation sur les chiffrements par flot (stream ciphers) sont restées réalisables même sur les mes-

sages chiffrés envoyées dans un canal bruité, bien qu’un seuil sur le niveau de bruit, les erreurs au-delà

de ce seuil cause à l’échec de l’attaque [36], [37].

Notre but est d’étudier des systèmes pratiques qui devraient induire suffisamment de confusion pour

l’attaquant, avec une quantité minimum de bruit dans les messages observés par cet attaquant. Ces

systèmes devraient être robustes quels que soient les conditions prévalant sur le canal légitime : l’in-

formation imparfaite sur l’état du canal CSI au niveau du codeur, et l’utilisation de modèles de sys-

tèmes non dégradés [14]. Effectivement, une conception adéquate permet encore une amélioration de

la sécurité du système cryptographique, même si les attaquants ont un avantage suivant à la qualité du

signal par rapport aux récepteurs légitimes. Idéalement, tout cela doit être fait tout en garantissant une

communication fiable entre les parties légitimes.

Pour mettre en évidence cette nouvelle métrique de sécurité, ce chapitre s’intéresse également à la

sécurité, caractérisée par l’utilisation des degrés de liberté dans un système de codage combinant la

sécurité cryptographie et la sécurité de la couche physique. Une méthode est présentée dans [5], dans

laquelle un attaquant passif est affecté par un ensemble d’arrêt d’un code LDPC à très haute proba-

bilité, quand il utilise un décodeur itératif MP (message passing). Un récepteur légitime et un espion

reçoivent des données transmises statistiquement indépendantes, soient des données statistiquement

corrélées par les canaux à effacement de paquets.

La conception de cette méthode repose sur le codage du canal par un code LDPC non systématique,

avec poinçonnage et entrelacement à l’encodeur [5]. Aussi, on suppose que les récepteurs légitimes

ont accès à un canal public de retour authentifié. Nous étudions le niveau de sécurité obtenu par cette

méthode, en abordant les points suivants [5] :

– Degrés de liberté : Analyser la sécurité du système en utilisant la notion de degrés de liberté

D. La complexité de calcul croît de façon exponentielle avec l’espérance de D, E[D], qui est

représenté par l’équivocation H(X |Z).

– Description de codeur : On définit les détails de systèmes de codage et de décodage, avec

comparaison des résultats de simulation et les résultats théoriques.

– Optimisation : Une comparaison entre des codes LDPC réguliers et irréguliers pour établir des

critères de conception afin de maximiser le nombre de degrés de liberté lors du décodage des

codes LDPC par l’algorithme itératif d’échanges des messages MP.

En cryptographie, les différents types d’attaque sont souvent basées sur la recherche des versions des

messages en clair ou chiffré sans erreurs de m. C’est pour cette raison que le modèle utilise des degrés

de liberté dans les messages chiffrés observés par l’espion afin d’éviter ce genre des problèmes. En

54

Page 75: La cryptographie du point de vue de la théorie de l'information

conséquence, cette méthode offre une solution pour améliorer la sécurité cryptographique, sans la

nécessité d’une clé secrète ou la dégradation du canal de transmission lui-même.

5.2 Aperçu de la méthode de codage secret

La figure 5.1 présente la méthode choisie qui repose sur la définition du modèle de canal sous écoute

de Wyner [13], [4] avec canal de retour. Deux parties légitimes, Alice et Bob, exploitent le canal

pour établir une communication et échanger des messages. Une troisième partie, l’espion Eve, utilise

son canal pour récupérer les messages transmis. Alice, veut transmettre un message binaire chiffré

m = (m1, m2, . . . , mL) à Bob, où mi = (mi1, mi

2, . . . , mik) ∈M pour i = 1, 2, . . . , L. Le message m est

décomposé en L blocs de dimension k. Si la dimension du bloc final mL est inférieur à k, on ajoute

des bits aléatoires (dummy bits). La longueur de chaque mot de code est n. Le taux de code est donc

k/n. Après poinçonnage, la longueur du mot de code est n. Alice encode le message m et puis effectue

l’entrelacement pour reformer le message en rassemblant les paquets. Ici, η présente le nombre des

paquets où x = (x1, x2, . . . , xη). Après encodage, Alice transmet les paquets du mot de code via un

canal PEC (packet erasure channel), Qm, de matrice de probabilité de transition avec une probabi-

lité d’effacement δ [14], [5], [15]. Bob reçoit les paquets y et commence l’opération de décodage.

L’espion, Eve, observe la communication par son canal PEC, Qw, avec une probabilité d’effacement

)(

)(

m

m

y

z

CEP

CEP

mQ

wQ

m x

Encodeur

Décodeur

Décodeur

canal de retour

Alice

Bob

Eve

FIGURE 5.1: Modèle de canal sous écoute avec retour en supposant des canaux d’effacement paquetà la fois pour le canal principal Qm et le canal sous écoute Qw[14].

ε , et obtient les paquets z. Dans ce chapitre on met en évidence les deux cas, où les deux canaux

sont indépendants ou corrélés. D’abord nous supposons dans cette section que les deux canaux sont

statistiquement indépendants. Après le décodage itératif, les estimations de message m par Bob et Eve

sont respectivement m et m. La conception du système doit garantir que le message déchiffré m pour

Bob est exempt d’erreur de sorte que Pe(m 6= m) = 0, et en même temps garantir que l’attaquant Eve

décode avec une grande probabilité d’erreur pour presque toutes les paires (δ ;ε).

Bob utilise le canal de retour authentifié sans bruit pour demander à Alice de retransmettre les paquets

manquants. Alice suivant les caractéristiques de canal de retour peut déduire si Bob a envoyé la de-

mande, et aussi peut détecter s’il y a des modifications sur les données transmises, alors qu’Eve ne

peut pas faire de demandes de son propre canal. L’intersection entre l’ensemble des paquets effacés

55

Page 76: La cryptographie du point de vue de la théorie de l'information

simultanément dans Qm et dans Qw peut encore être obtenue par l’espion pendant les retransmissions,

mais les paquets effacés dans Qw, mais bien reçus Qm, sont toujours perdus par Eve [14].

5.2.1 Requête automatique de répétition (ARQ)

La requête automatique de répétition (ARQ) est un mécanisme de contrôle qui combine les systèmes

de détection d’erreur et de retransmission pour assurer une transmission fiable. Un canal de retour est

nécessaire pour indiquer la réception, ou non, des messages au niveau du récepteur. La méthode ARQ

fonctionne bien pour de nombreux protocoles, tels que le protocole TCP/IP, mais sa performance se

dégrade sérieusement pour certaines applications telles que les canaux de diffusion (BC). Dans les

applications de diffusion, les paquets de données peuvent être retransmis même si ils sont reçus par de

nombreux récepteurs. Dans ces cas, les récepteurs de données peuvent demander pour retransmettre

les données déjà reçues par d’autres récepteurs. Ainsi, la source de données doit retransmettre la plu-

part des données conduisant à une augmentation de l’utilisation de la bande passante. En outre, en

ARQ, si la distance emetteur-récepteur est importante (trop long), le récepteur demeure en veille du-

rant l’attente de la confirmation d’authentification du paquet en cours [38].

5.2.2 Degrés de liberté

Nous appelons les symboles récupérés pour lesquels un espion n’a pas d’information, degrés de li-

berté. La variable aléatoire D représente le nombre de degrés de liberté dans un mot de code reçu.

Comme vu à la section précédente, Bob reçoit idéalement le message m avec Pe(m 6= m) = 0, alors

que Eve observe le message m avec Pe(m 6= m)> 0 signifiant un manque d’informations sur certains

symboles. Eve sera alors obligée d’attaquer, par force brute ou recherche exhaustive, le système pour

déduire les valeurs des symboles inconnus. [14], [5], [15].

On décrit les degrés de liberté comme les variables inconnues dans une équation. Par exemple, pour

une équation à 1 inconnue, on n’a pas le choix pour le nombre x : ici, le nombre de degrés de liberté

est égal à 0. Pour une équation à deux inconnues, x et y, on a le choix pour la valeur de x mais une fois

celle-ci fixée, on n’a pas le choix de l’autre variable y : donc le nombre des degrés de liberté (DoF) est

égal à 1, et ainsi de suite pour n variables.

À titre de comparaison entre D et les notions de sécurité classiques, si les bits du message m sont

uniformément distribués entre 0 ou 1, indépendants et identiquement distribués (i.i.d.), alors D = k.

Cela signifie qu’il y a exactement 2k séquences binaires équiprobables avec les données manquantes.

Notez que l’encodeur a seulement 2k mots de code possibles. Ainsi, chaque mot de code est égale-

ment probable pour l’espion dans une configuration parfaitement sécurisée. En fait, il y a en moyenne

E[2D] mots de code binaires où E l’espérance mathématique, équiprobables dans un décodeur maxi-

mum a posteriori (MAP). Cela implique une multiplication nécessaire des efforts pour attaquer un

cryptogramme avec D degrés de liberté. Si les degrés de liberté sont la seule source de confusion pour

Eve, alors l’incertitude liée au mot de code x transmis et à l’observation z de l’espion est lié à D par

56

Page 77: La cryptographie du point de vue de la théorie de l'information

l’équation H(x|z) = E[D] [5].

Prenons comme exemple les codes binaires avec D = d. Un mot de code de longueur n peut être n’im-

porte lequel des 2d mots de code possibles équiprobables de probabilités 2−d . Vu qu’un attaquant n’a

pas d’information sur ces bits, 2E[D]−1 essais doivent être faits pour les obtenir [14].

En fait, si nous avons D degrés de liberté en k bits, et les autres k−D bits sont connus parfaitement,

alors l’entropie du bloc est exactement de D bits pour une source équiprobable. De plus, un attaquant

n’ayant pas connaissance des bits associés aux degrés de liberté de D, le nombre moyen d’approxi-

mations nécessaires pour les obtenir est égal à la moyenne d’une variable aléatoire uniforme discrète

avec 2D valeurs possibles [14], [5], [15]. Comme D est lui-même une variable aléatoire, alors

E[

12(2D +1

)]=

12

(E[2D]+1

)(5.1)

Les estimations doivent être faites avec l’espérance mathématique E[D] pour déterminer le nombre

de degrés de liberté D. Les objectifs de la conception du codage pour la couche physique sont les

suivants : d’une part, faire en sorte que D = 0 pour Bob afin que m = m, et d’autre part, rendre D

aussi grand que possible pour Eve et, finalement, veiller à ce que les attaques sur les cryptogrammes

échouent, si m 6= m où la distance de Hamming dH(m, m)> 0 [14], [5], [15].

5.3 Conception de codes LDPC avec ensemble d’arrêt

Nous présentons, dans cette section, une méthode de conception de codes LDPC, caractérisés par des

ensembles d’arrêts afin d’améliorer la sécurité de la couche physique.

Considérons un code LDPC défini par sa matrice de parité H(n−k)×n [26], de longueur de mot de code

n et de dimension de message k. La longueur des mots de codes poinçonnés est npi et est différente

de n. La matrice H est représentée sous forme du graphe de Tanner GT . L’ensemble des nœuds de

variables est

V = (v1, v2, . . . , vn) (5.2)

indiquant les n bits, où n œud de variables, dans un mot de code, alors que l’ensemble des nœuds de

parité est

U = (u1, u2, . . . , un−k). (5.3)

soit n− k lignes de la matrice de parité H.

L’ensemble de nœuds de variables qui participent aux équations de parité ui (c’est-à-dire, les éléments

non nuls sur le ième ligne de H) est défini par [6] :

Ni =

j : Hi, j = 1

(5.4)

Ainsi, nous pouvons exprimer le ième nœud de parité par :

ui = ∑ j∈Niv j (5.5)

57

Page 78: La cryptographie du point de vue de la théorie de l'information

L’ensemble de nœuds de parité qui affectent les nœuds de variables v j (c’est-à-dire, les éléments non

nuls sur le jème colonne de H) est défini comme [6] :

M j =

i : Hi, j = 1

(5.6)

Ainsi, tous les calculs du ième nœud de parité sont effectués sur le Corps de Galois GF(2), selon

l’équation (5.5). Le jème nœud de variable connecté au ième nœud de parité est indiqué dans le graphe

de Tanner GT si et seulement si j ∈ Ni. La figure 5.2 montre un exemple de graphe de Tanner. Le

choix s’est établi sur l’utilisation de l’algorithme de décodage itératif d’échanges de messages MP,

basé sur le graphe de Tanner pour les mots de codes LDPC transmis via un canal BEC.

Nœuds de variables

Nœuds de parité

1v 2v 3v 4v 5v7v

1u2u 3u

6v? ? ?

FIGURE 5.2: Graphe de Tanner GT pour le décodage itératif avec échange de messages MP avec unensemble d’arrêt dû aux effacements aux nœuds de variables v2, v5 et v7.

5.3.1 Décodage itératif avec échange de messages (MP)

Chaque mot de code xi ∈ 0,1 ∈ C, envoyé sur un canal d’effacement binaire BEC aura comme sor-

tie le vecteur yi ∈ 0, 1, ?. Le décodage repose sur un processus d’échange de messages entre les

ensembles de nœuds de parité et de variables, U et V , le long des branches du graphe de Tanner GT .

L’algorithme de décodage itératif avec échange de messages MP entre les nœuds de variables et de

parité choisi est défini plus bas dans l’algorithme 1. La cardinalité de l’ensemble des plus petites va-

leurs des bits effacés qui doivent être retransmis pour décoder tous les bits restants du message reçu,

représente le nombre de degrés de liberté DMP dans le décodeur MP [14], [5], [15]. On dit que l’opé-

ration de décodage est réussi si et seulement si DMP = 0. Parce que, et d’aprés la définition de degrés

de liberté, toute combinaison de bits pour ces bits DMP décode à un mot de code valide, et chacun est

également probable d’être correcte. Harrison et al. [14] donne une limite sur les capacités de correc-

tion du décodeur MP.

58

Page 79: La cryptographie du point de vue de la théorie de l'information

Proposition 1 [14] : L’algorithme de décodage MP sur un canal BEC peut corriger au plus n− k

bits effacés.

Pour l’algorithme MP, on voit qu’un nœud de parité permet de corriger au plus un nœud de variable,

et |U| = n− k. Le décodeur MP est sous optimal par rapport au décodeur à vraisemblance maximale

ML, bien que le décodeur MP ait une complexité linéaire en fonction de la longueur du bloc [6].

Algorithm 1: Décodeur MP (échange de messages) sur le BEC [14], [5], [15]Données: pour yi 6=?, définir vi = yi et A= vi : yi 6=?.

si A= φ et aucun nœud de parité est de degré 1 alorsEcrire le mot de code et arrêter

sinonSupprimer tous les vi ∈ A avec leurs connections adjacentes.;

finPour chaque nœud de variable v j connecté à un nœud de parité ui de degré 1, déclarer v j comme

connu et définir v j = ∑k∈Ni, j vk.

5.3.2 Ensembles d’arrêt

Afin de faire face à d’éventuelles intrusions d’un espion qui utiliserait le décodeur MP, il est important

pour le système de communication que le nombre de degrés de liberté D soit le plus grand possible.

L’élaboration du codeur en bloc pour augmenter les degrés de libertés, se traduit par l’ajout d’un degré

de liberté pour chaque bit effacé par le canal tel que montré à la figure 5.1. Pour ce faire nous utilisons

les ensembles d’arrêt.

Définition : Un ensemble d’arrêt (stopping set) est défini comme un ensemble V de nœuds de va-

riables adjacent à l’ensemble U de nœuds de parité. Un ensemble ne peut être un ensemble d’arrêt

S ⊆ V du graphe de Tanner GT que si tous les nœuds de parité dans son voisinage U sont connectés

à au moins deux nœuds de variables dans S. Ainsi toute tentative de décodage de mots de codes in-

terceptés, amènera le décodeur itératif MP dans un état d’ambiguité ou de blocage, d’où l’appellation

ensemble d’arrêt [14], [5].

Les symboles effacés ne pourront être reconstruits, dans le cas où tous les symboles sont effacés, fai-

sant ainsi qu’aucune valeur ne sera déduite vu les nœuds de contrainte auxquels ils sont adjacents.

Ceci est vérifié vu que plus d’un symbole est effacé dans son voisinage, alors qu’une reconstruc-

tion n’est possible si un seul symbole est effacé. La figure 5.2 montre un ensemble d’arrêt de taille

3. En effet, les nœuds de variable V = v2, v5, v7 sont connectés uniquement aux nœuds de parité

U = u1, u2, u3, et chacun de ces nœuds de parité est connecté à deux symboles ou plus de V .

Notez que l’ensemble vide, par définition, est un ensemble d’arrêt, de même que toute union des

ensembles de l’arrêt. Ainsi, un ensemble de nœuds de variable dispose d’un seul ensemble d’arrêt

maximal. La figure 5.2 montre clairement que les effacements ne peuvent pas être résolus en utilisant

l’algorithme MP.

59

Page 80: La cryptographie du point de vue de la théorie de l'information

Lemme 1 [14] : Soit le graphe de Tanner GT défini par la matrice de parité H d’un code bloc linéaire

binaire C et supposons que C est utilisé pour transmettre dans le canal BEC. Soit A l’ensemble de bits

effacés dans le mot de code reçu. En utilisant l’algorithme MP sur GT , l’ensemble des effacements qui

restent après le décodage comprennent un seul ensemble d’arrêt maximal en A [14], [5], [15], [39].

Puisque les ensembles d’arrêt causent l’échec du décodeur MP, le poinçonnage dans le codeur vise à

infliger à Eve l’arrêt du processus de décodage. Le décodeur dans cette conception utilise un ensemble

particulier de codes LDPC, assurant ainsi le codage secret de l’information quel que soit le décodeur

utilisé par Eve. La simplicité de décodage MP est également conservée pour tous les récepteurs légi-

times.

5.3.3 Conception de l’encodeur

Dans le but de minimiser l’information durant le traitement, la conception de l’encodeur est basée sur

la chaine de Markov : M −→ X −→ Z où I(M; Z) ≤ I(M; X) [20]. Le but principal du décodeur est

de récupérer le message envoyé sans erreurs. Le mot de code Y récu par Bob permet de récupérer le

message M, alors que pour Eve il y a la possibilité de ne rien pouvoir récupérer si X est effacé dans le

canal Qw : cela peut se traduire par la maximisation du nombre de degrés de liberté D pour Eve [14].

La figure 5.3 illustre la conception de l’encodeur et les étapes à suivre pour atteindre l’objectif de

sécurité et de fiabilité. La conception est basée sur les points suivants [14] :

– Cacher les bits du message m dans son propre mot de code en utilisant des codes LDPC non

systématiques.

– "Amplifier" les erreurs en employant le chiffrement mis en œuvre par une matrice de brouillage

S avant codage.

– Limiter la capacité de correction d’erreurs par l’application du poinçonnage sur les mots de

codes.

– Entrelacer les bits de blocs codés en plusieurs paquets, de sorte qu’un seul paquet effacé en-

gendre plusieurs effacements dans les blocs codés.

pbm xEncodeur

LDPC

Bloc

poinçonné

Mémoire

tamponEnterlacement

blocs de

longueur

L

k

blocs de

longueur

L

n

blocs de

longueur ip

L

n

paquets de

longueur L

FIGURE 5.3: Diagramme bloc détaillé de l’encodeur [14].

5.3.3.1 Codes LDPC non systématique

Soit m = (m1, m2, . . . , mL) un message où mi = (mi1, mi

1, . . . , mik) ∈ M pour i = 1, 2, . . . , L. Le

message m est codé par un codeur LDPC non systématique en un mot de code de longueur n et de

dimension k. Le résultat du codage donne aussi L blocs de mots de code b de longueur n, dénote par

60

Page 81: La cryptographie du point de vue de la théorie de l'information

b = (b1, b2, . . . , bL) où chaque vecteur bi = (bi1, bi

1, . . . , bin).

Certes, dans le cas de codage systématique, les bits de message mi sont représentés explicitement

dans le bloc codé bi. On ajoute pour cette raison une contrainte de secret. On préfère utiliser les

codes LDPC non systématiques pour augment le taux d’erreur sur les textes chiffrés observés par Eve

aprés le décodage . Dans la méthode que nous considérons, Alice met en œuvre le codage LDPC non

systématique comme suit :

bi = mi ·S ·G (5.7)

où S, est défini comme une matrice de brouillage inversible k×k dans GF(2) avec un poids de ligne et

poids de colonne > 1. Le processus de codage LDPC applique la matrice de brouillage S et la matrice

génératrice systématique G pour obtenir un bloc de mot de code bi de longueur n [16]. Dans la partie

de décodage et après l’obtention des bits manquants par l’algorithme de décodage MP, on applique

l’opération inverse comme suit [14] :

1. Prendre la partie systématique m′i qui à correspond la partie systématique de la matrice G.

2. Multiplier m′i par la matrice inverse de la matrice de brouillage S−1.

mi = m′i ·S−1 (5.8)

Sachant que S · S−1 = Ik×k définit la matrice identité de rang k, l’obtention de S−1, l’inverse de la

matrice de brouillage, repose sur un algorithme de décomposition, par exemple l’algorithme de dé-

composition LU [40] sur GF(2).

Pour les objectifs de la présente étude, il est utile d’obtenir au préalable une incertitude maximale en

présence d’une (ou plusieurs) erreur(s). On utilise une technique de brouillage que nous appelons de

brouillage parfait, où une seule erreur dans le mot décodé est suffisante pour assurer un taux d’erreur

d’environ 50% après décodage.

Afin d’atteindre le brouillage parfait, il est conseillé d’utiliser une matrice S avec inverse avec une

forte densité de symboles "1" [16], [14]. L’efficacité du brouillage est obtenue lorsque la densité pour

chaque ligne de S−1 est d’environ k/2. Dans le cas où la densité est plus faible, on peut assurer un

effet de brouillage presque parfait.

5.3.3.2 Poinçonnage des mots de code

Dans cette section, nous introduisons le poinçonnage, dans le but de parer au décodage des données

interceptées par l’espion, en introduisant des ensembles d’arrêts. L’ensembleR⊆V définit le modèle

de poinçonnage, où les éléments de l’ensemble R sont les bits à poinçonner dans chaque bloc bi de

mot de code b, et V représente l’ensemble des nœuds de variables du graphe de Tanner GT . Pour ce

faire, chaque mot de code b doit être poinçonné de façon à obtenir un mot de code poinçonné p de

longueur n comme montré à la figure 5.3 [14] :

p = (p1, p2, . . . , pL) où pi = (pi1, pi

2, . . . , pin). (5.9)

La longueur npi de chaque bloc poinçonné est égal à la cardinalité de l’ensemble Q, où Q⊆ V repré-

sente l’ensemble des bits non poinçonnés. Ce que l’on pourrait traduire comme V =R+Q.

61

Page 82: La cryptographie du point de vue de la théorie de l'information

Définition : Soit G = V, E un graphe avec un ensemble de sommets V = v1, v2, . . . , vn et un

ensemble de arcs E du graphe. Notons l’arc entre les sommets vi et v j que viv j. En outre, considérer

un sous-ensemble de sommets V ′ ∈ V . Le graph V ′ qui a comme ensemble de sommets. Un graphe

G′ = V ′,E ′ est un sous-graphe d’un autre graphe [41], si et seulement si

V ′ ⊆ V et E ′ ⊆ E . (5.10)

Un sous-graphe G′ = V ′,E ′ d’un graphe G = V,E est présenté dans la figure 5.4 : c’est un sous-

graphe induit si E ′ est formé de tous les arcs (ou arêtes) de G ayant leurs extrémités dans V ′.

∀x, y ∈ V ′,(xy) ∈ E ′⇐⇒ (xy) ∈ E (5.11)

43

1

524

1

3

G 'G

FIGURE 5.4: Sous graphe induit par V ′ = 1, 3, 4.

Définition : Un modèle de poinçonnageR est dit acceptable, siR est dépourvu d’ensemble d’arrêt

et que R+V peut contenir des ensembles d’arrêt non vides, définis par Sv pour chaque nœud de

variables v ∈Q [14], [5], [15].

Le modèle de poinçonnage élaboré repose sur l’algorithme 2 de recherche de poinçonnage. Il est

basé sur une technique aléatoire de choix de variables de nœuds v et fait appel à l’algorithme 3 qui

recherche systématiquement les ensembles d’arrêt non vides, de façon itérative, pour vérifier s’il y a

62

Page 83: La cryptographie du point de vue de la théorie de l'information

des ensembles d’arrêts en utilisant la notion de sous-graphe induit.

Algorithm 2: Recherche un modèle de poinçonnage acceptableR⊆ V [14], [5], [15]Données:R= v, pour au choix aléatoire v ∈ V , et Q= φ .

Résultat:R,Q oùR⊆ V , Q⊆ V et V = (R∪Q).

tant que (V/(R∪Q) 6= φ) faireChoisir un autre v au hasard dans V (R∪Q);Exécuter l’algorithme 3 avec A=R+ v pour vérifier l’ensembles d’arrêt;

si (R+ v possède un ensemble d’arrêt, c’est à dire l’algorithme 3 retourne vrai) ; alorsQ=Q+ v;

sinonR=R+ v;

finfin

Algorithm 3: Vérifie l’existence des ensembles non-vide d’arrêts dans A⊆ V [14], [5], [15]Données: S =A.

Résultat: S

tant que S 6= φ faireSous-graphe induit G′ dans G[S ∪n(S)];si ∃ un nœud de contrôle dans G′ de degré 1 alors

Supprimer des nœuds variables de S qui sont adjacents à vérifier nœuds de degré 1 dans G′;

sinonRetour vrai. S est l’ensemble d’arrêt maximale non vide en A;

finfinRetourne faux : il n’y a pas un ensemble d’arrêt non vide en A.

Lemme 2 [14] : Un modèle de poinçonnage acceptableR est toujours généré par l’algorithme 2.

Si A est un ensemble d’arrêt non-vide, alors l’algorithme 3 retourne toujours vrai, sinon le contraire

[14].

Considérons que l’algorithme 1 est utilisé pour récupérer les bits de l’ensemble A, qui correspondent

aux bits effacés sur un BEC, et les effacements récupérés dans la ième itération correspondent exacte-

ment aux nœuds supprimés dans la ième itération de l’algorithme 3. Ceci peut se poser dans le cas où

tous les bits sont corrigés par le décodage MP. L’algorithme 3 retourne "faux" (absence d’ensemble

d’arrêt non vide en A).

Le cas contraire peut se poser si le décodage MP fait face à un ensemble d’arrêt, où seulement quelques

bits effacés sont corrigés, et retourne un mot de code partiel. Ceci retourne "vrai" (S est l’ensemble

d’arrêt maximal non vide enA), ce qui implique que tous les bits restants ont un degré supérieur à "1"

63

Page 84: La cryptographie du point de vue de la théorie de l'information

dans le G′ de sous-graphe induit [14].

5.3.3.3 Modèles de poinçonnage des codes

Dans la méthode présenté dans [14] , le taux du code LDPC poinçonné résultant, Rres =k

n−|R| =k

npi,

est défini en fonction du taux du code LDPC systématique et de la taille de l’ensemble des modèles

de poinçonnage R où n est la longueur de mot de code avant le poinçonnage et npi est la longueur

de mot de code après le poinçonnage. Nous effectuons une série de simulation sur des codes LDPC

pour déterminer le modèles de poinçonnage de chaque code et pour démontrer que |R| est en fonction

de la distribution des degrés des nœuds de variable et des nœuds de parité du code LDPC (régulier et

irrégulier) [14].

Exemple 1 : code LDPC régulier : On choisit ici un code LDPC régulier (1000, 4, 8) de taux 1/2,

où n = 1000, wc = 4, et wr = 8. Il s’agit du même code utilisé dans [14]. On exécute l’algorithme 2

plusieurs fois, pour construire le modèle de poinçonnage, et puis pour calculer la taille moyenne de

l’ensemble |R| [14].

Exemple 2 : code LDPC irrégulier : Un code LDPC irrégulier ayant un taux 1/2, un poids de

nœuds de variables selon la distribution λ (x) = 0.32660x+ 0.11960x2 + 0.18393x3 + 0.36988x4 et

un poids de nœuds de parité selon la distribution de degré ρ(x) = 0.78555x5 + 0.21445x6 [5]. On

cherche le modèle de poinçonnageR à l’aide de l’algorithme 2. La taille moyenne deR est entre 498

et 500, avec une probabilité 0.1 d’obtenir |R|= 500, 0.56 pour |R|= 499, et pour |R|= 498 avec une

probabilité proche de 0.26 [14], [5], [15], [40]. Nous pouvons affirmer que le caractère aléatoire de

l’algorithme 2, quand on l’applique sur les codes LDPC irréguliers de taux 1/2, résulte en un modèle

de poinçonnage de taille prés ou égal à de n− k.

Des résultats de simulation pour valider l’algorithme de poinçonnage [5] sont présenté au tableau

5.1, ces résultats sont obtenus par l’application de l’algorithme de poinçonnage 2 avec certains codes

LDPC. On remarque que la perte de 2 paquets (ligne 3 du tableau 5.1) entraine une perte de 273

paquets après décodage.

Le nombre de paquets manquants pour Eve représente les paquets effacés par le canal, le nombre totale

de paquets manquants pour Eve égale la cardinalité de modèle de poinçonnage plus le nombre de

paquets manquants. Après le décodage, Eve restauré certains paquets (le nombre de paquets restaurés

par Eve) et infligé dans une ensemble d’arrêt. Le reste de paquets où l’espion n’a pas l’information

représentée par le nombre de paquets restants.

Lemme 3 [14] : On désigne les indices du BEC correspondant aux indices des bits effacés dans pi

par Rc, et les degrés de libertés après le décodage MP par DMP. Si un code LDPC irrégulier est utilisé

sur le BEC avec l’application intentionnelle d’un modèle de poinçonnage, telle que, |R|= n−k, alors

le nombre de degrés de liberté restants aprés le décodage DMP = |Rc|.

64

Page 85: La cryptographie du point de vue de la théorie de l'information

Code LDPC Dimension Taux Nombre Nombre Nombretaux 0.5 du modèle de code de paquets de paquets de paquets

de poinçonnage résultant manquants pour Eve restaurés par Eve restants|R| Rres

Irrégulier 500 1 4 267 237n = 1000Irrégulier 500 1 56 72 484n = 1000Régulier 482 0.965 2 211 273(1000,3,6)Régulier 478 0.957 40 81 437(1000,3,6)Régulier 403 0.837 61 24 464(1000,5,10)Régulier 398 0.830 11 60 409(1000,5,10)

Tableau 5.1: Effet du poinçonnage sur le numbre de paquets restaurés par Eve.

Le décodeur MP peut corriger un maximum de n−k effacements (proposition 2). Puisque |R|= n−k,

tout effacement par le canal |Rc| est garanti de donner un degré de liberté dans le décodeur.

5.3.3.4 Entrelacement de bits

L’entrelacement consiste à permuter une séquence de bits de manière à ce que deux symboles ini-

tialement proches soient les plus éloignés possibles l’un de l’autre. Cela permet en particulier de

transformer une séquence d’erreur portant sur des bits regroupés en une séquence d’erreur répartie sur

l’ensemble de la séquence originale. D’après [14], le processus d’entrelacement permet de rassembler

les blocs dans η paquets, de sorte que

x = (x1, x2, . . . , xη) (5.12)

Pour ce faire, Alice choisit un entier positif qui divise npi , où η = npi/α . L’équation (5.13) illustre

une méthode pour former l’un de ces paquets [14],[5],[15] :

xi =(xi

1, xi2, . . . , xi

αL)

=(

P1(i−1)α+1, . . . , P1

iα , P2(i−1)α+1, . . . , P2

iα , . . . , PL(i−1)α+1, . . . ,P

Liα

) (5.13)

Le paquet xi est construit par la concaténation des α bits de chaque bloc codé et poinçonné p j pour

j = 1, 2, . . . , L, de sorte que l’effacement d’une seul paquet engendre α effacements dans chaque bloc

poinçonné au niveau du décodeur. La figure 5.5 montre un exemple d’entrelacement d’un mot de code

x de 16 bits, divisé en L = 4 blocs de longueur 4 et en paquets η = npi/α = 4 de longueur α ·L = 4

avec α = 1. Un autre exemple est présenté à la figure 5.6 pour un mot de code de 16 bits, divisé en

L = 4 bloc de longueur 4 et en nombre de paquets η = npi/α = 2 de longueur α ·L = 8.

65

Page 86: La cryptographie du point de vue de la théorie de l'information

Par conséquent, nous appliquons le modèle de poinçonnage R pour infliger à l’espion un ensemble

d’arrêt lors le décodage MP. Si R peut être conçu de telle sorte que |R| = n− k, nous pouvons être

assurés que tout paquet effacé fera que tous les L blocs contiennent des effacements, permettant ainsi

de mettre le décodeur MP de Eve en échec. On conclut que l’application de l’entrelacement assure un

décodage MP sans blocage (succès) après l’obtention de tous les paquets sans erreurs.

1 16151413 1211109 875 6 432

1 161413 12109 85 6 42

1 1614131110975 632

mot de code

Entrelacement

Paquet effacé

Désentrelacement 4 8 12 15

1 161284 151173 14102 6 1395

FIGURE 5.5: Entrelacement d’un mot de code x de 16 bits, divise en L = 4 blocs de longueur 4, et enpaquets η = n/α = 4 avec α = 1.

1 16151413 1211109 875 6 432

1 1614131110975 632

mot de code

Entrelacement

Paquet effacé

Désentrelacement 4 8 12 15

1 161284 151173 14102 6 1395

1 16151413 1211109 875 6 432

FIGURE 5.6: Entrelacement d’un mot de code X de 16 bits, divise en L = 4 blocs de longueur 16, eten paquets η = n/α = 2 avec α = 2.

66

Page 87: La cryptographie du point de vue de la théorie de l'information

Corollaire [14] : Si |R|= n−k et si les paquets sont formés selon l’équation (5.13), alors le nombre

de degrés de liberté dans le ième mot de code est DiMP =

∣∣Ric

∣∣ = α |Rp| pour i = 1, 2, . . . , L, où Rp

représente l’ensemble de tous les paquets effacés et Ric représente les bits effacés par le BEC du ième

mot de code.

5.3.4 Conception du décodeur

Le décodeur illustré à la figure 5.7 définit les étapes à suivre par un utilisateur légitime pour décoder

tous les mots de codes reçus sans erreur, sachant que, pour les paquets effacés, le récepteur légitime

fait des demandes de retransmission via le canal de retour authentifié. Ces mêmes paquets seront reçus

par le canal principal.

Les opérations du décodeur étant à l’inverse de celles de l’encodeur, le processus de décodage com-

mence par le désentrelacement pour désassembler les paquets sous forme des L blocs poinçonnés p,

puis applique le décodage MP, de complexité linéaire, en fonction la longueur du bloc, pour obtenir

b. Comme dernière étape, le message estimé m est obtenu par l’application de l’inverse de la ma-

trice de brouillage sur la partie systématique du mot de code B. Le décodeur assure que m = m aussi

longtemps que les paquets seront connus.

y p b mMémoire

tamponDésentrelacement MP Mapper à M

paquets de

longueur L

blocs de

longueur ipn

blocs de

longueur ip

L

n

blocs de

longueur

L

k

FIGURE 5.7: Processus de décodage [14].

5.4 Sécurité pour les canaux indépendants avec effacements

5.4.1 Scénario avec un espion et un récepteur légitime

Dans cette section, on cherche à montrer l’efficacité du décodeur proposé face à une attaque passive

d’un espion qui tente de récupérer le message échangé entre les parties légitimes (Bob), sur presque

toutes les régions possibles de paires de probabilité d’effacement des canaux BEC de Bob et de Eve

(δ , ε) en couvrant complètement la distribution sur les degrés de libertés D.

On suppose que l’espion a la connaissance du décodeur de Bob illustré à la figure 5.7, et arrive à

intercepter les paquets lors des échanges d’information entre Alice et Bob. Si Eve peut récupérer tous

les paquets sans erreurs, alors les données seront décodées sans aucun problème. Dans la méthode

proposée, l’indépendance de deux canaux Qm, Qw influence l’observation de l’espion en l’empêchant

d’obtenir tous les paquets sans erreurs, selon les probabilités d’effacements (δ , ε) des canaux Qm, Qw

respectivement.

67

Page 88: La cryptographie du point de vue de la théorie de l'information

Le critère de sécurité repose sur la probabilité que le nombre de degrés de liberté soit plus grand ou

égal à un seuil β , où Pr(D≥ β ), sachant que (Ω) présente l’événement où un espion arrive à intercep-

ter un seul paquet sans erreur à la fin des échanges entre Bob et Alice. Harison et al. [14], montre en

premier lieu, la distribution binomiale de la variable aléatoire D, et en second lieu, fourni en fonction

de Pr(Ω) [14], les résultats en matière de sécurité pour le scénario d’écoute simple, où les deux parties

légitimes ont accès au canal de retour, et où l’authentification fait en sorte que l’espion reste passif.

Les paquets manquants sont retransmis dans le canal de retour après exécution du protocole ARQ, qui

est déclenché par la réception de demandes du récepteur légitime.

Lemme 4 [14] : La variable aléatoire D, qui représente le nombre de degrés de liberté dans un mot

de code reçu est une variable distribuée selon une loi binomiale mise à l’échelle [14]. Ainsi, pour

1≤ β ≤ αη ,

Pr (D≥ β ) = 1−dβ/αe−1

∑i=0

i

)(1−Pr (Ω))i Pr (Ω)η−i (5.14)

Théorème 1 [14] : Si |R|= n− k dans le codeur, alors k/n = 1, et E[D] = H(x|z) = (1−Pr(Ω))n.

5.4.2 Scénario avec un espion et plusieurs récepteurs légitimes

Dans cette section, nous élargissons le concept pour étudier l’effet sur la sécurité des liaisons dans

le cas où il y a plusieurs récepteurs. On se base sur la même méthode que précédemment avec m

utilisateurs et des canaux avec effacement de paquets PEC indépendants entre eux de probabilité

d’effacement δi où i = 1, 2, . . . , m. Le résultat de Pr(Ω) repose sur le lemme suivant :

Lemme 5 [14] : La fonction de masse de probabilité fm(t) pour Tm est donnée comme suit [14] :

fm(t) =m

∏i=1

(1− (1−λi)t)−

m

∏i=1

(1− (1−λi)t−1). (5.15)

Dans le cas où Q1, Q2, . . . , Qm sont des variables aléatoires indépendantes distribuées selon la loi

géométrique avec comme paramètres λ1, λ2, . . . , λm et Tm = max(Q1, Q2, . . . , Qm).

Lemme 6 [14] : La probabilité que le nombre de degrés de liberté dépasse le seuil β , Pr(Ω) pour un

canal de diffusion (BC) avec un seul espion et m récepteurs légitimes indépendants, est donnée par :

Pr(Ω) =m

∑i=1

(1− ε

1− εδi

)−∑

i< j

(1− ε

1− εδiδ j

)+ ∑

i< j<k

(1− ε

1− εδiδ jδk

)−. . .+(−1)m+1

(1− ε

1− ε ∏mi=1 δi

) (5.16)

où les indices i< j signifient que la sommation se fait sur toutes les paires (i, j) avec i, j∈1, 2, . . . , met i < j, et pour i < j < k, etc [5].

68

Page 89: La cryptographie du point de vue de la théorie de l'information

5.4.3 Scénario avec plusieurs espions en collaboration

Une autre approche est élaborée pour mesurer la probabilité Pr(Ω), dans le cas où l espions collaborent

entre eux dans le but de récupérer le message envoyé m. Au début, on suppose que le système est

composé de l espions possédant des canaux PECs indépendants avec comme probabilité d’effacement

ε1, ε2, . . . , εl et d’un seul récepteur légitime avec une probabilité d’effacement δ . La résultante nous

permet de déterminer la probabilité de sécurité de manière similaire au scénario avec m récepteurs

légitimes avec comme probabilité d’effacement δi où i = 1, 2, . . . , m et l espions.

Lemme 7 [14] : La probabilité Pr(Ω) dans le cas avec un seul utilisateur légitime et l espions

collaborant entre eux, est donnée par :

Pr(Ω) =1−∏

li=1 εi

1−δ ∏li=1 εi

(5.17)

Corollaire 1 : La probabilité Pr(Ω) pour m récepteurs légitimes et l espions en collaboration, est

donnée par [14] :

Pr(Ω) =m

∑i=1

(1− ε ′

1− ε ′δi

)−∑

i< j

(1− ε ′

1− ε ′δiδ j

)+ ∑

i< j<k

(1− ε

1− ε ′δiδ jδk

)−. . .+(−1)m+1

(1− ε

1− ε ′∏mi=1 δi

) (5.18)

5.5 Sécurité pour les canaux corrélés avec effacements

Jusqu’à maintenant, nous avons étudié le cas de canaux avec effacements de paquets indépendants.

Néanmoins, il y a une autre approche importante à étudier, basée sur l’effet de la corrélation entre

les PECs où les performances en sécurité varient selon le coefficient de corrélation. Ceci nous per-

met d’analyser le niveau de sécurité selon le coefficient de corrélation. Dans de nombreux cas, une

amélioration du niveau de sécurité peut encore être obtenue même si l’espion a un meilleur canal que

le récepteur légitime. En fait, la corrélation ne peut pas réduire l’espérance du nombre de degrés de

liberté E[D] à zéro si la qualité du canal du récepteur légitime est strictement supérieure à celle de

l’espion. Nous analysons l’amélioration de la sécurité pour les canaux corrélés, en abordant les points

suivants [15] :

– Analyse de la sécurité : L’analyse de sécurité repose sur la comparaison entre l’approche par

effacements indépendants et l’approche par effacements corrélés, en analysant les degrés de

liberté dans les observations de l’espion.

– Plage des coefficients de corrélation : l’analyse de sécurité est effectuée en fonction du coeffi-

cient de corrélation. La plage de valeurs considérée des coefficients de corrélation est donné en

fonction des paires de probabilités d’effacements (δ , ε) des canaux désirés et sous écoute Qm,

Qw. Dans ce cas, l’analyse de sécurité est effectuée en fonction du coefficient de corrélation.

69

Page 90: La cryptographie du point de vue de la théorie de l'information

– Amélioration de la sécurité : L’amélioration de la sécurité demeure toujours possible, même

dans les conditions où un espion possède un meilleur canal que celui de récepteur légitime et

lorsque les effacements sont corrélés. Cela ne signifie pas cependant que la corrélation réduit

E[D] à zéro dans le cas où un récepteur légitime possède un meilleur canal que celui de l’espion.

Cela suggère seulement une possible amélioration de la sécurité dans tous les cas d’écoute.

5.5.1 Coefficient de corrélation de Pearson

Qm et Qw représentent ici deux canaux à effacements de paquets, sans mémoire et corrélés avec le

coefficient de corrélation ρ défini en fonction de (δ , ε). On suppose que Em et Ew sont deux variables

aléatoires distribuées selon la loi de Bernoulli, prenant des valeurs sur l’ensemble 0, 1, où "1"

signifie l’effacement d’un paquet et "0" signifie la réception d’un paquet sans erreur, de telle sorte

les probabilités d’effacement dans les deux canaux que Pr(Em = 1) = δ et Pr(Ew = 1) = ε . Comme

décrit dans [42] et [15], on définit la probabilité de pi j = Pr(Em = i, Ew = j). Ainsi, le coefficient de

corrélation de Pearson [15], entre Em et Ew est donné par

ρ =cov(Em,Ew)√

var(Em)var(Ew)

=E [EmEw]−E [Em]E [Ew]√(

E [E2m]−E [Em]

2)(

E [E2w]−E [Ew]

2)

=E [EmEw]−δε√δ (1−δ )ε(1− ε)

=p11−δε√

δε (1−δ )(1− ε)

(5.19)

Cela dit, les plages de valeurs ou limites des coefficients de corrélation sont appliquées en fonction

de la distribution des variables aléatoires Em et Ew. Dans l’approche, δ = p11 + p10,ε = p11 + p01 et

p00 + p01 + p10 + p11 = 1. Pour pi j ≥ 0 avec i, j ∈ 0, 1 [15],

max(δ + ε−1, 0)−δε ≤ p11 ≤min(δ , ε) (5.20)

On peut aussi interpréter les limites de p11 comme des limites de ρ , selon l’équation suivante

max(δ + ε−1, 0)−δε√δε(1−δ )(1− ε)

≤ ρ ≤ min(δ , ε)−δε√δε(1−δ )(1− ε)

(5.21)

À titre d’exemple, soient les valeurs de δ = 0.3 et ε = 0.15. Dans ce cas, les limites sont −0.275 ≤ρ ≤ 0.642.

Lemme 8 [15] : La probabilité Pr (Ω) que Eve obtienne un seul paquet transmis sans erreur, dans le

cas où les effacements sont corrélés avec un coefficient de corrélation ρ , est égale à [15] :

Pr (Ω) =1− ε

1− εδ −ρ√

δε (1−δ )(1− ε)(5.22)

Il est clair que la probabilité Pr(Ω) dans l’équation (5.26) est réduite, dans le cas où les effacements

sont indépendants, c’est-à-dire ρ = 0, à Pr (Ω) = 1−ε

1−εδ.

70

Page 91: La cryptographie du point de vue de la théorie de l'information

5.5.2 Sécurité aux limites de corrélation

Les résultats de simulations démontrent l’influence de coefficient de corrélation sur la variable aléa-

toire D. Nous étudions ici le cas où le coefficient de corrélation prend des valeurs entre les limites

indiquées dans (5.21). Supposons que la limite inférieure ρ = max(δ+ε−1, 0)−δε√δε(1−δ )(1−ε)

comme en (5.21) [15].

Ensuite,

Pr(Ω) =1− ε

1−max(δ + ε−1, 0)(5.23)

Donc, si la valeur de (δ +ε > 1), la fonction max(δ +ε−1,0) égale δ +ε−1, et si la valeur (δ +ε ≤1), la fonction max(δ + ε − 1, 0) égale 0. Par la substitution dans l’équation (5.23), les valeurs de

probabilité de Pr(Ω) sont définies selon les valeurs de (δ , ε) comme suit :

Pr(Ω) =

1− ε

1− (δ + ε−1)si

1− ε

1−0sinon.

δ + ε > 1

Pr(Ω) =

1− ε

2−δ − εsi

1− ε sinon.

δ + ε > 1(5.24)

Si δ +ε > 1, cela signifie que Pr(Ω)> 1−ε , et lorsque δ +ε ≤ 1, Pr(Ω) = 1−ε où le coefficient de

corrélation prend des valeurs négatives. Ainsi, il est possible de minimiser la probabilité de récupérer

les paquets pour un espion, de telle sorte que l’espion a une seule chance pour intercepter chaque

paquet, malgré l’existence d’un canal de retour pour la retransmission des paquets. Cela signifie que

cette corrélation minimale peut empêcher l’espion d’obtenir les paquets après la première transmission

avec probabilité approchant "1" [15]. D’ailleurs, la limite supérieure ρ = min(δ , ε)−δε√δε(1−δ )(1−ε)

de telle sorte

que :

Pr(Ω) =1− ε

1−min(δ , ε)(5.25)

Dans ce cas, lorsque l’espion a un canal de meilleure qualité que le récepteur légitime, c’est-à-dire

lorsque δ ≥ ε , la corrélation dans la limite supérieure est presque parfaite de telle sorte que l’espion

récupère chaque paquet parfaitement sans erreur. Néanmoins, si Bob a un avantage au niveau du canal

par rapport Eve, δ < ε , alors la probabilité Pr(Ω) = 1−ε

1−δ< 1. Par conséquent, même la corrélation

maximale ne peut pas réduire E[D] à zéro.

Comme E[D] croît avec le nombre de bits d’information k, ceci indique que nous pouvons encore

augmenter le nombre de degrés de liberté, en moyenne, en augmentant la dimension de l’encodeur.

5.6 Étude de cas et simulation des canaux indépendants aveceffacements

Dans cette section nous présentons les résultats de simulation afin de valider les expressions de la

section 5.14. Les courbes théoriques ont été reproduites à partir des expressions par [14] pour les

71

Page 92: La cryptographie du point de vue de la théorie de l'information

canaux avec effacements indépendants. Nous avons aussi effectué une série de simulation Monte

Carlo pour montrer l’évaluation de la probabilité Pr(D ≥ β ) où le nombre de degrés de liberté soit

supérieur à une valeur de seuil D et les comparer avec les valeurs des expressions théoriques.

Harrison et al. [14] ont démontré que la probabilité Pr (Ω) que Eve obtienne un seul paquet transmis

sans erreur, dans le scénario du canal sous écoute avec retour où les effacements sont indépendants,

est donnée par :

Pr (Ω) =1− ε

1− εδ(5.26)

Le niveau de sécurité obtenu, basé sur la notion de degré de liberté D, est dérivé de l’expression de

probabilité Pr(Ω) (5.26) afin de calculer la probabilité Pr(D ≥ β ) qu’un espion ait un nombre de

degrés de liberté D≥ β (5.14).

Nos simulations reposent sur l’évaluation de la valeur de probabilité de sécurité Pr(D ≥ β ) pour le

cas d’un seul récepteur légitime et d’un seul espion. Nous reproduisons les courbes théorique selon

les expressions théoriques définies dans [14] et plusieurs simulations ont été effectuées selon les cas

suivants : (n = 200, R = 1/2, β = 1, α = 1, η = 100), (n = 200, R = 1/2, β = 50, α = 1, η = 100),

(n= 10000, R= 1/2, β = 1,α = 1, η = 5000) et (n= 10000, R= 1/2, β = 50,α = 1, η = 5000). Les

résultats présentent dans les figures 5.8, 5.9, 5.10 et 5.11 respectivement. Ces derniers montrent les

valeurs théoriques de la probabilité de sécurité D ≥ β selon l’équation (5.14), ainsi que les résultats

de simulation.

0

0.5

1

0

0.5

10

0.2

0.4

0.6

0.8

1

δ

Courbe de simulation: Pr(D >= 1) avec α=1 et η = 100

ε0

0.5

1

0

0.5

10

0.2

0.4

0.6

0.8

1

δ

Courbe théorique: Pr(D>= 1) avec α= 1 et η= 100

ε

FIGURE 5.8: Courbe théorique [14] et résultat des simulations : probabilité que le nombre de degrésde liberté soit supérieur à une valeur de seuil D avec β = 1, α = 1, η = 100.

Nous voyons qu’il y’a une similarité entre les courbes théoriques et les courbes de simulatiosn. La

figure 5.8 montre que la valeur de α n’a presqu’aucune influence sur l’évaluation (5.14), pour β = 1

pour les régions de "fléchissement" de Pr(D≥ β ) en fonction de la paire de probabilités d’effacements

(δ , ε) par les canaux légitime (Bob) et sous écoute (Eve). Les ensembles d’arrêt se produisent lorsque

le décodeur MP opère avec des colonnes linéairement dépendantes HK où (K désigne l’ensemble de

72

Page 93: La cryptographie du point de vue de la théorie de l'information

0

0.5

1

0

0.5

10

0.2

0.4

0.6

0.8

1

δ

Courbe de simulation: Pr(D >= 50) avec α=1 et η = 100

ε

0

0.5

1

0

0.5

10

0.2

0.4

0.6

0.8

1

δ

Courbe théorique: Pr(D>= 50) avec α= 1 et η= 100

ε

FIGURE 5.9: Courbe théorique et résultat des simulations : probabilité que le nombre de degrés deliberté soit supérieur à une valeur de seuil D avec β = 50, α = 1, η = 100.

0

0.5

1

0

0.5

10

0.2

0.4

0.6

0.8

1

δ

Courbe de simulation: Pr(D >= 1) avec α=1 et η = 5000

ε0

0.5

1

0

0.5

10

0.2

0.4

0.6

0.8

1

δ

Courbe théorique: Pr(D>= 1) avec α= 1 et η= 5000

ε

FIGURE 5.10: Courbe théorique et résultat des simulations : probabilité que le nombre de degrés deliberté soit supérieur à une valeur de seuil D avec β = 1, α = 1, η = 5000.

73

Page 94: La cryptographie du point de vue de la théorie de l'information

0

0.5

1

0

0.5

10

0.2

0.4

0.6

0.8

1

δ

Courbe de simulation: Pr(D >= 50) avec α=1 et η = 5000

ε

0

0.5

1

0

0.5

10

0.2

0.4

0.6

0.8

1

δ

Courbe théorique: Pr(D>= 50) avec α= 1 et η= 5000

ε

FIGURE 5.11: Courbe théorique [14] et résultat des simulations : probabilité que le nombre de degrésde liberté soit supérieur à une valeur de seuil D avec β = 50, α = 1, η = 5000.

bits effacés dans le mot de code récu). En outre, HK est défini par les matrices formées par les colonnes

de H indexées par K avec une probabilité proche de "1" pour une valeur de η → ∞. Le résultats de

lemmes 4 et 5 de Harrison et al. [14], indiquent que :

Pr (D≥ 1) = 1−(

1− ε

1− εδ

(5.27)

La probabilité qu’un espion puisse avoir plus d’un paquet effacé, Pr(D≥ 1), converge vers "1" quand

le nombre de paquets η devient grand. Il en est de même pour toutes les valeurs de probabilité d’effa-

cement des paires, où (δ = 1, ε) ou (δ , ε = 0). Il est clair, à partir du théorème 1 de Harrison et al. [14],

que si |R|= n− k, alors η = npi = k pour α = 1. Donc, la variance de la valeur η est proportionnelle

à la valeur de k. Il en est de même pour la longueur du mot de code non poinçonné n et la longueur du

mot code poinçonné npi . La probabilité Pr(D≥ 1) tend vers "1" quand k tend vers l’infini.

La longueur de code LDPC est fixée ici à n = 10000. La figure 5.10, indique pour β = 1, α = 1, que

la probabilité Pr(D ≥ 1) est approximativement égale "1", pour η ≈ 5000 avec toutes les paires de

probabilités d’effacements (δ , ε).

Considérons maintenant une valeur de β plus grande que "1". Ici l’espion n’a qu’un seul paquet ef-

facé : ceci ne pose pas de difficulté pour deviner le message, car un seul paquet peut prendre "1" ou

"0" avec une probabilité égale. Les figures 5.9-5.11 montrent les résultats pour β = 50, avec η = 100

et η = 5000 respectivement : il est clair qu’il y a un seuil où les paires (δ ,ε) dans la région du plateau

où D ≥ β avec une probabilité proche de "1", tandis que les paires à l’extérieur du région D ≥ β ont

une probabilité presque nulle. En raison de l’importance de la coupure de la courbe, le seuil peut être

approché en fixant Pr(D≥ β ) = 0.5 dans (5.14) en fonction de δ et de ε . Cette technique fournit une

fonction de seuil unique pour chaque triplet (β , α, η) [14].

74

Page 95: La cryptographie du point de vue de la théorie de l'information

On peut déduire l’espérance de la variable aléatoire D suivant la théorème 1 :

E [D] =(1−Pr(Ω))n

=

(1−(

1− ε

1− εδ

))n

=

((1− εδ )− (1− ε)

1− εδ

)n

=

(ε− εδ

1− εδ

)n

=ε(1−δ )

1− εδn

(5.28)

Cette fonction montre que l’augmentation de la dimension de l’encodeur, augmente la valeur du

nombre de degrés de liberté D, à cause de la relation entre D et k quand |R| = n− k. Notez que

le choix de α = 1 assure la valeur de η la plus grande possible.

5.7 Étude de cas et simulation des canaux corrélés avec effacements

Dans cette section, on s’interesse aux canaux corrélés avec effacements. Les courbes théoriques ont

été reproduites à partir des expressions dans la section 5.22 pour les canaux avec effacements corrélés.

Nous avons aussi effectué une série de simulation pour tracer les courbes de probabilité de sécurité où

le nombre de degrés de liberté soit supérieur à une valeur de seuil D et les comparer avec les valeurs

des expressions théoriques.

Les figures 5.12 et 5.13 montrent les effets de la corrélation sur la probabilité de sécurité Pr(D ≥β ) et donnent une comparaison entre les valeurs du probabilité théoriques et les valeurs probabilité

expérimentales. Nous avons choisi un code LDPC de taux 1/2, avec modèle de poinçonnage de taille

maximale |R| pour calculer les courbes théoriques selon l’equation (5.22) et obtenir par simulation

(expérimentales) selon les valeurs de β , α et η où (n = 200, R = 1/2, β = 1, α = 1, η = 100),

(n = 10000, R = 1/2, β = 50, α = 1, η = 5000), représentées aux figures 5.12 et 5.13 respectivement.

Pour simplifier les calculs, le choix de α = 1 n’a aucune influence sur l’évaluation de (5.14), ce qui

donne η = npi . Pour faire ces simulations, nous avons fixé la valeur de δ = 0.5 et tracé les courbes

pour différentes valeurs de ε en respectant les limites de ρ indiquées à l’équation (5.21).

Nous voyons qu’il y’a une grande similarité entre les courbes théoriques et courbes établies à l’aide de

simulations. Dans la suite, nous donnons un exemple pour α 6= 1 au α = 4, nous avons choisi un code

de longueur n = 10000, npi = 5000, et de nombre de paquets η = npi/α = 5000/4 = 1250. La figure

5.14 montre l’évaluation de la probabilité Pr(D ≥ β ) pour les paramètres (n = 10000, R = 1/2, β =

50, α = 4, η = 1250).

Les résultats de simulation indiquent qu’il y a un seuil de corrélation, ρth, pour la probabilité de

sécurité Pr(D≥ β ). Dans le cas où ρ < ρth, la probabilité Pr(D≥ β )≈ 1. Et, pour ρ > ρth, Pr(D≥β ) décroit rapidement et devient essentiellement nul. Les deux figures montrent que le niveau de

sécurité change selon l’augmentation npi , et aussi de ρ . La principale différence est l’importance du

75

Page 96: La cryptographie du point de vue de la théorie de l'information

−1 −0.5 0 0.5 110

−2

10−1

100

ρ

Pr(

D>

=1)

Courbe théorique: Prob(nb de paquets effacés de Eve >=1)

ε=0.01

ε=0.05

ε=0.1

ε=0.25

ε=0.5

ε=0.51

−1 −0.5 0 0.5 110

−2

10−1

100

ρ

Pr(

D>

=1)

Courbe de simulation: Prob(nb de paquets effacés de Eve >=1)

ε=0.01

ε=0.05

ε=0.1

ε=0.25

ε=0.5

ε=0.51

FIGURE 5.12: Courbe théorique [15] et résultat des simulations : Pr(D ≥ 1) lorsque le nombre depaquets η = 100, α = 1 et la probabilité d’effacement δ = 0.5.

−1 −0.5 0 0.5 110

−2

10−1

100

ρ

Pr(

D>

=50

)

Courbe théorique: Prob(nb de paquets effacés de Eve >=50)

ε=0.01

ε=0.05

ε=0.1

ε=0.25

ε=0.5

ε=0.51

−1 −0.5 0 0.5 110

−2

10−1

100

ρ

Pr(

D>

=50

)

Courbe de simulation: Prob(nb de paquets effacés de Eve >=50)

ε=0.01

ε=0.05

ε=0.1ε=0.25

ε=0.5

ε=0.51

FIGURE 5.13: Courbe théorique [15] et résultat des simulations : Pr(D ≥ 50) lorsque le nombre depaquets η = 5000, α = 1 et la probabilité d’effacement δ = 0.5.

76

Page 97: La cryptographie du point de vue de la théorie de l'information

−1 −0.5 0 0.5 110

−2

10−1

100

ρ

Pr(

D>

=50

)

Courbe théorique: Prob(nb de paquets effacés de Eve >=50)

ε=0.01

ε=0.05

ε=0.1

ε=0.25

ε=0.5

ε=0.51

−1 −0.5 0 0.5 110

−2

10−1

100

ρP

r(D

>=

50)

Courbe de simulation: Prob(nb de paquets effacés de Eve >=50)

ε=0.01

ε=0.05

ε=0.1ε=0.25

ε=0.5

ε=0.51

FIGURE 5.14: Courbe théorique [15] et résultat des simulations : Pr(D ≥ 50) lorsque le nombre depaquets η = 1250, α = 4 et la probabilité d’effacement δ = 0.5.

fléchissement dans les courbes, ce qui indique que le seuil est mieux défini pour ρ plus grand. En

outre, on peut obtenir plus de degrés de liberté avec une plus grande longueur de bloc, même pour des

coefficients de corrélation plus élevés parce qu’il y a plusieurs paquets qui pourraient être perdus par

l’espion. Par exemple, à la figure 5.13, lorsque ε = 0.51, la probabilité Pr(D ≥ 50) ≈ 1, ∀ρ . Il n’y a

pas d’effet équivalent à la figure 5.12 avec des longueurs de bloc plus faibles.

5.8 Amélioration de la sécurité cryptographique

Nous avons soutenu que l’opération de décryptage fournit un taux d’erreur attendu d’environ 0.5 à la

sortie de message chiffré quand une estimation incorrecte est effectuée sur les bits associés aux degrés

de liberté. Ici nous discutons de résultats de simulation supplémentaires qui vérifient cet argument.

Nous définissons explicitement p =(p1, p2, . . . , pL) comme l’ensemble de mots de code poinçonnés

obtenus par Eve, où pi =(

pi1 , pi

2, . . . , pin

), et b =

(b1, b2

, . . . , bL)

l’ensemble des mots de code, où

bi=(bi

1 , bi2, . . . , bi

n

). Enfin, on définit la structure de bloc implicite de la sortie du décodeur d’Eve

comme étant m =(m1, m2, . . . , mL) où mi =

(mi

1 , mi2, . . . , mi

k

). Chaque bit effacé pi donne un degré

de liberté en bi, et la récupération complète de bi

exige que D bits de pi doivent être estimés correc-

tement. Si une hypothèse de décision est incorrecte, alors l’opération de décodage donnera un mot de

code valide, et donc, il y aura au moins autant d’erreurs dans bique la distance minimale du code

77

Page 98: La cryptographie du point de vue de la théorie de l'information

LDPC, c’est-à-dire, la distance de Hamming dH minimale entre les mots de code. Le processus de

décryptage dans (5.8) "amplifie" toute erreur de bià un taux d’erreur sur les bits autour de 0.5 à mi.

Par conséquent, étant donné que toutes les suppositions sont également susceptibles, une attaque par

force brute sur les bits D doit être accomplie pour obtenir chaque mi [5].

Les simulations de transmission entre l’encodeur et le décodeur indiquent que le taux d’erreur binaire

attendu de M est de 0.5 pour une hypothèse incorrecte de décision de la part de Eve. Les simulations

ont été réalisées en utilisant un code LDPC irrégulier ayant un taux de code 1/2, un poids de nœuds de

variables selon la distribution λ (x) = 0.32660x+0.11960x2 +0.18393x3 +0.36988x4 et un poids de

nœuds de parité selon la distribution de degré ρ(x) = 0.78555x5+0.21445x6 avec n= 1000 et k = 500

[14]. Le modèle de poinçonnage utilisé est tel que |R| ≥ 498 bits. La matrice S a été formée de façon

aléatoire en fixant à peu près la moitié des entrées k2 égales à "1" jusqu’à ce qu’une telle matrice soit

inversible en utilisant la décomposition LU en GF(2) [14], [6].

Soit γ le nombre de bits dans l’observation d’Eve qui sont incorrects. Nous présentons des résultats

de simulation pour γ = 1, 2, 3, 4, 5, 10, 15, 20, 25, 30, 40, 50, 60, 70, 80, 90, 100, 200, 300 et 400 à la

figure 5.15. La simulation se déroule selon l’approche de Monte Carlo avec un nombre d’expériences

MC = 300 pour chaque valeur de γ et pour le décodage, on utilise l’algorithme MP. Tous les tests ont

produit des taux d’erreur entre 0.414 et 0.578 pour M, tandis que la moyenne donne un taux de 0.5002

bit d’erreur.

100

101

102

103

0.4

0.42

0.44

0.46

0.48

0.5

0.52

0.54

0.56

0.58

0.6

Tau

x d’

erre

ur d

ans

M

δ

Propagation des erreurs d’estimationdes bits des messages

FIGURE 5.15: Taux d’erreurs simulés dans M cryptogrammes décodés pour γ erreurs d’estimation desvaleurs de bits pour D degrés de liberté dans les mots de code reçus par Eve.

Ces résultats impliquent que si moins de degrés de liberté D sont correctement estimés pour chaque

mot de code, Eve serait forcée d’attaquer la couche cryptographique de ce système avec un taux

d’erreur binaire moyen de 0.5 dans m. Nous pouvons certainement nous attendre à ce qu’une telle

78

Page 99: La cryptographie du point de vue de la théorie de l'information

attaque échoue pour des attaques par corrélation rapide sur les chiffrements par flux [5]. Cependant,

l’idée que toute attaque sur un système de chiffrement pourrait absorber ces taux d’erreur et encore

réussir est très improbable. Considérons une attaque qui ne nécessite qu’un seul bloc de message

chiffré. Nous pouvons donc garantir l’échec de l’attaque seulement si chaque bloc dans m est incorrect.

De même, une attaque peut échouer si un seul de L blocs de M est incorrect. Ces deux extrêmes

fournissent des bornes pour l’amélioration de la sécurité fournie par la conception de codage en termes

de degrés de liberté D.

5.9 Conclusion

Dans ce chapitre, nous avons présenté, analysé et validé un système de codage au niveau de la couche

physique qui permet des améliorations de sécurité de chiffrement en utilisant des techniques de codage

de canal avec canal de retour de type ARQ. Les exigences de conception sont plus élevées parce

que le système fonctionne pour presque toute combinaison de paramètres dans le canal sous écoute

d’effacement de paquets. L’analyse de la sécurité révèle que ce système de codage engendre des

degrés de liberté pour l’attaquant Eve. L’attaquant n’ayant aucune information sur les bits associés à

ces degrés de liberté, une attaque par force brute sur ces bits doit être effectuée. Le système propage

les erreurs à un taux d’erreur binaire prévu d’environ 0.5 dans le texte chiffré, pour toutes les erreurs

d’estimation, et donc, il en résulte une augmentation importante de la complexité calculatoire requise

pour une attaque sur le système de cryptage. Le système de cryptage prévoit l’amélioration de la

sécurité cryptographique, même lorsque l’espion a un avantage sur les récepteurs légitimes quant à

la qualité de sa liaison. On a démontré que le système de décodage peut garantir encore la sécurité,

lorsque le nombre de récepteurs légitimes ou lorsque le nombre d’attaquants collaborateurs augmente,

ou lorsque des effacements à travers le canal principal et le canal d’écoute sont corrélées.

79

Page 100: La cryptographie du point de vue de la théorie de l'information
Page 101: La cryptographie du point de vue de la théorie de l'information

Chapitre 6

Analyse de la sécurité pour les canauxgaussiens sous écoute

Dans ce chapitre, nous nous intéressons à l’étude de canaux sous écoute gaussiens. La capacité de

secret est égale à la différence entre les capacités du canal légitime et de canal espion [4]. Ainsi, afin

d’assurer la sécurité de la transmission, le canal légitime de Bob doit bénéficier d’un rapport signal

sur bruit (SNR) plus élevé que celui du canal espion de Eve. Alternativement, un canal de retour entre

Alice et Bob (également accessible à Eve) est nécessaire [43], mais ce cas n’est pas considéré dans le

présent chapitre.

Avant d’entrer dans les détails sur les méthodes proposées, nous commençons par un bref rappel sur

la notion de communication dans les canaux gaussiens.

6.1 Transmission via un canal gaussien

Rappelons que le décodage pour décision souple utilise l’information de canal dans un canal gaussien

blan additif. Après l’opération de codage, le mot de code c est transmis comme un vecteur binaire à

travers un canal gaussien. De sorte que, le vecteur c est réprésenté par un vecteur de signal d’émission

t.À titre d’illustration, on utilise une modulation binaire par changement de phase BPSK, où le signal

a =√

Ec représente le bit "1" et le signal−a représente le bit "0", l’énergie d’un bit de message Eb est

lié à Ec : Ec = R ·Eb, où Ec est l’énergie par bit codée transmis et R = k/n est le taux de codage où k

est la dimension de code et n est la longueur de mot de code. Le vecteur de signal transmis t comporte

des éléments tn = (2 ·cn−1) ·a. Ce vecteur de signal passe par un canal qui ajoute un vecteur de bruit

gaussien v, où chaque élément de v est i.i.d. de moyenne nulle et de variance σ2 = N0/2. Le vecteur

de signal analogique reçu r = t+v aura une valeur autour de "-1" et "+1".

Compte tenu des données reçues, la probabilité a posteriori de détection peut être calculée comme

81

Page 102: La cryptographie du point de vue de la théorie de l'information

[6] :

P(cn = 1|rn) =p(rn|tn = a) ·P(tn = a)

P(rn)

=p(rn|tn = a) ·P(tn = a)

p(rn|tn = a) ·P(tn = a)+ p(rn|tn =−a) ·P(tn =−a)

=p(rn|tn = a)

p(rn|tn = a)+ p(rn|tn =−a)

(6.1)

où on suppose que les bits codés sont équiprobables P(cn = 1) = P(cn = 0) = 12 . Dans (6.1), la no-

tation P(•) indique une fonction de probabilité de masse et p(•) indique une fonction de densité de

probabilité. Pour un canal gaussien on a :

p(rn|tn = a) =1√

2πσe−

12σ2 (rn−tn)2 |tn=a =

1√2πσ

e−1

2σ2 (rn−a)2(6.2)

Dans l’équation (6.1), en substituant p(rn|tn = a) par (6.2) on obtient :

P(cn = 1|rn) =1

1+ e−(

2arn/σ2) (6.3)

Nous appellerons P(cn = x|rn) la probabilité a posteriori du canal et la désignerons par pn(x) pour

alléger la notation.

6.2 Codage sécuritaire pour les canaux gaussiens

Dans le cadre défini ci-dessus, un paramètre important est l’écart de sécurité (Security gap) : il ex-

prime la différence de qualité nécessaire entre le canal légitime de Bob et le canal de l’espion Eve,

pour atteindre un niveau suffisant de sécurité de la couche physique. Un objectif important est de gar-

der l’écart de sécurité aussi faible que possible, de manière à assurer la sécurité de la couche physique,

même avec une légère dégradation de la liaison entre la source Alice et Eve par rapport à celle entre

Alice et Bob. Quelques travaux récents ont été consacrés à l’étude de la façon dont une telle réduction

peut être obtenue en exploitant les techniques de la théorie du codage.

Dans le but de minimiser l’écart de sécurité, nous étudions quelques modèles de communication re-

posant sur un canal sous écoute gaussien et sur les codes LDPC systématiques et non systématiques

pour atteindre un codage sécuritaire. Les métriques proposées se basent sur l’idée de cacher les bits

de message envoyés contre un espion par des moyens de poinçonnage, et sur l’idée de codage non

systématique par la mise en œuvre d’une matrice de brouillage. Ces méthodes permettent d’une part

d’amplifier les erreurs lors du décodage et ainsi d’augmenter le taux d’erreur autour de 50% pour un

espion dont le SNR = EbN0

est inférieur au seuil SNRE, et d’autre part de maintenir une haute fiabilité

entre les parties légitimes (Alice et Bob), à condition qu’ils aient un SNR au-dessus d’un deuxième

seuil SNRB. Afin d’atteindre cette fiabilité, les parties légitimes doivent maintenir l’écart de sécurité

Sg aussi faible que possible.

Dans [3], [2], [16], les auteurs proposent des modèles de communication qui permettent la communi-

cation sans fuite d’information pendant l’échange d’information entre les parties légitimes, basés sur

82

Page 103: La cryptographie du point de vue de la théorie de l'information

l’utilisation des codes LDPC appliqués au modèle de canal sous écoute [13], [4]. Comme illustré à la

figure 6.1, les deux parties légitimes, Alice et Bob, exploitent le canal à bruit blanc gaussien additif ,

Qm, pour établir une communication et échanger des messages entre eux. Durant la communication,

l’espion Eve, à partir de son canal, Qw, suit l’échange d’information entre Alice et Bob, dans le but

d’intercepter certaines informations pour reconstruire le message transmit. Alice veut transmettre un

message M de longueur s codé par un codeur LDPC, en un mot de code X de longueur n. Bob reçoit

Y et commence l’opération de décodage pour récupérer le message envoyé M avec une probabilité

d’erreur PeB(M 6= M) la plus faible possible. L’espion, Eve, observe la communication par son canal,

et observe Z afin d’estimer le message envoyé M, avec probabilité d’erreur PeE(M 6= M).

Dans le cas où la probabilité d’erreur de Eve PeE(M 6= M) se situe autour de 0.5, et si les erreurs

M

M

Y

Z

mQM X

wQ

AWGN

AWGN

Encodeur

Décodeur

Décodeur

Alice

Bob

Eve

FIGURE 6.1: Canal sous écoute gaussien [3],[2].

sont i.i.d.. Eve n’est pas capable d’estimer le message envoyé à partir de Z. Demijan et al. [3] ont

démontré que pour assurer la fiabilité de décodage ainsi que la sécurité de la communication, les

bornes de probabilités d’erreur devaient être PeB ≤ PeBmax ≈ 0 pour avoir la fiabilité de décodage et

que PeE ≥ PeEmin ≈ 0.5 pour assurer la sécurité de la transmission d’information.

Pour assurer la fiabilité de la communication, on cherche le rapport signal sur bruit SNR le plus faible

possible, qui définit le seuil de fiabilité (entre Alice et Bob) : SNRB,min. Ce paramètre a fait l’objet

d’une attention considérable, car il constitue l’un des principaux indicateurs de performance associés

à des codes correcteur d’erreurs. Nous considérons aussi le seuil de sécurité SNRE,max, qui indique le

rapport signal-à-bruit en dessous duquel Eve a un taux d’erreur très élevé, généralement proche de 0.5.

Écart de sécurité

L’écart de sécurité Sg, est défini, par le rapport des seuils de rapport signal à bruit requis pour assurer

la fiabilité et la confidentialité de l’information [2] :

Sg =SNRB,min[dB]/SNRE,max[dB] (linéaire)

Sg =SNRB,min[dB]−SNRE,max[dB] (logarithmique)(6.4)

Les probabilités d’erreur pour les récepteurs légitime, PeBmax et espion, PeE

min, sont dépendants de ces

rapports signal-à-bruit :

83

Page 104: La cryptographie du point de vue de la théorie de l'information

PeB

max = f (SNRB,min)

PeEmin = f (SNRE,max)

(6.5)

De nombreux travaux ont été consacrés à la recherche des techniques de transmission les mieux adap-

tées pour réduire l’écart Sg en matière de sécurité. En d’autres termes, le seuil de sécurité indique

,maxESNR ,minBSNR SNR dB

B

maxPe

E

minPe

BE

R

écart de sécurité Sg

région de

fiabilité

région de

sécurité

FIGURE 6.2: Écart de sécurité Sg [3],[2].

quand un code correcteur d’erreurs échoue. Plutôt que de recherche sur les valeurs mêmes de ces deux

seuils, nous allons nous concentrer sur leur rapport SNRB,min/SNRE,max, qui définit l’écart de sécurité

(voir la figure 6.2) exprimée en dB.

Ainsi, la taille de l’écart de sécurité indique la différence minimale requise entre les SNR de Bob et

les SNR d’Eve pour une communication sécurisée et fiable. Noter que les codes correcteurs d’erreurs

classiques nécessitent de grands écarts de sécurité (> 20 dB) pour PeEmin > 0.4. L’objectif est de conce-

voir un système de codage qui présente un écart de sécurité le plus petit possible [3], [2].

6.3 Minimisation de l’écart de sécurité par le poinçonnage de codesLDPC

Dans [3], [2], les auteurs proposent l’utilisation de codes poinçonnés, en associant les bits secrets avec

bits poinçonnés. Ils considèrent des codes LDPC poinçonnés et prouvent que cette méthode, pour un

taux de secret fixe, est en mesure de garantir une réduction considérable de l’écart en matière de sécu-

rité comparativement aux codes LDPC non-poinçonnés systématique.

L’idée principale de cette méthode est de cacher les bits de message à Eve par la technique du poin-

çonnage : au lieu de transmettre des bits de message complet, on effectue le poinçonnage de quelques

84

Page 105: La cryptographie du point de vue de la théorie de l'information

bits dans le codeur selon des fractions bien déterminés. Ces bits doivent être déduits à partir des ob-

servations des bits reçus au décodeur (bits de parités). Si le canal de l’espion, Eve, a un SNR faible,

les observations de ce canal devraient être très bruitées, et par conséquent, la reconstruction des bits

poinçonnés du message devrait être difficile.

Nous utilisons un code LDPC avec un décodeur itératif basé sur l’algorithme de propagation de

croyance BP, en raison de sa puissance. Il sera démontré que la transmission des messages poin-

çonnés peut réduire considérablement les écarts de sécurité, donc, on peut l’utiliser efficacement pour

renforcer la sécurité de communication.

Pour "amplifier" le taux d’erreur de décodage (BER) d’Eve jusqu’au dessus de 0.49 [2], et pour rendre

les écarts de sécurité de l’ordre de quelques dB, la méthode de codage proposée peut être utilisée

comme une solution autonome, ou en collaboration avec des systèmes cryptographiques existants qui

opèrent sur des couches supérieures de la pile de protocole (couche d’application cryptographique).

Le choix d’un code mère est une partie importante du processus de conception. On voit que, pour

certains choix, la bonne performance des écarts de sécurité est obtenue au prix d’une augmentation

significative du seuil de fiabilité SNRB,min (par rapport à un code non poinçonné), qui résulte en une

consommation plus élevée d’énergie. Même si l’objectif principal de ce chapitre est de concevoir des

codes avec des écarts de sécurité plus petits, nous allons montrer que des mesures peuvent être prises

tout en maintenant faible l’augmentation du seuil de fiabilité.

Après l’application du poinçonnage sur les mots de code, certains de ses nœuds de variables ne sont

plus transmis. Nous représentons le poinçonnage par une fonction de distribution de poinçonnage

π(x) = ∑dvi=2 πixi−1, où πi représente la fraction des nœuds de variables de degré i qui sont poinçonnés.

La représentation de la distribution de poinçonnage sous cette forme est utile pour l’analyse asympto-

tique des codes LDPC poinçonnés. Rappelons que pi désigne la fraction de tous les bits poinçonnés,

de sorte que pi = ∑dvi=2 Λixi−1 où Λi = (λi/i)/(∑dv

i=2 λi/i) [2], [3].

Soit s la longueur d’un message, k la dimension d’un code LDPC, et n le nombre de bits transmis sur

le canal. On définit le taux de secret par Rs = s/n et le taux de codage par R = k/n. Habituellement,

pour un code correcteur d’erreurs, le nombre de bits de message s est égal à la dimension du codeur k

où s = k. Dans ce cas, Rs = R. Cependant, dans cette section, tous les messages sont transmis exclu-

sivement sur les bits poinçonnés, par conséquent, il se peut que s < k et Rs < R. Dans de tels cas, les

positions de bits non poinçonnés d’un mot de code sont indépendantes et définies de façon aléatoire,

comme représenté à la figure 6.3.

Dans ce qui suit, nous nous intéressons à la conception de codes LDPC sécurisés dans le cas asymp-

totique et nous montrons comment les distributions des bits poinçonnés peuvent être optimisées pour

réduire de manière significative l’écart de sécurité Sg. Quelques résultats pour les codes LDPC sécu-

risés à des longueurs de blocs finis sont présentés par Deminjan et al. dans [3], [2].

85

Page 106: La cryptographie du point de vue de la théorie de l'information

Code

LDPC

Générateur de

bits aléatoires

Poinçonnage

Source

Codeur sécurisé

FIGURE 6.3: Schéma du codeur proposé dans [3], [2].

6.3.1 Effet de la distribution du poinçonnage aléatoire sur le taux d’erreur

Dans cette section, nous étudions l’amélioration de la sécurité de communication par l’application

de poinçonnage aléatoire. Le principal objectif est d’évaluer le niveau de sécurité quand on utilise

la méthode de codage proposée, en analysant le taux d’erreur sur bits de messages envoyé avec le

poinçonnage et en montrant comment des codes avec petits écarts de sécurité peuvent être conçus. On

utilise l’algorithme de décodage de propagation de croyance (BP) et on applique l’analyse asympto-

tique.

L’efficacité pour cacher les bits de message par le poinçonnage aléatoire peut être démontrée avec un

exemple de code mère avec un taux de codage R = 1/2 et la paire de degrés de distribution définie

comme suit [2], [3] :

λ1(x) =0.25105x+0.30938x2 +0.00101x3 +0.43853x9

ρ1(x) =0.63676x6 +0.36324x7(6.6)

Ce code LDPC est poinçonné de manière aléatoire selon la distribution :

π(x) = 0.4x+0.4x2 +0.4x3 +0.4x9 (6.7)

On suppose que tous les bits poinçonnés correspondent aux bits de message, que la fraction globale

de poinçonnage aléatoire est p est 0.4, de telle sorte, le taux secret Rs = pi/(1− pi) = 2/3. Le code

mère non poinçonné à un taux de codage R = 1/2, alors que le code poinçonné à un taux de codage

R = k/(2k(1− pi)) = 5/6. Dans le cas où s < k pour un code poinçonné (Rs 6= R), nous devons ajouter

aléatoirement k− s = n/6 bits (dummy bits) [2].

À titre de comparaison, considérons un code LDPC non poinçonné avec Rs = R = 2/3 où s = k et la

paire de degré de distribution suivante [2], [3] :

λ2(x) =0.17599x+0.40223x2 +0.43853x9

ρ2(x) =0.61540x10 +0.38460x11(6.8)

La simulation se déroule selon l’approche de Monte Carlo avec un nombre d’expériences MC = 500.

L’algorithme de décodage BP est itératif et le choix de nombre d’itérations est fixé à 100 itérations.

86

Page 107: La cryptographie du point de vue de la théorie de l'information

Nous avons considéré les deux codes LDPC décrits par les équations (6.6) et (6.8). Ils sont conçus

avec l’algorithme de croissance progressive des arêtes (PEG) [44]. Le nombre de bits de message en-

voyés est 1576, et le nombre de bits transmis dans chaque mot de code est 2364. On fixe la probabilité

d’erreur de Bob PeBmax à 10−5. Avec un poinçonnage aléatoire, les écarts de sécurité aussi faibles que

quelques dB (environ 2.5 dB) sont réalisables pour une probabilité d’erreur de Eve PeEmin = 0.4 [2].

La performance des codes évaluée pour le poinçonnage aléatoire avec des codes de longueur 2364 est

présentée à la figure 6.4. Dès que les blocs ont des longueurs finies, le graphe de Tanner GT de codes

LDPC contient généralement des cycles.

Les taux d’erreur pour Eve sur les bits de message pour ces deux codes sont présentés à la figure 6.4.

0 1 2 3 4 5 6 7 8 9 100

0.1

0.2

0.3

0.4

0.5

0.6

BE

R E

ve

Écart de sécurité entre Bob et Eve [dB]

LDPC SystématiqueLDPC poinçonnage aléatoire avec p=0.4

FIGURE 6.4: BER de Eve contre les performances de l’écart de sécurité Sg [3], [2].

On constate que le BER d’Eve comme son SNR, diminue le seuil de fiabilité. Si les bits de message

sont poinçonnés, le BER d’Eve augmente plus rapidement quand l’écart augmente au seuil de fiabi-

lité que lorsque les messages sont transmis. Par exemple, pour une probabilité d’erreur PeEmin fixée à

0.40, 0.45 et 0.49, les écarts de sécurité Sg s’élèvent à 2.5 dB, 4.2 dB et 8 dB, respectivement [2].

En revanche, si les bits de message non poinçonnés sont transmis dans le canal, alors les écarts de

sécurité sont considérément plus grands : 15 dB, 20.2 dB et 34 dB, respectivement comme le montre

la figure 6.5. Ces résultats traduisent les avantages de la protection des bits de message par le moyen

de poinçonnage [3].

On suppose que Bob et Eve ont un connaissance parfaite sur les emplacements exacts des bits poin-

çonnés dans un mot de code. Bob fonctionne à seuil de fiabilité SNRB,min, donc son BER peut être

arbitrairement faible. De plus, le SNR de Eve est supposé être plus faible que SNRB,min. En utilisant

le poinçonnage, le BER d’Eve augmente beaucoup plus rapidement que celui de Bob lorsque l’écart

87

Page 108: La cryptographie du point de vue de la théorie de l'information

entre ces 2 derniers s’élève. Cependant sans poinçonnage le BER n’augmente pas aussi abruptement.

0 5 10 15 20 25 30 350

0.1

0.2

0.3

0.4

0.5

0.6

0.7

Écart de sécurité entre Bob et Eve [dB]

BE

R E

ve

Écart de sécurité où les bits de message sont transmises

LDPC systématique (non poinçonné)

FIGURE 6.5: Taux d’erreur par bit pour l’écouteur Eve en fonction de l’écart de sécurité Sglorsque lesbits de message sont transmis.

On conclut que les petits écarts de sécurité sont suffisants pour forcer Eve à fonctionner à des BER re-

lativement élevés même si elle utilise un décodeur MAP. Comme mentionné précédemment, certains

des nœuds variables indépendants doivent être configurés de manière aléatoire dans le codeur de Bob

lorsque Rs < R. Ainsi, nous utilisons un code LDPC avec un taux de codage R, mais les messages

sont transmis avec un taux inférieur, Rs. Par conséquent, un code non poinçonné où tous les bits de

message sont indépendants doit conduire à un seuil de fiabilité plus faible.

La figure 6.6 montre la performance simulée, en termes de probabilité d’erreur, pour les systèmes de

transmission basées sur les codes LDPC. Comme nous l’observons sur la figure, la transmission systé-

matique garantit les meilleures performances en termes de capacité de correction d’erreur. Cependant,

dans le contexte de sécurité de la couche physique, elle montre un inconvénient majeur, qui est une

probabilité significativement inférieure à 0.5, même à rapport signal à bruit SNR faible [3].

6.3.2 Optimisation de la distribution du poinçonnage

Une question à ce stade, est de savoir comment diminuer les écarts de sécurité par l’optimisation de

la distribution du poinçonnage au lieu d’utiliser le poinçonnage aléatoire. Pour obtenir une réponse, le

code mère avec la paire de degré de distribution décrit à l’équation (6.6) est poinçonné d’une manière

optimisée dans le but de minimiser l’écart de sécurité et le rendre aussi petit que possible [2], [3]. Nous

définissons les distributions de poinçonnage optimisées dans le tableau 6.1. On peut les exprimer selon

les équations de distributions de poinçonnage optimisés suivantes [2], [3] :

π1(x) = 0.1073x+0.1310x2 +0.8703x3 +0.0015x9. (6.9)

88

Page 109: La cryptographie du point de vue de la théorie de l'information

0 0.5 1 1.5 2 2.5 3 3.5 4

10−4

10−3

10−2

10−1

100

BE

R E

ve

SNR[dB]

LDPC systématique (non poinçonné)LDPC poinçonnage aléatoire avec p=0.4

FIGURE 6.6: Probabilité d’erreur pour les codes LDPC avec k = 1576 et R = 2/3, en adoptant latransmission systématique, et transmission avec poinçonnage p = 0.4.

π2(x) = 0.3105x+0.0010x2 +0.0121x3 +0.6639x9. (6.10)

π3(x) = 0.4930x+0.0004x2 +0.1170x3 +0.6400x9. (6.11)

π4(x) = 0.5519x+0.1378x2 +0.4765x3 +0.5814x9. (6.12)

Distribution πi(x) π1(x) π2(x) π3(x) π4(x)pi 0.10 0.25 0.33 0.40

Dimension de message s 236 591 780 945Taux de secret Rs 0.11 0.33 0.50 0.67

πi,2 0.1073 0.3105 0.4930 0.5519πi,3 0.1310 0.0010 0.0004 0.1378πi,4 0.8703 0.0121 0.1170 0.4765πi,10 0.0015 0.6639 0.6400 0.5814

Écart de sécurité Sg (dB) 4.346 1.086 4.034 4.386

Tableau 6.1: Distributions de poinçonnage optimisées pour la sécurité : PeEmin a été fixé à 0.49 [2], [3].

L’intérêt d’utiliser les distributions de poinçonnage optimisées pour la sécurité est plus prononcé à

des taux d’erreurs élevés, où les fractions de tous les bits poinçonnage pi sont élevés : 0.1, 0.25, 0.33,

89

Page 110: La cryptographie du point de vue de la théorie de l'information

0.40 [3]. Des gains sur poinçonnage aléatoire allant jusqu’à 0.4 dB ont été réalisées, ce qui est une

amélioration considérable à des longueurs de bloc asymptotiquement grandes. L’écart de sécurité Sg

peut être réduit au détriment d’un taux de secret faible (moins de bits poinçonnés), pour réduire le

taux de secret en deçà d’un certain point (Rs ≈ 0.43) [2], [3].

6.4 Minimisation de l’écart de sécurité par brouillage

Nous avons étudié les méthodes de brouillage pour minimiser l’écart de sécurité. Bladi et al. pro-

posent une telle méthode de brouillage [16]. Nous avons utilisé cette méthode avec codage LDPC non

systématique avec une matrice de brouillage dans le but d’augmenter le nombre des erreurs dans les

observations Z d’Eve durant le décodage. Pour fins de comparaison, nous avons examiné l’approche

basée sur le poinçonnage où tous les bits de message sont poinçonnés aléatoirement, de telle sorte

que, le nombre de bits poinçonnés égale la longueur de message.

La simulation se déroule selon l’approche de Monte Carlo avec un nombre d’expériences MC = 500

et un nombre d’itérations fixée à 50 itérations. Nous avons utilisé deux codes LDPC construits par

l’exécution de l’algorithme PEG. Les deux codes ont une matrice de parité triangulaire inférieure [6],

de manière telle qu’elle permette le codage systématique, sans la nécessité d’élimination de Gauss.

Le code choisi est décrit par (6.13) et a un taux de codage R = 2/3, où la longueur de n = 2364 et la

dimension k = 1576 avec une paire de distributions de degrés [16] :

λ3(x) =0.17599x+0.40223x2 +0.43853x9

ρ3(x) =0.61540x10 +0.38460x11(6.13)

Ce code LDPC a été utilisé pour la simulation de la transmission systématique et non systéma-

tique. Nous avons adopté une matrice de brouillage dense 1576×1576, afin d’approcher l’effet d’un

brouilleur parfait.

Le deuxième code (6.13) a le même degré de distribution que le premier code, mais sa longueur est

n = 3940 et sa dimension est k = 1576. Ce code LDPC a été utilisé pour simuler une transmission

poinçonné, par le poinçonnage de tous les bits d’information s = 1576. Ainsi, le taux de transmission

est 1576/(3940− 1576) = 2/3, le même que pour les cas sans poinçonnage [16]. Il est à noter que

le nombre de bits de message s est égal à la dimension de codeur k : dans ce cas, Rs = R. La figure

6.7 montre le résultat des simulations en terme de performance en probabilité d’erreur, pour les sys-

tèmes de transmission basé sur les codes LDPC. Nous observons que la transmission systématique

sans poinçonnage garantit les meilleures performances en termes de capacité de correction d’erreur.

Par conséquent, dans le contexte considéré de sécurité de la couche physique, elle montre un inconvé-

nient important, à savoir une probabilité d’erreur nettement plus petite que 0.5, même à un SNR faible

[16].

L’approche basée sur le poinçonnage donne de mauvaises performances du point de vue de correction

d’erreur, avec une perte de SNR d’environ 0.5 dB dans la région en cascade par rapport au codage

90

Page 111: La cryptographie du point de vue de la théorie de l'information

0 1 2 3 4 5 6 7 8 9 100

0.1

0.2

0.3

0.4

0.5

BE

R E

ve

Écart de sécurité entre Bob et Eve [dB]

LDPC systématique (non poinçonné)LDPC non−systématique (non poinçonné) LDPC poinçonnage aléatoire

FIGURE 6.7: Probabilité d’erreur par rapport à l’écart de sécurité pour les techniques considérées [16].

LDPC systématique. Toutefois, l’utilisation de poinçonnage pour transmettre un message secret est en

mesure d’assurer une meilleure probabilité d’erreur pour un SNR faible. Les deux aspects peuvent être

améliorées en adoptant des codes LDPC non systématiques sans l’application de poinçonnage basé

sur la technique de brouillage proposée. La perte de performance en ce qui concerne le code LDPC

systématique est d’environ 0.3 dB dans la région de la chute, et la probabilité d’erreur est maintenue

proche de 0.5 dans un plus grand intervalle de SNR. Ces faits reflètent l’écart de la sécurité sur le

canal sous écoute gausien [16].

6.5 Comparaison des différentes stratégies de codage sécuritaires

Afin de comparer les techniques de transmission considérés, nous avons fixé PeB = 10−5, et puis, nous

avons calculé SNRB requis afin de pouvoir estimer la probabilité d’erreur PeE de Eve en fonction de

l’écart de sécurité Sg. Les figures 6.4-6.7 représentent les courbes pour les modèles de transmission

proposée dans [3], [2], [16]. Dans la figure 6.4, l’utilisation d’un code LDPC systématique donne une

très lente convergence de PeE vers la valeur idéale de 0.5. Ainsi, cette technique nécessite un écart de

sécurité Sg très grand pour des valeurs réalistes de PeEmin (généralement supérieurs à 0.4). La raison

d’une telle convergence lente est la transmission systématique : si nous appliquons une technique

de poinçonnage, même en renonçant à toute possibilité de correction d’erreur, les performances sont

améliorées et une probabilité d’erreur pour Eve de PeE = 0.4 est atteinte pour une valeur de l’écart

d’environ 5 dB [3], [16].

Dans la figure 6.7, pour toutes les techniques avec brouillage, la condition de brouillage parfait a

91

Page 112: La cryptographie du point de vue de la théorie de l'information

été considérée (la simulation du code LDPC brouillés a été fait avec une matrice dense S−1, capable

d’atteindre le brouillage parfait). La figure montre que la situation peut encore être améliorée par

l’adoption des codes non systématiques. Si nous adapte un code non systématique, la condition PeE =

0.4 est atteinte avec un écart de sécurité de seulement 2.2 dB.

La meilleure performance est obtenue par une transmission codée non-systématique mise en œuvre par

la matrice de brouillage. Tous les codes LDPC, sous la condition d’un parfait brouillage, donnent de

très bonnes performances : PeE = 0.4 est atteint à 1.4 dB écart par les codes LDPC non systématique.

De toute évidence, les codes LDPC ont l’avantage de nous permettre de travailler à de plus petites

valeurs de rapport signal à bruit SNR [16].

6.6 Conclusion

Dans ce chapitre, nous avons présenté quelques méthodes dans le contexte de sécurité de la couche

physique. Nous avons introduit l’écart de la sécurité comme une mesure de l’efficacité pour un canal

sous écoute à bruit blanc gaussien additif.

Des résultats de simulations, on conclut que le codage systématique est inadapté à ce genre de de-

mandes, le codage systématique avec poinçonnage est capable de réduire l’écart en matière de sécu-

rité. On constate que le codage non systématique mis en œuvre avec le brouillage qui a conduit à un

meilleur écart de sécurité.

92

Page 113: La cryptographie du point de vue de la théorie de l'information

Chapitre 7

Conclusion

7.1 Rappel du contexte

Dans ce mémoire de maîtrise, nous avons étudié des stratégies de codage sécuritaire dans le but d’amé-

liorer la sécurité cryptographique au niveau de la couche l’application. Ces conceptions reposent sur

la cryptographie et sur le codage du canal, pour offrir des solutions plus complètes en sécurité et de

s’assurer qu’un espion n’est pas capable de récupérer de l’information des messages chiffrés.

7.2 Synthèse du mémoire

Pour cet objectif, au chapitre 2, nous avons débuté par une présentation des notions de bases relatives

à la théorie de l’information. Nous avons donné une vue générale sur la sécurité et la fiabilité en se

basant sur le théorème de confidentialité parfaite de Shannon. Nous avons effectué une revue de l’état

de l’art sur la sécurité calculatoire et parfaite au niveau de la couche physique.

Dans le chapitre 3, nous avons vu le principe de codage de canal et les composantes de base d’un

système de communication typique. Nous avons donné une vision relativement détaillée sur le codage

et en particulier les codes correcteurs d’erreurs LDPC. Nous avons défini les principes de fonctionne-

ment des codes LDPC et les architectures relatives aux codes LDPC. Pour le décodage itératif, nous

avons spécifié le décodage itératif sur un canal à effacement.

Par la suite, au chapitre 4, nous avons vu la description du modèle de canal de communication et en

particulier le modèle de canal de communication point à point et le modèle de canal de communica-

tion point à point avec canal de retour. Nous avons présenté les principes de la sécurité au niveau de la

couche physique surtout le modèle du canal sous écoute de Wyner. Par la suite, nous avons récapitulé

l’état de l’art des méthodes reposant sur le codage secret dans le contexte de la transmission fiable de

l’information vers les destinations légitimes, mais avec la contrainte de réduire la fuite d’information

vers les récepteurs "espions". Nous avons vu le principe de codage secret dans un canal binaire à ef-

facement sous écoute. Nous avons étudié la construction de code basée sur les codes imbriqués, en

93

Page 114: La cryptographie du point de vue de la théorie de l'information

spécifiant la méthode de codage par coset. À la fin de ce chapitre, nous avons fait une analyse compa-

rative des codes secrets entre le code présenté dans [1] et le nouveau code proposé, selon le nombre

de fuite de l’information pour chaque patrons.

Au chapitre 5, nous avons utilisé une mesure de sécurité qui repose sur les symboles manquants D

(degrés de liberté) dans les messages chiffrés observé par l’espion. Nous avons appliqué cette mesure

à un système de codage pour montrer l’amélioration de la sécurité de la cryptographie en fonction du

codage de canal. Nous avons décrit en détail le système de communication sécuritaire. Les critères

de conception ont été spécifiés pour maximiser le nombre de degrés de liberté sécuritaire D dans une

attaque lorsqu’on applique l’algorithme de décodage itératif d’échanges des messages (MP). La va-

leur attendue de D a également été montrée être égale à l’équivocation H(X |Z) dans l’encodeur. Les

résultats des simulations présentés montrent que le système de décodage permet une augmentation de

la sécurité cryptographique, même lorsque les espions ont un avantage sur les récepteurs légitimes au

niveau de la qualité du signal reçu (i.e SNRE > SNRB).

Au chapitre 6, nous avons présenté une autre mesure reposant sur l’écart de sécurité, mais cette fois,

au niveau du canal gaussien sous écoute. Le choix de la métrique de secret repose sur le taux d’erreur

(BER). Le codage proposé repose sur des codes LDPC où des bits de message sont cachés à l’atta-

quant par l’application d’une technique de poinçonnage aléatoire, ou optimisée, selon des fractions

de poinçonnage bien choisies. Il a été montré que les espions subissent un taux d’erreur proche de

0.5, même si ils utilisent un décodeur à décision souple MAP. Nous avons étudié les codes LDPC non

systématiques sur la base de brouillage. Nous avons estimé l’écart de sécurité sur le canal gaussien

sous écoute (AWGN) comme une mesure de l’efficacité pour plusieurs modèles de transmission. Nos

résultats montrent que la transmission systématique est incapable, sous certains conditions, de main-

tenir la sécurité de la liaison. Par contre l’application de codage non systématique permet de réduire

l’écart de sécurité de manière importante.

7.3 Contributions du mémoire

Le travail de recherche présente des contributions en sécurité de la couche physique et en cryptogra-

phie.

7.3.1 Validation de résultats théoriques

Notre travail repose sur la validation des résultats de certains modèles proposés récemment dans [14],

[15], [3] et [16] pour assurer la sécurité de la couche physique.

Plusieurs résultats théoriques ont été analysés en détail, vérifiés et validés à l’aide de simulations. En

effet, dans le chapitre 5, la probabilité de sécurité Pr(D ≥ β ) d’avoir un nombre donné de degrés

de liberté dans un canal sous écoute à effacements de paquets a été calculé en générant des paquets

et en comptant le nombre de paquets reçus et effacés au niveau du récepteur légitime et au niveau

de l’espion. Les statistiques obtenues correspondent bien aux résultats analytiques. Cette méthode

expérimentale se base sur une technique Monte Carlo qui simule le canal plusieurs fois. Après un

94

Page 115: La cryptographie du point de vue de la théorie de l'information

certain nombre de réalisations dans ce réseau, les statistiques s’approchent de plus en plus vers le

résultat théorique, ce qui adhère bien à la théorie des grands nombres.

7.3.2 Construction d’un nouveau code

Au chapitre 4, nous avons construit un code binaire de longueur n = 4 et de taux de codage de 1/2, la

longueur de mot de code n = 4 avec une fuite d’information minimale. Les performances de ce code

sont comparées avec le code proposé dans [1]. De façon globale, nous considérons comme un gain

supplémentaire en terme de sécurisation des communications légitimes où l’incertitude de l’espion

sur le message reçu s’élève considérablement. Notre objectif consiste à trouver un meilleur code qui

démontre l’équivocation H(m|z) =H(m).

Le code construit est de longueur 4 et permet de transmettre de façon sécuritaire (avec une quantité

minimale de fuite d’information) un message de dimension 2. Cette technique peut être la base pour

la recherche de code sécuritaire de longueur plus importante. La généralisation de cette technique

constitue une direction pour nos travaux futurs.

7.4 Suggestions de travaux futurs

Les travaux de recherche peuvent être poursuivés en matière de sécurité multi-couche, tel qu’indiqué

par les suggestions de travaux futurs suivantes :

7.4.1 Modélisation d’un système sécuritaire pour un canal gaussien blan additif àeffacement

Le modèle présenté dans [14] repose sur la notion de degrés de liberté pour un modèle du canal sous

écoute de Wyner avec l’ajout d’un canal de retour authentifié ARQ. L’idée proposée se base sur le mo-

dèle proposé dans [14], pour l’étude de la performance de la sécurité et la fiabilité de communication

par le changement du canal à effacement de paquets PEC par un canal à bruit blanc gaussien additif

à effacement. Le système utiliserait un code LDPC non-systématique, et appliquerait un poinçonnage

sur le code pour infliger à l’espion des ensembles d’arrêt pendant le décodage pour augmenter le taux

d’erreur de décodage à environ 50% dans le message chiffré observé par l’espion.

7.4.2 Modélisation d’un système sécuritaire pour un canal binaire symétrique aveceffacement BSEC

Nous proposons d’étudier un système sécuritaire reposant sur la notion de degrés de liberté [14] où les

données sont transmises via un canal binaire symétrique avec effacement BSEC. Le système utiliserait

aussi un code LDPC non-systématique mis en œuvre par la matrice de brouillage, et appliquerait un

poinçonnage sur le code pour augmenter le taux d’erreur de décodage à environ 50% dans le message

95

Page 116: La cryptographie du point de vue de la théorie de l'information

chiffré observé par l’espion.

7.4.3 Amélioration du temps de réponse

Le modèle réalisé dans [14], [5], [15] se base sur un canal de retour authentifié pour exécuter des

requêtes automatiques de répétition ARQ entre les deux parties légitimes. Dans le but d’améliorer

le temps de réponse, ce modèle permet d’étudier le changement de protocole ARQ par un protocole

hybride requête automatique de répétition (hybrid ARQ ou HARQ).

7.4.4 Calcul de l’écart de sécurité

Le code construit dans [3] vise à réduire l’écart de sécurité pour un canal avec bruit blanc additif

gaussien. Cet écart peut être étudié également pour des canaux BEC, BSC et Rayleigh. Des tech-

niques similaires utilisant le poinçonnage et l’insertion de bits virtuels sont aussi à considérer. Le

code LDPC utilisé dans [3] a été construit en utilisant la méthode de l’évolution de la densité avec

une approximation gaussienne. Pour d’autres types de canaux de nouveaux codes doivent être utilisés.

Ces codes sont également construits à l’aide de la méthode d’évolution de la densité pour chacun des

canaux en question.

7.4.5 Recherche de codes sécuritaires

Nous cherchons à construire un code de longueur n > 4, qui assure un nombre de fuite d’informations

presque nul. Ce code peut être généré par un pseudo-code ou par recherche exhaustive. Nous pouvons

aussi étudier à la complexité liée la recherche exhaustive.

96

Page 117: La cryptographie du point de vue de la théorie de l'information

Bibliographie

[1] W. K. Harrison, J. Almeida, M. R. Bloch, S. W. McLaughlin, et J. Barros, “Coding for Secrecy :

An overview of error-control coding techniques for physical-layer security ,” IEEE Signal Pro-

cessing Magazine, pp. 41–50, septembre 2013.

[2] K. Demijan, H. Jeongseok, S. W. McLaughlin, J. Barros et K. Byung-Jae, “LDPC Codes for Phy-

sical Layer Security,” Proceedings of the 28th IEEE Conference on Global Telecommunications,

no. 6, pp. 5765–5770, 2009.

[3] K. Demijan, H. Jeongseok, S. W. McLaughlin, J. Barros et K. Byung-Jae, “LDPC Codes for the

Gaussian Wiretap Channel,” IEEE Transactions on Information Forensics and Security, vol. 6,

pp. 532–540, septembre 2011.

[4] M. Bloch et J. Barros, Physical Layer Security From Information Theory to Security Enginee-

ring. Cambridge University Press, 2011.

[5] W. K. Harrison, J. Almeida, D. Klinc, S. W. McLaughlin et J. Barros, “Stopping Sets for

Physical-Layer Security,” IEEE Information Theory Workshop, pp. 1–5, août-septembre 2010.

[6] T. K. Moon, Error Correction Coding : Mathematical Methods and Algorithms. Hoboken, NJ :

John Wiley and Sons, Inc., 2005.

[7] J.-Y. Chouinard, Théorie et pratique des codes correcteurs. Québec : Notes de cours. Université

Laval, 2012.

[8] J. B. Doré, Optimisation conjointe de codes LDPC et de leurs architectures de décodage et mise

en oeuvre sur FPGA. INSA de Rennes, octobre 2007.

[9] S. Lin et D. J. Costello, Error Control Coding, Second Edition. Upper Saddle River, NJ, 2004.

[10] A. Ghaith, Méthodes pour l’estimation de canal, égalisation et codage pour le traitement itératif.

Thèse de doctorat. École Nationale Supérieur des Télécommunications, 2006.

[11] A. Ehsan, Feedback communication systems : fundamental limits and control-theoretic ap-

proach. Thèse de doctorat. Université de California, 2010.

[12] A. El Gamal et Y. H. Kim, Network Information Theory. Cambridge University Press, 2011.

97

Page 118: La cryptographie du point de vue de la théorie de l'information

[13] A. D. Wyner, “The wire-tap channel,” Bell System Technical Journal, vol. 54, pp. 1355–1387,

octobre 1975.

[14] W. K. Harrison, J. Almeida, S. W. McLaughlin, et J. Barros, “Coding for Cryptographic Security

Enhancement Using Stopping Sets,” IEEE Transactions on Information Forensics and Security,

vol. 6, pp. 575–584, septembre 2011.

[15] W. K. Harrison, J. Almeida, S. W. McLaughlin et J. Barros, “Physical-Layer Security over Corre-

lated Erasure Channels,” IEEE Communications and Information Systems Security Symposium,

août-septembre 2012.

[16] M. Baldi, M. Bianchi, et F. Chiaraluce, “Non-systematic codes for physical-layer security,” IEEE

Information Theory Workshop, pp. 1–5, août-septembre 2010.

[17] C. E. Shannon, “Communication theory of secrecy systems,” Bell System Technical Journal,

vol. 28, pp. 656–715, avril 1949.

[18] A. Poli et Li Huguet, Codes correcteurs : théorie et applications. Masson, 1989.

[19] J.-Y. Chouinard, Théorie de l’information : Notes de cours. Québec : Notes de cours. Université

Laval, 2014.

[20] T. M. Cover et J. A. Thomas, Elements of Information Theory. Hoboken, NJ : John Wiley and

Sons, Inc., 2006.

[21] P. Elias, “Coding for two noisy channels,” The 3rd London Symposium, Buttersworth’s Scientific

Publications, pp. 61–76, septembre 1955.

[22] M. Cunche, Codes AL-FEC hautes performances pour les canaux à effacements :variations

autour des codes LDPC. Université de Grenoble, 2010.

[23] Wikipedia, “Masque jetable.” Disponible en ligne : http ://fr.wikipedia.org/wiki/Masque_jetable

(page consultée le 24 décembre 2014).

[24] Wikipedia, “Pile de protocoles.” Disponible en ligne :

http ://fr.wikipedia.org/wiki/Pile_de_protocoles (page consultée le 12 mars 2013).

[25] I. Csiszar et J. Korner, “Broadcast channels with confidential messages,” IEEE Transactions on

Information Theory, vol. 24, pp. 339–348, mai 1978.

[26] R. Gallager, “Low density parity check codes,” MA : MIT Press, 1963.

[27] R. M. Tanner, “A recursive approach to low complexity codes,” IEEE Transactions on Informa-

tion Theory, vol. 2, septembre 1981.

[28] D.J.C. MacKay et R. M. Neal, “Near shannon limit performance of low density parity check

codes,” Electronics Letters, vol. 32, pp. 1645–1646, 1996.

98

Page 119: La cryptographie du point de vue de la théorie de l'information

[29] M. Luby, M. Mitzenmacher, M. A. Shokrollahi, M. Amin, D.Shokrollahi, et D. A. Spielman,

“Analysis of low density codes and improved designs using irregular graphs,” In Proc. ACM

Symposium on Theory of Computing, vol. 48, pp. 249–258, 1998.

[30] I. Adjudeanu, Codes correcteurs d’erreurs LDPC structurés. Mémoire de maîtrise. Université

Laval, 2010.

[31] Y. Kou, S. Lin et M. Fossorier, “Low Density Parity Check Codes Based on Finite Geometries :

A Redicovery and More,” IEEE Transactions on Information Theory, vol. 47, no. 6, pp. 2711–

2736, 2001.

[32] T.J. Richardson et R.L Urbanke, “Efficient Encoding of Low-Density Parity-Check Codes,”

IEEE Transactions on Information Theory, vol. 47, pp. 638–656, février 2001.

[33] C. E. Shannon, “The zero error capacity of a noisy channel,” IRE Transactions on Information

Theory, vol. 2, pp. 8–19, septembre 1956.

[34] V. Rathi, UK. Icera, R. Urbanke, M. Andersson, et M. Skoglund, “Rate-equivocation optimal

spatially coupled LDPC codes for the BEC wiretap channel,” IEEE International Symposium on

Information Theory, pp. 2393–2397, juillet 2011.

[35] Y. Jiang, A Practical Guide to Error-Control Coding Using MATLAB. ArtechHouse, 2010.

[36] W. K. Harrison et S. W. McLaughlin, “Physical-Layer Security : Combining Error

Control Coding and Cryptography,” IEEE International Conference on Communications,

vol. abs/0901.0275, pp. 1–5, juin 2009.

[37] W. Meier et O. Staffelbach, “Fast correlation attacks on certain stream ciphers,” J. Cryptology,

vol. 1, pp. 159–176, 1989.

[38] I. Hussain, Rateless Coding for OFDM-Based Wireless Communications Systems. KTH Electri-

cal Engineering, septembre 2009.

[39] C. Di, D. Proietti, I. E. Telatar, T. J. Richardson, et R. L. Urbanke, “Finite-length analysis of low-

density parity-check codes on the binary erasure channel,” IEEE Transactions on Information

Theory, vol. 48, pp. 1570–1579, juin 2002.

[40] T. K. Moon et W. C. Stirling, Mathematical Methods and Algorithms for Signal Processing.

Upper Saddle River, NJ 07458 : Prentice-Hall,Inc., 2000.

[41] R. Diestel, Graduate texts in mathematics : Graph theory, 3rd ed. Springer-Verlag, 2006.

[42] S. Zhao, D. Tuninetti, R. Ansari, et D. Schonfeld, “Multiple description coding over correlated

multipath erasure channels,” IEEE International Conference on Acoustics, Speech and Signal

Processing, vol. 48, pp. 2153 – 2156, mars,avril 2008.

[43] L. Lai, H. El Gamal, et H. V. Poor, “The Wiretap Channel With Feedback : Encryption Over the

Channel,” IEEE Transactions on Information Theory, vol. 54, no. 11, pp. 5059–5067, 2008.

99

Page 120: La cryptographie du point de vue de la théorie de l'information

[44] X. Y. Hu et E. Eleftheriou, “Progressive edge-growth tanner graphs,” in Proc. IEEE Global

Telecommunications Conference (GLOBECOM’01), vol. 50, pp. 995–1001, novembre 2001.

100