1. Trang chủ
  2. » Ngoại Ngữ

PROTECTION DE SEQUENCE D’IMAGES COMPRIMEES ET PORTABLES APPLICATION a LA VIDEO SURVEILLANCE

58 262 0

Đang tải... (xem toàn văn)

Tài liệu hạn chế xem trước, để xem đầy đủ mời bạn chọn Tải xuống

THÔNG TIN TÀI LIỆU

Thông tin cơ bản

Định dạng
Số trang 58
Dung lượng 3,19 MB

Các công cụ chuyển đổi và chỉnh sửa cho tài liệu này

Nội dung

Pour la partie d’expérimentation et sous la demande de mon responsable de stage et le projet TSAR, j’implémente des applications : une application de chiffrage sélectif appliquée aux ima

Trang 1

PROTECTION DE SEQUENCE D’IMAGES

COMPRIMEES ET PORTABLES : APPLICATION A LA VIDEO SURVEILLANCE

Réalisé par VU Duc Minh Encadré par William PUECH & Marc CHAUMONT

LIRMM, Montpellier , France

Trang 2

Table des matières

Termes 3

Table des figures 4

Résumé 5

Abstract 6

Remerciements 7

Introduction 8

1 Compression JPEG 10

1.1 Compression sans perte 10

1.2 Compression avec perte 11

1.2.1 Mode séquentiel 11

2 Cryptage sélectif 18

2.1 Approche de chiffrage sélectif de l’image 20

2.1.1 Chiffrage sélectif par plan de bits 20

2.1.2 Chiffrage sélectif avec compression JPEG 21

2.1.3 Chiffrage sélectif avec compression JPEG2000 28

3 Estimation de la distribution de coefficient 30

3.1 Quelques distributions fondamentales 30

3.2 Distribution de chaque coefficient AC 31

3.2.1 Preuves mathématiques de la distribution de coefficients AC 32

3.2.2 Algorithme pour trouver la paramètre de forme de la loi gaussienne généralisée34 4 Expériences 37

4.1 Chiffrage sélectif de l’image avec compression JPEG 38

4.2 Analyse des coefficients 44

4.2.1 Tester la distribution selon la loi normale 46

4.2.2 Tester la distribution selon la loi laplacienne 47

5 Conclusion 49

Références 50

Annexe 53

Trang 3

Termes

VLC : codage avec longueur variable

TCD : transformation cosinus discrète

EOB : fin du bloc

DPCM : modulation de code d'impulsion différentielle

pdf : fonction de densité de probabilité

Trang 4

Table des figures

Figure 1.1 : Le schéma de compression sans perte JPEG 10

Figure 1.2 : Le schéma de prédiction fondée sur les 3 voisinages 10

Figure 1.3 : Schéma de JPEG en mode séquentiel 12

Figure 1.4 : Tableau de quantification défaut 13

Figure 1.5 : Préparation des coefficients TCD pour le codage par entropie 14

Figure 1.6 : Catégories (CAT) de codage séquentiel 15

Figure 1.7 : Coefficients TCD quantifiés d'un bloc 16

Figure 2.1 : Schéma de cryptage sélectif dans la compression 19

Figure 2.2 : Image obtenue sans déchiffrage 19

Figure 2.3 : 12.5% et 25% données cryptés 21

Figure 2.4 : Chiffrage de 5 plan de bits et 7 plan de bits 21

Figure 2.5 : Zigzag séquence de JPEG 22

Figure 2.6 : Image encryptée avec algorithme de Tang 22

Figure 2.7 : Image décryptée avec la taux de compression de 60% et 20% 23

Figure 2.8 : Chiffrage sélectif des coefficients AC 24

Figure 2.9 : Cryptage sélectif en utilisant des coefficients AC 25

Figure 2.10 : Cryptage des régions locales 25

Figure 2.11 : Chiffrage sélectif de JBIG en mode progressif 26

Figure 2.12 : Chiffrage sélectif les coefficients après la quantification d’un bloc TCD 26

Figure 2.13 : Créer le vecteur binaire claire depuis des coeffients TCD 27

Figure 2.14 : Chiffrage le vecteur Huffman avec AES en mode CFB 27

Figure 2.15 : Chiffrage sélectif de JPEG2000 avec l'algorithme de Norcen 28

Figure 2.16 : Image reçue par chiffrage sélectif 10% des données 29

Figure 3.1 : Règle empiriale 30

Figure 3.2 : Une distribution de coefficients AC 32

Figure 3.3 : Distribution gaussienne généralisée 34

Figure 4.1 : Etapes de compression JPEG 37

Figure 4.2 : Chiffrage coefficients AC avec AES en mode CFB 37

Figure 4.3 : Lena avec chiffrage sélectif 39

Figure 4.4 : Bamboo avec chiffrage sélectif 40

Figure 4.5 : Autres résultats – 128 bits 41

