The flowcharts given in Fig.~\ref{fig:sch}
summarize our steganography scheme denoted by
-STABYLO, which stands for STeganography with cAnny, Bbs, binarY embedding at LOw cost.
+STABYLO, which stands for STeganography with
+Adaptive, Bbs, binarY embedding at LOw cost.
What follows are successively some details of the inner steps and the flows both inside
the embedding stage (Fig.~\ref{fig:sch:emb})
and inside the extraction one (Fig.~\ref{fig:sch:ext}).
\subsection{Security considerations}\label{sub:bbs}
-Among methods of the message encryption/decryption
+Among the methods of message encryption/decryption
(see~\cite{DBLP:journals/ejisec/FontaineG07} for a survey)
we implement the Blum-Goldwasser cryptosystem~\cite{Blum:1985:EPP:19478.19501}
that is based on the Blum Blum Shub~\cite{DBLP:conf/crypto/ShubBB82}
Many techniques have been proposed in the literature to detect
edges in images (whose noise has been initially reduced).
-They can be separated in two categories: first and second order detection
+They can be separated into two categories: first and second order detection
methods on the one hand, and fuzzy detectors on the other hand~\cite{KF11}.
In first order methods like Sobel, Canny~\cite{Canny:1986:CAE:11274.11275}, \ldots,
a first-order derivative (gradient magnitude, etc.) is computed
Practically, the Canny algorithm generates
a set of edge pixels related to a threshold that is decreasing
until its cardinality
-is sufficient.
+is sufficient. Even in this situation, our scheme is adapting
+its algorithm to meet all the user's requirements.
-
-Two methods may further be applied to select bits that
-will be modified.
+Once the map of possibly modified pixels is computed,
+two methods may further be applied to extract bits that
+are really modified.
The first one randomly chooses the subset of pixels to modify by
applying the BBS PRNG again. This method is further denoted as a \emph{sample}.
Once this set is selected, a classical LSB replacement is applied to embed the
\begin{flushleft}
\begin{scriptsize}
The skies they were ashen and sober;\linebreak
-$~$ The leaves they were crisped and sere—\linebreak
-$~$ The leaves they were withering and sere;\linebreak
+$\qquad$ The leaves they were crisped and sere—\linebreak
+$\qquad$ The leaves they were withering and sere;\linebreak
It was night in the lonesome October\linebreak
-$~$ Of my most immemorial year;\linebreak
+$\qquad$ Of my most immemorial year;\linebreak
It was hard by the dim lake of Auber,\linebreak
-$~$ In the misty mid region of Weir—\linebreak
+$\qquad$ In the misty mid region of Weir—\linebreak
It was down by the dank tarn of Auber,\linebreak
-$~$ In the ghoul-haunted woodland of Weir.
+$\qquad$ In the ghoul-haunted woodland of Weir.
\end{scriptsize}
\end{flushleft}
\end{minipage}
The edge detection returns 18,641 and 18,455 pixels when $b$ is
respectively 7 and 6. These edges are represented in Figure~\ref{fig:edge}.
-
+When $b$ is 7, it remains one bit per pixel to build the cover vector.
+in this configuration, this leads to a cover vector of size 18,641 if b is 7
+and 36,910 if $b$ is 6.
\begin{figure}[t]
\begin{center}
-Only 9,320 bits (resp. 9,227 bits) are available for embedding
-in the former configuration where $b$ is 7 (resp. where $b$ is 6).
-In both cases, about the third part of the poem is hidden into the cover.
+The STC algorithm is optimized when the rate between message length and
+cover vector length is less than 1/2.
+So, only 9,320 bits are available for embedding
+in the configuration where $b$ is 7.
+
+When $b$ is 6, we could have considered 18,455 bits for the message.
+However, first experiments have shown that modifying this number of bits is too
+easily detectable.
+So, we choose to modify the same amount of bits (9,320) and keep STC optimizing
+which bits to change among the 36,910 bits.
+
+In the two cases, about the third part of the poem is hidden into the cover.
Results with \emph{adaptive+STC} strategy are presented in
Fig.~\ref{fig:lenastego}.
-\section{Complexity Analysis}\label{sub:complexity}
-This section aims at justifying the leightweight attribute of our approach.
-To be more precise, we compare the complexity of our schemes to the
-state of the art steganography, namely HUGO~\cite{DBLP:conf/ih/PevnyFB10}.
-
-
-In what folllows, we consider an $n \times n$ square image.
-First of all, HUGO starts with computing the second order SPAM Features.
-This steps is in $O(n^2 + 2.343^2)$ due to the calculation
-of the difference arrays and next of the 686 features (of size 343).
-Next for each pixel, the distortion measure is calculated by +1/-1 modifying
-its value and computing again the SPAM
-features. Pixels are thus selected according to their ability to provide
-an image whose SPAM features are close to the original one.
-The algorithm is thus computing a distance between each Feature,
-which is at least in $O(343)$ and an overall distance between these
-metrics which is in $O(686)$. Computing the distance is thus in
-$O(2\time 343^2)$ and this mdification is thus in $O(2\time 343^2 \time n^2)$.
-Ranking these results may be achieved with a insertion sort which is in $2.n^2 \ln(n)$.
-The overall complexity of the pixel selection is thus
-$O(n^2 +2.343^2 + 2\time 343^2 \time n^2 + 2.n^2 \ln(n))$, \textit{i.e}
-$O(2.n^2(343^2 + \ln(n)))$.
-
-Our edge selection is based on a Canny Filter,
-whose complexity is in $O(2n^2.\ln(n))$ thanks to the convolution step
-which can be implemented with FFT.
-The complexity of Hugo is at least $343^2/\ln{n}$ times higher than our scheme.
-
-
-
-
-