Autor Zpráva
ava
Profil
Nevěděl by někdo, jak můžu zajistit, aby když mi z mého webu, na kterém prezentuji HTML5 video pomocí <video> tagu, někdo seekne (posune) video např. do půlky, což znamená, že pomocí Content-range začnu načítat zdroj MP4 od prostředka, jsem dokázal do právě tohoto HTTP REQUESTU, vyvolaného BOHUŽEL pomocí clienta prohlížeče, vtěstnat svůj vlastní ověřovací identifikátor (např. token) a pro response ho už jen ověřit? Za důsledek to má to, že pokud na daný MP4 soubor (doopravdy to není MP4 soubor ale PHP script!) mi někdo pošle http-request, data NEDOSTANE! Čili, mám problém s tím, že nedokážu modifikovat tento http požadavek, jelikož ho nevolám já ale client - a to i přesto, že videoplayer leží na mém serveru :(
Moc děkuji za veškeré nápady!
Jediné, co mě napadá je, že budu muset napsat např. v jQuery nějakou nadstavbu pro HMTL5 element <video> a donutit daný videopřehrávač, aby zasílal ve svých http požadavcích ještě něco navíc..
Chamurappi
Profil
Reaguji na avu:
vtěstnat svůj vlastní ověřovací identifikátor (např. token)
Předej ho v adrese. Kudy jinudy bys ho chtěl posílat?
Také by asi šlo použít cookies, ale s nižší spolehlivostí, protože některé videopřehrávače v mobilech nesdílejí sušenkovou politiku s webovým prohlížečem.

Jediné, co mě napadá je, že budu muset napsat např. v jQuery nějakou nadstavbu pro HMTL5 element <video> a donutit daný videopřehrávač, aby zasílal ve svých http požadavcích ještě něco navíc.
To by mě docela zajímalo, co si pod takovou nadstavbou představuješ, protože <video> je ta nejnižší úroveň, na kterou tě prohlížeč pustí, skriptem (natož jQuery) se těžko vetkneš mezi něj a síťovou komunikaci. Existuje sice i samotný dekodér MPEGů přeložený do nativního JS, ale ten není použitelný, má několik desítek MB.

Mimochodem, pokud svým PHP skriptem vracíš video v MP4, tak připomínám, že tento formát videa nepodporují všechny prohlížeče.
Alphard
Profil
Jde trochu o duplicitu k HTTP Referer - někde chodí prázdný.
ava
Profil
Chamurappi:
Dekuji za Tvou rychlou reakci.
Duvod, proc nemohu token predavat v adrese je ten, ze jeho platnost musi byt pouze pro jedno pouziti. V pripade, ze video nactu je to v poradku, ale pokud ho nekdo posune na casove ose, videoprehravac se zacne sam od sebe pomoci http pozadavku ptat na dany zdroj (tedy i "neplatny" token v URL) a video zkolabuje. Cookies je to same, pokud ji nastavim, bude platna sice ve chvili, kdy se bude client/browser znovu ptat, ale nezajisti mi tu bezpecnost, kvuli ktere to cele delam, a to ze kdokoli vezme danou URL zdroje videa a vlozi ji do adresni radky a video zacne stahovat - to je pro mne nepripustne, snazim se videozdroj ochranit! :)
Co se tyce jQuery, tak jen moznost editace pripadne podsouvani vlastnich hlavicek pri generovani hhtp-requestu.
A co se tyce PHP, ktery mi vraci na vystup MP4 format videa - mam dotazeno k dokonalosti ;-) nebudu se tajit, ze jsem nad tim stravil jiz pul roku prace. Nejvetsi problem byl, pokud nkoho zajima, prehravani na APPLE platformach (vyzaduji prave Accept-ranges), pomoci kterych je mozne video posouvat...
Alphard
Profil
ava:
Pořád nevím, jestli to správně chápu. Takže:
1. vygeneruje se token,
2. video se začne přehrávat od začátku,
3. zruší se platnost tokenu,
4. uživatel posune video, vyvolá se nový požadavek, který je bez tokenu, a přehávání selže.
A vy chcete při tom posunutí vložit nový token, rozumím tomu dobře?

Nevím, jaký máte mechanismus generování tokenu, nešlo by ihned při zrušení toho původního vygenerovat nový a cookie upravit pomocí javascriptu?

A má to vůbec smysl? Proud videa si stejně mohu zachytit během přehrávání ve vašem přehrávači, jestli to nešifrujete, nic mi nezabrání odposlouchávat síťový provoz.
Chamurappi
Profil
Reaguji na avu:
Duvod, proc nemohu token predavat v adrese je ten, ze jeho platnost musi byt pouze pro jedno pouziti.
Proč musí být token jen na jedno použití takovým způsobem, že ho při jakémkoliv požadavku zneplatníš? Pokud se pošlou požadavky, jejichž Content-Range se nepřekrývají, nemusíš token zneplatňovat, ne?