Figure 4.6 : Chiffrage sélectif des visages 42

Figure 4.7 : Chiffrage sélectif des visages à partit d’une webcam 43

Figure 4.8 : Distribution de tous les coefficients avant le chiffrage 45

Figure 4.9 : Distribution de tous les coefficients après le chiffrage……… ……… 45

Trang 5

Résumé

Le chiffrage joue un rôle important dans la sécurité pour protéger l'information Mais il exige beaucoup de temps, des ressources de calcul donc il n'est pas approprié, par exemple, à l'application temps réel, aux dispositifs portables Et pour un certain type d'information numérique, par exemple image, vidéo , nous ne pouvons pas comprendre le contenu qui est complètement chiffrée sans le déchiffrer et nous ne pouvons pas faire une présélection d'information que nous voulons

Une solution à ce problème est le chiffrage sélectif Au lieu de chiffrer toutes les données, nous chiffrons seulement une partie des données En exploitant des structures de fichiers que nous voulons chiffrer, nous pouvons trouver sur quelles parties de données on peut faire

le chiffrage sélectif Dans mon stage, j’étudie les algorithmes de chiffrage sélectif appliquées

à l'image et mets en application un algorithme proposé par mon superviseur de stage et cette implémentation sera employée pour le projet TSAR (www.lirmm.fr/tsar/)

Mots clés : chiffrage sélectif, compression JPEG

Trang 6

Abstract

Encryption plays an important role in the security to protect the information But it demands a lot of time to process so it is not suitable for the real-time application; for the device portable And for some type of digital information, for example, image, video and sound, we can’t understand the content of information which was full encrypted without decrypt it, so it is not good for demonstration and we can’t do a pre-selection of information we want

One way to solve it is selective encryption That is we encrypt only a portion of the data By exploiting the structure of the file which we want to do selective encryption, we can find which parts we can do encryption In my stage, I review the method of selective encryption applied

to image and implement an algorithm which will be used as demo application for the project TSAR (www.lirmm.fr/tsar/)

Keywords: selective encryption, JPEG compression

Trang 7

Remerciements

Je voudrais tout d’abord remercier Monsieur William PUECH et Monsieur Marc CHAUMONT qui m’ont accueilli dans l’équipe de recherche, ICAR (Image & Interaction), du Laboratoire d‘Informatique, d’ Electronique et de Microélectronique de Montpellier (LIRMM)

Je tiens à remercier tout particulièrement William PUECH et Marc CHAUMONT pour m’avoir encadré pendant six mois Je les remercie pour leur contact chaleureux, leurs conseils et encouragements pendant mon travail

Mes remerciements les plus sincères vont également à tous les professeurs et au personnel

de l’Institut francophonie pour l’Informatique dans lequel j’ai pu apprendre les meilleurs cours pour leur soutien durant mes études à l’IFI

Je tiens à remercier Hamed Ahmadi Nejad pour son code source libre de JPEG et George Anescu pour son source code libre de cryptage AES Leurs codes sources facilitent ma programmation

Je veux exprimer mes remerciements aux collègues de l’équipe ICAR (Image et Interaction) pour leur assistance pendant mon stage Je remercie également les services administratifs à l’accomplissement des formalités nécessaires

En fin, je remerci à ma famille et à mes amis pour leur soutien et leur encouragement permanents

Trang 8

Introduction

Les réseaux constituent une méthode de communication essentielle de nos jours; plusieurs sortes d’informations se transfèrent (email, document, sons …) et le problème de sécurité apparait On peut écouter, capturer, modifier et retransmettre ces informations Le chiffrage joue donc un rôle important dans la solution d’empêcher l’utilisation sans autorisation Cependant, il faut mettre beaucoup de temps pour le chiffrage et le déchiffrage de tous les données donc ce n’est pas approprié, par exemple, pour l’application en temps réel De plus, quelques fois, selon la demande de la sécurité ou selon la structure de données, on ne doit pas toujours chiffrer toutes les données pour assurer la sécurité mais seulement une partie de ces données

A partir de ces besoins, une nouvelle direction de chiffrage – cryptage sélectif – est apparue C'est-à-dire on fait un chiffrage d’une partie sélectionnée de données au lieu de faire un chiffrage de toutes les données En exploitant la structure de données particulières et leur méthode de compression (image, document …), on peut diminuer le temps de calcul ainsi que des ressources nécessaires Son avantage permet de se déployer sur les dispositifs comme téléphone portable ou peut être appliqué à des applications temps réel, …

