PUMA: Protected User Mode Audio
Kapitoly článků
Nyní se podíváme na ochrany, které ve Vistě budou implementovány na zvukové části. Ta bude samozřejmě obsahovat zcela nový systém práce se zvukem, zvaný User Mode Audio (UMA). Nebudou již používány staré dobré kernelové komponenty jako Kmixer.sys a Sysaudio.sys. Samozřejmě bude zajištěna plná zpětná kompatibilita. Nebude problém provozovat zvuková zařízení s ovladači pro Windows XP, nicméně v tu chvíli nebude možné přehrávat ve Windows Vista chráněná zvuková data.
PUMA také poběží pod MIG (tedy Media Interoperability Gateway) vrstvou a v systému bude zajištěna ochrana proti dvěma typům útoků:
- Běh pod MIG vrstvou bude zajišťovat ochranu proti „čmuchání“ dalších procesů v datech procesu, starajícího se o přehrávání chráněného zvuku.
- Systém si bude hlídat, že jediným aktivním výstupem s daným zvukem je ten, do kterého je nasměrován, ostatní bude PUMA umět vypnout.
PUMA jako taková (promiňte mi ten ženský rod) bude mít tu zvláštnost, že se nebude starat jen o chráněný obsah (jako DVD-Audio a HD DVD a Blu-ray disky), ale bude přehrávat i běžný zvukový doprovod ze všech aplikací. Proto bude muset být schopna fungovat i mimo MIG prostředí, včetně situací, kdy poběží chráněný i nechráněný obsah současně. Architektura PUMY se bude skládat ze tří částí:
- Virtual Protected Output (VPO) modul
- Protected Output Controller (POC)
- Output Encryption Audio Processing Object (APO)
PUMA bude také obsahovat kontrolu autenticity (stejně jako PVP-OPM pomocí Hardware Functionality Scan). Tu bude zajišťovat právě část POC. Ověřovat se bude také certifikát ovladače zařízení (stejně jako u ochrany video části).
Output Encryption APO
Tento modul bude zajišťovat šifrování zvukových dat. Implementace by měla vypadat tak, že zvukový systém si u POC o toto šifrování požádá. POC naproti tomu bude moci rozhodnout, zda se šifrování provede, což dle Microsoftu v roce 2006 ještě nebude nutné.
Virtual Protected Output (VPO)
Ve chvíli, kdy se v MIG prostředí tedy vytvoří chráněný (a šifrovaný) audio stream, provede se požadavek směrem k POC na vytvoření VPO, tedy virtuálního chráněného výstupu. VPO bude obsahovat veškerou „politiku“ pro „klienta“, pro nějž je tento chráněný výstup vytvářen. POC pak bude zahrnovat všechny politiky všech vytvořených/zrušených VPO (politikou jsou míněna všechna nastavení zvukového prostředí, která si daný zvukový stream vyžádá).
Variant VPO pak bude tolik, kolik bude jednotlivých výstupních ochran. Pro první verze Visty je plánována jen jedna varianta pouze s několika ochrannými prvky.
Mixování zvukových stop
Politika mixování bude jednoduchá. Ochrana výsledného výstupu bude taková, jako nejvyšší ochrana některého z prvků v mixu. Legrace nastane ve chvíli, kdy politika signálu A bude říkat „vypnout S/PDIF“, pak i výsledný zmixovaný signál bude říkat „vypnout S/PDIF“ a to klidně i přes to, že signál B mixu bude chtít hrát přes S/PDIF výstup na frekvenci 48 kHz a signál C na frekvenci 96 kHz. Systém bude fungovat dynamicky, takže pokud se ve výstupním mixu utlumí chráněný signál, dojde k zapnutí S/PDIF výstupu na druhou nejvyšší úroveň ochrany (tedy 48 kHz), neboť ochrana jeho vypnutím v tu chvíli ztratí smysl. Pokud pak bude utlumen i signál B, S/PDIF výstup začne přehrávat signál C plnou frekvencí 96 kHz.
HDMI Audio v PC
HDMI audio znamená provozování zvuku přes High-Definition Multimedia Interface, tedy „univerzální multimediální rozhraní“, schopnost přenášet video i audio data najednou do jednoho místa k dalšímu zpracování, kdy se audio přenáší v zatemňovacích intervalech videa. Principielně se to jeví jednoduché, ale v PC jsou zpracování zvuku a videa dva striktně oddělené procesy.
V PC by se muselo v podstatě jednat o jakési grafické karty, vylepšené o zvukovou část, kde výstupem by byl HDMI konektor. Grafické karty tak budou potřebovat nějaké UAA řešení (Universal Audio Architecture - univerzální zvuková architektura), nejlépe v podobě zvuk zpracovávajících částí v samotném grafickém čipu. Taková „univerzální karta“ by pak běžela přes dvoje ovladače. Grafickou část by obstarávaly ovladače od výrobce karty, zvukovou část pak Microsoftí UAA HD Audio class ovladače.
Optimálním řešením podle všeho budou základní desky s čipsety, integrujícími grafickou i zvukovou část, kdy obě části budou používat jediný HDMI konektor. Později nebude problém osadit výkonnější 3D grafickou kartu, čímž se počet HDMI konektorů zvýší na dva.
Ochrana zvukového obsahu přes HDMI
Co se týče ochrany audia, ta je ve Vistě zajišťována přes „Video Stack“. Zajímavé situace mohou nastat ve chvíli, kdy chce uživatel přehrát chráněné audio spolu s nechráněným videem. My se však podíváme pouze na případ, kdy jak audio, tak video je chráněné, čili přehrávání HD DVD nebo Blu-ray. Za takových okolností je Video Stack vždy chráněn a díky tomu i audio stopa. To právě z toho důvodu, že audio je přenášeno pomocí HDMI v zatemňovacích intervalech.
Dalším problémem z hlediska ochrany je, že HD Audio specifikace byly původně psány pro HDMI rozhraní jen ve formě S/PDIF kodeku. Bohužel HDMI audio není možné pouštět ven pouze jako S/PDIF, neboť to má určité ústupky, aby se například starší receivery, disponující tímto vstupem, nestaly zastaralými a tudíž by zvuková data posílaná touto cestou nebyla patřičně chráněna. Dle dohody budou v roce 2006 posílána zvuková data po S/PDIF prozatím v nechráněné podobě. Avšak u HDMI zatím není jisto, zda bude povoleno posílání dat v nechráněné podobě, patrně totiž bude vyžadována nějaká forma ochrany. Pravděpodobně vše skončí tak, že se HDMI oddělí od S/PDIF. To nějakou dobu potrvá, protože výrobci budou muset do svých zařízení začlenit tyto změny. Řešení ve Vistě bude cíleno na stav v roce 2006.
Protože v HD Audio specifikacích momentálně není žádný dodatek ohledně nové HDMI specifikace či kodeku, Microsoft zvažuje implementaci nového zvukového ovladače, který bude detekovat použití S/PDIF rozhraní HDMI kodekem. To bude zajištěno propojením HD Audio řadiče a S/PDIF kodeku. Tento přístup je však limitován použitím základního HD Audio módu, což je 16-bit 48kHz nekomprimovaný formát. I přes toto omezení se tento přístup jeví jako nejreálnějším v roce 2006. Použije se prostě stávající S/PDIF konektivita, po které půjdou zvuková data z HDMI.
DVD Audio
Práce s DVD Audio formátem pomocí HDMI je poněkud problematická, protože zde je právě chráněné audio doprovázeno nechráněným videem a tudíž není možné aplikovat HDCP ochranu na celek. Plány pro Vistu hovoří tak, že hned zpočátku nebude implementován žádný způsob ochrany a tudíž DVD Audio provozované přes HDMI nebude v prvních verzích Visty chráněno. Tím nicméně vyvstává problém s integrovanými zvukovými řešeními na bázi HD Audio, kdy na většině takto obdařených dnešních základních desek půjde DVD Audio přes nechráněné analogové výstupy v plné kvalitě.
PCI Express sběrnice a PUMA
Stejně jako u videa, je i u audia z hlediska ochrany problém s přenosem dat po PCI Express sběrnici. To se samozřejmě týká pouze přídavných karet, zpracovávajících zvuk, integrovaných řešení v čipsetu se tento problém opět zpravidla netýká. Nejzajímavější bude se podívat na přehrávání HD DVD a Blu-ray. Tady prozatím audio stopa narozdíl od video stopy nepožívá žádné ochrany, což není schválený přístup. Situace prozatím není vyřešena a uvidíme, jak celou záležitost urovná počítačový a filmový průmysl. Microsoft nicméně zvažuje řešení na bázi PAP (Protected Audio Path) projektu, který by se měl objevit do několika let od uvedení první verze Visty (a na který se o kousek dále podíváme podrobněji).
PAP by mělo zajistit šifrování audio stopy při přenosu přes PCI Express sběrnici. Výrobci grafických karet se zvukovými schopnostmi budou mít jednoduchou cestu jak celý obsah rozšifrovat, neboť jejich karty budou obsahovat přímo v sobě již zmiňovaný dešifrovací engine. Zašifrování bude zajišťovat výstupní šifrovací zvukový APO modul v Audio Engine, běžící v chráněném prostředí. Ve Vistě je samozřejmě plánován mechanismus pro načítání výstupního šifrovacího zvukového APO modulu. Nicméně v prvotních vydáních Visty budou tento šifrovací engine zajišťovat produkty třetích stran. Microsoft doufá, že se mu u příslušných míst podaří pozdržet nutnost šifrovacího modulu zvukové stopy po příštích pár let, než na této věci osobně zapracuje.