Cookies je to same, pokud ji nastavim, bude platna sice ve chvili, kdy se bude client/browser znovu ptat, ale nezajisti mi tu bezpecnost
Cookies není to samé, tu můžeš v průběhu času měnit a prohlížeč bude nové požadavky posílat s novou hodnotou (pokud vůbec přehrávač cookies podporuje), aniž by zresetoval stav videa, což by se jinak stalo při změně adresy.

to je pro mne nepripustne, snazim se videozdroj ochranit! :)
Máš to marné. V případě <video> elementu se ke zdroji hravě dostane i mírně zkušenější uživatel. U flashe to může být složitější.

Co se tyce jQuery, tak jen moznost editace pripadne podsouvani vlastnich hlavicek pri generovani hhtp-requestu.
Aha… a co bys s tím textem, který AJAXem stáhneš, dělal? Jak bys ho začlenil do existujícího napůl načteného binárního souboru videa?
ava
Profil
Alphard:
Hezky shrnuto.
Ano, popis je spravny, ale ty cookies bohuzel ne. Stale totiz plati ten pripad, ze pokud cookies obnovim, tak video po posunuti prehravat pujde, ale pokud namisto posunuti provedu vlozeni zdrojoveho url do adresni radky, video se zacne stahovat, jelikoz cookies bude platna. Potreboval bych overeny http-request.... :(
Co se tyce sitove komunikace, tak jede pres SSL, neni mozne zde odposlechnout. Dokonce video ani nekešuju a veskere kešování j striktne zakazane.
Hold je to orisek a nevim zatim stale, jak ho vyresim.


Chamurappi:
Máš to marné. V případě <video> elementu se ke zdroji hravě dostane i mírně zkušenější uživatel. U flashe to může být složitější.
Mas pravdu, staci dat CTRL+U a ve zdrojovem kodu najit ".mp4" - hups a mam zdrojovy URL :) jenze ten uz je neplatny, jelikoz uz se prehrava.. Problem je pri posouvani videa, protoze se video-element pta na nepřipravenou "starou" url. Pokud to nejde, uz chapu, proc to nikdo jeste neudelal :))
juriad
Profil
A kdo říká, že nemůžu přehrávání zrušit (třeba tím, že použiji prohlížeč, který <video> nepodporuje a takových je hromada) a vygenerovaný nespotřebovaný token nepoužiji ke stažení videa. Ty předpokládáš, že načtení stránky = spuštění videa = spotřebování tokenu.
ava
Profil
juriad:
Mam osetrene nejednim zpusobem.. jednim je napriklad spusteni prehravani pomoci javascriptu (ano, ten muze byt vypnuty..), dal mam velmi malou casovou platnost tokenu, dal overuji referera (ano, da se take podstrcit), dale, pokud pouzijes prohlizec, ktery nepodporuje HTML5 tag <video>, nebo nemas moznost prehrat video pomoci dostupnych kodeku (vse testuji jeste nez token generuji), pak jsi pomoci fallbacku automaticky prepnut na flash player. To byla otazka mimo, ale samozrejme pro zajimavost zodpovidam alespon castecne ;-)
_es
Profil
ava:
Ak myslíš „ochranou“ to, že namiesto prehrania v prehrávači si to niekto stiahne na svoj disk, tak to v princípe nejde. To je ako poslať niekomu poštou nejakú tlačovinu „ochránenú“ tak, aby ju prečítal len raz, alebo si ju neprečítal aj niekto iný.
ava
Profil
_es:
zkus tedy stahnout zdroj napriklad tohoto videa a popsat, jak jsi to udelal (pro srandu davam tohle, abych alespon trochu nadlehcil situaci :D)

videogate.pro/eefR
_es
Profil
ava:
To video mi nefunguje.
Tá ochrana v princípe nemôže byť dokonalá, lebo tie binárne dáta čo idú do prehrávača, musí byť predsa v princípe možné „presmerovať“ inde. Či už už nejakým ľahším alebo ťažším spôsobom.
ava
Profil
_es:
Tá ochrana v princípe nemôže byť dokonalá, lebo tie binárne dáta čo idú do prehrávača, musí byť predsa v princípe možné ‚presmerovať‘ inde. Či už už nejakým ľahším alebo ťažším spôsobom.