Dans le carde du projet TSAR (Transfert Sécurisé d'image d'Art haute Résolution), www.lirmm.fr/tsar/ , l’équipe ICAR – Image & Interaction, www.lirmm.fr/icar/, du LIRMM (Laboratoire d'Informatique, de Robotique et de Microélectronique de Montpellier) est

un des cinq partenaires qui contribuent aux études de chiffrage sélectif à ce projet Sous la direction de M Willam Puech, responsable de l’équipe ICAR, et M Marc Chaumont, je fais les études sur la compression JPEG et en suite, le chiffrage sélectif et particulièrement, l’algorithme dans ce domaine proposé par William PUECH et al [RBP06] Pour la partie d’expérimentation et sous la demande de mon responsable de stage et le projet TSAR, j’implémente des applications : une application de chiffrage sélectif appliquée aux images JPEG, une version appliquée à la détection de visage dans l’image et une application à la vidéo surveillance

Puis, je fais une étude sur la distribution de chaque coefficient AC dans une image Le coefficient AC est reçu par une transformation discrète appelé TCD, et la compression JPEG réalise la compression avec perte par traitement ces coefficients L’étude de la distribution

de chaque coefficient permet d’améliorer l’algorithme de compression, par exemple, par améliorer le tableau de quantification A partir de cette étude, en basant des outils mathématiques et le logiciel Matlab, je réalise des expérimentations sur la distribution

de tous les coefficients Le but de cette expérimentation est de tester si l’on peut utiliser une loi pour modéliser la distribution de tous les coefficients après le chiffrage

Trang 9

Le rapport se divise en 5 parties principales :

- La première partie introduit la compression JPEG L’image transférée sur le réseau subit souvent une compression, particulièrement la compression JPEG donc qu’une étude complète de cette norme de compression nous permet de bien comprendre la structure et la procédé de la compression JPEG , depuis on peut bien comprendre les algorithmes de chiffrage sélectif appliqués à ce type d’image

- La deuxième partie fait une étude du chiffrage sélectif Dans cette partie, j’étudie les algorithmes de chiffrage sélectif appliquant aux images JPEG et JPEG2000

en me basant des articles existants dans ce domaine

- La troisième partie parle de la distribution de chaque coefficient AC de la compression JPEG Dans cette partie, nous faisons attention particulièrement aux articles qui nous donne des développements mathématiques sur la distribution de chaque coefficient AC car ils nous donnent une vue plus exacte que celle des observations basées sur des cas particuliers

- La quatrième partie présente des applications implémentées en utilisant l’algorithme de William PUECH et al [RPB06] et des observations de la distribution de tous les coefficients en basant des méthodes de vérification statistique Cette partie est ma contribution principale à mon stage, ce sont des logiciels pour le projet TSAR Je propose une méthode pour le chiffrage sélectif des visages appliquant à l’image dans le domaine spatial

- La dernière partie est une conclusion de mon travail de stage Nous revenons principalement sur les méthodes de chiffrage sélectif et leur domaine de traitement et mes contributions principales dans ce stage

Trang 10

1 Compression JPEG

La norme JPEG indique deux classes de codage et de décodage, à savoir la compression avec perte et la compression sans perte La compression sans perte est basée sur une méthode prédictive utilisant des valeurs de pixels voisines, et la transformation TCD est utilisé pour le mode avec perte La norme de compression JPEG qui est la plus utilisée est

la norme de compression avec perte Et les études de cette norme de compression nous permettent de comprendre les algorithmes de chiffrage sélectif qui seront présentées dans la partie suivante Il y a quelques sources principales que j’ai utilisées pour étudier cette compression, particulièrement, le livre de Mohammed Ghanbari [M03], “Standard Codecs : Image Compression to Advanced Video Coding” En outre, le livre de David Solomon [S07], Data Compression, et le livre de la norme JPEG [CCITT] fourni par organisation W3C sont les suppléments intéressants

1.1 Compression sans perte

Figure 1.1 : Schéma de la compression sans perte JPEG

La prédiction est de type DPCM simple (différentiel pulse code modulation), ó chaque pixel

de chaque composant de couleur est codé avec une manière différent La prédiction pour un pixel X d'entrée est faite à partir des combinaisons de trois pixels voisins aux positions a, b et

c de la même image du même composant de couleur, comme représenté sur la figure suivante :

Figure 1.2 : Schéma de la prédiction fondée sur les 3 voisinages

Trang 11

La prédiction est alors soustraite de la valeur réelle du pixel à la position X, et la différence est codé en utilisant le codage par entropie (le codage Huffman ou le codage arithmetique)

1.2 Compression avec perte

En plus de la compression sans perte, JPEG définit trois modes de compression avec perte :

le mode séquentiel, le mode progressif et le mode hiérarchique, qui sont tous fondés sur la transformation en cosinus discret (TCD) pour atteindre une compression substantielle tout en produisant une image reconstructible avec haute visuelle fidélité La différence principale parmi ces modes est la manière par laquelle le coefficient TCD est transmis, pas la façon de compression

Dans cette partie, j’introduis la compression avec perte dans le mode séquentiel utilisant la compression de Huffman C’est un schéma général de compression JPEG que tous les logiciels doivent fournir

Formule 1.1 : Transformation de l’espace de couleur YUV et RGB

Après, l’image est divisée de gauche à droite et de haut en bas en blocs de 8x8 pixels sans superposition Chaque bloc est codé par TCD, et tous les 64 coefficients transformés sont quantifiés à la qualité désirée Les coefficients quantifiés sont immédiatement codés par entropie afin de minimiser le stockage de coefficients

Trang 12

Voici les formules de la transformation TCD, qui permet de passer de l’espace spatial en l’espace fréquentiel

avec

Formule 1.2 : TCD et TCD inverse

F(u,v) : coefficient TCD

Img(x,y) : valeur de pixel dans la position x, y

Le schéma suivant illustre l'algorithme de la compression JPEG en mode séquentiel Chaque échantillon de 8-bits est décalé par une soustraction 28-1 ou 128 avant d’une transformation TCD Ceci est connu en tant que décalage de niveau de DC (DC level shifting) Les 64 coefficients de TCD sont quantifiés selon la matrice de quantification qui est spécifiée à chaque application

Figure 1.3 : Schéma de JPEG en mode séquentiel

Si les éléments des tableaux de quantification de la luminance et de la chrominance sont représentés par Q(u, v), un coefficient TCD quantifié à location (u,v) est indiqué par :

Trang 13

ó F(u, v) est la valeur du coefficient transformé avant la quantification, et   implique une action d’arrondir de la division au nombre entier le plus proche Au décodeur, des coefficients quantifiés sont spécifiés par :

Figure 1.4 : Tableau de quantification défaut

Un facteur de qualité q_JPEG est normalement employé pour contrơler les éléments de la

matrice de quantification Q(u, v) La gamme des valeurs de pourcentage de q_JPEG est entre 1 et 100 Par exemple, les matrices de quantification de JPEG (Figure 1.4) sont employées pour q_JPEG = 50, pour la luminance et la chrominance, respectivement Pour d'autres facteurs de qualité, les éléments de la matrice de quantification, Q(u, v), sont multipliés par un facteur de compression , défini comme :

Formule 1.3 :Formule pour déterminer le facteur de compression

Pour la qualité de 100%, q_JPEG = 100, tous les éléments de table de quantification sont fixés à 1

Après la phase de quantification, le coefficient DC (généralement visé comme (0.0)) et les 63 coefficients AC sont codés séparément comme représenté par la figure 1.5 Les coefficients

DC sont codés en DPCM en utilisant la valeur de coefficient DC de bloc précédent, comme représenté par la figure 1.5, DIFF = DCi - DCi-1 Le but de ce traitement est d’exploiter la corrélation entre les valeurs DC des blocs adjacents et les coder plus efficacement car ils contiennent typiquement la plus grande partie d’énergie d'image Les 63 coefficients AC

Trang 14

commençant à partir du coefficient AC(1,0) sont codés par plage après un balayage de zigzag comme représenté sur la figure 1.5

Figure 1.5 : Préparation des coefficients TCD pour le codage par entropie

Le but de l'adoption d'un modèle de balayage de zigzag est de faciliter le codage par entropie en rencontrant d’abord les coefficients les plus susceptibles d’être non-nuls C'est

dû au fait que, pour la plupart des scènes naturelles, l'énergie d'image se concentre principalement dans quelques coefficients de basse fréquence

Codage par plage (Run length coding)

Le codage par entropie est accompli en deux étapes La première étape est le transfert des coefficients quantifiés TCD à un ensemble intermédiaire de symbole Dans la deuxième étape, des codes de codage par plage sont assignés à chaque symbole Pour la norme JPEG, un symbole se compose deux parties : un code de codage par plage (VLC) pour la première partie, normalement nommé le symbol-1, suivi d'une représentation binaire de l'amplitude pour la deuxième partie, symbol-2 Des tableaux Huffman pour les coefficients

DC et AC sont cités dans l’annexe

Codage de coefficients DC

Au lieu d'assigner différents code binaire de longueur variable (par exemple le code binaire

de Huffman) à chaque DIFF (la différence entre deux coefficient DC consécutifs ou DCi –

DCi-1), les valeurs de DIFF sont classées par catégorie en se basant sur la gamme de magnitude appelée CAT La figure 1.6 montre les catégories pour la gamme des amplitudes

