Widevine s VMP na Linuxu - v čem je problém?

Widevine s VMP na Linuxu - v čem je problém?
« kdy: 31. 10. 2023, 09:42:05 »
Zdravíčko,

cca od roku 2019 se ví že spousta streamovanýho obsahu na Linuxu nefunguje protože Linux nepodporuje VMP u Widevine DRM.
Orientuje se někdo hlouběji v této problematice?
Proč po 4 letech stále nemůžeme na Linuxu přehrávat stejný obsah jako na jiných platformách - Windows, Apple (macOS, iOS), Android?
V čem tkví problém?

Dosud mě to nějak netankovalo, Amazon, Netflix apod. kteří vynucovali (pro HD+ obsah) VMP jsem nepoužíval, šlo to mimo mě.
Avšak to se změnilo cca před týdnem kdy Skylink na internetové televizi začal vyžadovat VMP úplně všude, čímž znemožnil dosud fungující přehrávání obsahu na Linuxu.
Jako sportovního fanouška zaměřeného na Premier League (což byl jedinný důvod platit od minulého roku Skylink) mě to neskutečně irituje.
Koupit nové zařízení s SW platformou Windows, macOS nebo Android nepřipadá v úvahu, to raději těmi penězi podpořím open-source project který přinese funkcionalitu i na Linux.


Re:Widevine s VMP na Linuxu - v čem je problém?
« Odpověď #1 kdy: 31. 10. 2023, 13:02:40 »
Nefunguje vám to pod Linuxem ani v Chromu nebo Firefoxu?

Standardně by jak Firefox, tak Chrome (z oficiálních balíčků od Google) měl podporovat Widevine L1.
U Chromu je to out-of-box součástí jejich distribuce.
U Firefoxu se to pak cca do minuty po prvním spuštění v profilu stáhne do domovského adresáře. Následně se to dá ověřit přítomnost content decryption modulu (CDM) v about:plugins.

Základní ověření funkčnosti webu jde udělat např. na:
https://shaka-player-demo.appspot.com/demo/ (prostřední video "Sintel" bude zašedlé a nepůjde spustit, když nebude funkční Widevine)
případně otevřete:
https://shaka-player-demo.appspot.com/support.html
Vrátí vám to JSON strukturu, kde by mělo být
Kód: [Vybrat]
"com.widevine.alpha": {
      "persistentState": false
    },
Pokud to bude null, nefunguje to.

Jinak nemám osobně přístup k aktuální dokumentaci a API od Widevine (ta je dostupná jen těm firmám, co to mají zaplacené).
Ale co si vybavuji z nějakých předchozích debat a postů.
Pokud poskytovatel obsahu (tzn. třeba Skylink, HBO, Spotify..) chce maximální úroveň té DRM ochrany (Widevine L1 + VMP), tak se ověřuje aplikace z které se volá CDM modul. Cca do r. 2020 to bylo ve výchozím stavu v API vypnuté, a muselo se to explicitně zapnout, tzn. ve výchozím stavu to chodilo i z neověřených aplikací. Třeba když někdo vyextrahoval tu dynamickou knihovnu a pak ji zavolal z Kodi, Chromia, nějaké Electron aplikace atd.
Od r. 2020 je to obráceně, ověřování je ve výchozím stavu zapnuto a pokud chce poskytovatel obsahu povolit přístup z neověřených aplikací musí to udělat přes API.
Takže i tohle hraje roli a může to způsobovat to, že to na konkrétní konfiguraci od některých poskytovatelů chodí, a od některých ne.
Netuším, jak to má Skylink. Ale to je ten důvod, proč jsem zmiňoval ozkoušení z oficiálního balíčku (rpm, deb) pro Chrome. U Firefoxu je to trochu složitější, už jsem viděl, že sestavení Firefoxu z balíčku některých distribucí nefunguje, ale třebe ofiko Flatpak od Mozilly https://flathub.org/apps/org.mozilla.firefox chodí.

Ještě zmíním, že jsem celou dobu měl na mysli x86_64, pro ARM je to ještě komplikovanější i když existují oficiální Linux Widevine knihovny pro armhf a od loňska i arm64 (RPi 3,4,5).

Re:Widevine s VMP na Linuxu - v čem je problém?
« Odpověď #2 kdy: 01. 11. 2023, 19:06:03 »
Toto mi poslali ze Skylinku 26.10.2023

v uplynulých dnech došlo z naší strany k aktivaci VMP (Verified Media Path), který omezuje neautorizované prohlížeče v získání klíče Widevine L3. Tato dodatečná ochrana byla povolena z důvodu omezení neautorizovaných prohlížečů ve streamování a zamezení možnosti nezákonného použití obsahu.

Zákazníci tedy nyní dostávají chybu přehrávače, příp. chybu DRM v případě, že nemají zabezpečení L3.

