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.
-What follows successively details all the inner steps and flows inside
+STABYLO, which stands for STeganography with cAnny, Bbs, binarY embedding at LOw cost.
+What follows are successively details of the inner steps and flows inside
both the embedding stage (Fig.~\ref{fig:sch:emb})
and the extraction one (Fig.~\ref{fig:sch:ext}).
\subfloat[Data Embedding.]{
\begin{minipage}{0.49\textwidth}
\begin{center}
- \includegraphics[width=5cm]{emb.pdf}
- %\includegraphics[width=5cm]{emb.ps}
+ %\includegraphics[width=5cm]{emb.pdf}
+ \includegraphics[width=5cm]{emb.ps}
\end{center}
\end{minipage}
\label{fig:sch:emb}
\subfloat[Data Extraction.]{
\begin{minipage}{0.49\textwidth}
\begin{center}
- \includegraphics[width=5cm]{rec.pdf}
- %\includegraphics[width=5cm]{rec.ps}
+ %\includegraphics[width=5cm]{rec.pdf}
+ \includegraphics[width=5cm]{rec.ps}
\end{center}
\end{minipage}
\label{fig:sch:ext}
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
-methods on the one hand, and fuzzy detectors in the second hand~\cite{KF11}.
+methods on the one hand, and fuzzy detectors on the other hand~\cite{KF11}.
In first order methods like Sobel,
a first-order derivative (gradient magnitude, etc.) is computed
to search for local maxima, whereas in second order ones, zero crossings in a second-order derivative, like the Laplacian computed from the image,
are searched in order to find edges.
-For fuzzy edge methods, they are obviously based on fuzzy logic to highlight
+As for as fuzzy edge methods are concerned, they are obviously based on fuzzy logic to highlight
edges.
Canny filters, on their parts, are an old family of algorithms still remaining a state-of-the-art edge detector. They can be well approximated by first-order derivatives of Gaussians.
%%
%accurate idea on what would produce such algorithm compared to another.
%That is
%why we have chosen
-As Canny algorithm is well known and studied, fast, and implementable
+As the Canny algorithm is well known and studied, fast, and implementable
on many kinds of architectures like FPGAs, smartphones, desktop machines, and
GPUs, we have chosen this edge detector for illustrative purpose.
Of course, other detectors like the fuzzy edge methods
-merit much further attention, which is why we intend
+deserve much further attention, which is why we intend
to investigate systematically all of these detectors in our next work.
%we do not pretend that this is the best solution.
that is based on the Blum Blum Shub~\cite{DBLP:conf/crypto/ShubBB82} pseudorandom number generator (PRNG)
for security reasons.
It has been indeed proven~\cite{DBLP:conf/crypto/ShubBB82} that this PRNG
-has the cryptographically security property, \textit{i.e.},
+has the property of cryptographical security, \textit{i.e.},
for any sequence of $L$ output bits $x_i$, $x_{i+1}$, \ldots, $x_{i+L-1}$,
there is no algorithm, whose time complexity is polynomial in $L$, and
which allows to find $x_{i-1}$ and $x_{i+L}$ with a probability greater
\subsection{Data Extraction}
-Message extraction summarized in Fig.~\ref{fig:sch:ext} follows data embedding
+The message extraction summarized in Fig.~\ref{fig:sch:ext} follows data embedding
since there exists a reverse function for all its steps.
-First of all, the same edge detection is applied (on the 7 first bits) to get set,
+First of all, the same edge detection is applied (on the 7 first bits) to
+get the set of LSBs,
which is sufficiently large with respect to the message size given as a key.
Then the STC reverse algorithm is applied to retrieve the encrypted message.
Finally, the Blum-Goldwasser decryption function is executed and the original