Matthew Garrett, kernelfejlesztő LinuxMatthew, aki 2013-ban elnyerte a Szabad Szoftver Alapítvány díját a szabad szoftverek fejlesztéséhez való hozzájárulásáért, ismertette a videoszolgáltatások által használt modern digitális jogkezelési (DRM) technológiák működését. Matthew írását azok az elterjedt tévhitek inspirálták, amelyek a DRM-et a kriptográfiai processzorok (TPM, Trusted Platform Module) használatával társítják.
A DRM és a TPM közötti kapcsolattal kapcsolatos tévhitet többek között a Free Software Foundation „Defective by Design” (Tervezési hibából fakadó) DRM elleni kampánya is emlegeti, amely azt állítja, hogy a legtöbb nagyobb streaming platform TPM-eket használ a médiafolyamok visszafejtésére, szándékosan elvonva a visszafejtés lehetőségét a felhasználó kezéből. E tézis alátámasztására megjegyzik, hogy a Microsoft ragaszkodik ahhoz, hogy csak TPM-mel rendelkező hardverek futtathatják a DRM-et. Windows 11, és ez azért van így, hogy segítsék a streaming szolgáltatókat abban, hogy biztosítsák a tartalom lejátszását csak szigorúan korlátozott környezetekben.
Matthew Garrett nem tudja, hogy a Microsoft valójában mi mögött áll a TPM előírása mögött. Windows 11, és nem vagyok benne biztos, hogy ez indokolt. Mivel azonban jelenlegi munkája közvetlenül a TPM-et használó kód írásával foglalkozik, úgy véli, hogy a TPM számos hasznos biztonsági funkciót tesz lehetővé, és ha választania kellene, egy TPM-mel rendelkező számítógépet választana. Garrett úgy véli, hogy a FOSS Alapítvány állítása 100%-ban hamis, és nem ismer egyetlen olyan streaming platformot sem, amely TPM-et használna. Létezik hardveres DRM, amelyet a médiacégek a felhasználók korlátozására használnak, de ez nem TPM segítségével, hanem a GPU-n valósul meg.
Három fő DRM-megvalósítás érhető el:
- Widevine - a Google tulajdonában van, használják Android, Chromebookok és néhány más eszköz.
- Fairplay – Apple implementáció, Mac és iOS rendszeren.
- A Playready egy Microsoft implementáció, amelyet a következő területeken használnak: Windows, egyes streaming hardvereszközökön és tévéken.
Ezek a megvalósítások jellemzően több szintű funkcionalitást támogatnak, a meglévő eszköz képességeitől függően – az összes DRM-funkció szoftveres megvalósításától a hardveres feldolgozásig. Az adatfolyam-szolgáltatók az ügyféleszközön megvalósított DRM-képességek függvényében választhatják meg, hogy milyen szintű funkcionalitást és minőséget biztosítsanak. A 4K és HDR tartalmakhoz általában hardveres DRM-et használnak. Mindkét esetben a streaming rendszerek titkosított tartalmat juttatnak el a klienshez, és a DRM-verem dekódolja azt, mielőtt a tömörített adatokat dekódolni és lejátszani.
A DRM szoftveres megvalósítása esetén a visszafejtett anyag egy olyan memóriaterületre kerül, amelyhez az operációs rendszer hozzáfér. Így a felhasználó elkaphatja a visszafejtett adatfolyamot, ami meghiúsítja a védelem teljes célját. A gyártók megpróbálják bonyolítani ezt a feladatot azzal, hogy a lehető legnagyobb mértékben elrejtik a kódjukat, és bizonyos esetekben a funkciók egy részét a kernel szintjére helyezik át. De ez nem segít, és szinte minden szoftveres DRM legalább valamennyire fel van törve, és a filmek másolatai a megjelenés után elég gyorsan elérhetők a Bittorrenten keresztül. Ez az oka annak, hogy a jó minőségű videó általában csak a hardveres DRM-et támogató ügyfelek számára érhető el.
A DRM hardveres megvalósításai különböznek egymástól. Az ARM-eszközökön a visszafejtés megbízható végrehajtási környezetben (TEE, Trusted Execution Environment), például az ARM TrustZone-ban történik. A TEE-ben végrehajtott kód teljesen el van szigetelve az operációs rendszertől. A DRM-kód TrustZone-ba helyezésével a kriptográfiai műveletek olyan memóriaterületen hajtódnak végre, amelyhez az operációs rendszer nem fér hozzá, így a korábban leírt képrögzítés lehetetlenné válik.
Az x86-os rendszereken a TEE nem egységes (az Intel által támogatott SGX, de a fogyasztói eszközökben már nem használják), így ez a feladat általában a GPU oldalára hárul. A korábban említett DRM-megvalósítások közül csak a Playready biztosít hardveres módot x86-os rendszereken, és nem található nyilvános dokumentáció arról, hogy az illesztőprogramoknak milyen funkciókat kell biztosítaniuk az ilyen hardveres DRM működéséhez.
A hardveres DRM általában a következőképpen működik: A kliens és a streaming platform közötti munkamenet-egyeztetés során a tartalom-titkosítási kulcsokat a GPU-ban vagy a TEE-ben tárolt kulcsok segítségével állítják elő, amelyek nem érhetők el az operációs rendszertől. A visszafejtés után az adatok dekódolásra kerülnek és megjelennek. A dekódolás a GPU oldalán vagy TEE-ben történik. Sőt, még azokban a megvalósításokban is, amelyek TEE-t használnak kriptográfiára, az adatfolyam tényleges dekódolása megtörténhet a GPU oldalán.
A fő különbség a hardveres DRM-mel szemben, hogy a dekódolt videóanyag továbbra is a RAM-ban van tárolva, amelyhez az operációs rendszer nem fér hozzá, és a GPU ezt a videóanyagot helyettesíti a végső kimenetbe. Ez az oka annak, hogy ha képernyőképet készít egy böngészőben, amely hardveres DRM-mel játszik le egy videót, a képen egyszerűen egy fekete ablak jelenik meg.
A TPM-et néha TEE-nek is nevezik, és bizonyos értelemben az is, kivéve, hogy a TPM szigorúan meghatározott funkciókat biztosít – a felhasználó nem futtathat tetszőleges kódot a TPM-en, és csak a TPM által biztosított funkciókhoz férhet hozzá. Nincs elegendő funkcionalitás az adatok visszafejtéséhez a TPM-hez kötött kulcsok használatával, mivel a TPM adatokat fogad az operációs rendszertől, és nem tud közvetlenül együttműködni a GPU-val.
Így az operációs rendszer titkosított adatokat küldhet a TPM-nek, és visszakaphatja a visszafejtett verziót, de ez nem sokban különbözik a szoftveres DRM-től, mivel a hardveres védelem lényege, hogy a stream visszafejtett verziója soha ne legyen látható. az operációs rendszert. Ezenkívül maguk a TPM-chipek lassúak, és nem valószínű, hogy létezik olyan TPM a piacon, amely valós időben képes dekódolni egy 1080p-s adatfolyamot, nem is beszélve a 4K-s adatfolyamról.
A Szabad Szoftver Alapítvány (Free Software Foundation) TPM-re való összpontosítása nemcsak technikailag helytelen, de az iparágban zajló események félreértését is mutatja. Míg a Szabad Szoftver Alapítvány a TPM-re összpontosított, a GPU-gyártók csendben, a szervezet panaszai nélkül vezették be a szükséges DRM-technológiákat. A Microsoft lelkesen részt vett a hardveres DRM létrehozásában... Windows, ami károsította a felhasználói szabadságot, de a Playready-alapú hardveres DRM tökéletesen működik TPM-mel nem felszerelt hardvereken, és továbbra is így fog tenni.
Forrás: opennet.ru