de JPEG en mode séquentiel Puisque les valeurs de coefficient TCD sont dans la gamme -2047 à 2047, il y a 11 catégories pour les coefficients non nuls La catégorie nule n'est pas employée pour des symboles, elle est employée pour définir la fin du code du bloc (EOB)

Trang 15

Figure 1.6 : Catégories (CAT) de codage séquentiel

Le CAT après avoir été codé est ajouté avec des bits additionnels pour spécifier la valeur actuelle de DIFF (amplitude) Le CAT est symbol-1 et les bits ajoutés représentent symbol-2

Quand le DIFF est positif, les bits ajoutés sont les bits d’ordre inférieur du DIFF Quand il est négatif, les bits ajoutés sont les bits d’ordre inférieur du DIFF-1 Les bits d’ordre inférieur commencent à partir du point ó le bit de poids fort de bits ajoutés est 1 si DIFF positif et 0 si DIFF négatif Par exemple : pour DIFF = 6 = 0000 00110, les bits ajoutés commencent à partir de 1, par conséquent ils sont 110 En outre, puisque 6 est dans la gamme de 4 à 7, la valeur du CAT est 3 A partir de table de coefficients AC (tableau 2 de l’annexe), le code binaire pour CAT = 3 est 100, donc le code binaire pour DIFF = 6 est 100110, ó 100 est le code de VLC de CAT (symbol-1) et 110 est le code binaire ajouté (symbol-2)