Zkus to prosim rozepsat, kdyz uz jsi to nakousl? Jak by jsi tedy to video doloval Ty, kdybys dejme tomu MUSEL :)

A pak, zkus predevsim odpovedet na mou puvodni otazku, pokud Te mohu poprosit a napada Te neco :P

Diky!
_es
Profil
ava [#13]:
To, že sa to v princípe dá, neznamená, že sa mi to chce nejako rozpisovať, či vyrábať. Napríklad, Youtube neposkytuje odkaz na stiahnutie celého videa ako súboru, hoci by to ľahko vedeli spraviť. No existujú spôsoby, alebo aj hotové služby iných strán, ako z Youtube videa dostať jeden súbor s celým videom. A rovnako by to šlo aj s tvojou „ochranou“.

Akosi celkom nerozumiem, o čo sa vo výsledku snažíš. Aby užívateľ nemohol preskočiť na iný čas vo videu? No tak mu tie ovládacie prvky nezobraz.
Krakatoa
Profil
ava:
"zkus tedy stahnout zdroj napriklad tohoto videa a popsat, jak jsi to udelal (pro srandu davam tohle, abych alespon trochu nadlehcil situaci :D) videogate.pro/eefR"

Jako pouze uložit? No zapnul jsem IE, přes F12 jsem se proklikal k "Uložit jako...", pak na to kliknul.
uloz*.to/xAkKaNP3/eefr-7z
ava
Profil
Krakatoa:
Jako pouze uložit? No zapnul jsem IE, přes F12 jsem se proklikal k "Uložit jako...", pak na to kliknul.
uloz*.to/xAkKaNP3/eefr-7z

Tvuj .7z soubor nelze rozbalit (http://videogate.pro/usercontent/7z-chyba.jpg), tak tezko rict, jestli se Ti to povedlo..
Zkus to znovu jestli nam to chces dokazat ale nestahuj tentokrat verejne dostupne video jako je Barovy Joke z filmu Desperado, ale toto zkus:

https://www.videogate.pro/ufo

Jinak díky za Tvůj zájem a snahu, vážím si toho, potřebuji, aby mi někdo našel díry ;-)
Krakatoa
Profil
ava:
No muj soubor mi rozbalit jde (Winrar 5 nebo 7z 9.2.2 nebo TC 8.51a+plugin7z).
To ufo mi přehrát nejde, takže dodej funkční odkaz.
A k tomu prvnimu videu, jako důkaz jeden řetězec z mediainfo: BADC23205MH1397648457838228 a MD5 8d2bd27d0d97d4692ddfefd726d4b134
A jak jsem mohl vědět, že to video je z youtube? .-)
_es
Profil
ava:
Tvuj .7z soubor nelze rozbalit
Ide rozbaliť aj prehrať.

