Vous êtes sur la page 1sur 56

WATERMARKING

Julien Bourgeois France Telecom R&D 22300 LANNION

Email : julien.bourgeois@rd.francetelecom.com

31 juillet 2002

2

Table des mati`eres

Introduction

 

4

1 G´en´eralit´es sur le tatouage

 

7

1.1 Position de probl`eme .

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

7

1.2 Applications .

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

7

1.3 Protocoles de tatouage .

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

8

 

1.3.1 Sym´etrie

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

8

Aveugle

1.3.2 .

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

8

2 Quelques m´ethodes de watermarking

 

9

2.1 Crit`ere d’inaudibilit´e

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

9

2.2 Etalement de spectre (Spread Spectrum - SS)

.

.

.

.

.

.

.

.

.

.

.

10

2.3 Sch´ema de Costa Scalaire (SCS)

 

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

12

2.4 M´ethode de Philips

 

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

13

 

2.4.1 Tatouage

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

13

2.4.2 D´etection

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

14

2.4.3 Remarque `a propos de la d´emo fournie par Philips .

.

.

.

14

2.5 M´ethode asym´etrique

 

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

15

 

2.5.1 Tatouage

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

16

2.5.2 D´etection

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

17

3 Quelques m´ethodes d’attaques

 

21

3.1 Ajout de bruit masqu´e

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

21

3.2 D´esynchronisation

 

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

21

3.3 Autres

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

22

4 Synth`ese

 

23

4.1 Performances de ces m´ethodes

 

.

.

.

.

.

.

.

.

.

23

4.2 Briques ´el´ementaires

 

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

23

4.3 Conclusion

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

24

A Environnement de programmation

 

25

A.1

M´ethodes de tatouage

 

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

25

A.2

Attaques .

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

26

A.3

Outils

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

27

A.4

Masquage

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

28

 

3

 

`

4

TABLE DES MATI ERES

B

Th´eorie de l’information et Watermarking

B.1

Evolution historique

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

29

29

B.2

. Sch´ema de Costa Scalaire

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

31

C

Th´eorie de l’information : notes de lecture

 

35

C.1

Pr´eliminaire : les s´equences typiques

R = max qQ min aA J(q, a)

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

35

C.2

Codage canal `a param`etres al´eatoires

 

37

C.3

Mod`ele math´ematique du marquage

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

38

C.4

Capacit´e de marquage d’un canal

 

40

C.5

Atteignabilit´e du taux de marquage

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

41

C.6

. Capacit´e de marquage non aveugle

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

42

C.7

Marquage du canal binaire

.

.

.

.

.

.

.

.

.

43

D

Notes de lecture en cryptographie

 

45

D.1

G´en´eralit´es

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

45

D.2

Formalisation et Premiers R´esultats

D.2.1

D.2.2

D´efinition

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

45

45

 

Un exemple simple

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

46

D.2.3

Confidentialit´e parfaite

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

46

 

D.3

D.4

. Standard `a Clef Priv´ee : DES

Casser une cryptographie

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

48

49

D.5

Compromis Espace-Temps d’une Attaque

.

.

.

.

.

.

.

.

.

.

.

.

.

50

 

D.5.1

D.5.2

M´ethode de Stinson

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

50

 

D.6

Exemple simplifi´e .