Pour un DIFF négatif, comme DIFF = -3, d'abord, -3 est dans la gamme de -3 à -2, par conséquent, d’après la figure 1.6, CAT = 2, et son code VLC du tableau de l'annexe est 011 Pour trouver les bits ajoutés, DIFF - 1 = -4 = 1111…100, ó les plus bas ordres bits sont 00, car le bit de poids fort est 0, donc le code binaire devient 01100

Codage des coefficients AC

Pour chaque coefficient AC non - nul dans l'ordre de balayage de zigzag, symbol-1 est décrit comme un symbole bidimensionnel de (RUN, CAT), ou parfois appelé (RUN, SIZE) Pour le codage séquentiel, le CAT est la catégorie pour l'amplitude d'un coefficient non nul dans l'ordre de zigzag, et le RUN est le nombre de zéros précédant un coefficient non nul La longueur maximum de RUN est limitée à 15 Le codage de RUN qui est grand que 15 est fait par un symbole spécial (15, 0), qui a une longueur de RUN de 15 coefficients nul a suivi d'un coefficient ayant l’amplitude 0 Par conséquent, nous pouvons considérer comme symbole d’extension avec 16 coefficients nuls

Une fin de bloc (EOB) indique que le reste des coefficients du bloc dans l'ordre de balayage

de zigzag sont quantifiés à zéro Le symbole d'EOB est représenté par (RUN = 0, CAT = 0)

Trang 16

Le tableau de codage AC pour symbol-1 se compose d'un code binaire Huffman pour chaque événement composé possible Le tableau de coefficients AC (table 2 de l’annexe) montre les codes binaires pour toutes les combinaisons possibles de RUN et CAT de symbol-1 Le format du bit additionnel (symbol-2) est le même que le codage de DIFF dans des coefficients DC Pour le k-ièmecoefficient AC dans l'ordre de balayage de zigzag, ZZ(k), les bits ajoutés sont les bits d’ordre inférieur de ZZ(k) si ZZ(k) est positif, ou les bits d’ordre inférieur de ZZ(k) - 1, si ZZ(k) est négatif

Voici un exemple afin d’expliquer la manière de créer le vecteur Huffman pour faire le codage par entropie Des coefficients TCD quantifiés d'un bloc de luminance sont montrés sur la figure 1.7 Supposant que le coefficient DC dans le bloc précédent de luminance était

29, on veut trouver les codes binaires pour le codage des coefficients DC et AC

Figure 1.7 : Coefficients TCD quantifiés d'un bloc

On a DIFF = 31 - 29 = 2 D’arprès la figure 1.6, le CAT = 2 et selon le tableau de coefficients

AC Huffman, le code Huffman pour cette valeur de CAT est 011 Pour trouver les bits ajoutés, puisque DIFF = 2 > 0, et 2 = 000 0010, donc les bits ajoutés sont 10 Par conséquent, le code binaire pour coder ce coefficient DC est 01110

Codes binaires pour les coefficients AC

Le balayage commence à partir du premier coefficient AC non nul, qui a une valeur de 18 D’après la figure 1.6, la valeur de CAT pour 18 est 5, et puisqu'il n'y a aucun coefficient AC nul avant lui, puis RUN = 0 Par conséquent, symbol-1 est (0, 5) D’après le tableau 2 de l'annexe, le code binaire pour (0, 5) est 11010 Le symbol-2 est les bits d’ordre inférieur de ZZ(k) = 18 = 000 010010, qui est 10010 En conséquence, le premier code binaire AC est

1101010010

Trang 17

Le troisième coefficient AC non nul dans le balayage est -13, qui a un coefficient nul avant lui Donc, RUN = 1 et, la valeur de CAT correspondante est 4 En consultant le tableau 2 de l'annexe, le code binaire pour (RUN = 1, CAT = 4) est 111110110 Pour trouver symbol-2, ZZ(k) -1 = -13 - 1 = -14 = 111 110010 Donc, symbol-2 est 0010, et le code binaire entier est 1111101100010

