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

Private GIT Repository
fin relecture sylvaine
[hdrcouchot.git] / stabylo.tex
index 4a904dfe43a17a7ae7567e201922e68ca88d45e8..5c9bce5bd9344d761907a4cb7895ba14273fe9fa 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. 
 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}.
 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}.
 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 
 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
 qui serait induite par la modification
-de chaque pixel. A partir de cette carte de distortion, il selectionne
-Les pixels les moins  
-
-
- features.
-Thus a distortion measure for each
-pixel is individually determined as the sum of the differences between
-the features of the SPAM computed from the cover and from the stego images.
-The features embedded in WOW and UNIWARD are based on Wavelet-based 
-directional filter. Thus, similarly, the distortion function is 
-the sum  of the differences between these wavelet coefficients  
-computed from the cover and from the stego images.
\ No newline at end of file
+de chaque pixel. Similairement, 
+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  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és à 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 
+iterrativement 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 adoptive 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