Standard `a Clef Publique : R.S.A.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

51

52

 

D.6.1

D.6.2

Rappels d’Arithm´etique

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

52

La cryptographie

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

53

D.6.3

Authentification de la provenance du message

 

53

 

D.7

. Signatures et Fonctions de hachage

D.6.4

Attaques de RSA

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

54

54

 

D.7.1

Signatures ´electroniques

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

54

 

D.8

D.7.2

Divers

Fonctions de hachage .

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

.

54

55

Introduction

J’ai commenc´e en Octobre 2001 un travail de th`ese sur le th`eme du tatouage de signaux audio. Pour des raisons personnelles, je suis contraint d’y mettre un terme pr´ematur´e. Le but de ce rapport est donc de faire le point sur ce qui a ´et´e fait pour en permettre une reprise en main la plus ais´ee possible. Je commence donc par cadrer le sujet de l’´etude et en donner les principales applications. Le deuxi`eme chapitre est technique et expose quatres algorithmes de tatouage de signaux audio. On y distinguera les m´ethodes `a ´etalement de spectre du sch´ema de Costa. Les points essentiels sont r´esum´es dans une syn- th`ese, o`u je me suis autoris´e `a donner mon opinion sur la suite des travaux. Les quatres premiers mois ont ´et´e consacr´es `a une ´etude bibliographique du sujet. Une synth`ese fournie par Jana Dittman et Martin Steinebach contient des r´ef´erences int´eressantes auxquelles il est indispensable de se reporter. La ma- jorit´e des algorithmes, encore relativement peu nombreux en tatouage audio, sont bas´es sur une technique de t´el´ecommunication, l’´etalement de spectre. Plus r´ecemment, d’autres m´ethodes fond´ees sur la th´eorie de l’information sont ap- parues. Ces contributions, comme le sch´ema de Costa, paraissent prometteuses. De plus, le cadre formel de la th´eorique de l’information pr´esente l’int´erˆet d’ˆetre bien formalis´e et rigoureux. Il fournit une analyse du possible en watermarking. C’est pourquoi j’ai ins´er´e quelques approfondissements et mes notes de lectures sur ce sujet. Dans un cadre applicatif, notamment en ce qui concerne la protection de droits, la cryptographie est un partenaire incontournable du tatouage. Je m’y suis int´eress´e pour cerner ce qu’il est possible de faire avec cet outil, bien qu’il reste techniquement dissoci´e du watermarking. Des notes de lectures sont ´ega- lement en annexe. Apr`es l’´echec du SDMI, personne ne pr´etend avoir une m´ethode robuste aux attaques malveillantes, et beaucoup doutent de l’existence d’une telle m´ethode. Un r´esultat th´eorique `a ce sujet serait une avanc´ee majeure et permettrait d’orienter plus finement les recherches.

Remerciements Je tiens `a remercier Dominique Massaloux, Andr´e Gilloire, Alain Le Guyader et Abdellatif Benjelloun-Touimi qui ont consacr´e une partie de leur temps au watermarking. Leur exp´erience, l’int´erˆet qu’ils ont port´e `a mon travail, leurs nombreuses suggestions m’ont aid´e `a comprendre les aspects tech- niques du tatouage audio et m’ont souvent permis de rebondir. J’exprime aussi ma reconnaissance envers Pierre Duhamel, qui, en d´epit

5

6

`

TABLE DES MATI ERES

de l’´eloignement g´eographique, a orient´e tr`es pertinemment mon travail. Merci aussi `a Adel, Balazs, Andreas, Jean-Marie, S´ebastien, Mohammed, J´erome, Rozenn, Ga¨el et David pour leur amiti´e.

Chapitre 1

G´en´eralit´es sur le tatouage

1.1 Position de probl`eme

Le but du tatouage en audio est d’ins´erer puis de d´etecter un signal portant une certaine information (quelques dizaines de bits par seconde) dans un signal ayant un contenu perceptif (un signal audio dans notre cas). Cet ajout doit satisfaire deux contraintes :

1. Il ne doit pas ˆetre audible : on ne doit pas pouvoir faire discerner `a l’oreille le signal tatou´e du signal original. C’est la contrainte d’imperceptibilit´e.

2. Il doit r´esister `a des manipulations l´egitimes (compression/d´ecompression `a un certain d´ebit, conversion D/A-A/D, etc.) et `a des attaques mal- veillantes de pirates (d´esynchronization, ajout de bruit, etc.) C’est la contrainte de robustesse.

Ces deux contraintes peuvent ˆetre plus ou moins relˆach´ees, selon l’application vis´ee. On peut distinguer trois ´etapes dans la vie du tatouage : sa fabrica- tion, sa transmission, sa d´etection. En pratique, les m´ethodes permettant de tatouer beaucoup d’information, c’est-`a-dire ayant une grande capacit´e de ta- touage comme le Sch´ema de Costa scalaire, se distinguent de celles qui visent une grande robustesse. On parlera alors de st´eganographie (ou de data hiding) plutot que de watermarking.

1.2 Applications