Puisque 5 est le dernier coefficient AC non nul, donc le codage se termine ici et la fin du code du bloc (EOB) qui est défini comme (0, 0) est transmise En utilisant le tableau 2 de l'annexe, le code binaire est 1010

La compréhension de la compression JPEG nous permet de comprendre les algorithmes de chiffrage sélectif appliquant à ce type d’image qui seront présentés dans la partie suivante Les études de la structure l’image est une nécessité afin d’étudier les algorithmes de chiffrage sélectif

Trang 18

2 Cryptage sélectif

Il y a des applications qui demandent une pleine sécurisation, par exemple, des documents confidentiels de l’armée, des documents de gouvernements Pour la sécurité, il faut mettre beaucoup de temps pour coder et décoder ces documents

Mais il y a des scénarios ó le plein chiffrage n’est pas bien approprié, car il demande beaucoup de temps de traitement, ou à cause de la limitation de ressource de calcul, ou la demande de la sécurité n’est pas dûre Dans ce cas-là, le chiffrage sélectif est convenable

en terme de la sécurité et du temps de traitement, de ressource de traitement

Cette méthode consiste à encrypter une partie de données afin d’empêcher la pleine utilisation de données Sans avoir la clef de déchiffrage, on peut seulement obtenir la version ayant la qualité mauvaise

Dans cette partie, j’étudie les algorithmes de chiffrage sélectif existants Je présente les algorithmes existants selon le domaine de travail et la méthode de compression Il y a deux domaines de chiffrage sélectif : domaine spatial, domaine fréquentiel Le domaine fréquentiel est obtenu par une transformation discrète comme TCD

Le chiffrage sélectif peut s’appliquer avec ou non la compression Dans le cas ó il est utilisé durant une compression, on peut exploiter la structure de cette compression afin de choisir le composant pour faire le chiffrage

Trang 19

Figure 2.1 : Schéma de cryptage sélectif dans la compression

Figure 2.2 : Image obtenue sans déchiffrage

Trang 20

Voici des exigences citées dans [DB02] par Marc Van Droogenbroeck et Raphặl Benedett pour le chiffrage sélectif appliquant à l’image comprimée Pour assurer la visulisation de l’image et le taux de compression, ainsi que ne pas changer le format du fichier, il faut suivre ces règles

[Acceptation visuelle] une partie de l'information peut être vue mais l'image chiffrée devrait

sembler bruitée

[Chiffrage sélectif] le chiffrage se produit après la compression et laisse quelques parties

de données non codées,

[Débit binaire constant] le chiffrage doit préserver la taille du flux de bit

[Conformité de flux du bit] l'étape de chiffrage doit produire un flux de bit conforme au

format choisi

Les deux premières exigences s’obtiennent par le cryptage sélectif Les deux dernières exigences s’obtiennent en faisant le chiffrage durant la compression, précisément, après la quantification et on doit ne pas changer la structure du flux codé

Avec cette approche, on peut appliquer aux normes de compression avec perte comme JPEG, JPEG2000 … et pour la compression sans perte on peut exploiter d’autres approches

2.1 Approche de chiffrage sélectif de l’image

2.1.1 Chiffrage sélectif par plan de bits

Un pixel est présenté par un nombre de bits fixé, par exemple 8 bits On considère un plan

de bit comme l’ensemble de bits ayant la même position dans sa représentation binaire, par exemple, tous les troisièmes bits des pixels Dans ce schéma, on crypte des bits de chaque plan en choisissant des plans cryptés

Trang 21

Figure 2.3 : 12.5% et 25% données cryptés [PSU02]

Il y a des travaux de [PSU02] et la méthode «nạve « de [DB02] Ils proposent des techniques différentes de chiffrage sélectif par plan de bits [PSU02] font le chiffrage sur le bit de poids fort et [DB00] font le chiffrage, par exemple, sur 5 bits ou 7 bits de chaque pixel

Figure 2.4 : Chiffrage de 5 plan de bits et de 7 plan de bits [DB02]

La valeur de PSNR ici a le but de déterminer la distorsion produit par le chiffrage des bits Nous pouvons constater que si nous encryptons les bits de poids fort [PSU02], la valeur de PSNR correspondante est petite, c'est-à-dire que l’image reçue est très bruitée Par contre, dans l’algorithme de [DB02], ils n’encryptent pas le bit de poids fort, donc, nous pouvons comprendre l’image

2.1.2 Chiffrage sélectif avec compression JPEG

Dans cette partie, on va exploiter la structure de JPEG pour appliquer le chiffrage sélectif Tang [T99] propose une technique appelée la permutation zigzag qui est applicable aux vidéos et aux images JPEG Bien que leur méthode offre plus de confidentialité, elle augmente le débit global car elle casse la corrélation parmi les coefficients

Trang 22

Figure 2.5 : Séquence zigzag de JPEG