Tato chyba se může projevit zejména v okamžiku, kdy uživatel používá zařízení, prohlížeč nebo operační systém, který nedostává potřebné aktualizace po delší dobu (popř. nepravidelně nebo vůbec).

Zdá se, že operační systémy Linux v aktuální konfiguraci nesplňují nároky na zabezpečení s žádným webovým prohlížečem a streamování je tedy blokováno.

Aby bylo možné obsah nadále přehrávat, bude nutné, aby byl používaný software přizpůsoben aktuálním požadavkům na zabezpečení.

 Nejedná se tedy o omezení namířené proti uživatelům jakéhokoli konkrétního softwaru – je pouze potřeba zajistit si potřebné aktualizace. Ke stejnému kroku postupně přistupuje a nejspíše dále bude přistupovat většina poskytovatelů televizního a video obsahu.

 V případě dalších dotazů k problematice zabezpečení na systému Linux se prosím obraťte na jeho vývojáře.

Děkujeme za pochopení.

Děkujeme, že využíváte služeb Skylink.
S přáním hezkého dne,
Radek Skubach


Zákaznický servis

Re:Widevine s VMP na Linuxu - v čem je problém?
« Odpověď #3 kdy: 02. 11. 2023, 15:58:20 »
Jo to je o čem mluvím, začali vynucovat VMP a jelikož Linux VMP u Widevine nepodporuje tak máme na Linuxu smůlu.

Není to žádná otázka "prohlížeče nebo operačního systému který nedostává aktulizace". Prostě VMP pro Linux neexistuje.

A moje otázka spočívá v čem je problém že od roku 2019 stále Linux VMP nepodporuje.
Že to je problém se ví nejméně od roku 2020 kdy to začali vynucovat první streamovací platformy (tehdy jen pro "HD" obsah).

Vývoj Linuxu nemá zájem podporovat tuto technologii?
Widevine (Google) nechce podporovat Linux?

Kde je problém?

ja.

  • ****
  • 300
    • Zobrazit profil
    • E-mail
Re:Widevine s VMP na Linuxu - v čem je problém?
« Odpověď #4 kdy: 02. 11. 2023, 18:14:35 »
Jo to je o čem mluvím, začali vynucovat VMP a jelikož Linux VMP u Widevine nepodporuje tak máme na Linuxu smůlu.

Není to žádná otázka "prohlížeče nebo operačního systému který nedostává aktulizace". Prostě VMP pro Linux neexistuje.

A moje otázka spočívá v čem je problém že od roku 2019 stále Linux VMP nepodporuje.
Že to je problém se ví nejméně od roku 2020 kdy to začali vynucovat první streamovací platformy (tehdy jen pro "HD" obsah).

Vývoj Linuxu nemá zájem podporovat tuto technologii?
Widevine (Google) nechce podporovat Linux?

Kde je problém?

Niektorí vendori (AMD, Intel) majú podporu EGL_EXT_protected_content (na novších GPU), ale keďže ide o otvorený kód, Widewine nevie zaručene overiť, či tieto buffre sú naozaj chránené, alebo to iba tvrdí driver. Je možné vytvoriť driver, ktorý klame.

V podstate jedinou možnosťou v budúcnosti je vytvorenie "tunela" medzi displejom a CDM, kde sa displej bude musieť autentifikovať a potom sa CDM rozhodne, či mu dôveruje alebo nie. Otázkou zostáva, ako toto bude kompatibilné s open source.

Podobne na PC (ani vo Windows) neexistuje L1 Widevine, pretože to vyžaduje Trusted Execution Environment a v ňom sa dekóduje a zobrazuje obsah. To nemajú ani všetky Androidy.

Citace
For desktop Linux browsers that do not support VMP, it is possible to override the default Widevine DRM license server behavior by specifying a dedicated flag and still issue a license to grant playback. The ExpressPlay DRM service will provide a mechanism to override the default Widevine license server if needed.

Ak nebudú ochotní spraviť toto, zvažoval by som možnosť vypovedať zmluvu. Načo platiť za niečo, čo sa nedá použiť?



Re:Widevine s VMP na Linuxu - v čem je problém?
« Odpověď #6 kdy: 04. 11. 2023, 21:19:41 »
Problémy s widevine nakonec vedly ke zrušení Netflixu. Nejspíš z podobných důvodů přestal fungovat plugin v Kodi (Windows), ačkoliv v prohlížečích i nativní appce fungoval. V diskusích také ukazovali na problémy v Trusted dekódování (Kodi vlastně imituje prvek z Chrome). Vzhledem k tomu, že Kodi bylo pro mě jednotící platforma v ovládání (+ bonus k přehrávání s externími titulky), tak jsem přešel ke konkurenci ze Slovače. A takové mohou být dopady DRM :-p