Voici les applications du watermarking dont il est le plus souvent question. – La protection de copie contre le piratage : c’est l’application la plus en vue `a cause de l’argent en jeu pour les distributeurs de contenu audio. La solution recherch´ee doit empˆecher, d’une mani`ere ou d’une autre, les serveurs du type peer-to-peer (Napster), la gravure de CD, etc. On ne sait pas encore tr`es bien ce qu’il est possible de faire. Il semble qu’une m´ethode de tatouage `a cl´e publique robuste est n´ecessaire pour cette application, et une telle m´ethode n’a pas encore ´et´e mise au point. La sensibilit´e aux attaques malveillante est une difficul´e importante. A cela s’ajoute une difficult´e politique : il est clair qu’un syst`eme de protection de copie doit

7

8

´

´

´

CHAPITRE 1. G EN ERALIT ES SUR LE TATOUAGE

mettre en jeu les lecteurs/enregistreurs de media (CD, DVD, etc.) qui devront ˆetre comptatibles avec ce syst`eme.

– La preuve de propri´et´e intellectuelle : il s’agit de prouver devant un tribunal la propri´et´e d’un contenu audio. Dans ce cas de figure, on peut supposer qu’un original peut-ˆetre disponible. Les m´ethodes d´ej`a existantes mettent en œuvre les signatures et la cryptographie.

Fingerprinting : traquer une copie, le tatouage permet d’identifier le propri´etaire de la copie.

– Le monitoring : le but est de pouvoir contrˆoler automatiquement qu’un contenu audio, comme un spot publicitaire, est ´emis par une radio/t´el´evision, etc. Des solutions existent d´ej`a.

– Envoie d’information adjacentes : titre ou paroles de la chanson, etc A chacune de ces applications correspond un certain protocole de tatouage.

1.3 Protocoles de tatouage

1.3.1 Sym´etrie

