"Traitor Tracing"

28
1 "Traitor Tracing" Boris Škorić TU Eindhoven Vakantiecursus De Exacte Benadering 24 Aug 2012

description

"Traitor Tracing". Boris Š kori ć TU Eindhoven Vakantiecursus De Exacte Benadering 24 Aug 2012. Overzicht. Digitaal watermerken Coalitie-aanvallen Coalitie-resistente codes De Tardos code eenvoudig te bewijzen eigenschappen "exacte benaderingen". Digitale watermerken. Doel - PowerPoint PPT Presentation

Transcript of "Traitor Tracing"

Page 1: "Traitor Tracing"

1

"Traitor Tracing"

Boris Škorić

TU EindhovenVakantiecursus De Exacte Benadering24 Aug 2012

Page 2: "Traitor Tracing"

2

• Digitaal watermerken• Coalitie-aanvallen• Coalitie-resistente codes• De Tardos code

- eenvoudig te bewijzen eigenschappen

- "exacte benaderingen"

Overzicht

Page 3: "Traitor Tracing"

Digitale watermerken

Doel

• Opsporen van "ongeauthoriseerde herdistributie" van audio/video

• Traceren van de bron = "traitor tracing"

Methode

• Watermerk = geheime data verstopt in audio/video

- mag luister & kijkplezier niet verstoren

- moet eenvoudige manipulaties overleven(verandering van codec, helderheid etc)

Voorbeeld:Watermerken worden gebruikt in Digitale Cinema

3

Page 4: "Traitor Tracing"

4

Forensisch watermerken

• Lading = unieke identificatie-code

• parameters verschillend voor elke film

Embedder Detector

oorspronkelijkefilm

lading

film met verborgen ladinggeheime

parameters

geheimeparameters

lading

oorspronkelijkefilm

Page 5: "Traitor Tracing"

5

• Aanvallers vergelijken wat ze ontvangen hebben• De verschillen brengen watermerk aan het licht• Op die plekken wordt watermerk gericht aangevallen

"Coalitie van piraten"

1piraat #1

resultaatna aanval

1

1

0

0

0

0

1

1

1

10

0

0

0

0

1

1

1

1

1

0

0

1

1

1

1

1

0

0

0

1

0

1

0

0

0

0

0

0

1

1

1

1

0

1

1

0

1 0/1 1 0 0/1 0 1 0/1 0/1 0 0/1 1

#2

#3

#4

= "detecteerbare posities"

Coalitie-aanvallen

Page 6: "Traitor Tracing"

6

Coalitie-resistente watermerkenVerlanglijstje

• Bestand tegen c c0 aanvallers

• Zeer lage kans op valse beschuldigingen

• Lage kans om niemand te pakken

• ... en dat allemaal met weinig middelen!

- 7bits/minuut video

- niet te groot alfabet

Wiskundig model

• Video opgedeeld in (abstracte) segmenten

- uitgesmeerd in ruimte en tijd

• q-air alfabet

• Manipulatie alleen mogelijk in de detecteerbare posities

- alleen keuze uit ontvangen symbolen

- uitwissen kan niet

- mengen kan niet

Page 7: "Traitor Tracing"

Aanvalsmodel

"restricted digit model"

Voorbeeld met q=3. Alfabet {A,B,C}

A B C B

A C B A

B A A C

B B B A

A B A C

C A A A

A B A B

n klanten

coalitie-aanval: c aanvallers

m segmenten

toegestanesymbolen

7

Page 8: "Traitor Tracing"

8

Geschiedenis: Lengte van de codes

Ondergrens

Constructie

n = #klantenm = codelengte = aantal segmentenq = afmeting alfabet = Pr[er worden onschuldigen aangewezen]

Boneh & Shaw 1998:

Boneh and Shaw 1998:

Chor et al 2000:

Staddon et al 2001:

Huang + Moulin; Amiri + Tardos 2009:

m = 2c02 ln[n /η ], q = 2

Boesten + Skoric 2011:

m = 2q−1

c02 ln[n /η ]

Tardos 2003:

Tardos 2003:

m =100c02 ln[n /η ], q = 2

m = Ω(c02 ln[n /η ])

Page 9: "Traitor Tracing"

De Tardos code

• Allereerste code met m c∝ 2 macht en klein alfabet

• In twee opzichten probabilistisch

- staat kleine kans toe op valse beschuldiging en compleet missen van de aanvallers

- constructie van de code is gerandomiseerd

• In 2003 verzonnen voor q=2, in 2007 uitgebreid naar algemene q

9

Page 10: "Traitor Tracing"

Tardos code: Het maken van de codewoordenOnafhankelijk voor elk segment:

1. Kies "voorkeur"-vector p uit Dirichletverdeling

2. Genereer symbolen X aan de hand van p

p i ~ F, F (p)∝ pα−1+κ

α ∈Q∏

Pr[X ij =α ] = pαj

10

Page 11: "Traitor Tracing"

Tardos code: Het traceren

• Er wordt een "ongeauthoriseerde" kopie gevonden

• Watermerk-detector ziet symbool yj in segment j

• Reken voor elke klant i de "score" Si uit

- som van losse scores per segment: Si = Σj Sij

Sij =X ij = y j : (1− py ) / pyX ij ≠ y j : − py /(1− py )

⎧ ⎨ ⎪

⎩ ⎪

• Klant i is verdacht als score Si boven een bepaalde grens uitkomt

py

11

Page 12: "Traitor Tracing"

Tardos code: speciale eigenschappen

Scores van onschuldigen gedragen zich eenvoudig:

• Gemiddelde is nul in elk segment

• Variantie 1 in elk segment

E[Sij ] = py1− pypy

− (1− py )py

1− py= 0

E[Sij2] = py

1− pypy