1 Générer une permutation d’un ensemble de nombres entiers de 1 à 64

2 Appliquer la procédé de « division » après la phase de quantification

3 Appliquer la permutation au bloc reçu dès l’étape 2 ; passer le résultat au codage par entropie

Comme je dis dans la partie de compression JPEG, la valeur de DC est plus grande que les autres coefficients dans un bloc, ce coefficient est donc identifiable Avec seulement la valeur de DC, on peut déterminer la figure générale de l’image La procédé de « division «

a un but de cacher l’information DC pour rendre non identifiable l’image en divisant DC (8 bits) en deux partie : b7b6b5b4 et b3b2b1b0 La nouvelle valeur de DC est b3b2b1b0 qui est petite et la nouvelle valeur du dernier coefficient AC non nul est remplacé par b7b6b5b4 Après une permutation, on ne peut pas déterminer la valeur de DC

[LSW04] suggère une méthode similaire en faisant une permutation du plan de couleur, ensuite des permutations de coefficients par régions et enfin, un chiffrage des signes de coefficients Ce qui est intéressant dans ce schéma est qu’on peut continuer à comprimer des images après le cryptage C'est-à-dire, on ne doit pas décrypter l’image pour faire une autre compression

Figure 2.6 : Image encryptée avec l’ algorithme de Tang

Trang 23

Figure 2.7 : Image décryptée avec le taux de compression de 60% et 20%

1 Permutation de plan de couleur :

Les positions des blocs de TCD dans le plan de luminance et chrominance sont mélangées

en utilisant une méthode de génération de nombre pseudo – aléatoire

2 Mélange des coefficients TCD

La confusion se réalise dans les sub-régions de coefficients pour conserver le taux de compression Ici, les coefficients sont divisés en quatre sous-sections (l1, l2, l3) : [1, l1], [l1+1,

l2], [l2+1, l3] et [l3+1, 63] Il signifie que des coefficients AC sont confondus en chaque section respectivement tout en laissant le coefficient DC inchangé L’auteur a proposé les valeurs (5, 20, 40) pour obtenir le moindre effet sur le taux de compression

sous-3 Chiffrage du signe de coefficient de TCD

Le signe est codé pour rendre plus sécurité à l’image Le taux de compression ne change pas et le temps demandé pour ce chiffrage est petit par rapport du temps de compression

Il y a deux raisons pour lesquelles on peut re-comprimer l’image après appliquer ce schéma

de chiffrage :

a Dans les étapes 1 et 2, on fait seulement la permutation, c'est-à-dire on change seulement les positions de coefficients dans chaque bloc, et non sa valeur Donc quand on fait une autre compression, après une permutation inverse, on peut retrouver l’image originale

b Dans l’étape 3, on encrypte les signes des coefficients, après une nouvelle quantification (compression), le signe ne change pas ou devient zéro (dans le cas ó la nouvelle valeur de

AC correspondante devient zéro) donc il n’affecte pas la phase de déchiffrage

Dans [DB02], Marc Van Droogenbroeck et Raphặl Benedett suggèrent une technique qui chiffre un nombre choisi de coefficients AC Ils ne chiffrent pas les coefficients DC car ils diffusent l'information importante et ils sont fortement prévisibles Le débit binaire est constant et il préserve la conformité de flux de bit, mais le procédé supporte mal le passage

à l’échelle et le procédé de compression et de chiffrage sont séparés, par conséquent il mène à l’augmentation du nombre de calcul

Trang 24

Figure 2.8 : Chiffrage sélectif des coefficients AC

Voici les images cryptées par ses algorithme : Fig 2.8.a Seulement DC non-crypté - Fig 2.8.b DC et quatre premiers AC coefficients non-cryptés On peut constater que

seulement avec le composant DC, on peut déterminer la structure de l’image Et avec quatre

premiers coefficients AC non-cryptés, l’image est bien restaurée Cependant, le chiffrage se

fait séparément de la compression, donc elle ajoute un peu de charge Des étapes

principales sont :

- Lire le flux de bit JPEG

- Construire les tableaux de Huffman spécifié dans l’image

- Extraire les coefficients de TCD

- Chiffrer les coefficients

- Remplacer dans le flux original

Dans [D04], Marc Van Droogenbroeck propose aussi un schéma de chiffrage sélectif

d’image JPEG qui utilise une même idée Il ne chiffe pas les coefficients DC , il réserve des

valeurs RUN de chaque couple (RUN,AMPLITUDE) et il chiffre seulement les bits ajoutés

(AMPLITUDE) correspondants à un nombre de coefficients AC choisi dans chaque bloc

Trang 25

Figure 2.9 : Cryptage sélectif en utilisant des coefficients AC

Figure 2.10 : Cryptage des régions locales