Il existe diff´erents protocoles de tatouage qui diff`erent `a la d´etection. On a emprunt´e `a la cryptographie le concept de cl´e priv´ee/publique. Une cl´e est une donn´ee (de quelques bits en g´en´eral) qui permet de rendre la d´etection du tatouage accessible `a tous ou non. Une cl´e est dite priv´ee si elle n’est licitement connue que de la partie qui ins`ere le tatouage et de celle qui a le droit de le lire. Sa connaissance permet de casser le syst`eme de tatouage : effacer la marque, c’est-`a-dire la rendre ind´etectable, sans d´egrader la qualit´e du signal. Si la mˆeme cl´e est n´ecessaire `a l’insertion et `a la d´etection du tatouage, on parle de tatouage sym´etrique. On parle de tatouage asym´etrique lorsque la d´etection du tatouage peut se faire par tout le monde, `a l’aide d’une cl´e publique. L’existence d’une m´ethode de tatouage asym´etrique robuste est un probl`eme encore ouvert, et c’est la pierre angulaire pour la protection de copie. Le moni- toring et la preuve de propri´et´e intellectuelle sont des applications du tatouage sym´etrique.

1.3.2 Aveugle

La disponibilit´e du signal original `a la d´etection distingue le tatouage aveugle (original non disponible `a la d´etection) du tatouage non-aveugle. Aveugle :

protection de copie. Non-aveugle : monitoring, preuve de propri´et´e intellectuelle.

Chapitre 2

Quelques m´ethodes de watermarking

Je pr´esente maintenant les m´ethodes `a ce jour pro´eminentes de tatouage aveugle. Elles sont issues des articles [1], [2], [3], [4], et [5]. Les descriptions sont faites de sorte que les programmes Matlab que j’ai ´ecrits soient lisibles. Bien sˆur il n’existe pas qu’une mani`ere de faire : la gestion de la non-stationnarit´e, le filtrage, etc. sont susceptibles d’ˆetre am´elior´es. Je note dans la suite :

s le signal original,

x le signal tatou´e,

w la marque,

y le signal transmis (attaqu´e),

d l’unique information (un bit ou un nombre) `a transmettre, binaire ou non selon la m´ethode. Si plusieurs bits sont `a transmettre, on peut r´ep´eter la mˆeme proc´edure sur plusieurs portions de signal. Les signaux d´esign´es dans le domaine spectral seront en lettres majuscules. Je ne m’int´eresse ici qu’au tatouage proprement dit, en laissant de cot´e le cadre applicatif. Le probl`eme est d’ajouter une marque et d’´evaluer, en fonction des attaques que le signal tatou´e subit, la probabilit´e de bonne d´etection de l’information tatou´ee. Je rappelle que pour un signal r´eel de K point le spectre contient K/2 + 1 points ind´ependants. Les K/21 restants sont donn´es par sym´etrie hermitienne.

2.1 Crit`ere d’inaudibilit´e

Les m´ethodes de tatouage sont d´elimit´ees par le crit`ere d’inaudibilit´e. Le crit`ere de masquage temporel/fr´equentiel s’impose dans la litt´erature en audio. C’est donc celui-l`a que je me suis fix´e. Si un son stationnaire contient deux composantes tr`es proches en fr´equence, et de niveaux assez in´egaux, alors seule la composante la plus puissante est per- ¸cue. Autrement dit, `a partir du spectre du signal stationnaire, on peut d´etermi- ner `a quelles fr´equences un son peut ˆetre ajout´e sans ˆetre per¸cu (principalement autour des pics). Ce principe est valable pour les signaux stationnaires. Les sons

9

´

10 CHAPITRE 2. QUELQUES M ETHODES DE WATERMARKING

naturels ne le sont pas, et de l`a vient toute la difficult´e. C’est pourquoi il faut traiter le signal par fenˆetres les moins larges possibles. Il existe diff´erentes versions de ce crit`ere, plus ou moins fines. Le mod`ele MPEG est complexe (voir les programmes de Petitcolas), mais permet d’ins´erer plus de puissance en restant inaudible. Le mod`ele de Johnston est plus simple, mais il n’´etait disponible que pour une fr´equence d’´echantillonnage de 16kHz (programme d’Andr´e Gilloire). Une premi`ere approximation efficace consiste `a prendre le module du spectre du signal l’att´enuer de 6 `a 8 dB. Une variante est de prendre la racine de la TF du carr´e du signal. Le mod`ele psychoacoustique n’´etant pas directement l’objet d’´etude, j’ai consid´er´e que le masque est disponible sous la forme d’un vecteur M de K/2 ´el´ements pour des fenˆetre de K points.

2.2 Etalement de spectre (Spread Spectrum - SS)

L’id´ee vient des communications num´eriques militaires et est assez ancienne. C’est la premi`ere m´ethode de tatouage en audio. Elle est d´ecrite dans [1]. Pour envoyer un message secret, les militaires l’envoient cod´e sous forme de s´equences blanches pseudo-al´eatoires avec une puissance tr`es basse `a chaque fr´equence (´etalement spectral). Le message est alors noy´e dans le bruit. La d´etection se fait par corr´elation avec la s´equence pseudo-al´eatoire, laquelle est connue du d´etecteur. Sans perdre de g´en´eralit´e, je suppose que l’information transmise par le tatouage est un bit : d ∈ {0, 1}. En tatouage audio, la difficult´e est de g´erer l’inaudibilit´e, qui impose une mise en forme spectrale selon le masque fr´equentiel du signal et une ´egalisation. Mettons cela de cot´e dans un premier temps. L’id´ee est d’ajouter `a s un signal noise-like blanc w d , (w 0 pour le message d = 0 et w 1 = w 0 pour le message d = 1) connu `a l’insertion et `a la d´etection :

x = s + w d .

L’extraction aveugle du message repose sur l’orthogonalit´e de w d et de s, c’est- `a-dire

< s, w d >=

N

i=1

s(i)w d (i) = 0,

o`u N est la longueur du signal. Si cette condition est v´erifi´ee, alors

< x, w >=< s, w > + < w d , w >=< w d , w > .

On d´ecidera qu’un 0 est ins´er´e si < x, w 0 > est positif et qu’un 1 est ins´er´e sinon. On applique le principe de d´etection d’un signal connu noy´e dans du bruit, que l’on peut appliquer avec plus de s´equences distinctes w i , i = 0, 1, 2, 3, La d´etection se fera par comparaison d’une statistique de test (la corr´elation empirique) `a un seuil de d´etection. En prenant des s´equences w i plus courtes, par exemple dix fois plus courtes que le signal s, on pourra ins´erer 10 fois plus de donn´ees. La robustesse sera alors plus faible puisque l’hypoth`ese d’orthogonalit´e < s, w >= 0 sera moins bien v´erifi´ee en pratique.

2.2.

ETALEMENT DE SPECTRE (SPREAD SPECTRUM - SS)

11

Reprenons maintenant la gestion de l’inaudibilit´e (mise en forme spectrale puis ´egalisation). Les s´equences w d sont blanches, c’est-`a-dire de densit´e spec- trale de puissance constante et ´egale `a 1. Pour s’assurer que l’ajout de w d est inaudible, c’est-`a-dire que W(k) < M(k), on filtre w dans chaque fenˆetre par la r´eponse m(n) = IFFT {M} (n). Dans la fenˆetre courante, ceci s’´ecrit

x(n) = s(n) + w d m(n) = s(n) +

K/2

k=K/2

m(k)w d (n k)

Si le terme w d (n k) n’est pas d´efini, par exemple pour n = 1, k = K/2, on le remplace par z´ero. Pour palier les difficult´es dˆues `a la non-stationnarit´e des signaux audio, on consid`ere des trames qui se recouvrent et que l’on pond`ere par une fenˆetre de Hanning dont la somme sur le signal fait 1. C’est la technique dite overlap-add. Finalement, un param`etre d’att´enuation α ]0, 1[ (typiquement, α = 0.15) est introduit pour g´erer l’inaudibitlit´e et le rapport signal `a marque :

x = s ± αw m

Pour que la d´etection sur le signal transmis y se passe bien, il faut inverser l’effet de ce filtrage, c’est-`a-dire ´egaliser le signal avec son masque. Il est plus rapide de le faire en fr´equence : il suffit de diviser, pour chaque fenˆetre, Y(k) par son masque M y (k), qui est `a peu pr`es ´egal `a M(k), le masque de s :

Z(k) = Y(k)/M(k) = (S(k) + αM(k)W(k))/M(k). On d´etectera ensuite le tatouage dans z(n) = IFFT {Z} (n) :

ˆ

d = 0

< z, w 0 >> 0.

On peut aussi faire un filtrage de Wiener. J’en parlerai `a la cyclostationnarit´e. R´esumons-nous. Nous disposons d’une s´equence blanche de la mˆeme lon- gueur que le signal. Le signal et la s´equence sont d´ecoup´es en trame et s,w et x d´esignent des vecteurs dans la trame courante. Voici le traitement `a chaque trame. Tatouage :

1. Passer en fr´equence et estimer le masque :

S

=

FFT {s}

M(k)

=

|S(k)|, k = 1,

,

K/2 + 1

2. Calculer la r´eponse impusionnelle du filtre de mise en forme spectrale :

m = IFFT {M} et m = m / m 1 .

3. Filtrer la s´equence blanche dans la trame courante : w f = w m.

4. L’ajouter selon la donn´ee `a tatouer avec un facteur d’att´enuation : x = s + αw f si d = 1 et x = s αw f si d = 0.

D´etection :

1. Passer en fr´equence : Y = FFT {y}.

´

12 CHAPITRE 2. QUELQUES M ETHODES DE WATERMARKING

3. Egaliser Z = Y./(M + 10 15 ).

4. Repasser en temps : z = IFFT {Z}.

La d´etection se fait sur le signal z entier. Si < z, w > est positif on d´ecide d = 1, sinon d = 0.

2.3 Sch´ema de Costa Scalaire (SCS)

Sans s’attarder trop sur les fondement th´eoriques du SCS (voir en annexe et [2]), je rappelle que le sch´ema de Costa scalaire est une instance de QIM (Quantization Index Modulation) : selon le bit d `a transmettre, on va quantifier 1 s d’une certaine mani`ere :

x = q (d) (s).

A la d´etection aveugle du message, on estimera quel quantificateur a ´et´e utilis´e

pour d´eterminer le bit ins´er´e. Th´eoriquement, cette m´ethode permet de tatouer K/2 bits sur un signal de longueur K . De plus, le d´etecteur peut ˆetre public sans danger pour la s´ecurit´e du syst`eme, puisqu’il est impossible de retrouver

l’original s `a partir de sa version quantifi´ee q (d) (s).

∆ (d) (s) se fait ´echantillons `a ´echantillons (je

n’´ecrirais plus de vecteurs, je noterai x pour x(k)). Eggers et Girod choisissent des quantificateurs scalaires uniformes, qui ne d´ependent que d’un pas de quan- tification ∆ (lui aussi d´efini ´echantillon par ´echantillon, lire ∆(k)) et d’un point

q

Nous consid´ererons deux quantificateurs scalaires uniformes d´ecal´es, de pas

Dans le cas scalaire le calcul de q

(d)

(0).

([] d´esigne la partie enti`ere la plus proche) :

