1 Dans cette partie, on s'intéresse toujours à insérer un message dans
3 Si l'objectif des exemples précédents était de marquer l'hôte de
4 manière robuste (et peu visible), c'est ici l'imperceptibilité qui est visée.
5 La \emph{stéganographie} est la famille des démarches qui visent à
6 embarquer un message dans un hôte sans que l'on puisse discerner
7 un hôte vierge d'une image contenant un message.
8 Les outils les plus récents et les plus efficaces de cette famille
9 sont HUGO~\cite{DBLP:conf/ih/PevnyFB10}, WOW~\cite{conf/wifs/HolubF12}
10 et UNIWARD~\cite{HFD14}.
11 Pour détecter la présence ou non d'un message dans une image,
12 on peut demander l'oracle à
13 un \emph{stéganalyseur}~\cite{LHS08,DBLP:conf/ih/Ker05,FK12}.
14 Usuellement, un outil de cette famille, après
15 une démarche d'apprentissage, classifie les images
16 en fonction de caractéristiques numériques.
20 A partir de caractéristiques de voisinage nommées
21 SPAM~\cite{DBLP:journals/tifs/PevnyBF10}, HUGO mesure la distorsion
22 qui serait induite par la modification
23 de chaque pixel. Similairement,
24 WOW et UNIWARD construisent une carte de distorsion mais celle-ci est
25 issue de caractéristiques directionnelles calculées à partir d'ondelettes.
26 A partir de ces cartes de distorsion, chacun de ces algorithmes sélectionne
27 les pixels dont les modifications induisent la distorsion la plus faible
28 possible. Ceci revient à définir une fonction de signification $u$.
29 La complexité du schéma de stéganographie est peu ou prou celle du calcul
30 de cette carte, et elle est élevée dans le cas
32 Nous avons proposé un algorithme~\cite{ccg15:ij}
33 de complexité beaucoup plus faible
34 et dont la détectabilité est satisfaisante.
35 Ce chapitre détaille les clefs de ce schéma
39 \section{Présentation de l'approche}
41 Le diagramme de flux donné à la Fig.~\ref{fig:sch} résume l'approche
42 du schéma STABYLO (pour STeganography with Adaptive, Bbs, binarY embedding
43 at LOw cost). L'embarquement est synthétisé à la Fig.~\ref{fig:sch:emb} et
44 l'extraction à la Fig.~\ref{fig:sch:ext}.
48 \subfigure[Data Embedding]{
49 \begin{minipage}{0.4\textwidth}
51 %\includegraphics[scale=0.45]{emb}
52 \includegraphics[scale=0.4]{images/emb}
58 \subfigure[Data Extraction]{
59 \begin{minipage}{0.49\textwidth}
61 \includegraphics[scale=0.4]{images/dec}
67 \caption{Présentation générale de STABYLO}
72 La sécurité de l'encryptage est garantie par le système asymétrique
73 de Blum-Goldwasser~\cite{Blum:1985:EPP:19478.19501} basé sur le PRNG
74 Blum Blum Shub~\cite{DBLP:conf/crypto/ShubBB82}.
75 Ainsi, à partir d'une clef $k$ et un message \textit{mess},
76 ce cryptosystem construit
80 \subsection{Un embarquement dans les bords}\label{sub:edge}
81 L'idée d'embarquer dans les bords d'une image
82 repose sur le fait que les pixels de ceux-ci représentent déjà une
83 rupture de continuité entre pixels voisins.
84 Une faible modification de ceux-ci n'aurait donc pas un grand impact sur la qualité
85 de l'image, condition nécessaire lorsqu'on prétend être indétectable.
87 STABYLO est basé sur les
88 filtres de Canny~\cite{Canny:1986:CAE:11274.11275}, comme démarche de détection
89 de bords retenue pour sa complexité faible et ses possibilités d'implantation
90 sur plusieurs supports (GPU, FPGA notamment). Rien n'interdirait cependant
91 de l'appliquer à d'autres approches de détection de bord (Sobel, à base de
92 logique floue~\cite{KF11},\ldots).
93 Cette détection de bords ne considère que les $b$
94 bits les plus significatifs (pratiquement $b$ vaut $6$ ou $7$)
95 et un masque de sélection $T$ $T=3,5,7$).
96 Plus élevée est la valeur de ce masque, plus grand est le nombre
97 de pixels de bord mais plus grossière est l'approche.
98 Dans le diagramme de flux, cette étape de sélection
99 est représentée par ``x=Edge Detection(b, T, X)''.
100 La section suivante montre comment le schéma s'adapte
101 aux valeurs de $m$ et de $x$.
103 \subsection{Un embarquement adaptatif}\label{sub:adaptive}
104 Nous argumentons que le schéma d'embarquement doit s'adapter
105 au message $m$ et au nombre de bits disponibles pour cet embarquement.
106 Deux stratégies sont possibles dans STABYLO.
107 Dans la première, dite \emph{adaptative}, le taux d'embarquement
108 (rapport entre le nombre de bits embarqués et le nombre de pixels
109 modifiés) dépend du nombre de bits disponibles à l'issue de l'extraction
110 des pixels de bords. Si ce nombre de bits est inférieur au double de
111 la taille du message, celui-ci est découpé en plusieurs parties.
112 %La justification de ce rapport de 1 à 2 à donné ci dessous dans la partie STC.
113 Dans la seconde dite \emph{fixe}, ce taux est fixe et l'algorithme augmente
114 itérativement la valeur de $T$ jusqu'à obtenir à nouveau deux fois plus de bits
115 de bords qu'il n'y en a dans le message.
117 STABYLO applique alors
118 par défaut l'algorithme STC~\cite{DBLP:journals/tifs/FillerJF11}
119 pour modifier aussi peu que possible les bits parmi ceux dont il dispose.
120 Dans le cas où c'est la stratégie adaptative qui est choisie, le paramètre
121 $\rho$ de cet algorithme vaut 1 pour chacun des bits.
122 Dans le cas contraire, la valeur de ce paramètre varie en
123 fonction du seuil $T$ de l'algorithme de détection de bord comme suit:
127 1 \textrm{ pour un bord défini par $T=3$,} \\
128 10 \textrm{ pour un bord défini par $T=5$,} \\
129 100 \textrm{ pour un bord défini par $T=7$.}
137 \subsection{Extraction du message}\label{sub:extract}
138 Résumée à la figure~\ref{fig:sch:ext}, l'extraction du message
139 reproduit le processus d'embarquement dans l'ordre inverse
140 puisque chaque étape est inversible.
144 \section{Analyse de Complexité}
145 Dans cette section, on justifie qualificatif \og LOw cost\fg{} de STABYLO en
146 comparant l'ordre de grandeur de son temps d'exécution avec ceux des
147 principaux schémas existants à savoir HUGO~\cite{DBLP:conf/ih/PevnyFB10},
148 WOW~\cite{conf/wifs/HolubF12} et UNIWARD~\cite{HFD14}.
149 Chacune de ces quatre méthodes commence par calculer un carte de distorsion
150 de l'ensemble des pixels et se termine en appliquant l'algorithme STC.
151 Comme cette dernière étape est commune à toutes les approches, on évalue
152 sa complexité à part.
153 Dans tout ce qui suit, on considère une image carrée de taille
155 Les preuves de ces théorèmes sont données dans~\cite{ccg15:ij}
158 \begin{restatable}[Complexité d'algorithmes de stéganographie]{theorem}{theocplstegano}
159 \label{th:cplxt:stegano}
161 \item Le schéma HUGO a une complexité de l'ordre de $\theta(2 \times n^2(343^2 + \ln(n)))$
162 \item Les schémas WOW et UNIWARD ont une complexité de l'ordre de
163 $\theta(6n^4\ln(n) + n^2)$.
164 \item Le schéma STABYLO a une complexité dont l'ordre est $\theta((5^3+4T+1)n^2)$.
168 D'après~\cite{DBLP:journals/tifs/FillerJF11}, la complexité de
169 STC est le l'ordre de $\theta(2^h.n)$ où $h$
170 est la taille de la matrice dupliquée. Cette complexité linéaire
171 est donc négligeable par rapport au reste.
174 La figure~\ref{fig:compared} représente graphiquement les complexités
175 des étapes d'embarquement des schémas WOW/UNIWARD, HUGO, and STABYLO en
176 considérant des images de la taille $n \times n$ où $n$ varie entre
177 512 et 4096. L'axe des $y$ est exprimé selon une échelle logarithmique.
178 Cette figure illustre bien le qualificatif de \og LOw cost\fg{}
182 \includegraphics[scale=0.4]{images/complexity}
184 \caption{Évaluation de la complexité de WOW/UNIWARD, HUGO et STABYLO}
188 \section{Stéganalyse de STABYLO}\label{sec:steg:stabylo}
189 Comme dans le chapitre~\ref{chap:watermarking},
190 la base BOSS~\cite{Boss10} de 10,000 images (au format RAW, de taille $512\times 512$ en niveau de gris) a été à nouveau prise pour évaluer
191 le schéma face à une épreuve de stéganalyse.
192 Pour des rapports entre le nombre de bits embarqués et le
193 nombre de pixels entre 1/2 et 1/9, le choix de
194 la matrice dupliquée dans STC est celui énoncé dans les travaux de
195 Filler~\cite{FillerJF11}.
198 Le schéma STABYLO a été systématiquement comparé à HUGO,
199 EAISLSBMR~\cite{Luo:2010:EAI:1824719.1824720}, WOW et UNIWARD
200 pour les stratégies fixes (10\%) et adaptatives.
201 Pour établir la valeur de cette dernière stratégie, le filtre de Canny a été
202 paramétré avec une valeur de $T=3$.
203 Lorsque $b$ vaut 7, la taille moyenne du message pouvant être embarqué est de
204 16,445, \textit{i.e.}, un taux d'embarquement moyen de 6,35\%.
205 Pour chaque image, le nombre de bits embarqué par STABYLO est mémorisé et il
206 est demandé à chacun des autres schémas d'embarquer ce même nombre de bits.
212 \setlength{\tabcolsep}{3pt}
213 \begin{tabular}{|c|c|c|c|c|c|c|c|c|c|c|c|}
215 Schéma & \multicolumn{3}{c|}{STABYLO} & \multicolumn{2}{c|}{HUGO}& \multicolumn{2}{c|}{EAISLSBMR} & \multicolumn{2}{c|}{WOW} & \multicolumn{2}{c|}{UNIWARD}\\
217 Stratégie & fixe & \multicolumn{2}{c|}{adapt. ($\approx$6.35\%)} & fixe & adapt. & fixe & adapt. & fixe & adapt. & fixe & adapt. \\
219 Ratio & 10\% & +STC(7) & +STC(6) & 10\%& $\approx$6.35\%& 10\%& $\approx$6.35\% & 10\%& $\approx$6.35\%& 10\%& $\approx$6.35\%\\
221 Ensemble Classifier & 0.35 & 0.47 & 0.47 & 0.48 & 0.49 & 0.43 & 0.47 & 0.48 & 0.49 & 0.46 & 0.49 \\
227 \caption{Stéganalyse de STABYLO\label{table:steganalyse}.}
231 Étant considéré comme le plus exact
232 stéganalyseur dans le domaine spatial,
233 Ensemble Classifier~\cite{DBLP:journals/tifs/KodovskyFH12}
234 a été exécuté avec les caractéristiques
235 CCPEV et SPAM~\cite{DBLP:dblp_conf/mediaforensics/KodovskyPF10}.
236 Les valeurs des erreurs moyennes de la phase de test sont reprises
237 au tableau~\ref{table:steganalyse}.
238 Les schémas HUGO, WOW et UNIWARD sont moins facilement détectables que
239 STABYLO (mais à quel prix concernant la complexité).
240 EAILSBMR obtient des résultats semblables à STABYLO, mais encore pour
241 une complexité plus élevée.
242 Pour être complet, la figure~\ref{fig:error} montre enfin
243 que lorsque les taux d'embarquement sont plus élevés,
244 STABYLO a une sécurité moindre par rapport
245 aux quatre autres schémas.
248 \includegraphics[scale=0.5]{images/error}
250 \caption{Erreurs moyennes lors des tests obtenus par Ensemble Classifier}
255 Le schéma STABYLO a été présenté comme une méthode efficace de stéganographie
256 ayant des résultats comparables
257 à HUGO, WOW et UNIWARD.
258 pour de faibles taux d'embarquement.
259 L'accent a été mis sur la complexité de l'approche pour une implantation
260 effective, même sur des dispositifs à faible capacité de calcul.