SlideShare une entreprise Scribd logo
1  sur  64
Centre Universitaire de Formation
et de Recherche de Nîmes
William PUECH
CRYPTAGE D’IMAGES :
robustesse à la compression
William PUECH
Centre Universitaire de Formation
et de Recherche de Nîmes
William PUECH
Contexte
• Transfert sécurisé d’images.
• Systèmes de gestion de base de données
images distribuées.
• Codage source versus codage canal.
• Applications :
– Imagerie médicale
– Sécurité routière
– Télésurveillance, …
Centre Universitaire de Formation
et de Recherche de Nîmes
William PUECH
Le problème
• Transfert sécurisé de données images
– Qualité des données transmises.
– Authentification.
– Intégrité.
– Robustesse à la compression.
 Cryptage et tatouage d’images
Centre Universitaire de Formation
et de Recherche de Nîmes
William PUECH
L’équipe
Cryptage d’images
– JC. Borie : doctorant CEM2, Cryptage d’images
médicales, M. Dumas, W. Puech.
– S. Piat : DESS Info. Images, Univ. Reims.
Tatouage et traitement d’images
– M. Hatimi, MCF 27. J. Triboulet MCF 61.
– JJ. Charre : doctorant CEM2, Détection de contours
pour le transfert d’images, G. Michaille, W. Puech.
– G. Lo Varco : doctorant CEM2, Insertion de messages
longs dans une image , M. Dumas, W. Puech.
– P. Montesinos, LGI2P, EMA.
Centre Universitaire de Formation
et de Recherche de Nîmes
William PUECH
Plan
• Codage d’informations
– Codage source
– Codage canal
– Compression d’images
• Cryptage d’images
– RSA
– Basé Vigenère
– DES et TEA
• Résultats et Analyse des méthodes.
Centre Universitaire de Formation
et de Recherche de Nîmes
William PUECH
Codage d’informations
• Codage source : transformation des données utiles (source)
afin de répondre à un problème particulier.
• Codage canal : adaptation signal / canal
Centre Universitaire de Formation
et de Recherche de Nîmes
William PUECH
Codage source
• Transformation couleur : RGB  YUV
• Changement de formats : tiff  bmp,
ppm  pgm, raw  png, …
• Compression : raw  jpg, ppm 
jpg2000, bmp  gif
• …
• Cryptage et tatouage.
Centre Universitaire de Formation
et de Recherche de Nîmes
William PUECH
• Cryptographie: transmission d’un message indéchiffrable
ex: LIS  MJT
• Stéganographie: transmission d’un message imperceptible
ex: LIS  les ingénieurs sauvages
les ingénieurs sauvages
des ingénieurs sauvages
•Tatouage : transmission d’un message imperceptible et
indélébile (Le contenant est important)
ex: LIS  le sujet inédit impose sa leçon
le sujet inédit impose sa leçon
Du cryptage au tatouage
Centre Universitaire de Formation
et de Recherche de Nîmes
William PUECH
Codage canal
– Bits : signaux sur le support.
– Bande de base : représentation directe des bits
• Ethernet : code Manchester : 0 front , 1 front .
• Affaiblissement rapide du signal, très sensible aux
bruits : réseaux locaux.
• Synchronisation des 2 bouts en rajoutant des bits.
– Synchrone : horloge transmise avec les données.
– Asynchrone : devant chaque éléments de
données : groupe de bits pour l'échantillonnage.
• 01010101 …
• Bits start dans asynchrone V24.
Centre Universitaire de Formation
et de Recherche de Nîmes
William PUECH
Codage canal
– Codage
– Code correcteur d’erreur
– Contrôle de flux
– Synchronisation
– Fenêtrage
– Multiplexage
– @ emission, @ destination
Centre Universitaire de Formation
et de Recherche de Nîmes
William PUECH
Codage canal
Codage en bande de base : substitution du signal original par un
autre signal dont le spectre de fréquence est adapté à la
communication
– Code biphase "Manchester" et "différentiel
– code de Miller, code bipolaire, code HDB3, ...
1 0 1 1 0 0 0 0 0 1 0 0 0 0 0
Binaire
Biphase
Bipolaire
HDB3
+
-
+
-
+
-
+ +
+ +
- -
- -
V
V
Centre Universitaire de Formation
et de Recherche de Nîmes
William PUECH
Théorie du Signal
– Mesure de l’information
– Capacité d’un canal
– Codage et optimisation de l’utilisation d’un canal
• Information : IA = -log2 PA bits
• Entropie : bits/symbole :
• Théorème fondamental de Shannon


m
i i
i
P
P
H 1
2
1
log
Centre Universitaire de Formation
et de Recherche de Nîmes
William PUECH
Théorie du Signal
0 255
ddp
1/256
0 255
ddp
1/100
1/200
50 149 199
150 0 255
ddp
Centre Universitaire de Formation
et de Recherche de Nîmes
William PUECH
Codage source :
compression
• Contexte : codage ou compression des images
numériques
• Pourquoi : réduction de la quantité d ’éléments
binaires représentant l ’information « image »
=> codage de source
• Finalité : archivage ou transmission
[bit]
compressée
ima.
info.
d'
Qté
[bit]
originale
ima.
info.
d'
Qté
comp.
de
Taux 
Centre Universitaire de Formation
et de Recherche de Nîmes
William PUECH
Codage source : compression
2 types de compression:
– Codage sans perte (« entropique »)
Ex. : Huffman, Lempel-Ziv, Arithmétique, …
=> taux de compression faible (1.5 à 2)
– Codage avec pertes (« irréversible ») :
Suppression des redondances (information inutile) car
• prévisible
• invisible par système visuel humain (SVH)
=> Taux de compression élevés (>10)
Centre Universitaire de Formation
et de Recherche de Nîmes
William PUECH
– image transmise en la balayant
(« Zigzag scan »)
– constat : le niveau de gris d ’un pixel dépend
souvent de celui de ses voisins
– idée : prédire X en utilisant A, B ou C
la base du codage MICD
(Modulation d ’Impulsions Codées Différentielles)
=> une phase d ’analyse de l ’image
X
A B
C
Centre Universitaire de Formation
et de Recherche de Nîmes
William PUECH
Historique
• Image fixe
– 1980 : Recommandation pour le fac similé
– 1992 : JPEG
• « Joint Photographic Expert Group »
• images couleurs et N&B (Ex : satellite, médicales, …)
• plusieurs modes (Ex : séquentiel, sans perte,
progressif, hiérarchique)
• format image < (768x576)
• débits : de 8 M bit/s à 40 M bit/s
– 2000 : JPEG 2000
(débits inférieurs, haute robustesse aux erreurs de transmission,
description basé contenu, large gamme d ’images, interface avec MPEG4, …)
Centre Universitaire de Formation
et de Recherche de Nîmes
William PUECH
Schéma général de
compression
Centre Universitaire de Formation
et de Recherche de Nîmes
William PUECH
• DCT (« Discrete Cosine Transformation »)
– Transformation Discrète en Cosinus
– changement de l ’espace de représentation :
passage du domaine spatial au domaine
fréquentiel
64 pixels 64 coefficients
Centre Universitaire de Formation
et de Recherche de Nîmes
William PUECH
• DCT (suite), définitions
– DCT
– DCT inverse




 







 









 





 
 
sinon
1
0
si
2
1
)
(
)
,
(
16
)
1
2
(
cos
16
)
1
2
(
cos
4
)
(
)
(
)
,
(
7
0
7
0




A
j
i
f
v
j
u
i
v
A
u
A
v
u
F
i j




 







 









 






 
 
sinon
1
0
si
2
1
)
(
)
,
(
16
)
1
2
(
cos
16
)
1
2
(
cos
)
(
)
(
4
1
)
,
(
ˆ
7
0
7
0




A
v
u
F
v
j
u
i
v
A
u
A
j
i
f
u v
Centre Universitaire de Formation
et de Recherche de Nîmes
William PUECH
• DCT (suite)
– une décomposition sur
64 fonctions de base
(ou sous-images de base)
bloc sous-images
Centre Universitaire de Formation
et de Recherche de Nîmes
William PUECH
• DCT (suite)
– implémentation
• des algorithmes rapides de calcul
• transformation 2D ~~> 2 x transformations 1D
Centre Universitaire de Formation
et de Recherche de Nîmes
William PUECH
Quantification
• Pourquoi : SVH moins sensible aux hautes fréq.
• Idée : moins de bits pour les coeff. relatifs à ces
fréq.
• Quantification :
• Reconstruction :
• Ex: bits
6
[binaire]
101101
[décimal]
45
)
,
( 


v
u
F
 
)
,
(
/
)
,
(
)
,
'( v
u
q
v
u
F
ent
v
u
F 
    bits
4
[binaire]
1011
[décimal]
11
11.25
ent
4
/
45
)
,
(
' 



 ent
v
u
F
)
,
(
)
,
'(
)
,
''( v
u
q
v
u
F
v
u
F 

4
)
,
( 
v
u
q
v)
F(u,
v)
(u,
F"
[décimal]
44
4
11
)
,
(
'
' 




v
u
F
Une erreur de quantification existe
Centre Universitaire de Formation
et de Recherche de Nîmes
William PUECH
• Quantification uniforme : tous les q(u,v) égaux
• Quantification non-uniforme : tables des q(u,v)
– q(u,v) grand => quantification grossière
– tables peuvent-être transmises dans
l ’en-tête (« header ») de l ’image
pour la Luminance pour les Chrominances
Vers les htes. Fréq.
Centre Universitaire de Formation
et de Recherche de Nîmes
William PUECH
Balayage en zig-zag (du bloc)
• Intérêt : former un vecteur
où les coeff.
relatifs aux basses fréq.
sont regroupés
Coeff. AC
des
Basses fréq.
Coeff. DC
Centre Universitaire de Formation
et de Recherche de Nîmes
William PUECH
Codage DPCM des Coeff. DC
• Méthode :
– regroupement
des coeff. DC
– balayage sous-image :
gche->dte, haut->bas
– X : valeur à prédire
P(X) : prédiction de X
Ex. P(X)=A (cas le plus simple,
mode de base)
P(X)=(A+C)/2 …
– transmission de X-P(X)
• Pourquoi : niveau de gris des pixels voisins sont
souvent proches
Centre Universitaire de Formation
et de Recherche de Nîmes
William PUECH
Codage des coefficients AC
• Constat : apparition de longues plages de 0
après quantification
• Méthode : codage de ces plages («Run Length
Coding»)
– un ensemble de paires (Coeff., Nb. de 0)
– fin d ’un bloc : paire (0, 0) :
Centre Universitaire de Formation
et de Recherche de Nîmes
William PUECH
Codage entropique
• Principe :
– codeur « classique » :
un alphabet de mots de code de même longueur
(Ex. pour 8 symboles : 000, 001, 010, 011, 100, 101, 110, 111)
– codeur entropique :
• un alphabet de mots de code de longueurs différentes
(Ex. 00, 01, 10, 110, 010, 111, …)
• attribuer aux symboles les plus probables, les mots de
code les plus courts
• effet : réduction du coût moyen (débit [en bit])
de la transmission
Centre Universitaire de Formation
et de Recherche de Nîmes
William PUECH
Codage entropique avec JPEG
• Coeff. DC :
– mise en correspondance :
valeurs coeff. /
taille du mot représentant [bit]
– Ex. : si DC=-9 => 4 bits
– transmission de la paire :
(Taille, Valeur)
 Coeff. AC :
codage de Huffman des paires (Coeff., Nb. de 0)
 Table de Huffman (cad l ’alphabet des mots de code ) :
pré-existante ou
construite (transmission dans l ’entête)
Centre Universitaire de Formation
et de Recherche de Nîmes
William PUECH
Les 4 modes d ’utilisation de JPEG
• Mode séquentiel :
– le mode de base
– chaque plan est codé directement par un balayage
(gche->dt, haut->bas)
• Mode sans perte :
– un codage sans perte
– utilisation d ’un prédicteur pour coder les coefficients
– taux de compression de 1,5 à 2
Centre Universitaire de Formation
et de Recherche de Nîmes
William PUECH
Les 4 modes d ’utilisation de JPEG
• Mode progressif :
– idée : transmettre d ’abord une image de basse qualité,
puis l ’améliorer par des ajouts successifs
– 2 façons :
• sélection spectrale : transmettre d ’abord les coeff. DC
et quelques coeff. AC, puis d ’autres coeff. AC
• approximations successives : transmettre d ’abord des
coeff. grossièrement quantifiés, puis les quantifier plus
finement et transmettre cette nouvelle information
• Mode hiérarchique :
– répond aux besoins de « scalabilité » de certains
décodeurs (dans un même flot binaire : plusieurs
résolutions, plusieurs modes, …)
– par l ’imbrication d ’opérations d’échantillonnages /
codages / décodages / interpolations
Centre Universitaire de Formation
et de Recherche de Nîmes
William PUECH
Exemples
Image originale (300 Ko) Image compressée (10 ko)
Problème = effets de blocs
Centre Universitaire de Formation
et de Recherche de Nîmes
William PUECH
Redondance dans une image
128 64 32 16 8 4 2 1
1
0
1 1 1 1
0 0 0 0 = 170
= 65 01000001
= 69 01000101
=> A
=> E
Centre Universitaire de Formation
et de Recherche de Nîmes
William PUECH
Cryptage d’images
• RSA
• Basé Vigenère
• DES
• TEA
Centre Universitaire de Formation
et de Recherche de Nîmes
William PUECH
Cryptographie
• Préserver la confidentialité des
documents.
• Garantir l’authenticité des documents
transmis.
• Intégrité des messages.
• Le non-désaveu.
Centre Universitaire de Formation
et de Recherche de Nîmes
William PUECH
Terminologie
• Texte en clair :
– Information à transmettre.
• Chiffrement :
– Crypter le message (le rendre incompréhensible).
– Cryptogramme.
• Déchiffrement :
– Retour au texte en clair.
• Cryptologie :
– Partie mathématique de la cryptographie et cryptanalyse.
• Cryptanalyse :
– Décryptage sans connaissance de la clef.
Centre Universitaire de Formation
et de Recherche de Nîmes
William PUECH
Les clefs
• Techniques de chiffrement de messages
plus ou moins robustes.
• Algorithmes à clefs de chiffrement et de
déchiffrement identiques, soit différentes.
– Algorithmes à clef secrète (clef symétrique).
– Algorithmes à clefs publique et privée (clefs
asymétriques).
Centre Universitaire de Formation
et de Recherche de Nîmes
William PUECH
Divers types de chiffrement
• Chiffrement par substitution :
– Caractère du texte clair remplacé par un autre
caractère dans le texte chiffré.
• Chiffrement à substitution simple (César).
• Chiffrement à substitution simple par polygramme
(Playfair, Hill).
• Chiffrement à substitution polyalphabétique
(Vigenère, Beaufort).
• Chiffrement à substitution homophonique :
– évite l’analyse des fréquences.
• Chiffrement par transposition :
– à éviter pour des messages courts.
Centre Universitaire de Formation
et de Recherche de Nîmes
William PUECH
Chiffrement par décalage
• Zm : ensemble de m éléments.
• Soit x à chiffrer :
• ek(x) = x + k % m,
• Et dk(y) = y – k % m
Centre Universitaire de Formation
et de Recherche de Nîmes
William PUECH
Chiffrement de Vigenère
• Découpage de message de longueur
identique à celle de la clef :
• Clef = bonjour, longueur = 7.
• Texte = « en partant ce matin le ciel
était bleu … » e n p a r t
b o n j o u r
a n t c e
b o n j o u r
m a t i n l
b o n j o u r
Centre Universitaire de Formation
et de Recherche de Nîmes
William PUECH
Arithmétique modulaire
• a, b et m entiers, m>0.
a est congru à b, si m divise b-a :
a  b % m si m | (b – a)
• Zm, ensemble à m éléments.
L’inverse de 1/a de a :
a  Zm : a-1.a = a.a-1 = 1 (mod m)
– ex : m = 26, a = 3 alors a-1 = 9.
Centre Universitaire de Formation
et de Recherche de Nîmes
William PUECH
Fonction d’Euler
• Soit m, décomposable en p facteurs premiers
:
• Alors :
• Nombre d’entiers premiers avec m.
i
e
n
i
i
i
p
m 



0
)
(






n
i
i
i
i i
e
p
p
m
0
e
)
)
(
)
((
E
)
( 1
i

Centre Universitaire de Formation
et de Recherche de Nîmes
William PUECH
Cryptographie actuelle
• DES (Data Encryption Standard) par la
– 1970 NBS (National Bureau of Standards)
– 1974 IBM : Lucifer -> DES : 1978
– Réactualisé tous les 5 ans -> 1998.
– Chiffrement par blocs de 64 bits (dont 8 pour
CCE) combinés, substitués, et permutés.
– Clef sur 64 bits de 16 blocs de 4 bits -> 256
combinaisons possibles (72 1015)
– Utilisé par les banques françaises
• Forte demande pour le Web.
Centre Universitaire de Formation
et de Recherche de Nîmes
William PUECH
Algorithm
e
du DES
Centre Universitaire de Formation
et de Recherche de Nîmes
William PUECH
Algorithm
e
du DES
Centre Universitaire de Formation
et de Recherche de Nîmes
William PUECH
DES -> AES
• 2000 : Advanced Encryption
Standard.
– Car progression des technologies des
ordinateurs.
– Compétition de 15 algorithmes.
– Spécialistes de carte à puce et porte
monnaie électronique.
Centre Universitaire de Formation
et de Recherche de Nîmes
William PUECH
Algorithme RSA
• Algorithme à clef publique.
– Factorisation de grands entiers.
– Arithmétique des congruences.
• Clef n = p.q, 2 nombres premiers secrets, n
divulgué.
• (n) = (p-1)(q-1) : nbre de nbres premiers à n.
• Clef publique e : 2 < e < (n) -> couple (n,e).
• Clef privée d = e-1 % (n) pour le décryptage.
Centre Universitaire de Formation
et de Recherche de Nîmes
William PUECH
Algorithme RSA
• Si Alice envoie un message M à Bob :
– Couple (n,e) de Bob
– Découpage de M en blocs de taille < nbre de
chiffres de n : M = m1m2…..mi
– ci = mi
e % n, C = c1c2…..ci
• Au décryptage
– ci
d = (mi
e)d
• Principe simple mais utilisation de grands
nombres.
Centre Universitaire de Formation
et de Recherche de Nîmes
William PUECH
Alice et Bob
réception
Message M
Centre Universitaire de Formation
et de Recherche de Nîmes
William PUECH
TEA
Centre Universitaire de Formation
et de Recherche de Nîmes
William PUECH
Cryptage appliquée aux
images
• 64 bits : 8 pixels consécutifs
P(i) P(i+1) … … … … … P(i+7)
01011100 10001111 … … … … … 10011110
Cryptage
11001110 00101001 … … … … … 01000111
P’(i) P’(i+1) … … … … … P’(i+7)
DES, TEA, RSA
Centre Universitaire de Formation
et de Recherche de Nîmes
William PUECH
Cryptage d’images basé
Vigenère
A partir d’une image de N pixels, un pixel p(n) sera
crypté en p’(n) :
Centre Universitaire de Formation
et de Recherche de Nîmes
William PUECH
Cryptage d’images basé
Vigenère
L’ordre de récurrence est k et la clef de cryptage
est composée de 2k éléments, (i) et p’(i),
avec i [1, k] :
Centre Universitaire de Formation
et de Recherche de Nîmes
William PUECH
Résultats et Analyse
Centre Universitaire de Formation
et de Recherche de Nîmes
William PUECH
Résultats de cryptage
d’images
DES : blocs 8 pixels
clef 64 bits
Basé Vigenère
Blocs de 32 pixels
clef 64 bits
TEA : blocs 8 pixels
clef 128 bits
Centre Universitaire de Formation
et de Recherche de Nîmes
William PUECH
Résultats de cryptage
d’images
DES : blocs 8 pixels
clef 64 bits
TEA : blocs 8 pixels
clef 128 bits
Basé Vigenère
Blocs de 32 pixels
clef 64 bits
Centre Universitaire de Formation
et de Recherche de Nîmes
William PUECH
Cryptage d’images : RSA
Image 56x40 pixels
RSA
Blocs de 8 pixels
clef 64 bits
Centre Universitaire de Formation
et de Recherche de Nîmes
William PUECH
Cryptage d’images : RSA
Temps de cryptage par
RSA en fonction du nombre
de pixels dans les blocs de
cryptage
Temps de cryptage par
RSA en fonction de la
longueur de la clef privée
Centre Universitaire de Formation
et de Recherche de Nîmes
William PUECH
Comparaison des temps de
cryptage
Temps de cryptage en fonction de la taille des images
Centre Universitaire de Formation
et de Recherche de Nîmes
William PUECH
Cas des
images
médicales
DES : blocs 8 pixels
clef 64 bits
TEA : blocs 8 pixels
clef 128 bits
Centre Universitaire de Formation
et de Recherche de Nîmes
William PUECH
TEA : blocs 3x3 avec 1 pixel
clair
TEA : blocs 9 pixels
avec 1 pixel clair
TEA : blocs 9 pixels
avec 1 pixel clair masqué
Image basse résolution
à partir de l’image cryptée
(sans décryptage)
Centre Universitaire de Formation
et de Recherche de Nîmes
William PUECH
Cryptage par TEA par
blocs 3x3 pixels
(dont 1 pixel clair
masqué)
TEA : blocs 9
pixels
Comprimé
FQ=80%
65 k0  39 kO
Image basse résolution
À partir de l’image cryptée
et comprimée
Image basse résolution
À partir de l’image cryptée
et comprimée FQ=80%
décryptage
décryptage
Compression
JPEG
et
TEA : blocs 9
pixels
Comprimé
FQ=100%
65 k0  101 kO
Centre Universitaire de Formation
et de Recherche de Nîmes
William PUECH
Cryptage d’images
basé Vigenère (clef 64
bits)
Compression
JPEG
et
Basé Vigenère
Comprimé
FQ=100%
65 k0  101 kO
Basé Vigenère
Comprimé
FQ=80%
65 k0  39 kO
Basé Vigenère
Comprimé
FQ=60%
65 k0  31kO
Centre Universitaire de Formation
et de Recherche de Nîmes
William PUECH
Conclusion
• Algorithmes de cryptage adaptés aux
images.
• Entropie maximale.
• Temps de cryptage et longueur des
clefs.
• Pb des zones homogènes.
• Algorithmes TEA et basé Vigenère.

Contenu connexe

Similaire à seminaires_crytage_vision compression video

M-Electronique numerique avancee VHDl-FPGA-Chap1-1.pptx
M-Electronique numerique avancee VHDl-FPGA-Chap1-1.pptxM-Electronique numerique avancee VHDl-FPGA-Chap1-1.pptx
M-Electronique numerique avancee VHDl-FPGA-Chap1-1.pptxwafawafa52
 
M-Electronique numerique avancee VHDl-FPGA.pptx
M-Electronique numerique avancee VHDl-FPGA.pptxM-Electronique numerique avancee VHDl-FPGA.pptx
M-Electronique numerique avancee VHDl-FPGA.pptxwafawafa52
 
CM1 - Signal et Information
CM1 - Signal et InformationCM1 - Signal et Information
CM1 - Signal et InformationPierre Maréchal
 
Le traitement du signal en Audio. Les procédés de compression audio. Présent...
Le traitement du signal en Audio. Les  procédés de compression audio. Présent...Le traitement du signal en Audio. Les  procédés de compression audio. Présent...
Le traitement du signal en Audio. Les procédés de compression audio. Présent...Vincent RECIPON
 
Lamini&farsane traitement de_signale
Lamini&farsane traitement de_signaleLamini&farsane traitement de_signale
Lamini&farsane traitement de_signaleAsmae Lamini
 
64378311-Traitement-Du-Signal.ppt
64378311-Traitement-Du-Signal.ppt64378311-Traitement-Du-Signal.ppt
64378311-Traitement-Du-Signal.pptdocteurgyneco1
 
Présentation colorimétrie & préservation François Helt (hts) Atelier focus In...
Présentation colorimétrie & préservation François Helt (hts) Atelier focus In...Présentation colorimétrie & préservation François Helt (hts) Atelier focus In...
Présentation colorimétrie & préservation François Helt (hts) Atelier focus In...Marc Bourhis
 
Chap2 physique
Chap2 physiqueChap2 physique
Chap2 physiqueEns Kouba
 
Introduction à l’architecture des ordinateurs
Introduction à l’architecture des ordinateursIntroduction à l’architecture des ordinateurs
Introduction à l’architecture des ordinateursAbdoulaye Dieng
 

Similaire à seminaires_crytage_vision compression video (20)

M-Electronique numerique avancee VHDl-FPGA-Chap1-1.pptx
M-Electronique numerique avancee VHDl-FPGA-Chap1-1.pptxM-Electronique numerique avancee VHDl-FPGA-Chap1-1.pptx
M-Electronique numerique avancee VHDl-FPGA-Chap1-1.pptx
 
M-Electronique numerique avancee VHDl-FPGA.pptx
M-Electronique numerique avancee VHDl-FPGA.pptxM-Electronique numerique avancee VHDl-FPGA.pptx
M-Electronique numerique avancee VHDl-FPGA.pptx
 
3-Codage_Canal.ppt
3-Codage_Canal.ppt3-Codage_Canal.ppt
3-Codage_Canal.ppt
 
La mesure logicielle
La mesure logicielleLa mesure logicielle
La mesure logicielle
 
21375011.pdf
21375011.pdf21375011.pdf
21375011.pdf
 
CM1 - Signal et Information
CM1 - Signal et InformationCM1 - Signal et Information
CM1 - Signal et Information
 
SoC Hamdi -chap4
SoC Hamdi -chap4SoC Hamdi -chap4
SoC Hamdi -chap4
 
Mise en oeuvre des framework de machines et deep learning v1
Mise en oeuvre des framework de machines et deep learning v1 Mise en oeuvre des framework de machines et deep learning v1
Mise en oeuvre des framework de machines et deep learning v1
 
2 codage source
2 codage source2 codage source
2 codage source
 
Cv guillotte 10.0
Cv guillotte 10.0Cv guillotte 10.0
Cv guillotte 10.0
 
Le traitement du signal en Audio. Les procédés de compression audio. Présent...
Le traitement du signal en Audio. Les  procédés de compression audio. Présent...Le traitement du signal en Audio. Les  procédés de compression audio. Présent...
Le traitement du signal en Audio. Les procédés de compression audio. Présent...
 
Lamini&farsane traitement de_signale
Lamini&farsane traitement de_signaleLamini&farsane traitement de_signale
Lamini&farsane traitement de_signale
 
Cours4 gdm
Cours4 gdmCours4 gdm
Cours4 gdm
 
Cours rci
Cours rciCours rci
Cours rci
 
Reseaux-sans-fil.pdf
Reseaux-sans-fil.pdfReseaux-sans-fil.pdf
Reseaux-sans-fil.pdf
 
64378311-Traitement-Du-Signal.ppt
64378311-Traitement-Du-Signal.ppt64378311-Traitement-Du-Signal.ppt
64378311-Traitement-Du-Signal.ppt
 
Codes Convolutifs
Codes ConvolutifsCodes Convolutifs
Codes Convolutifs
 
Présentation colorimétrie & préservation François Helt (hts) Atelier focus In...
Présentation colorimétrie & préservation François Helt (hts) Atelier focus In...Présentation colorimétrie & préservation François Helt (hts) Atelier focus In...
Présentation colorimétrie & préservation François Helt (hts) Atelier focus In...
 
Chap2 physique
Chap2 physiqueChap2 physique
Chap2 physique
 
Introduction à l’architecture des ordinateurs
Introduction à l’architecture des ordinateursIntroduction à l’architecture des ordinateurs
Introduction à l’architecture des ordinateurs
 

seminaires_crytage_vision compression video

  • 1. Centre Universitaire de Formation et de Recherche de Nîmes William PUECH CRYPTAGE D’IMAGES : robustesse à la compression William PUECH
  • 2. Centre Universitaire de Formation et de Recherche de Nîmes William PUECH Contexte • Transfert sécurisé d’images. • Systèmes de gestion de base de données images distribuées. • Codage source versus codage canal. • Applications : – Imagerie médicale – Sécurité routière – Télésurveillance, …
  • 3. Centre Universitaire de Formation et de Recherche de Nîmes William PUECH Le problème • Transfert sécurisé de données images – Qualité des données transmises. – Authentification. – Intégrité. – Robustesse à la compression.  Cryptage et tatouage d’images
  • 4. Centre Universitaire de Formation et de Recherche de Nîmes William PUECH L’équipe Cryptage d’images – JC. Borie : doctorant CEM2, Cryptage d’images médicales, M. Dumas, W. Puech. – S. Piat : DESS Info. Images, Univ. Reims. Tatouage et traitement d’images – M. Hatimi, MCF 27. J. Triboulet MCF 61. – JJ. Charre : doctorant CEM2, Détection de contours pour le transfert d’images, G. Michaille, W. Puech. – G. Lo Varco : doctorant CEM2, Insertion de messages longs dans une image , M. Dumas, W. Puech. – P. Montesinos, LGI2P, EMA.
  • 5. Centre Universitaire de Formation et de Recherche de Nîmes William PUECH Plan • Codage d’informations – Codage source – Codage canal – Compression d’images • Cryptage d’images – RSA – Basé Vigenère – DES et TEA • Résultats et Analyse des méthodes.
  • 6. Centre Universitaire de Formation et de Recherche de Nîmes William PUECH Codage d’informations • Codage source : transformation des données utiles (source) afin de répondre à un problème particulier. • Codage canal : adaptation signal / canal
  • 7. Centre Universitaire de Formation et de Recherche de Nîmes William PUECH Codage source • Transformation couleur : RGB  YUV • Changement de formats : tiff  bmp, ppm  pgm, raw  png, … • Compression : raw  jpg, ppm  jpg2000, bmp  gif • … • Cryptage et tatouage.
  • 8. Centre Universitaire de Formation et de Recherche de Nîmes William PUECH • Cryptographie: transmission d’un message indéchiffrable ex: LIS  MJT • Stéganographie: transmission d’un message imperceptible ex: LIS  les ingénieurs sauvages les ingénieurs sauvages des ingénieurs sauvages •Tatouage : transmission d’un message imperceptible et indélébile (Le contenant est important) ex: LIS  le sujet inédit impose sa leçon le sujet inédit impose sa leçon Du cryptage au tatouage
  • 9. Centre Universitaire de Formation et de Recherche de Nîmes William PUECH Codage canal – Bits : signaux sur le support. – Bande de base : représentation directe des bits • Ethernet : code Manchester : 0 front , 1 front . • Affaiblissement rapide du signal, très sensible aux bruits : réseaux locaux. • Synchronisation des 2 bouts en rajoutant des bits. – Synchrone : horloge transmise avec les données. – Asynchrone : devant chaque éléments de données : groupe de bits pour l'échantillonnage. • 01010101 … • Bits start dans asynchrone V24.
  • 10. Centre Universitaire de Formation et de Recherche de Nîmes William PUECH Codage canal – Codage – Code correcteur d’erreur – Contrôle de flux – Synchronisation – Fenêtrage – Multiplexage – @ emission, @ destination
  • 11. Centre Universitaire de Formation et de Recherche de Nîmes William PUECH Codage canal Codage en bande de base : substitution du signal original par un autre signal dont le spectre de fréquence est adapté à la communication – Code biphase "Manchester" et "différentiel – code de Miller, code bipolaire, code HDB3, ... 1 0 1 1 0 0 0 0 0 1 0 0 0 0 0 Binaire Biphase Bipolaire HDB3 + - + - + - + + + + - - - - V V
  • 12. Centre Universitaire de Formation et de Recherche de Nîmes William PUECH Théorie du Signal – Mesure de l’information – Capacité d’un canal – Codage et optimisation de l’utilisation d’un canal • Information : IA = -log2 PA bits • Entropie : bits/symbole : • Théorème fondamental de Shannon   m i i i P P H 1 2 1 log
  • 13. Centre Universitaire de Formation et de Recherche de Nîmes William PUECH Théorie du Signal 0 255 ddp 1/256 0 255 ddp 1/100 1/200 50 149 199 150 0 255 ddp
  • 14. Centre Universitaire de Formation et de Recherche de Nîmes William PUECH Codage source : compression • Contexte : codage ou compression des images numériques • Pourquoi : réduction de la quantité d ’éléments binaires représentant l ’information « image » => codage de source • Finalité : archivage ou transmission [bit] compressée ima. info. d' Qté [bit] originale ima. info. d' Qté comp. de Taux 
  • 15. Centre Universitaire de Formation et de Recherche de Nîmes William PUECH Codage source : compression 2 types de compression: – Codage sans perte (« entropique ») Ex. : Huffman, Lempel-Ziv, Arithmétique, … => taux de compression faible (1.5 à 2) – Codage avec pertes (« irréversible ») : Suppression des redondances (information inutile) car • prévisible • invisible par système visuel humain (SVH) => Taux de compression élevés (>10)
  • 16. Centre Universitaire de Formation et de Recherche de Nîmes William PUECH – image transmise en la balayant (« Zigzag scan ») – constat : le niveau de gris d ’un pixel dépend souvent de celui de ses voisins – idée : prédire X en utilisant A, B ou C la base du codage MICD (Modulation d ’Impulsions Codées Différentielles) => une phase d ’analyse de l ’image X A B C
  • 17. Centre Universitaire de Formation et de Recherche de Nîmes William PUECH Historique • Image fixe – 1980 : Recommandation pour le fac similé – 1992 : JPEG • « Joint Photographic Expert Group » • images couleurs et N&B (Ex : satellite, médicales, …) • plusieurs modes (Ex : séquentiel, sans perte, progressif, hiérarchique) • format image < (768x576) • débits : de 8 M bit/s à 40 M bit/s – 2000 : JPEG 2000 (débits inférieurs, haute robustesse aux erreurs de transmission, description basé contenu, large gamme d ’images, interface avec MPEG4, …)
  • 18. Centre Universitaire de Formation et de Recherche de Nîmes William PUECH Schéma général de compression
  • 19. Centre Universitaire de Formation et de Recherche de Nîmes William PUECH • DCT (« Discrete Cosine Transformation ») – Transformation Discrète en Cosinus – changement de l ’espace de représentation : passage du domaine spatial au domaine fréquentiel 64 pixels 64 coefficients
  • 20. Centre Universitaire de Formation et de Recherche de Nîmes William PUECH • DCT (suite), définitions – DCT – DCT inverse                                    sinon 1 0 si 2 1 ) ( ) , ( 16 ) 1 2 ( cos 16 ) 1 2 ( cos 4 ) ( ) ( ) , ( 7 0 7 0     A j i f v j u i v A u A v u F i j                                     sinon 1 0 si 2 1 ) ( ) , ( 16 ) 1 2 ( cos 16 ) 1 2 ( cos ) ( ) ( 4 1 ) , ( ˆ 7 0 7 0     A v u F v j u i v A u A j i f u v
  • 21. Centre Universitaire de Formation et de Recherche de Nîmes William PUECH • DCT (suite) – une décomposition sur 64 fonctions de base (ou sous-images de base) bloc sous-images
  • 22. Centre Universitaire de Formation et de Recherche de Nîmes William PUECH • DCT (suite) – implémentation • des algorithmes rapides de calcul • transformation 2D ~~> 2 x transformations 1D
  • 23. Centre Universitaire de Formation et de Recherche de Nîmes William PUECH Quantification • Pourquoi : SVH moins sensible aux hautes fréq. • Idée : moins de bits pour les coeff. relatifs à ces fréq. • Quantification : • Reconstruction : • Ex: bits 6 [binaire] 101101 [décimal] 45 ) , (    v u F   ) , ( / ) , ( ) , '( v u q v u F ent v u F      bits 4 [binaire] 1011 [décimal] 11 11.25 ent 4 / 45 ) , ( '      ent v u F ) , ( ) , '( ) , ''( v u q v u F v u F   4 ) , (  v u q v) F(u, v) (u, F" [décimal] 44 4 11 ) , ( ' '      v u F Une erreur de quantification existe
  • 24. Centre Universitaire de Formation et de Recherche de Nîmes William PUECH • Quantification uniforme : tous les q(u,v) égaux • Quantification non-uniforme : tables des q(u,v) – q(u,v) grand => quantification grossière – tables peuvent-être transmises dans l ’en-tête (« header ») de l ’image pour la Luminance pour les Chrominances Vers les htes. Fréq.
  • 25. Centre Universitaire de Formation et de Recherche de Nîmes William PUECH Balayage en zig-zag (du bloc) • Intérêt : former un vecteur où les coeff. relatifs aux basses fréq. sont regroupés Coeff. AC des Basses fréq. Coeff. DC
  • 26. Centre Universitaire de Formation et de Recherche de Nîmes William PUECH Codage DPCM des Coeff. DC • Méthode : – regroupement des coeff. DC – balayage sous-image : gche->dte, haut->bas – X : valeur à prédire P(X) : prédiction de X Ex. P(X)=A (cas le plus simple, mode de base) P(X)=(A+C)/2 … – transmission de X-P(X) • Pourquoi : niveau de gris des pixels voisins sont souvent proches
  • 27. Centre Universitaire de Formation et de Recherche de Nîmes William PUECH Codage des coefficients AC • Constat : apparition de longues plages de 0 après quantification • Méthode : codage de ces plages («Run Length Coding») – un ensemble de paires (Coeff., Nb. de 0) – fin d ’un bloc : paire (0, 0) :
  • 28. Centre Universitaire de Formation et de Recherche de Nîmes William PUECH Codage entropique • Principe : – codeur « classique » : un alphabet de mots de code de même longueur (Ex. pour 8 symboles : 000, 001, 010, 011, 100, 101, 110, 111) – codeur entropique : • un alphabet de mots de code de longueurs différentes (Ex. 00, 01, 10, 110, 010, 111, …) • attribuer aux symboles les plus probables, les mots de code les plus courts • effet : réduction du coût moyen (débit [en bit]) de la transmission
  • 29. Centre Universitaire de Formation et de Recherche de Nîmes William PUECH Codage entropique avec JPEG • Coeff. DC : – mise en correspondance : valeurs coeff. / taille du mot représentant [bit] – Ex. : si DC=-9 => 4 bits – transmission de la paire : (Taille, Valeur)  Coeff. AC : codage de Huffman des paires (Coeff., Nb. de 0)  Table de Huffman (cad l ’alphabet des mots de code ) : pré-existante ou construite (transmission dans l ’entête)
  • 30. Centre Universitaire de Formation et de Recherche de Nîmes William PUECH Les 4 modes d ’utilisation de JPEG • Mode séquentiel : – le mode de base – chaque plan est codé directement par un balayage (gche->dt, haut->bas) • Mode sans perte : – un codage sans perte – utilisation d ’un prédicteur pour coder les coefficients – taux de compression de 1,5 à 2
  • 31. Centre Universitaire de Formation et de Recherche de Nîmes William PUECH Les 4 modes d ’utilisation de JPEG • Mode progressif : – idée : transmettre d ’abord une image de basse qualité, puis l ’améliorer par des ajouts successifs – 2 façons : • sélection spectrale : transmettre d ’abord les coeff. DC et quelques coeff. AC, puis d ’autres coeff. AC • approximations successives : transmettre d ’abord des coeff. grossièrement quantifiés, puis les quantifier plus finement et transmettre cette nouvelle information • Mode hiérarchique : – répond aux besoins de « scalabilité » de certains décodeurs (dans un même flot binaire : plusieurs résolutions, plusieurs modes, …) – par l ’imbrication d ’opérations d’échantillonnages / codages / décodages / interpolations
  • 32. Centre Universitaire de Formation et de Recherche de Nîmes William PUECH Exemples Image originale (300 Ko) Image compressée (10 ko) Problème = effets de blocs
  • 33. Centre Universitaire de Formation et de Recherche de Nîmes William PUECH Redondance dans une image 128 64 32 16 8 4 2 1 1 0 1 1 1 1 0 0 0 0 = 170 = 65 01000001 = 69 01000101 => A => E
  • 34. Centre Universitaire de Formation et de Recherche de Nîmes William PUECH Cryptage d’images • RSA • Basé Vigenère • DES • TEA
  • 35. Centre Universitaire de Formation et de Recherche de Nîmes William PUECH Cryptographie • Préserver la confidentialité des documents. • Garantir l’authenticité des documents transmis. • Intégrité des messages. • Le non-désaveu.
  • 36. Centre Universitaire de Formation et de Recherche de Nîmes William PUECH Terminologie • Texte en clair : – Information à transmettre. • Chiffrement : – Crypter le message (le rendre incompréhensible). – Cryptogramme. • Déchiffrement : – Retour au texte en clair. • Cryptologie : – Partie mathématique de la cryptographie et cryptanalyse. • Cryptanalyse : – Décryptage sans connaissance de la clef.
  • 37. Centre Universitaire de Formation et de Recherche de Nîmes William PUECH Les clefs • Techniques de chiffrement de messages plus ou moins robustes. • Algorithmes à clefs de chiffrement et de déchiffrement identiques, soit différentes. – Algorithmes à clef secrète (clef symétrique). – Algorithmes à clefs publique et privée (clefs asymétriques).
  • 38. Centre Universitaire de Formation et de Recherche de Nîmes William PUECH Divers types de chiffrement • Chiffrement par substitution : – Caractère du texte clair remplacé par un autre caractère dans le texte chiffré. • Chiffrement à substitution simple (César). • Chiffrement à substitution simple par polygramme (Playfair, Hill). • Chiffrement à substitution polyalphabétique (Vigenère, Beaufort). • Chiffrement à substitution homophonique : – évite l’analyse des fréquences. • Chiffrement par transposition : – à éviter pour des messages courts.
  • 39. Centre Universitaire de Formation et de Recherche de Nîmes William PUECH Chiffrement par décalage • Zm : ensemble de m éléments. • Soit x à chiffrer : • ek(x) = x + k % m, • Et dk(y) = y – k % m
  • 40. Centre Universitaire de Formation et de Recherche de Nîmes William PUECH Chiffrement de Vigenère • Découpage de message de longueur identique à celle de la clef : • Clef = bonjour, longueur = 7. • Texte = « en partant ce matin le ciel était bleu … » e n p a r t b o n j o u r a n t c e b o n j o u r m a t i n l b o n j o u r
  • 41. Centre Universitaire de Formation et de Recherche de Nîmes William PUECH Arithmétique modulaire • a, b et m entiers, m>0. a est congru à b, si m divise b-a : a  b % m si m | (b – a) • Zm, ensemble à m éléments. L’inverse de 1/a de a : a  Zm : a-1.a = a.a-1 = 1 (mod m) – ex : m = 26, a = 3 alors a-1 = 9.
  • 42. Centre Universitaire de Formation et de Recherche de Nîmes William PUECH Fonction d’Euler • Soit m, décomposable en p facteurs premiers : • Alors : • Nombre d’entiers premiers avec m. i e n i i i p m     0 ) (       n i i i i i e p p m 0 e ) ) ( ) (( E ) ( 1 i 
  • 43. Centre Universitaire de Formation et de Recherche de Nîmes William PUECH Cryptographie actuelle • DES (Data Encryption Standard) par la – 1970 NBS (National Bureau of Standards) – 1974 IBM : Lucifer -> DES : 1978 – Réactualisé tous les 5 ans -> 1998. – Chiffrement par blocs de 64 bits (dont 8 pour CCE) combinés, substitués, et permutés. – Clef sur 64 bits de 16 blocs de 4 bits -> 256 combinaisons possibles (72 1015) – Utilisé par les banques françaises • Forte demande pour le Web.
  • 44. Centre Universitaire de Formation et de Recherche de Nîmes William PUECH Algorithm e du DES
  • 45. Centre Universitaire de Formation et de Recherche de Nîmes William PUECH Algorithm e du DES
  • 46. Centre Universitaire de Formation et de Recherche de Nîmes William PUECH DES -> AES • 2000 : Advanced Encryption Standard. – Car progression des technologies des ordinateurs. – Compétition de 15 algorithmes. – Spécialistes de carte à puce et porte monnaie électronique.
  • 47. Centre Universitaire de Formation et de Recherche de Nîmes William PUECH Algorithme RSA • Algorithme à clef publique. – Factorisation de grands entiers. – Arithmétique des congruences. • Clef n = p.q, 2 nombres premiers secrets, n divulgué. • (n) = (p-1)(q-1) : nbre de nbres premiers à n. • Clef publique e : 2 < e < (n) -> couple (n,e). • Clef privée d = e-1 % (n) pour le décryptage.
  • 48. Centre Universitaire de Formation et de Recherche de Nîmes William PUECH Algorithme RSA • Si Alice envoie un message M à Bob : – Couple (n,e) de Bob – Découpage de M en blocs de taille < nbre de chiffres de n : M = m1m2…..mi – ci = mi e % n, C = c1c2…..ci • Au décryptage – ci d = (mi e)d • Principe simple mais utilisation de grands nombres.
  • 49. Centre Universitaire de Formation et de Recherche de Nîmes William PUECH Alice et Bob réception Message M
  • 50. Centre Universitaire de Formation et de Recherche de Nîmes William PUECH TEA
  • 51. Centre Universitaire de Formation et de Recherche de Nîmes William PUECH Cryptage appliquée aux images • 64 bits : 8 pixels consécutifs P(i) P(i+1) … … … … … P(i+7) 01011100 10001111 … … … … … 10011110 Cryptage 11001110 00101001 … … … … … 01000111 P’(i) P’(i+1) … … … … … P’(i+7) DES, TEA, RSA
  • 52. Centre Universitaire de Formation et de Recherche de Nîmes William PUECH Cryptage d’images basé Vigenère A partir d’une image de N pixels, un pixel p(n) sera crypté en p’(n) :
  • 53. Centre Universitaire de Formation et de Recherche de Nîmes William PUECH Cryptage d’images basé Vigenère L’ordre de récurrence est k et la clef de cryptage est composée de 2k éléments, (i) et p’(i), avec i [1, k] :
  • 54. Centre Universitaire de Formation et de Recherche de Nîmes William PUECH Résultats et Analyse
  • 55. Centre Universitaire de Formation et de Recherche de Nîmes William PUECH Résultats de cryptage d’images DES : blocs 8 pixels clef 64 bits Basé Vigenère Blocs de 32 pixels clef 64 bits TEA : blocs 8 pixels clef 128 bits
  • 56. Centre Universitaire de Formation et de Recherche de Nîmes William PUECH Résultats de cryptage d’images DES : blocs 8 pixels clef 64 bits TEA : blocs 8 pixels clef 128 bits Basé Vigenère Blocs de 32 pixels clef 64 bits
  • 57. Centre Universitaire de Formation et de Recherche de Nîmes William PUECH Cryptage d’images : RSA Image 56x40 pixels RSA Blocs de 8 pixels clef 64 bits
  • 58. Centre Universitaire de Formation et de Recherche de Nîmes William PUECH Cryptage d’images : RSA Temps de cryptage par RSA en fonction du nombre de pixels dans les blocs de cryptage Temps de cryptage par RSA en fonction de la longueur de la clef privée
  • 59. Centre Universitaire de Formation et de Recherche de Nîmes William PUECH Comparaison des temps de cryptage Temps de cryptage en fonction de la taille des images
  • 60. Centre Universitaire de Formation et de Recherche de Nîmes William PUECH Cas des images médicales DES : blocs 8 pixels clef 64 bits TEA : blocs 8 pixels clef 128 bits
  • 61. Centre Universitaire de Formation et de Recherche de Nîmes William PUECH TEA : blocs 3x3 avec 1 pixel clair TEA : blocs 9 pixels avec 1 pixel clair TEA : blocs 9 pixels avec 1 pixel clair masqué Image basse résolution à partir de l’image cryptée (sans décryptage)
  • 62. Centre Universitaire de Formation et de Recherche de Nîmes William PUECH Cryptage par TEA par blocs 3x3 pixels (dont 1 pixel clair masqué) TEA : blocs 9 pixels Comprimé FQ=80% 65 k0  39 kO Image basse résolution À partir de l’image cryptée et comprimée Image basse résolution À partir de l’image cryptée et comprimée FQ=80% décryptage décryptage Compression JPEG et TEA : blocs 9 pixels Comprimé FQ=100% 65 k0  101 kO
  • 63. Centre Universitaire de Formation et de Recherche de Nîmes William PUECH Cryptage d’images basé Vigenère (clef 64 bits) Compression JPEG et Basé Vigenère Comprimé FQ=100% 65 k0  101 kO Basé Vigenère Comprimé FQ=80% 65 k0  39 kO Basé Vigenère Comprimé FQ=60% 65 k0  31kO
  • 64. Centre Universitaire de Formation et de Recherche de Nîmes William PUECH Conclusion • Algorithmes de cryptage adaptés aux images. • Entropie maximale. • Temps de cryptage et longueur des clefs. • Pb des zones homogènes. • Algorithmes TEA et basé Vigenère.