Õppetund
Teooria — Kokkumängu üleelav vesimärk
Sõrmejäljekood annab igale tellijale samast filmist koopia, mis kannab erinevat m bitist koosnevat jada. Nii reedab lekkinud koopia kohe, kellele see väljastati. Bitte ei valita ühtlaselt. Iga positsioon j saab oma kallutatuse pj, mis valitakse nii, et enamik positsioone on üle kogu tellijaskonna peaaegu eranditult ühed või nullid. Koopiaid ühendav rühm suudab positsiooni märgata vaid seal, kus nende endi bitid erinevad. Süüdistusskoor summeerib aga iga tellija biti ootamatuse nendel positsioonidel, kus võltsingus seisab üks.
Mida iga sümbol tähendab
m- koodi pikkus bittides, mis ongi kogu õppetunni peateema
c- mitu tellijat oma koopiad kokku paneb
Z- süüdistuslävi: sellest suurem skoor paljastab kellegi
- Eeldab
- Märgistuseeldus: kohtades, kus igas rühma koopias on sama bitt, ei suuda nad seda positsiooni märgata ega muuta. Kõik siin lehel toetub sellele. Päris süsteemis on see väide andmete peitmise kohta. Eeldatakse, et märki, mida koopiate võrdlemisel ei näe, pole võimalik eemaldada. Rünnakute sihtmärgiks satub matemaatika asemel just see disainiosa.
- Ei kehti, kui
- Siis, kui kokkumängijaid on rohkem, kui koodi loomisel ette nähti. Sujuvat halvenemist ei toimu. Süüdlaste skoorid kahanevad võrdeliselt 1/c, samas kui lävend püsib seal, kuhu süütu populatsioon selle asetab. Seega kood, mis on piisavalt pikk nelja jaoks ja seisab vastamisi kaheksaga, ei tuvasta süüdlast lihtsalt veidi harvemini, vaid lakkab täielikult kedagi paljastamast.
Ülesanded täielikult lahendatud
-
Kust on pärit 2490? Tööriist kuvab selle nelja kokkumängija kohta miljoni tellija seas ning see pole simuleeritud väärtus. See tuleneb kahest mõõdetud seaduspärasusest ja ühest otsusest selle kohta, kui sageli olete valmis süütut inimest süüdistama. Tuletuskäik koosneb neljast reast ning just see viimane tekitabki ruudu.
-
Kokkumängija jäetud tõendid on võrdelises sõltuvuses koodi pikkusest ja jagunevad nende vahel, sest iga nende kontrollitava veeru kujundamisel on nad kõik osalenud. Mõõdetuna 2 kuni 16 liikmeliste koalitsioonide ja 800 kuni 51 200 bitiste koodide peal on see umbes 0,34 m/c.
-
Süütu tellija skoor on m sõltumatu panuse summa. Nende keskväärtus on null, seega on tegemist juhusliku ekslemisega. Selle hajuvus ei kasva mitte koos pikkusega, vaid võrdeliselt pikkuse ruutjuurega. Mõõdetud tulemus on umbes √(m/2).
-
Tuleb otsustada, kui sageli olete valmis süüdistama süütut inimest. Olgu selleks ülemmääraks ε n-liikmelises rühmas. Üks tellija tuleb seega õigeks mõista tõenäosusega 1 − ε/n. Miljoni tellija ja ühe tuhandikulise eksimisvõimaluse korral tähendab see 6,00 standardhälbe kaugust.
-
Tuvastamiseks peavad tõendid selle künnise ületama. Paigutage need kaks seaduspärasust valemisse ja avaldage sealt m.
-
Muutuja c asub ruudus ja see ongi kogu vastus. Nelja kokkumängija puhul on vaja 2490 bitti ja kaheksa puhul 9959 bitti. Täisbittideni ümardamise piires on seda täpselt neli korda enam.
-
Praktilise lahenduse aluseks olev arv ei ole see, mille annab matemaatiline tõestus. Tardose enda teoreem tagab selle 100c²⌈ln(n/ε)⌉ bitiga, mis teeb meie näites 2100c². See on Gaussi hinnangust kolmteist korda pikem. Matemaatiline tõestus peab nimelt pidama paika iga võimaliku kokkumängustrateegia vastu, mitte ainult siinsel lehel toodud kolme korral.
Vastus
m > (z c √(1/2) ÷ 0,34)² = 4,3253 z² c², mis z = 5,9978 korral annab enne täisbittideni ümardamist 155,60 c². Kahe kokkumängija puhul on vaja 623 bitti, nelja jaoks 2490 ja kuueteistkümne jaoks 39 833 bitti. Baitides tähendab see vastavalt 78 B, 311 B ja 4,98 kB vesimärgi andmemahtu. See on piisavalt väike, mistõttu koodi pikkus osutub haruharva takistuseks. Samal põhjusel vaieldakse valdkonnas hoopis märgistamise eelduse üle. Ainus tegur, mida ei saa ruuduga tasakaalustada, on auditoorium: muutuja n siseneb valemisse ainult z kaudu, mis kasvab võrdeliselt suurusega √(log n). Tellijate arvu suurendamine tuhandelt kümne miljonini kasvatab pikkust 1564 bitilt 2801 bitile. See on 79% kasv, samas kui koalitsiooni ühekordne kahekordistamine tõstab kulu 300%.
-
-
Kas voogedastusteenus vajab midagi sellest kõigest? Selle seeria esimene samm käsitleb maailma, kus kõik koopiad on identsed ning seadmega suhtlemiseks puudub igasugune võimalus. Tellimusteenus on selle täielik vastand. Widevine'i enda dokumentatsioonis on kirjas, et litsentsipäring liigub üle HTTPS-i litsentsiserverisse ning "litsentsi sisu pole enam muudetav ja on päringu esitanud seadme jaoks individuaalne". Mis siis matemaatikast üldse järele jääb?
-
Pool sellest kaob täielikult. Tagasikanali olemasolul pole enam päist, mida katta. Seadme voost väljaarvamine ei lähe midagi maksma, sest talle jäetakse litsents lihtsalt väljastamata. Esimese sammu kogu kattuvusprobleem on tagasiside puudumise hind, sest plaat ei saa ju küsida, kes seda esitab.
-
Teine pool aga ei kao, vaid muutub vastupidi isegi olulisemaks. Litsentsiserver peatab seadme, mille kompromiteeritus on teada. See aga ei suuda takistada heas kirjas olevat tellijat salvestamast seda, mille ta äsja legitiimselt dekrüpteeris. See leke kannab sõrmejälge ja just sõrmejälg on ainus, mis nad tuvastab.
-
Seega taandub mahu küsimus siin lehel toodule tegeliku tellijaskonna näitel. Koodi pikkus on võrdeline koalitsiooni suuruse ruuduga, auditooriumist aga sõltub see üksnes logaritmiliselt.
-
Lugege tabelit ridade kaupa ja seejärel ülevalt alla. Kuusteist kokkumängijat nõuab kuuskümmend neli korda suuremat mahtu kui kaks kokkumängijat. Tellijate arvu kasv kümne tuhande pealt saja miljonini tähendab nelja suurusjärku, kuid kulu suureneb vaid 1,66 korda.
-
Kümne miljoni tellija ja nelja kokkumängija korral teeb see 2801 bitti. Mitmegigabaidise filmi puhul on seda kõigest kolmsada viiskümmend baiti sisu.
Vastus
Koodi pikkus ei osutu kunagi probleemiks. Mastaabis, kus sisu maht ulatub miljardite baitideni, on 350 baiti olematu suurus. Tuhat korda suurem auditoorium ei nõua tuhat korda rohkem ressurssi, vaid lisab koodi pikkusele kõigest kaks kolmandikku. Koalitsioon on ainus parameeter, mis tegelikult loeb, sest just see asub ruudus. Inimeste arv, kes oma koopiad reaalsuses ühendavad, on kogu arvutuskäigus ainus suurus, mida keegi ei suuda ette ennustada. Reaalse süsteemi arendusressurss ei kulu sellele matemaatikale. Insenerid töötavad hoopis selle nimel, et vesimärk elaks üle uuestikodeerimise, kärpimise ja ekraanile suunatud kaamera. Samuti tuleb tagada märgistamise eelduse paikapidavus olukorras, kus ründajal on kaks koopiat ja erinevuste tuvastamise tööriist.
-
Õpitee
Voogedastuse kaitsmine: tühista seade, seejärel tee kindlaks, milline neist
Allikad (4)
- Worked problem 2 turns on a streaming service working the other way round from step 1 of the series, and this is the vendor's own description of the licence flow: Google, "Widevine DRM Overview", developers.google.com/widevine/drm/overview.
- The code this page builds, the accusation score it computes, and the c² the whole lesson is about: G. Tardos, "Optimal probabilistic fingerprint codes." Journal of the ACM 55(2), 2008, pp. 1–24. First published in STOC 2003, pp. 116–125.
- Where the marking assumption comes from, and the proof that some length is unavoidable: D. Boneh and J. Shaw, "Collusion-secure fingerprinting for digital data." IEEE Transactions on Information Theory 44(5), 1998, pp. 1897–1905.
- Why a studio cares: this is the other half of the same specification as step 1 of the series, and forensic marks are what it falls back on when revocation is too slow. AACS LA, Advanced Access Content System (AACS): Introduction and Common Cryptographic Elements, Revision 0.91, 17 February 2006.