aby mi někdo našel díry
Ono to je už v základnom princípe celé „deravé“, ide len o inú variantu „kopírovania" podľa článku www.zdrojak.cz/clanky/jen-je-nechte-at-si-kradou.
ava
Profil
Krakatoa:
A jak jsem mohl vědět, že to video je z youtube? .-)
Protoze na youtube je vetsinou kazde video :D a to je duvod, proc me napadlo s tim neco delat :P
A za odkaz s UFO se omlouvam, ted uz funguje ;) stahni to video prosim a povez mi, jak jsi to udelal, zacinam Ti trochu verit :P
Diky.
Krakatoa
Profil
ava:
Ufo je enkodované dementním Format Factory, Encoded date: UTC 2014-04-03 10:21:00 a md5 je: 2b69f80ef37b935cc1b01f68fb8fd89e
Jestli chceš tak jej i uploadnu.
Postup: IE11, zobrazím odkaz, kliknu na F12, kliknu na síť, kliknu na povolit zachytávání, spustím video v odkaze, v souhrnu si najdu mp4, poklikám na něj, kliknu na Text odpovědi a kliknu na Uložím jako...
No a mám uložené to tvé video.
ava
Profil
Krakatoa:
Postup: IE11, zobrazím odkaz, kliknu na F12, kliknu na síť, kliknu na povolit zachytávání, spustím video v odkaze, v souhrnu si najdu mp4, poklikám na něj, kliknu na Text odpovědi a kliknu na Uložím jako...
No a mám uložené to tvé video.
Uploadovat nemusis, vim ze jsi ho stahnul ;) ale rekni mi, myslis si, ze jsi to vytahl z bufferu? protoze z originalniho odkazu uz by se Ti to nemohlo podarit..
Krakatoa
Profil
ava:
No tak IE11 si to video stáhne a pak se s ním může dát dělat cokoliv, zobrazit, dát uložit. Tak je to asi ten buffer. Nestahuje to znova, taky proč?
Chamurappi
Profil
Reaguji na avu:
I kdyby video nešlo vypáčit přímo z prohlížečů, tak uživatel může použít programy na záznam obrazovky a tím získat ekvivalent původního souboru, který bude sice buď nadměrně velký, nebo méně kvalitní (při překomprimování), ale z hlediska ochrany autorských práv díla pořád stejně ukradený. Takže i kdybys našel nějakou zázračnou ochranu videosouboru před stažením, byl by to úspěch prakticky bezcenný.
ava
Profil
O programech jako je napr. CamStudio aj. samozrejme vím :) nejde o to, ze by to video NESLO ukrast, ale o masovou vetsinu lidi, kteri pak nemaji temer zadne moznosti video dale sdilet..
Chci se jeste zeptat, zda si myslite, ze se realtime-video-streaming napr. protokolem RTSP uklada do browseru a ke klientovi? to uz preci asi nee, jelikoz muzeme sledovat live tv napr. tyden v kuse a tudiz se obsah nemuze ukladat, pouze se zobrazuje v realnem case? Napadlo me, prehrat video pomoci tohoto protokolu a odkazu, ktery by mel platnost pouze jedno prehrani.
Jasne, lehci je to vzdat, zajimavejsi jeste chvili bojovat ;-) Kor kdyz uz jsem pokoril to nejdulezitejsi - ze dokazu video prehrat na VSECH zarizenich a platformach. Jen doplnim, ze ty vzorky, co jsem zde nabidl na videogate.pro je pouze beta a pokud to nekomu neslo, tak je to kvuli jeste staremu PHP enginu - ten novy sice prehraju vsude, ale zase ztraci veskerou bezpecnost viz. podstata tohoto prispevku :)
Diky vsem za Vase nazory a za Vase cenna zamysleni - moc lidi o tom zas tolik neví, nemyslete si :) Clovek si mysli, jak je dnesni spolecnost jiz v informacnich technologiich vyspela, ale 95% vsech uzivatelu stale nevi, co je zdrojovy kod www stranky ;-) <-- z toho se da zatim jeste tezit ;-)
Bubák
Profil
ava:
95% vsech uzivatelu stale nevi, co je zdrojovy kod www stranky
A z nich půlka obtěžuje těch 5 %, aby jim pomohli stránku uložit, vložit do Wordu, vytisknout, a pochopitelně, že nechybí žádosti na stažení audia nebo videa.
_es
Profil
ava:
Chci se jeste zeptat, zda si myslite, ze se realtime-video-streaming napr. protokolem RTSP uklada do browseru a ke klientovi? to uz preci asi nee, jelikoz muzeme sledovat live tv napr. tyden v kuse a tudiz se obsah nemuze ukladat, pouze se zobrazuje v realnem case?
V princípe každé dáta je možné nahrávať na disk. Aj tie, čo sú určené na zobrazenie obrazu. Ak by si prehrávač dáta niekam do pamäte neukladal, tak by ich predsa nemohol následne spracovať a zobraziť. Nahrávanie zobrazovaného videa na disk niektoré prehrávače umožňujú aj z užívateľského menu - napríklad VLC - aj z protokolu RTSP.

Jasne, lehci je to vzdat, zajimavejsi jeste chvili bojovat ;-)
Čítal si ten odkazovaný článok?
Chamurappi
Profil
Reaguji na avu:
nejde o to, ze by to video NESLO ukrast, ale o masovou vetsinu lidi, kteri pak nemaji temer zadne moznosti video dale sdilet
Zaznamenávat dění na obrazovce už masy docela zvládnou, primitivní práce s videem je díky rozmachu YouTubu celkem populární činnost, na kterou není nutné hlubší know-how — kdo chce, ten to většinou zvládne. Třeba na Macu prý není nutné instalovat žádný další program, záznam obrazu je přímo součást systému.

ze se realtime-video-streaming napr. protokolem RTSP uklada do browseru a ke klientovi?
Něco málo se vždy musí ukládat. Ale jednak RTSP půjde asi dost dobře odchytit, jednak bych se divil, kdyby měl nativní podporu v prohlížečích.

moc lidi o tom zas tolik neví, nemyslete si :)
Stačí, aby tvoji ochranu prolomil jeden člověk a nasdílel výsledek.
ava
Profil
JE TO PRAVDA, NEMA TOHLE CENU.. Prdim na to :)
Diky vsem za pomoc.

Vaše odpověď


Prosím používejte diakritiku a interpunkci.

Ochrana proti spamu. Napište prosím číslo dvě-sta čtyřicet-sedm: