]> AND Private Git Repository - hdrcouchot.git/blobdiff - stabylo.tex
Logo AND Algorithmique Numérique Distribuée

Private GIT Repository
la veille
[hdrcouchot.git] / stabylo.tex
index 62f203b6314b355f03ee2ae373128adfe2c2ba79..5afb2ecccf36f8930ddae04635254b51e0f9f574 100644 (file)
@@ -1,4 +1,4 @@
-Dans cette partie, on s'intéresse toujours à la insérer un message dans 
+Dans cette partie, on s'intéresse toujours à  insérer un message dans 
 une image hôte. 
 Si l'objectif des exemples précédents était de marquer l'hôte de 
 manière robuste (et peu visible), c'est ici l'imperceptibilité qui est visée. 
@@ -8,27 +8,253 @@ un hôte vierge d'une image contenant un message.
 Les outils les plus récents et les plus efficaces de cette famille  
 sont  HUGO~\cite{DBLP:conf/ih/PevnyFB10}, WOW~\cite{conf/wifs/HolubF12} 
 et UNIWARD~\cite{HFD14}.
-Pour détecter de la présence ou non d'un message dans une image,
-on peut demander l'oracle à un 
+Pour détecter la présence ou non d'un message dans une image,
+on peut demander l'oracle à 
 un \emph{stéganalyseur}~\cite{LHS08,DBLP:conf/ih/Ker05,FK12}.
-Usuellement, un outil de cette fammille, après 
+Usuellement, un outil de cette famille, après 
 une démarche d'apprentissage, classifie les images
 en fonction de caractéristiques numériques.
 
 
 
 A partir de caractéristiques de voisinage nommées 
-SPAM~\cite{DBLP:journals/tifs/PevnyBF10}, HUGO mesure la distortion 
+SPAM~\cite{DBLP:journals/tifs/PevnyBF10}, HUGO mesure la distorsion 
 qui serait induite par la modification
 de chaque pixel. Similairement, 
-WOW et UNIWARD construisent une carte de distortion mais celle-ci est  
-issue caractéristiques directionnelles calculées à partir d'ondelettes.
-A partir de ces cartes de distortions, chacun de ces algorithmes selectionne
-les pixels dont les modifications induisent la distortion la plus faible 
+WOW et UNIWARD construisent une carte de distorsion mais celle-ci est  
+issue de caractéristiques directionnelles calculées à partir d'ondelettes.
+A partir de ces cartes de distorsion, chacun de ces algorithmes sélectionne
+les pixels dont les modifications induisent la distorsion la plus faible 
 possible. Ceci revient à définir une fonction de signification $u$.
 La complexité du schéma de stéganographie est peu ou prou celle du calcul
-de cette carte, et elle est élevée (cf partie~\ref{XXXXXXXX}) dans le cas
+de cette carte, et elle est élevée  dans le cas
 de ces algorithmes.
+Nous avons proposé un algorithme~\cite{ccg15:ij}
+de complexité beaucoup plus faible 
+et dont la détectabilité est satisfaisante.
+Ce chapitre détaille les clefs de ce schéma 
 
 
 
+\section{Présentation de l'approche} 
+
+Le diagramme de flux donné à la Fig.~\ref{fig:sch} résume l'approche 
+du schéma STABYLO (pour STeganography with  Adaptive, Bbs, binarY embedding 
+at LOw cost). L'embarquement est synthétisé à la Fig.~\ref{fig:sch:emb} et 
+l'extraction à la Fig.~\ref{fig:sch:ext}.
+
+\begin{figure*}%[t]
+  \begin{center}
+    \subfigure[Data Embedding]{
+      \begin{minipage}{0.4\textwidth}
+        \begin{center}
+            %\includegraphics[scale=0.45]{emb}
+            \includegraphics[scale=0.4]{images/emb}
+        \end{center}
+      \end{minipage}
+      \label{fig:sch:emb}
+    } 
+\hfill
+    \subfigure[Data Extraction]{
+      \begin{minipage}{0.49\textwidth}
+        \begin{center}
+            \includegraphics[scale=0.4]{images/dec}
+        \end{center}
+      \end{minipage}
+      \label{fig:sch:ext}
+    }%\hfill
+  \end{center}
+  \caption{Présentation générale de STABYLO}
+  \label{fig:sch}
+\end{figure*}
+
+
+La sécurité de l'encryptage est garantie par le système asymétrique 
+de Blum-Goldwasser~\cite{Blum:1985:EPP:19478.19501} basé sur le PRNG
+Blum Blum Shub~\cite{DBLP:conf/crypto/ShubBB82}.
+Ainsi, à partir d'une clef $k$ et un message \textit{mess}, 
+ce cryptosystem construit 
+le message $m$.
+
+
+\subsection{Un embarquement dans les bords}\label{sub:edge}
+L'idée d'embarquer dans les bords d'une image
+repose sur le fait que les pixels de ceux-ci représentent déjà une 
+rupture de continuité entre pixels voisins. 
+Une faible modification de ceux-ci n'aurait donc pas un grand impact sur la qualité
+de l'image, condition nécessaire lorsqu'on prétend être indétectable.
+
+STABYLO est basé sur les 
+filtres de Canny~\cite{Canny:1986:CAE:11274.11275}, comme démarche de détection 
+de bords retenue pour sa complexité faible et ses possibilités d'implantation
+sur plusieurs  supports (GPU, FPGA notamment). Rien n'interdirait cependant 
+de  l'appliquer à d'autres approches de détection de bord (Sobel, à base de
+logique floue~\cite{KF11},\ldots).
+Cette détection de bords ne considère que les $b$
+bits les plus significatifs (pratiquement $b$ vaut $6$ ou $7$)
+et un masque de sélection $T$ $T=3,5,7$).
+Plus élevée est la valeur de ce masque, plus grand est le nombre 
+de pixels de bord mais plus grossière est l'approche.
+Dans le diagramme de flux, cette étape de sélection 
+est représentée par ``x=Edge Detection(b, T, X)''.
+La section suivante montre comment le schéma s'adapte 
+aux valeurs de $m$ et de $x$. 
+
+\subsection{Un embarquement adaptatif}\label{sub:adaptive}
+Nous argumentons que le schéma d'embarquement doit s'adapter 
+au message $m$ et au nombre de bits disponibles pour cet embarquement.
+Deux stratégies sont possibles dans STABYLO. 
+Dans la première, dite \emph{adaptative}, le taux d'embarquement 
+(rapport entre le nombre de  bits embarqués et le nombre de pixels 
+modifiés) dépend du nombre de bits disponibles à l'issue de l'extraction 
+des pixels de bords. Si ce nombre de bits est inférieur au double de
+la taille du message, celui-ci est découpé en plusieurs parties.
+%La justification de ce rapport de 1 à 2 à donné ci dessous dans la partie STC.
+Dans la seconde dite \emph{fixe}, ce taux est fixe et l'algorithme augmente 
+itérativement la valeur de $T$ jusqu'à obtenir à nouveau deux fois plus de bits 
+de bords qu'il n'y en a dans le message.
+
+STABYLO applique alors 
+par défaut  l'algorithme STC~\cite{DBLP:journals/tifs/FillerJF11}
+pour modifier aussi peu que possible les bits parmi ceux dont il dispose.
+Dans le cas où c'est la stratégie adaptative qui est choisie, le paramètre
+$\rho$ de cet algorithme vaut 1 pour chacun des bits.
+Dans le cas contraire, la valeur de ce paramètre varie en 
+fonction du seuil $T$ de l'algorithme de détection de bord comme suit:
+$$  
+\rho_X= \left\{ 
+\begin{array}{l}
+1 \textrm{ pour un bord défini par $T=3$,} \\
+10 \textrm{ pour un bord défini par  $T=5$,} \\
+100 \textrm{ pour un bord défini par  $T=7$.}
+\end{array}
+\right.
+$$
+
+
+
+
+\subsection{Extraction du message}\label{sub:extract}
+Résumée à la figure~\ref{fig:sch:ext}, l'extraction du message 
+reproduit le processus d'embarquement dans l'ordre inverse
+puisque chaque étape est inversible.
+
+
+
+\section{Analyse de Complexité}
+Dans cette section, on justifie qualificatif \og LOw cost\fg{} de STABYLO en 
+comparant l'ordre de grandeur de son temps d'exécution avec ceux des 
+principaux schémas existants à savoir HUGO~\cite{DBLP:conf/ih/PevnyFB10},
+WOW~\cite{conf/wifs/HolubF12} et UNIWARD~\cite{HFD14}.
+Chacune de ces quatre méthodes commence par calculer un carte de distorsion 
+de l'ensemble des pixels et se termine en appliquant l'algorithme STC.
+Comme cette dernière étape est commune à toutes les approches, on évalue 
+sa complexité à part.
+Dans tout ce qui suit, on considère une image carrée de taille
+$n \times n$.
+Les preuves de ces théorèmes sont données dans~\cite{ccg15:ij}
+
+
+\begin{restatable}[Complexité d'algorithmes de stéganographie]{theorem}{theocplstegano}
+\label{th:cplxt:stegano}
+\begin{itemize}
+\item Le schéma HUGO a une complexité de l'ordre de  $\theta(2 \times n^2(343^2 + \ln(n)))$
+\item Les schémas WOW et UNIWARD ont une complexité de l'ordre de 
+$\theta(6n^4\ln(n) + n^2)$.
+\item Le schéma STABYLO a une complexité dont l'ordre est $\theta((5^3+4T+1)n^2)$.
+\end{itemize}
+\end{restatable}
+
+D'après~\cite{DBLP:journals/tifs/FillerJF11}, la complexité de 
+STC est le l'ordre de $\theta(2^h.n)$ où $h$
+est la taille de la matrice dupliquée. Cette complexité linéaire 
+est donc négligeable par rapport au reste.
+
+
+La figure~\ref{fig:compared} représente graphiquement les complexités 
+des étapes d'embarquement des schémas WOW/UNIWARD, HUGO, and STABYLO en
+considérant des images de la taille $n \times n$ où $n$ varie entre 
+512 et 4096. L'axe des $y$ est exprimé selon une échelle logarithmique.
+Cette figure illustre bien le qualificatif de \og LOw cost\fg{} 
+attribué à STABYLO. 
+\begin{figure}
+\begin{center}
+\includegraphics[scale=0.4]{images/complexity}
+\end{center}
+\caption{Évaluation de la complexité de WOW/UNIWARD, HUGO et STABYLO}
+\label{fig:compared} 
+\end{figure}
+
+\section{Stéganalyse de STABYLO}\label{sec:steg:stabylo}
+Comme dans le chapitre~\ref{chap:watermarking}, 
+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 
+le schéma face à une épreuve de  stéganalyse.
+Pour des rapports entre le nombre de  bits embarqués et le 
+nombre de pixels  entre 1/2 et 1/9, le choix de 
+la matrice dupliquée dans STC est celui énoncé dans les travaux de 
+Filler~\cite{FillerJF11}.
+
+
+Le schéma STABYLO a été systématiquement comparé à HUGO, 
+EAISLSBMR~\cite{Luo:2010:EAI:1824719.1824720},  WOW et UNIWARD
+pour les stratégies fixes (10\%) et adaptatives.
+Pour établir la valeur de cette dernière stratégie, le filtre de Canny a été 
+paramétré avec une valeur de $T=3$. 
+Lorsque $b$ vaut 7, la taille moyenne du message pouvant être embarqué est de 
+16,445, \textit{i.e.},  un taux d'embarquement moyen de 6,35\%.
+Pour chaque image, le nombre de bits embarqué par STABYLO est mémorisé et il 
+est demandé à chacun des autres schémas d'embarquer ce même nombre de bits. 
+
+
+\begin{table*}
+\begin{center}
+\begin{small}
+\setlength{\tabcolsep}{3pt}
+\begin{tabular}{|c|c|c|c|c|c|c|c|c|c|c|c|}
+\hline
+Schéma & \multicolumn{3}{c|}{STABYLO} & \multicolumn{2}{c|}{HUGO}& \multicolumn{2}{c|}{EAISLSBMR} &  \multicolumn{2}{c|}{WOW} &  \multicolumn{2}{c|}{UNIWARD}\\
+\hline
+Stratégie & fixe &   \multicolumn{2}{c|}{adapt. ($\approx$6.35\%)}  & fixe & adapt. & fixe & adapt. & fixe & adapt. & fixe & adapt. \\
+\hline
+Ratio & 10\% &     +STC(7) & +STC(6)   & 10\%& $\approx$6.35\%& 10\%& $\approx$6.35\% & 10\%& $\approx$6.35\%& 10\%& $\approx$6.35\%\\ 
+\hline
+Ensemble Classifier & 0.35 & 0.47 & 0.47     & 0.48 &  0.49  &  0.43  & 0.47 & 0.48 & 0.49 & 0.46 & 0.49 \\
+
+\hline
+\end{tabular}
+\end{small}
+\end{center}
+\caption{Stéganalyse de STABYLO\label{table:steganalyse}.} 
+\end{table*}
+
+
+Étant considéré  comme le plus exact 
+stéganalyseur dans le domaine spatial, 
+Ensemble Classifier~\cite{DBLP:journals/tifs/KodovskyFH12}
+a été exécuté avec les caractéristiques  
+CCPEV et  SPAM~\cite{DBLP:dblp_conf/mediaforensics/KodovskyPF10}.
+Les valeurs des erreurs moyennes de la phase de test sont reprises    
+au tableau~\ref{table:steganalyse}.
+Les schémas HUGO,  WOW et UNIWARD sont moins facilement détectables que 
+STABYLO (mais à quel prix concernant la complexité). 
+EAILSBMR obtient des résultats semblables à STABYLO, mais encore pour 
+une complexité plus élevée.
+Pour être complet, la figure~\ref{fig:error} montre enfin 
+que lorsque les  taux d'embarquement  sont plus élevés, 
+STABYLO a une sécurité moindre par rapport 
+aux quatre autres schémas.
+\begin{figure}
+\begin{center}
+\includegraphics[scale=0.5]{images/error}
+\end{center}
+\caption{Erreurs moyennes lors des tests obtenus par Ensemble Classifier}
+\label{fig:error} 
+\end{figure}
+
+\section{Conclusion}
+Le schéma STABYLO a été présenté comme une méthode efficace de stéganographie
+ayant des résultats comparables 
+à HUGO, WOW et  UNIWARD.
+pour de faibles taux d'embarquement.
+L'accent a été mis sur la complexité de l'approche pour une implantation
+effective, même sur des dispositifs à faible capacité de calcul.
\ No newline at end of file