A co je tedy na EME špatného? Je snad tíky tomu web méně svobodný? Těm nářkům nerozumím. Sledují uživatelé online média? Sledují. Mají právo se poskytovatelé obsahu chránit před krádeží? Mají. Je lepší, když DRM definuje standard, než aby si to každý dělal po svém, například silverlightem. Právě díky eme si mohu pustit na linuxu HBO GO, Horizon GO, Netflix a nemusím řešit prasárny typu flash či silverlight. Je to krok ku předu, k multiplatformní webovým službám na HTML5.
jenomže SSH je pod kontrolou admina, GPG je pod kontrolou uživatele a kód aplikací využívajících tyhle technologie je open-source. Tohle je pod kontrolou třetí strany a nacpané v našem browseru... Úplně vidím ty buildy browserů bez podpory EME... asi nebudou, že? Chrome a IE to protlačí a Mozilla bude muset jít s davem aby nepřišla o uživatele.
Mas v tom zmatek, tohle je taky plne pod kontrolou uzivatele.
1. Zdrojaky browseru s EME jsou k dispozici, neni to nic tajneho.
2. Ty se zaregistrujes v netflixu, na pozadi se ti vygeneruje tvuj privatni i verejny klic (s casovou platnosti podle tve uhrady, nebo typu nakupu pronajem/koupe) a netflix ti da video zasifrovane tvym verejnym klicem aby ho jiny neodemkl.
Presne takhle to bohuzel fungovat nemuze. Zdrojaky EME sice mozna k dispozici budou/jsou, ale aby mohlo DRM fungovat, musi se nekde stahnout nejaky binarni blob, ktery zobrazuje obsah zpusobem, ktery neumozni kopirovani, sdileni apod. Samotna implementace desifrovani soukromym klicem neni obvykle to, co si vydavatele pod pojmem DRM predstavuji. Pokud by to bylo tak, jak popisujete, vychazela by s kazdou novou verzi prohlizece i neofiko verze, ktera by desifrovany obsah ukladala do souboru a pripadne rovnou uploadovala na sharovaci server:-) DRM se snazi udelat to, aby obsah sel precist, ale zaroven nesel precist. Z principu veci je DRM naprosty nesmysl. Ale jsou lidi, kteri veri na kouzla a jini, kteri jim ta kouzla slibi... a tak se kolem toho toci hodne penez.
Kdepak binarni bloby, proste je tech klicu jen vice. Klidne pro kazdy packet ci media block jak to volaji. U streamu pohoda, stejne si online a tak ti s predstihem soukaji klice k dektryptovani packetu co prijdou. Koukni si dokumentaci v clanku.
Jak to bude s offline ulozenymi videama moc tahle specifikace neresi a ani na to necili, jde pouze o streaming. Ale i tady by byla cesta generovat ty klice pro konkretni hardware podobne jak to dela iOS v AppleTV, iPad atd. Nebo se na DRM u offline vykakat a pouze to video vhodne watermarknout aby sdilec byl snadno identifikovan.
Pravda, dokumentaci jsem necetl. Faktem ale je, ze pokud mam implementaci v rukach (coz v tomto pripade alespon u nekterych prohlizeciu mit budu), pak mi nic nebrani ten obsah, ktery ziskam, pouzit i jinak, nez zamyslel ten, kdo ho nabidl. Dostanu klic a desifruju obsah - a pak si s nim muzu udelat co chci. Jasne, watermark to resi - ale watermark by fungoval i bez teto sifrovani a desifrovani. Tak v cem je pridana hodnota tohoto reseni?
var license = new Uint8Array(xmlhttp.response);
je to binarni pole ? je
je large ? mozna 4kB klic ?
je objekt ? asi ne, jenom hash
Pojem "(derave) binarni bloby" zacoinovali na rootu systemd antagoniste a od te doby jej s vervou pouzivaji vsichni hejteri s poruchou osobnosti a jeste ti vynadaji, ze do toho nevidis. Pro ne blobem proste i desifrovaci klic :)