Il a proposé d’utiliser une « carte de sélection » pour crypter des régions sélectionnées de l’image Cependant, il faut demander un autre moyen pour détecter les locations chiffrées, donc ce n’est pas confortable, par exemple, il faut utiliser un autre fichier pour sauvegarder des locations de régions chiffrées

Dans [PU05], Roland Norcen et Andreas Uhl proposent une méthode pour JBIG , qui est principalement basée sur le nombre élevé de dépendances entre les couches de résolution

en mode progressif de JBIG Ils chiffrent seulement les couches inférieures de résolution afin

de réduire la quantité de données calculées Ils annoncent que seulement 1% - 2% de données doivent être cryptés pour sécuriser l’image

Trang 26

Figure 2.11 : Chiffrage sélectif de JBIG en mode progressif

Dans [RPB06], Puech et al proposent un schéma de chiffrage sélectif utilisant des images JPEG à partir des idées de Marc Van Droogenbroeck et Raphặl Benedett [DB02] Leur proposition permet de combiner la phase de chiffrage durant la phase de compression, donc

le taux de compression n’est pas changé Voici le diagramme général de leur méthode :

Figure 2.12 : Chiffrage sélectif des coefficients après la quantification d’un bloc TCD

Trang 27

Figure 2.13 : Créer le vecteur binaire clair à partir des coefficients TCD

Voici les étapes en détail :

1 Diviser l’image en blocs 8x8

2 Réaliser une transformation TCD dans chaque bloc, obtenir le domaine fréquentiel

3 Faire la phase de quantification

4 Créer le vecteur Huffman de chaque bloc, une séquence de {HEAD, AMPLITUDE}

5 Extraire la partie AMPLITUDE de tous les coefficients AC, sans la marque EOB, ZRL

6 Chiffrage avec l’algorithme AES en mode CFB (cipher feedback block ou mode par flot)

7 Remplacer l’AMPLITUDE avec les bits cryptés

Figure 2.14 : Chiffrage du vecteur Huffman avec AES en mode CFB

Trang 28

On peut déterminer le nombre de bits encryptés, par exemple, 8, 16, 32 …pour chaque bloc selon la demande de sécurité ou de temps de traitement, et en conséquence, on peut déterminer le nombre de bit décrypté selon chaque demande aussi

L’auteur propose de créer le texte clair en collectant dans la direction inverse des valeurs de coefficient AC, c'est-à-dire (ACn, ACn-1, …, AC1) Car la plupart de l’énergie d’un bloc se trouve dans les premiers coefficients, donc on peut trouver une vue « progressive » si on décrypte seulement une partie des bits cryptés

L’auteur propose une application de chiffrage sélectif, « détection et chiffrage des visages dans une image » Ils utilisent le modèle de peau pour détecter le visage, selon ce modèle ; il

y a des intervalles spéciales pour les valeurs de peau On considère qu’un bloc de pixel a la couleur de peau si la valeur DC de Cb ; Cr d’un bloc satisfait la formule suivante :

S Cr

Cr Cb

88

avec CbS, CrS, S étant les seuils déminent si un bloc soit visage ou non Si un bloc satisfait cette formule, on va chiffrer le composant Y correspondant

2.1.3 Chiffrage sélectif avec compression JPEG2000

Figure 2.15 : Chiffrage sélectif de JPEG2000 avec l'algorithme de Norcen

Dans [NU03], Roland Norcen et Andreas Uhl proposent une approche employant JPEG2000 Ils font un cryptage d’une certaine partie des paquets de données en utilisant

Trang 29

suffisant pour la sécurité grâce au fait que les caractéristiques importantes se trouvent au début du flux de bit de JPEG2000

Figure 2.16 : Image reçue par le chiffrage sélectif 10% des données.

Dans [DAHM06], Diaz et al proposent un schéma simple de chiffrage sélectif avec JPEG2000 et un schéma de gestion de clefs Ils chiffrent 10% de l’information depuis la marque SOD (Start of Data) Cette approche est proposée afin d’être utilisée par une application de téléphone portable

Nous présentons dans cette partie une état de l’art sur les algorithmes de chiffrage sélectif

de l’image JPEG et JPEG2000 Nous pouvons trouver qu’il n’y a pas beaucoup d’algorithmes de chiffrage sélectif Un raison est que ces algorithmes dépendent de la structure de compression qui est fixe et le travail principal n’est que la recherche sur quelles

parties nous pouvons faire un chiffrage

Dans la partie suivante, nous étudions la distribution de chaque coefficient AC de compression JPEG Comme JPEG fait la compression en traitant ces coefficients, l’étude sur

la distribution de ces coefficients nous permet de comprendre ses caractéristiques statistiques et nous donne un point de commencement pour faire une étude sur la distribution de tous les coefficients AC

Ngày đăng: 27/10/2016, 23:05

TÀI LIỆU CÙNG NGƯỜI DÙNG

TÀI LIỆU LIÊN QUAN