1 La propriété de régularité des fonctions chaotiques est à l'origine du marquage de documents numériques: de tout média, même tronqué, on peut réextraire la
3 Dans ce chapitre, le processus d'embarquement d'un message dans
4 un média est formalisé en section~\ref{sec:watermarking:formulation}.
5 La sécurité des approches de watermarking est étudiée selon deux approches:
6 l'approche probabiliste~\ref{sec:watermarking:security:probas}
7 et l'approche chaotique~\ref{sec:watermarking:security:chaos}.
8 Une proposition d'embarquement dans le domaine fréquentiel est abordée
9 en section~\ref{sec:watermarking:frequentiel}.
11 On remarque cependant que l'algorithme formalisé dans ces sections ne permet
12 d'embarquer \textit{in fine} qu'un bit qui est vrai si l'image est marquée
13 et faux dans le cas contraire.
14 Il ne permet pas d'extraire le contenu du message initial à partir de
15 l'image marquée. La section~\ref{sec:watermarking:extension}
16 propose une solution à ce problème.
18 Les trois premières sections de ce chapitre sont une reformulation
19 du chapitre 22 de~\cite{guyeux10}. Elles ont été publiées à~\cite{bcg11:ij}.
20 L'extension a quant à elle été publiée dans~\cite{bcfg+13:ip}.
24 \section{Processus de marquage binaire}\label{sec:watermarking:formulation}
26 Par la suite, le message numérique qu'on cherche à embarquer est
27 noté $y$ et le support dans lequel se fait l'insertion est noté $x$.
29 Le processus de marquage est fondé sur les itérations unaires d'une fonction
30 selon une stratégie donnée. Cette fonction et cette stratégie
31 sont paramétrées par un entier naturel permettant à la méthode d'être
32 appliquable à un média de n'importe quelle taille.
33 On parle alors respectivement de \emph{mode} et d'\emph{adapteur de stratégies}
35 \subsection{Embarquement}
40 Soit $\mathsf{N}$ un entier naturel.
41 Un mode est une application de $\mathds{B}^{\mathsf{N}}$
47 \begin{Def}[Adapteur de Stratégie]
48 \label{def:strategy-adapter}
50 Un \emph{adapteur de stratégie} est une fonction $\mathcal{S}$
51 de $\Nats$ dans l'ensemble des séquences d'entiers
52 qui associe à chaque entier naturel
54 $S \in \llbracket 1, n\rrbracket^{\mathds{N}}$.
58 On définit par exemple l'adapteur CIIS (\emph{Chaotic Iterations with Independent Strategy})
59 paramétré par $(K,y,\alpha,l) \in [0,1]\times [0,1] \times ]0, 0.5[ \times \mathds{N}$
60 qui associe à chque entier $n \in \Nats$ la suite
61 $(S^t)^{t \in \mathds{N}}$ définie par:
63 \item $K^0 = \textit{bin}(y) \oplus \textit{bin}(K)$: $K^0$ est le nombre binaire (sur 32 bits)
64 égal au ou exclusif (xor)
65 entre les décompositions binaires sur 32 bits des réels $y$ et $K$
66 (il est aussi compris entre 0 et 1),
67 \item $\forall t \leqslant l, K^{t+1} = F(K^t,\alpha)$,
68 \item $\forall t \leqslant l, S^t = \left \lfloor n \times K^t \right \rfloor + 1$,
69 \item $\forall t > l, S^t = 0$,
71 où est la fonction chaotique linéaire par morceau~\cite{Shujun1}.
72 Les paramètres $K$ et $\alpha$ de cet adapteur de stratégie peuvent être vus
74 On remarque que cette stratégie est unaire.
79 On peut attribuer à chaque bit du média hôte $x$ sa valeur d'importance
80 sous la forme d'un réel.
81 Ceci se fait à l'aide d'une fonction de signification.
84 \begin{Def}[Fonction de signification ]
85 Une \emph{fonction de signification }
86 est une fonction $u$ qui a toute
87 séquence finie de bit $x$ associe la séquence
88 $(u^k(x))$ de taille $\mid x \mid$ à valeur dans les réels.
89 Cette fonction peut dépendre du message $y$ à embarquer, ou non.
92 Pour alléger le discours, par la suite, on nottera $(u^k(x))$ pour $(u^k)$
93 lorsque cela n'est pas ambigüe.
94 Il reste à partionner les bits de $x$ selon qu'ils sont
95 peu, moyennement ou très significatifs.
97 \begin{Def}[Signification des bits]\label{def:msc,lsc}
98 Soit $u$ une fonction de signification,
99 $m$ et $M$ deux réels t.q. $m < M$. Alors:
100 $u_M$, $u_m$ et $u_p$ sont les vecteurs finis respectivements des
101 \emph{bits les plus significatifs (MSBs)} de $x$,
102 \emph{bits les moins significatifs (LSBs)} de $x$
103 \emph{bits passifs} of $x$ définis par:
105 u_M &=& \left( k ~ \big|~ k \in \mathds{N} \textrm{ et } u^k
106 \geqslant M \textrm{ et } k \le \mid x \mid \right) \\
107 u_m &=& \left( k ~ \big|~ k \in \mathds{N} \textrm{ et } u^k
108 \le m \textrm{ et } k \le \mid x \mid \right) \\
109 u_p &=& \left( k ~ \big|~ k \in \mathds{N} \textrm{ et }
110 u^k \in ]m;M[ \textrm{ et } k \le \mid x \mid \right)
114 On peut alors définir une fonction de décompostion
115 puis de recomposition pour un hôte $x$:
118 \begin{Def}[Fonction de décomposition ]
119 Soit $u$ une fonction de signification,
120 $m$ et $M$ deux réels t.q $m < M$.
121 Tout hôte $x$ peut se décomposer en
122 $(u_M,u_m,u_p,\phi_{M},\phi_{m},\phi_{p})$
125 \item $u_M$, $u_m$, et $u_p$ construits comme à la définition~\label{def:msc,lsc},
126 \item $\phi_{M} = \left( x^{u^1_M}, x^{u^2_M}, \ldots,x^{u^{|u_M|}_M}\right)$,
127 \item $\phi_{m} = \left( x^{u^1_m}, x^{u^2_m}, \ldots,x^{u^{|u_m|}_m} \right)$,
128 \item $\phi_{p} =\left( x^{u^1_p}, x^{u^2_p}, \ldots,x^{u^{|u_p|}_p}\right) $.
130 La fonction qui associe $(u_M,u_m,u_p,\phi_{M},\phi_{m},\phi_{p})$
131 pour chaque hôte $x$ est la \emph{fonction de décomposition}, plus tard notée
132 $\textit{dec}(u,m,M)$ puisqu'elle est paramétrée par
137 \begin{Def}[Recomposition]
139 $(u_M,u_m,u_p,\phi_{M},\phi_{m},\phi_{p}) \in
148 \item les ensembles $u_M$, $u_m$ et $u_p$ forment une partition de $[n]$;
149 \item $|u_M| = |\varphi_M|$, $|u_m| = |\varphi_m|$ et $|u_p| = |\varphi_p|$.
151 Soit la base canonique sur l'espace vectoriel $\mathds{R}^{\mid x \mid}$ composée des vecteurs
152 $e_1, \ldots, e_{\mid x \mid}$.
153 On peut construire le vecteur
156 \sum_{i=1}^{|u_M|} \varphi^i_M . e_{{u^i_M}} +
157 \sum_{i=1}^{|u_m|} \varphi^i_m .e_{{u^i_m}} +
158 \sum_{i=1}^{|u_p|} \varphi^i_p. e_{{u^i_p}}
160 La fonction qui associe $x$ à chaque sextuplet
161 $(u_M,u_m,u_p,\phi_{M},\phi_{m},\phi_{p})$ défini comme ci-dessus est appelée
162 \emph{fonction de recomposition}.
165 Un embarquement consiste à modifier les valeurs de
166 $\phi_{m}$ (de $x$) en tenant compte de $y$.
167 Cela se formalise comme suit:
169 \begin{Def}[Embarquement de message]
170 Soit une fonction de décomposition $\textit{dec}(u,m,M)$,
172 $(u_M,u_m,u_p,\phi_{M},\phi_{m},\phi_{p})$ son image par $\textit{dec}(u,m,M)$,
173 et $y$ un média numérique de taille $|u_m|$.
174 Le média $z$ résultant de l'embarquement d'$y$ dans $x$ est l'image de
175 $(u_M,u_m,u_p,\phi_{M},y,\phi_{p})$
176 par la fonction de recomposition $\textit{rec}$.
178 % $g : \Bool^{|u_m|} \times \Bool^{|u_m|} \to \Bool^{|u_m|} $
179 % est la fonction de modification des bits de $u_m$ selon $y$.
183 On peut étendre l'algorithme dhCI~\cite{gfb10:ip} d'embarquement de message comme suit:
185 \begin{Def}[Embarquement dhCI étendu]
187 Soit $\textit{dec}(u,m,M)$ une function de décomposition,
189 $\mathcal{S}$ un adapteur de stratégie,
191 $(u_M,u_m,u_p,\phi_{M},\phi_{m},\phi_{p})$
192 sont image par $\textit{dec}(u,m,M)$,
193 $q$ un entier naturel positif
194 et $y$ un média numérique de taille $l=|u_m|$.
196 L'algorithme d'embarquement de message associe à chaque
197 couple $(x,y)$ le média $z$ résultat de l'embarquement de
198 $\hat{y}$ dans $x$, t. q.:
201 \item le mode $f$ est instancié avec le paramètre $l=|u_m|$, engendrant la
202 fonction $f_{l}:\Bool^{l} \rightarrow \Bool^{l}$;
203 \item l'adapteur de stratégie $\mathcal{S}$ est intancié avec le paramètre
204 $y$, engendrant une stratégie $S_y \in [l]$;
205 \item on itère la fonction $G_{f_l}$ en prenant la configuration
206 initiale $(S_y,\phi_{m})$ selon le schéma défini
207 à l'équation~(\ref{eq:sch:unaire}).
208 \item $\hat{y}$ est le second membre du $q^{\textrm{ème}}$ terme obtenu.
213 La figure~\ref{fig:organigramme} synthétise la démarche.
217 %\includegraphics[width=8.5cm]{organigramme2.pdf}
218 \includegraphics[width=8.5cm]{organigramme22}
219 \caption{The dhCI dissimulation scheme}
220 \label{fig:organigramme}
226 \subsection{Détection d'un media marqué}\label{sub:wmdecoding}
228 On caractérise d'abord ce qu'est un média marqué selon la méthode énoncée
229 à la section précédente. On considère que l'on connaît
230 la marque à embarquer $y$, le support $x$ et que l'on a face à soit un média
234 \begin{definition}[Média marqué]
235 Soit $\textit{dec}(u,m,M)$ une fonction de décomposition
237 $\mathcal{S}$ un adapteur de stratégie
238 $q$ un entier naturel strictement positif,
239 $y$ un média digital et soit
240 $(u_M,u_m,u_p,\phi_{M},\phi_{m},\phi_{p})$ l'image par
241 $\textit{dec}(u,m,M)$ du média $x$.
242 Alors, $z$ est \emph{marqué} avec $y$ si l'image
243 par $\textit{dec}(u,m,M)$ of $z$ is
244 $(u_M,u_m,u_p,\phi_{M},\hat{y},\phi_{p})$, où
245 $\hat{y}$ est le second membre de $G_{f_l}^q(S_y,\phi_{m})$.
248 % Plusieurs stratégies peuvent être utilisées pour déterminer si une image $z$
249 % est marquée, en particulier si l'image a été attaquée entre temps.
250 % On s'intéressera aux mesures de similarité entre $x$ et $z$.
252 \section{Analyse de sécurité (probabilistes)}\label{sec:watermarking:security:probas}
255 Récemment~\cite{Cayre2005,Perez06} ont proposé des classes de sécurité pour le
256 marquage d'information. Parmis celles-ci, la stego-sécurité a été au centre
257 des travaux puisqu'elle représente la classe la plus élevée dans le contexte où
258 l'attaquant n'a accès qu'à l'hôte marqué $z$.
260 Cette définition probabiliste est rappelée ci-après.
261 Soit $\mathds{K}$ un ensemble de clefs, $p(X)$ un modèle porbabiliste
262 de $N_0$ hôtes, et $p(Y|K)$ le modèle probabiliste de $N_0$ contenus marqués avec la
263 même clé $K$ et le même algorithme d'embarquement.
265 \begin{definition}[Stégo-Sécurité~\cite{Cayre2008}]
266 \label{Def:Stego-security}
267 La fonction d'embarquement is \emph{stégo-sécure}
268 si la propriété $\forall K \in \mathds{K}, p(Y|K)=p(X)$ est établie.
271 Il a déjà été démontré~\cite{guyeuxphd,gfb10:ip}
272 que l'algorithme de marquage dont le mode est la fonction
273 négation est stégo-sécure.
274 Un des intérêts de l'algorithme présenté ici est qu'il est paramétré par un mode.
275 Lorsque celui-ci a les même propriétés que celles vues pour la création de PRNG (\textit{i.e.} graphe des itérations fortement connexes et matrice de Markov doublement
276 stochastique), on a un marquage qui peut être rendu stego-secure à $\epsilon$ pret,
277 ce que précise le théorème suivant:
279 \begin{theorem}\label{th:stego}
280 Soit $\epsilon$ un nombre positif,
281 $l$ un nombre de LSBs,
282 $X \sim \mathbf{U}\left(\mathbb{B}^l\right)$,
283 un adapteur de stratégie uniformémement distribué indépendant de $X$
284 $f_l$ un mode tel que
285 $\textsc{giu}(f_l)$ est fortement connexe et la
286 matrice de Markov associée à $f_l$ est doublement stochastique.
287 Il existe un nombre $q$ d'itérations tel que
288 $|p(Y|K)- p(X)| < \epsilon$.
293 \section{Analyse de sécurité (chaos)}\label{sec:watermarking:security:chaos}
294 On rappelle uniquement la définition de chaos-sécurité
295 introduite dans~\cite{guyeuxphd}.
298 \begin{definition}[Chaos-sécurité]
299 \label{DefinitionChaosSecure}
300 Un schéma de marquage $S$ est chaos-sécure sur un espace topologique
302 si sa version itérative
303 a un comprtement chaotique sur celui-ci.
306 Tout repose ainsi sur la capacité que l'on a à produire des fonctions
307 dont le graphe des itérations unaires sera fortement connexe.
308 Ceci a déjà été traité au chapitre~\ref{chap:carachaos}.
309 La seule complexité est l'adaptabilité de la fonction au nombre $l$ de LSBs.
311 On considère par exemple le mode
312 $f_l: \Bool^l \rightarrow \Bool^l$ t.q. le $i^{\textrm{ème}}$ composant
318 \overline{x_i} \textrm{ si $i$ est impair} \\
319 x_i \oplus x_{i-1} \textrm{ si $i$ est pair}
322 \end{equation}\label{eq:fqq}
324 on peut déduire imédiatement du théorème~\ref{th:Adrien} (chap.~\ref{chap:carachaos})
325 que le graphe $\textsc{giu}(f_l)$ est fortement connexe.
326 La preuve de double-stochasiticité de la matrice associée
327 à $f_l$ est donnée en annexes~\ref{anx:marquage:dblesto}.
328 On dispose ainsi d'un nouvel algorithme de marquage $\epsilon$-stego-secure et
331 \section{Applications aux domaines fréquentiels}\label{sec:watermarking:frequentiel}
332 Le schéma d'algorithme présenté dans ce chapitre a été appliqué au marquage d'images
333 dans les coefficients DCT et les DWT.
335 \subsection{Fonction de signification pour l'embarquement dans les DCT}
337 On considère un hôte $x$ de taille $H \times L$ dans le domaine fréqentiel DCT.
338 Dans chaque bloc de taille $8\times 8$, à chaque bit
339 la fonction de signification $u$ associe
342 \item 1 si c'est un bit appraissant dans la représentation binaire de la valeur d'un coefficient dont les coordonnées appartiennent à $\{(1,1),(2,1),(1,2)\}$,
343 \item 1 si c'est un bit appraissant dans la représentation binaire de la valeur
344 d'un coefficient dont les
345 coordonnées appartiennent à $\{(3,1),(2,2),(1,3)\}$ et qui n'est pas un des trois
346 bits de poids faible de cette représentation,
347 \item -1 si c'est un bit appraissant dans la représentation binaire
348 de la valeur d'un coefficient dont les
349 coordonnées appartiennent à $\{(3,1),(2,2),(1,3)\}$ et qui est un des
350 des trois bits de poids faible de cette valeur,
353 Le choix de l'importance de chaque coefficient est défini grâce aux seuils
355 permetant d'engendrer les MSBs, LSBs, et bits passifs.
358 \subsection{Fonction de signification pour l'embarquement dans les DWT}
360 On considère un hôte dnas le domaine des DWT. La fonction de signification
361 se concentre sur les seconds niveaux de détail (\textit{i.e.}, LH2, HL2 et HH2).
362 Pour chaque bit, on dit qu'il est peu significatif si c'est un des trois bits de
363 poids faible d'un coefficient de LH2, HL2 ou de HH2.
364 Formellement à chaque bit
365 la fonction de signification $u$ associe
368 \item 1 si c'est un bit appraissant dans la représentation binaire de la valeur d'un coefficient de type LL2,
369 \item 1 si c'est un bit appraissant dans la représentation binaire de la valeur d'un coefficient de type LH2, HL2, HH2 et qui n'est pas un des trois
370 bits de poids faible de cette représentation,
371 \item 1 si c'est un bit appraissant dans la représentation binaire de la valeur d'un coefficient de type LH2, HL2, HH2 et qui est un des trois
372 bits de poids faible de cette représentation,
375 Le choix de l'importance de chaque coefficient est encore défini grâce aux seuils
377 permetant d'engendrer les MSBs, LSBs, et bits passifs.
380 \subsection{Etude de robustesse}
381 Cette partie synthétise une étude de robustesse de la démarche présentée ci-avant.
382 Dans ce qui suit, {dwt}(neg),
383 {dwt}(fl), {dct}(neg), {dct}(fl)
384 correpondent respectivement aux embarquements en fréquenciel
385 dans les domaines DWT et DCT
386 avec le mode de négation et celui issu de la fonction $f_l$
387 détaillé à l'équation~\ref{eq:fqq}.
389 A chaque série d'expériences, un ensemble de 50 images est choisi aléatoirement
390 de la base du concours BOSS~\cite{Boss10}. Chaque hôte est une image
391 en $512\times 512$ en niveau de gris et la marque $y$ est une suite de
393 La resistance à la robustesse est évaluée en appliquant successivement
394 sur l'image marquée des attaques de découpage, de compression, de
395 transformations géométriques.
396 Si les différences entre $\hat{y}$ and $\varphi_m(z)$.
397 sont en desous d'un seuil(que l'on définit),
398 l'image est dite marquée (et non marquée dans le cas contraire).
399 Cette différence exprimée en pourcentage est rappellée pour chacune des ataques
400 à la figure~\ref{fig:atq:dhc}.
405 \subfigure[Découpage]{
406 \includegraphics[width=0.5\textwidth]{atq-dec}\label{Fig:atq:dec:curves}
408 \subfigure[Compression JPEG]{
409 \includegraphics[width=0.45\textwidth]{atq-jpg}\label{Fig:atq:jpg:curves}
411 \subfigure[Compression JPEG 2000]{
412 \includegraphics[width=0.45\textwidth]{atq-jp2}\label{Fig:atq:jp2:curves}
414 \subfigure[Modification du contrast]{
415 % \includegraphics[width=0.45\textwidth]{atq-contrast.pdf}\label{Fig:atq:cont:curve}}
416 \includegraphics[width=0.45\textwidth]{atq-contrast}\label{Fig:atq:cont:curve}
418 \subfigure[Accentuation des bords]{
419 % \includegraphics[width=0.45\textwidth]{atq-flou.pdf}\label{Fig:atq:sh:curve}}
420 \includegraphics[width=0.45\textwidth]{atq-flou}\label{Fig:atq:sh:curve}
422 \subfigure[Rotation]{
423 % \includegraphics[width=0.45\textwidth]{atq-rot.pdf}\label{Fig:atq:rot:curve}}
424 \includegraphics[width=0.45\textwidth]{atq-rot}\label{Fig:atq:rot:curve}
426 \caption{Illustration de la robustesse}\label{fig:atq:dhc}
430 \subsection{Evaluation de l'embarquement}\label{sub:roc}
431 Pour évaluer le seuil qui permet de dire avec la plus grande précision
432 si une image est marquée ou non, nous avons appliqué la démarche suivante.
433 A partir d'un ensemble de 100 images du challenge BOSS, les trois
434 ensembles suivants sont construits: celui des images marquées $W$,
435 celui contenant des imges marquées puis attaquée $\textit{WA}$,
436 et celui des images uniquement attaquées $A$. Les attaques sont choisiés parmi
437 celles données ci dessus.
439 Pour chaque entier $t$ entre 5 et 55
440 et chaque image $x \in \textit{WA} \cup A$,
441 on calcule la différence entre $\hat{y}$ et $\varphi_m(z)$.
442 L'image est dite marquée si cette différence est en dessous du seuil $t$ considéré
444 \item si elle est dite marquée et si $x$ appartient à $\textit{WA}$
445 c'est un vrai cas positif (TP);
446 \item si elle est dite non marquée et si $x$ appartient cependant à $\textit{WA}$
447 c'est un faux cas négatif (FN);
448 \item si elle est dite marquée et si $x$ appartient cependant à $\textit{A}$
449 c'est un faux cas positif (FP);
450 \item enfin si elle est dite non marquée et si $x$ appartient à $\textit{A}$
451 c'est un vrai cas négatif (TN).
457 \includegraphics[width=7cm]{ROC}
459 \caption{Courbes ROC de seuils de détection}\label{fig:roc:dwt}
462 La courbe ROC construite à partir des points de coordonnées (TP,FP) issus
464 donnée à la figure~\ref{fig:roc:dwt}.
465 Pour la fonction $f_l$ et pour la fonction négation respectivement,
466 la détection est optimale pour le seuil de 45\% correspondant au point (0.01, 0.88)
467 et pour le seuil de 46\% correspondant au point (0.04, 0.85)
469 Pour les deux modes dans le domaine DCT,
470 la détection est optimale pour le seuil de 44\%
471 (correspondant aux points (0.05, 0.18) et (0.05, 0.28)).
472 On peut alors donner des intervales de confiance pour les attaques évaluées.
473 L'approche est résistante à:
475 \item tous les découpages où le pourcentage est inférieur à 85\%;
476 \item les compression dont le ratio est supérieur à 82\% dans le domaine
477 DWT et 67\% dans celui des DCT;
478 \item les modifications du contraste lorsque le renforcement est dans
479 $[0.76,1.2]$ dans le domaine DWT et $[0.96,1.05]$ dans le domaine DCT;
480 \item toutes les rotations dont l'angle est inférieur à 20 degrés dans le domaine DCT et
481 celles dont l'angle est inférieur à 13 degrés dans le domaine DWT.
485 \section{Embarquons d'avantage qu'1 bit}\label{sec:watermarking:extension}
486 L'algorithme présenté dans les sections précédentes
487 ne permet de savoir, \textit{in fine},
488 que si l'image est marquée ou pas. Cet algorithme ne permet pas
489 de retrouver le contenu de la marque à partir de l'image marquée.
490 C'est l'bjectif de l'algorithme présenté dans cette section et introduit
491 dans~\cite{fgb11:ip}.
492 On des raisons de lisibilité, il n'est pas
493 présenté pas dans le formalisme de la première section et
494 est grandement synthétisé.
495 Il a cependant été prouvé comme étant chaos-sécure~\cite{fgb11:ip}.
499 Commençons par quelques conventions de notations:
501 \item $\mathbb{S}_\mathsf{k}$ est l'ensemble des stratégies unaire sur $[k]$;
502 \item $m^0 \in \mathbb{B}^{\mathsf{P}}$ est un vecteur de $\mathsf{P}$ bits
503 représentant la marque;
504 \item comme précédement,
505 $x^0 \in \mathbb{B}^\mathsf{N}$ est le vecteurs des
506 $\mathsf{N}$ bits sélectionnés où la marque est embarquée.
507 \item $S_p \in \mathbb{S}_\mathsf{N}$
508 est la \emph{stratégie de place} et définit quel
509 élément de $x$ est modifié à chaque itération;
510 \item $S_c \in \mathbb{S}_\mathsf{P}$ est la \textbf{stratégie de choix}
511 qui définit quel indice du vecteur de marque est embarqué à chaque
513 \item $S_m \in \mathbb{S}_\mathsf{P}$ est la \textbf{stratégie de mélange}
514 qui précise quel élément de la marque est inversé à chaque itération.
517 % In what follows, $x^0$ and $m^0$ are sometimes replaced by
518 % $x$ and $m$ for the sake of brevity,
519 % when such abridge does not introduce confusion.
522 % \subsection{The $\CID$ scheme}\label{sub:ci2:scheme}
523 Le processus itératif modifiant $x$ est défini comme suit.
524 Pour chaque $(n,i,j) \in
525 \mathds{N}^{\ast} \times \llbracket 0;\mathsf{N}-1\rrbracket \times \llbracket
526 0;\mathsf{P}-1\rrbracket$, on a:
532 x_i^{n-1} & \text{ if }S_p^n\neq i \\
533 m_{S_c^n}^{n-1} & \text{ if }S_p^n=i.
540 m_j^{n-1} & \text{ if }S_m^n\neq j \\
542 \overline{m_j^{n-1}} & \text{ if }S_m^n=j.
549 \noindent où $\overline{m_j^{n-1}}$ est la négation booléenne de $m_j^{n-1}$.
550 On impose de plus la contrainte suivante.
551 Soit $\Im(S_p) = \{S^1_p, S^2_p, \ldots, S^l_p\}$
552 l'ensemble de cardinalité $k \leq l$ (les doublons sont supprimés).
553 qui contient la liste des indices $i$, $1 \le i \le p$,
554 tels que $x_i$ a été modifié.
555 On considère $\Im(S_c)_{|D}= \{S^{d_1}_c, S^{d_2}_c, \ldots, S^{d_k}_c\}$
557 $d_i$ est la dernière date où l'élément $i \in \Im(S_p)$ a été modifié.
558 Cet ensemble doit être égal à $\llbracket 0 ;\mathsf{P} -1 \rrbracket$.
560 Pour peu que l'on sache satisfaire la contrainte précédente,
561 on remplace $x $ par $x^l \in \mathbb{B}^{\mathsf{N}}$ dans
562 l'hôte et on obtient un contenu marqué.
565 Sans attaque, le schéma doit garantir qu'un utilisateur qui dispose des bonnes
566 clefs de création des stratégies est capable d'extraire une marque et que
567 celle-ci est la marque insérée.
568 Ceci correspond respectivement aux propriétés de complétudes et de correction
570 L'étude de ces propriétés est l'objectif de la section qui suit.
577 \subsection{Correction et complétude du schéma}\label{sub:ci2:discussion}
579 On ne donne ici que le théorème. La preuve est placée en annexes~\ref{anx:preuve:marquage:correctioncompletue}.
582 La condition de l'algorithme de marquage est nécressaire et suffisante
583 pour permettre l'extraction du message du média marqué.
586 Sous ces hypothèes, on peut donc extraire un message.
587 De plus, le cardinal $k$ de
588 $\Im(S_p)$ est supérieur ou égal à $\mathsf{P}$.
589 Ainsi le bit $j$ du message original $m^0$ peut être
590 embarqué plusieur fois dans $x^l$.
591 Or, en compte le nombrede fois où ce bit a été inversé dans
592 $S_m$, la valeur de $m_j$ peut se déduire en plusieurs places.
593 Sans attaque, toutes ces valeurs sont identiques
594 et le messageest obtenus immédiatement.
595 Si attaque il y a, la valeur de $m_j$ peut s'obtenir en prenant la valeur
596 moyenne de toutes les valeurs obtenues. On a donc la correction et la complétude.
598 \subsection{Détecter si le média est marqué}\label{sub:ci2:distances}
599 On considère un média $y$ marqué par un message $m$.
600 Soit $y'$ une version altérée de $y$, c.-à-d. une version
601 où certains bits on été modifiés et soit
602 $m'$ le message extrait de from $y'$.
604 Pour mesurer la distance entre $m'$ et $m$, on
605 considère repsectivement
606 $M$ et $M$ l'ensemble des indices de $m$ et de $m'$
607 où $m_i$ vaut 1 et ou $m'_1$ vaut 1.
609 Beaucoup de mesures de similarité~\cite{yule1950introduction,Anderberg-Cluster-1973,Rifqi:2000:DPM:342947.342970}, dépendent des ensembles
610 $a$, $b$, $c$ et $d$ définis par
612 $b = |M \setminus M' |$,
613 $c = |M' \setminus M|$, and
614 $d = |\overline{M} \cap \overline{M'}|$
616 Selon ~\cite{rifq/others03} la mesure de Fermi-Dirac $S_{\textit{FD}}$
617 est celle dont le pouvoir de discrimination est le plus fort,
618 c.-à-d. celui qui permet la séparation la plus forte entre des vecteurs
619 corrélés et des ceux qui ne le sont pas.
620 La distance entre $m$ et $m'$ est construite selon cette mesure
621 et produit un réel dans $[0;1]$. Si elle est inférieure à un certain
622 seuil (à définir), le média $y'$ est declaré
623 comme marqué et le message doit pouvoir être extrait.
625 \subsection{Etude de robustesse}\label{sec:watermarking:robustesse}
626 La méthode d'expérimentation de robustesse appliquée à la section précédente
627 pourrait être réappliquée ici et nous pourrions obtenir, grâce aux courbes de
628 ROC une valeur seuil pour déterminer si une marque est présente ou pas.
629 Dans~\cite{bcfg+13:ip}, nous n'avons cependant pas poussé
630 la démarche plus loin que de l'embarquement
631 dans les bits de poids faible en spatial et l'on sait que ceci est
632 particulièrement peu robuste.
636 Grace à la formalisation du processus de watermarking par itérations discrètes, nous avons pu dans ce chapitre montrer que le processus possédait les propriétés
637 attendues, à savoir stego-sécurité, chaos sécurité et une robustesse relative.
638 Pour étendre le champ applicatif, nous avons proposé un second algorithme
639 permettant de particulariser la marque à embarquer et donc à extraire.
640 Le chapitre suivant s'intéresse au marquage, mais dans un autre domaine que celui des images.