q

q

(0)

(1)

(x)

(x)

=

=

[x/∆]∆ ∈ {0, ±, ±2∆,

q

}

(0)

(x + ∆/2) /2 ∈ {±/2, ±, ±3∆/2

La marque est d´efinie par w = q

∆ (d) (s) s et

}

x = s + αw,

o`u le param`etre α ]0, 1[ permet de faire varier le rapport signal `a marque. Voyons maintenant comment estimer quel quantificateur est utilis´e. Soit S

une variable al´eatoire uniforme. Posons W d = q

(X 1 ) X 1 | = ∆/2.

C’est cela que l’on exploite pour la d´etection : si |q

que d = 0, et que d = 1 sinon. Cette m´ethode s’adapte bien au mod`ele d’inaudibilit´e du masquage fr´equen- tiel, la mise en forme spectrale est quasi naturelle et on a pas besoin d’´egalisa-

tion. La marque sera ins´er´ee sur le module du spectre du signal :

(x) x| < /4, on d´ecide

d = 0, 1. Il est clair que E|q

∆ (d) (S) S et X d = S +W d pour

(0)

(X 0 ) X 0 | = 0 et que E|q

(0)

(0)

|X(k)| = |S(k)| + αW (k).

1 Il s’agit en r´ealit´e d’une quantification/d´equantification. On ne transmet pas l’index des repr´esentants mais leurs valeurs

´

2.4. M ETHODE DE PHILIPS

13

Elle est d´efinie comme un bruit de quantification, donc de puissance ∆ 2 /12. Il

faut donc s’assurer que ∆(k) 2 /12 < M (k). On prendra ∆(k) = 12M (k) δ, o`u δ est un pas de quantification du masque, par exemple δ = max M/10. Ceci permet de donner au masque un certain dictionnaire de valeurs, et donc de retrouver le masque `a la d´etection avec plus de pr´ecision en gommant les perturbations du masque dˆues l’insertion de la marque. R´esumons-nous. Le traitement se fait trame-`a-trame. Tatouage :

1. Passer en fr´equence : S = FFT {s}.

2. Estimer le masque : M(k) = |S(k)|, k = 1,

3. En d´eduire les pas de quantification : = 12M δ avec par exemple δ = (max M)/10.

4. Quantifier le spectre selon le bit `a transmettre : S q = q

5. En d´eduire la marque : W = S S q et l’ajouter avec une att´enuation α :

, K/2 + 1.

(d) (S).

X = S + αW.

6. Repasser en temps : x = IFFT {X}.

D´etection :

1. Passer en fr´equence : Y = FFT {y}.

2. Appliquer la mˆeme proc´edure d’estimation de qu’au tatouage.

3. Sur chaque bin de fr´equence k = 1, Y(k).

4. Calculer le vecteur bool´een D = C < .

5. Si la moyenne de D est inf´erieure `a 1/2, on d´ecide d = 0, sinon d = 1. Ceci correspond au d´ecodage hard d’un codage `a r´ep´etition. On doit pouvoir faire une d´ecision plus fine sur le vecteur C (algorithme de Viterbi).

, K/2+1, calculer C(k) = q

(0)

(Y(k))

2.4 M´ethode de Philips

La m´ethode est d´ecrite dans [3] et [4]. C’est une modification de la m´ethode d’´etalement de spectre, l’information est cod´ee en d´ecalant (shift) une s´equence blanche W, ajout´ee directement dans le domaine spectral. Le masque utilis´e est le module du spectre du signal porteur.

2.4.1

Tatouage

Th´eoriquement on peut ins´erer une donn´ee d diff´erente `a chaque trame, mais pour qu’un pic de corr´elation apparaisse `a la d´etection, il faut r´ep´eter la donn´ee d sur un certain nombre de trames. Le tatouage se fait trame-`a-trame sans recouvrement, selon la proc´edure suivante :

1. D´ecalage de la s´equence :

W d = [W(d,

,

K/2 + 1) W(1,

, d 1)].

´

14 CHAPITRE 2. QUELQUES M ETHODES DE WATERMARKING

2. Transform´ee en fr´equence de la trame S(k) = FFT {s} (k), k = 1,

, K/2 + 1.

, K.

On prend son module, et comme il s’agit d’un signal r´eel, on ne garde que

les K/2 + 1 premiers points : M(k) = |S(k)|, k = 1,

3. Mise en forme spectrale de la marque : W d = W d M.

4. Retour dans le domaine temporel : w d = IFFT {W d }.

L’´elimination de pr´e´echos et post´echos dˆues aux non-stationarit´es du signal se fait sur le signal entier. On calcule une fonction de gain g positive qui suit le signal lorsqu’il croit (en valeur absolue) et qui d´ecroit en e βt lorsqu’il d´ecroit. Le pr´emasquage a lieu de 5 `a 20 ms avant le signal, le postmasquage de 50 `a 200 ms apr`es. Cette fonction est ensuite normalis´ee de sorte que max g = 1. Finalement :

x = s + αg.w

d

2.4.2 D´etection

Les auteurs de la m´ethode passent aussi par une ´egalisation (comme pour l’´etalement de spectre classique), mais elle est ind´ependante du signal porteur et donc du masque ! De plus ils ont trouv´e une mani`ere tr`es astucieuse d’estimer le d´ecalage tatou´e. La d´etection se fait trame-`a-trame selon la proc´edure suivante.

1. L’´egalisation est ´etonnament simple : filtrer avec f = [1 2 1], c’est-`a- dire

y f (n) = y(n 1) + 2y(n) y(n + 1).

2. Passer dans le domaine spectral : Y f = FFT {y f }.

3. L’intercorrelation entre Y f et W peut se calculer avec la FFT comme

c = IFFT {Y f .W} .

On aura un maximum pour le d´ecalage correspondant `a l’information tatou´ee. Mais comme seule l’information de phase nous int´eresse, on peut ´eliminer l’information du module :

Finalement

c = IFFT

|Y f | . |W| .

Y

f

W

d ˆ = arg max c

Si l’information d a ´et´e r´ep´et´ee sur plusieurs trames, il faut cumuler (ajouter) les corr´elations sur chacune de ses trames, ou mieux (en temps de calcul) calculer la corr´elation sur la somme des Y f .

2.4.3 Remarque `a propos de la d´emo fournie par Philips

J’ai test´e une version de d´emonstration d’un syst`eme de tatouage aveugle fournie par Philips. On peut supposer qu’il fonctionne selon le sch´ema expos´e ci-avant, mais je n’ai pas pu le mettre en ´evidence. Par exemple, les marques ins´er´ees w = xs ne pr´esentent aucune p´eriodicit´e, ce qu’on peut attendre d’un

´

´

2.5. M ETHODE ASYM ETRIQUE

15

traitement trame-`a-trame. Le tatouage d’un fichier tr`es court (1 `a 2 secondes) n’est pas d´etect´e : ces premi`eres secondes servent peut-ˆetre `a tatouer un genre d’en-tˆete ne portant pas d’information (payload). Par ailleurs, on remarque que la marque s’annule sur des intervalles assez longs (plusieurs centaines d’´echan- tillons), mais je n’ai pas trouv´e de p´eriodicit´e l`a-dessus non plus. Enfin, la marque n’est pr´esente que dans les hautes fr´equences du spectre.

L’attaque de ce syst`eme n’est pas ´evidente non plus. Il r´esiste tr`es bien `a l’ajout de bruit (mˆeme important, c’est-`a-dire audible), `a la d´esynchronisation (mˆeme importante), au filtrage passe-bas. L’attaque Swap (voir plus loin) efface par contre compl´etement la marque.

2.5 M´ethode asym´etrique

Voici une m´ethode de tatouage asym´etrique, c’est-`a-dire `a d´etection pu- blique. Elle est d´ecrite dans [5]. Le sch´ema g´en´eral est celui de l’´etalement de spectre. Les m´ethodes `a ´etalement de spectre (SS et Philips) pr´ec´edemment expos´ees n´ecessitent une s´equence blanche w `a la d´etection, et la connaissance de cette s´equence permet de synth´etiser la marque et donc de l’effacer.

L’id´ee est d´etecter des propri´et´es statistiques de la marque plutˆot que la marque elle-mˆeme. La marque sera d´etect´ee si et seulement si un spectre de puissance d’une certaine forme (la cl´e publique) est d´etect´e. La m´ethode pr´e-

´

16 CHAPITRE 2. QUELQUES M ETHODES DE WATERMARKING

sent´ee ici consid`ere une marque cyclostationnaire 2 , c’est-`a-dire dont les moments sont p´eriodiques. Pour produire un signal cyclostationnaire de cyclofr´equence α, il suffit de prendre

w(n) = b(n) cos(2παn)

o`u b est un vecteur pseudo-al´eatoire blanc gaussien centr´e de variance 1. La d´etection de la cyclofr´equence α de w(n) se fait par la TF de w 2 (n) qui pr´esente un pic en 2α. On constate que

1

w 2 (n) = 2 b 2 (n) (1 + cos(4παn))

La donn´ee ins´er´ee est binaire et sera cod´ee par une pr´esence ou absence de marque.

2.5.1

Tatouage

Le tatouage se fait trame-`a-trame de longueur K sans recouvrement. La s´equence cyclostionnaire w est de longueur K. On commence par la permuter (fonction ’randperm’ sous Matlab). On d´e-permutera le signal en r´eception de mani`ere `a r´etablir la marque cyclostationnaire et `a blanchir le signal porteur. Un coefficient d’att´enuation est introduit pour r´egler le niveau signal `a marque.

1. Passer en fr´equence : S = FFT {s}.

2 D´efinition de la cyclostationnarit´e : Soit X (t) un processus stochastique non- stationnaire (c’est-`a-dire un ensemble des r´ealisations de signaux al´eatoires ayant des pro- pri´etes statistiques communes X(t, ω)). Supposons que ses moments m k (t) := E[X(t) k ] E[X(t)] k v´erifient

α R + tel que (k N)(t > 0)

m k (t + 1k ) = m k (t),

o`u α k = . Alors le processus est dit cyclostationnaire de fr´equence de cycle (ou cyclofr´e- quence) α. Si c’est vrai seulement pour k 2, on parle de cyclostationnarit´e au sens large. Un processus stationnaire est ´evidemment cyclostationnaire pour toute fr´equence de

cycle

Les statistiques d’un tel processus ´etant p´eriodiques, tout un tas de m´ethodes de

Fourier deviennent disponibles. Un signal cyclostationnaire est une trajectoire d’un processus cyclostationnaire.

Exemples :

(i) Les exemples typiques se trouvent en communication num´erique. Les signaux PSK sont

cyclostationnaires.

(ii) Soit a(n) un signal stationnaire centr´e. On obtient un signal cyclostationnaire en consi- d´erant

x(n) = a(n) cos(2παn).

Sa moyenne est nulle, regardons plutˆot son carr´e :

y(n) = x 2 (n) = a 2 (n) (1

2

+ cos(4παn)).

En regardant les statistiques de y(n) (par exemple sa moyenne), on verra qu’elles sont

2α 1 . C’est cette caract´eristique que nous exploiterons pour d´etecter

les signaux cyclostationnaires. Propri´et´e Soient X(w, t) un processus cyclostationnaire et φ(w) une phase al´eatoire. Alors on peut montrer que X(w, t + φ(w)) est un processus stationnaire.

p´eriodiques de p´eriode

´

´

2.5. M ETHODE ASYM ETRIQUE

17

2. Calculer le masque, simplement : M(k) = |S(k)|, k = 1,

3. Calculer la r´eponse impulsionnelle du masque : m = IFFT {M}

4. Mise en forme spectrale pour l’inaudibilit´e : si la norme m 1 = n |m(n)| du masque n’est pas nulle, poser m = m/ m 1 et

, K/2 + 1.

w f (n) = w m (n) =

K/2

k=K/2

m (k)w(n k)

et sinon poser w f = 0.

5. Ajout du tatouage : x = s + αw f , o`u typiquement α = 0.15 assure l’in- audibilit´e de l’insertion.

2.5.2

D´etection

L’´etape d´elicate de la d´etection est l’´egalisation, c’est-`a-dire la d´econvolution par le masque du signal. La forme du spectre de la marque ´etant d´ecisive, la d´econvolution est un point sensible. Je commence donc par d´ecrire la proc´edure d’´egalisation. On estimera la marque comme wˆ (n) = gy = i=L g