X-Git-Url: https://bilbo.iut-bm.univ-fcomte.fr/and/gitweb/hdrcouchot.git/blobdiff_plain/ee3d36e30a972a8ed387bd09e148ff498315ae9b..d33e664452e3655370cbe069e3f6fbd16842c818:/stabylo.tex diff --git a/stabylo.tex b/stabylo.tex index e926915..5c9bce5 100644 --- a/stabylo.tex +++ b/stabylo.tex @@ -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,26 +8,26 @@ 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 @@ -69,7 +69,7 @@ l'extraction à la Fig.~\ref{fig:sch:ext}. \end{figure*} -La sécurité de l'encryptage est garantie par le système asymmétrique +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}, @@ -78,11 +78,11 @@ le message $m$. \subsection{Un embarquement dans les bords}\label{sub:edge} -L'idée d'embarquer dans des bords dans une image +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'a donc pas un grand impact sur la qualité -de l'image, condition nécéessaire lorsqu'on prétend être indétectable. +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 @@ -94,31 +94,31 @@ 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 bors mais plus grossière est l'approche. +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 adaptif}\label{sub:adaptive} +\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{adaptive}, le taux d'embarquement -(rapport entre le nombre de bits embarqués par rapport au nombre de pixels +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. +%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 -iterativement la valeur de $T$ jusqu'à obtenir à nouveau deux fois plus de bits +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'agorithme STC~\cite{DBLP:journals/tifs/FillerJF11} -pour ne modifier aussi peu que posible les bits parmi ceux dont il dispose. -Dans le cas où c'est la stratégie adaptive qui est choisie, le paramètre -$\rho$ de cet algorithme vaut 1 pour chaqun des bits. +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: $$ @@ -146,40 +146,28 @@ 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 distortion +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 en annexes~\ref{anx:preuve:cplxt}. +Les preuves de ces théorèmes sont données dans~\cite{ccg15:ij} -\begin{theorem}\label{th:cplxt:hugo} -Le schéma HUGO a une complexité de l'ordre de -$\theta(2 \times n^2(343^2 + \ln(n)))$ -\end{theorem} - -\begin{theorem}\label{th:cplxt:wow} -Le schéma WOW a une complexité de l'ordre de -$\theta(6n^4\ln(n) + n^2)$. -\end{theorem} - - -\begin{theorem}\label{th:cplxt:uniward} -Le schéma UNIWARD a une complexité dont l'ordre est supérieur à +\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)$. -\end{theorem} - -\begin{theorem}\label{th:cplxt:stabylo} -Le schéma STABYLO a une complexité dont l'ordre est -$\theta((5^3+4T+1)n^2)$. -\end{theorem} - +\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. Cett complexité linéaire +est la taille de la matrice dupliquée. Cette complexité linéaire est donc négligeable par rapport au reste. @@ -187,19 +175,86 @@ 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 fait que le qualificatif de \og LOw cost\fg{} +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{Evaluation de la complexité de WOW/UNIWARD, HUGO et STABYLO} +\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