+ (1− py )py

1− py= (1− py ) + py =1

• De Tardos score-functie is de enige met deze eigenschap

• Aanvallers hebben geen invloed op scores van onschuldigen12

Page 13: "Traitor Tracing"

Speciale eigenschappen (II)

Wat kunnen we zeggen over de scores van de aanvallers?

•Definieer σα = #aanvallers dat symbool α ontvangt

•Totale score van de coalitie in een segment:

•Verwachtingswaarde over alle random beslissingen.(Kansverdeling van σ is multinomiaal.)

•Coalitie-score is geen stijgende functie van c.Daalt zelfs een beetje.

σ y

1− pypy

− (c −σ y )py

1− py

E pσ y[tot.score] = E p

cσ ⎛ ⎝ ⎜

⎞ ⎠ ⎟E y (...)

ddpy

pyσ y (1− py )c−σ y[ ]σ

13

Page 14: "Traitor Tracing"

Gevolgen van de speciale eigenschappen

PFP = kans dat (onschuldige) klant i onterecht wordt beschuldigdm = #segmentenc = #aanvallersZ = grens

aanval heeft enigeinvloed op de vorm

Met m c∝ 2 kunnen de curves afdoende uit elkaar geschoven worden

aanvalleronschuldig

kansdichtheid als functie van

14

Page 15: "Traitor Tracing"

"No framing"

aanvalleronschuldig

Wat als er meer aanvallers zijn dan geanticipeerd?•Rechtercurve schuift links van de grens Z ⇒ aanvallers niet gepakt•Linkercurve verandert nauwelijks ⇒ geen onschuldigen gepakt

15

Page 16: "Traitor Tracing"

Samenvattinkje tussendoor

• Constructie van de Tardos code en het score-systeemzijn heel eenvoudig

- segmenten zijn onderling onafhankelijk

- arbeid evenredig met nm

• Belangrijke eigenschappen zichtbaar met weinig analyse

- de factor c2 in m = const.c2 ln(1/PFP)

- no framing

- plaatsing grens

Z ∝ m

16

Page 17: "Traitor Tracing"

Minder evidente eigenschappen

aanvalleronschuldig

Centrale Limiet Stelling: kansverdelingen worden Gaussisch

- PFP wordt Complementaire Errorfunctie Erfc

- gebruik

- na enig gepruts volgt de factor ln(1/PFP) in m = const.c2 ln(1/PFP)

17

Page 18: "Traitor Tracing"

Nog veel minder evidente zaken

• De precieze waarde van de constante in m = const.c2 ln(1/PFP)

- In praktische situaties const<9

- Asymptotisch voor grote c: const → 2/(q-1).Vereist ingewikkeld score-systeem.

• De exacte vorm van de kansverdelingen- convolutie-stelling voor "optellen" van kansverdelingen in het Fourier-

domein: als Z=X+Y, X f, Y g, en Z h , dan ∼ ∼ ∼ F[h] = F[f] F[g]

- "exacte benadering" door Taylor expansie in m-1/2

18

Page 19: "Traitor Tracing"

Samengevat

• Kat-en-muis-spel van aanval en verdediging bij watermerken leidt tot flink wat wiskunde

- Coderingstheorie

- Informatietheorie

- Statistiek

- Functionaal-analyse

- Reeksen

• We hebben de Tardos code in detail bekeken

- optimaal tegen grote coalities

- no framing

- simpel in gebruik

- makkelijk te begrijpen19

Page 20: "Traitor Tracing"

</presentatie>

20

Page 21: "Traitor Tracing"

The Tardos scheme: Recent advances

Information theory approach

• Collusion attack is noisy channel

• Channel capacity (asymptotically) 1/( 2 ln2 c2 ).

• Capacity-achieving scheme

- same code generation

- accuse groups instead of individuals; based on mutual info

- method of "types"

- impractical

• Asymptotically best attack is interleaving

- Prob[output 1] = #ones / c

Amiri+Tardos 2009, Huang+Moulin 2009

21

Page 22: "Traitor Tracing"

Accusation probabilities

22

• m = code length

• Z = threshold

• c0 = #pirates

• = coalition accusationμ̃• ε1 = max FP

• ε2 = max FN

• Rm =innocent cdf

• Tm = guilty cdf

tends to Gaussian

Page 23: "Traitor Tracing"

Computing accusation probabilities

23

Fourier transform / generating function

• X ρ∼ 1, Y ρ∼ 2, Z=X+Y Z ρ∼ 3, ρ̃3(k) = ρ̃1(k) ρ̃2(k).

• Accusation is

• Start from accusation pdf for one segment, φ(u)the take product of m segments,

Z̃ := Z/√m

False accusation prob

Page 24: "Traitor Tracing"

One-segment innocent accusation pdf

dependson strategy

q=3κ=0.34c=6b=1

q=3κ=0.34c=6b=6

24

Page 25: "Traitor Tracing"

Power series in 1/m

Compute , then

decreasing as power of 1/m

prob[FP] = Gaussian

Hermite function"Correction terms" with decreasing magnitude

25

Page 26: "Traitor Tracing"

False accusation prob. curve

Sometimes better than Gaussian!

Quite long series requiredto get sufficient accuracy.

majority voting

26

Page 27: "Traitor Tracing"

Implications for code length

Interleaving attack

• Higher q → slower convergence but smaller #symbols

• large κ → overall better result 27

Page 28: "Traitor Tracing"

Summary

• q-ary Tardos code in the restricted digit model,majority voting and interleaving attacks

• Computation method for accusation probabilities

- pdf "addition" in the Fourier domain

- series in k → series in 1/m

• We can quantify how close FP prob. is to Gaussian

- sometimes better than Gaussian!

Future work:

•General attacks

•Different parameter choices28