Czym jest scrambling i dlaczego odgrywa dużą rolę w projektowaniu systemu IPTV? Na to pytanie postaram się tutaj odpowiedź.
Nadawca zapyta jaki system kodowania posiadacie?
To pytanie pojawia się zazwyczaj na początku współpracy z wiodącym dostawcami treści linearnych na rynku telewizyjnym. Wiąże się to z tym, iż treści które przekażą Nadawcy, a Operator udostępnieni je abonentom ich zawartość była zabezpieczona, czyli miały do nich dostęp tylko uprawnione osoby.
W rynku operatorskim stosuje się dwa główne algorytmy kodowania contentu: DVBCSA oraz AES. Mówiąc wprost, algorytmy te określają metodę w jaki sposób scrambler zaszyfruje kontent.
Druga ważną kwestią jest to, jaki system dystrybucji kluczy szyfrujących wybierzecie. Tutaj też mamy dostępnych kilka standardów a wśród nich: BISS Verimatrix Merlin Cryptoguard itd
Niektórzy Nadawcy akceptują tylko niektóre z nich. W środowisku IPTV przyjęło się, iż najpopularniejszym standardem warunkowego dostępu jest Verimatrix.
Czym dokładnie jest scrambling?
Aby to zrozumieć, należy najpierw poznać specyfikę protokółu MPEG-TS, który służy do transmisji obrazu w sieciach IP. Zajrzyjcie pod ten adres do Wikipedii: MPEG transport stream . Tam bardzo szczegółowo została opisana cała ramka. Jeden pakiet składa się zazwyczaj z 7 takich ramek. Co daje nam łącznie 188x7 = 1316 bajtów. My skupimy się na pojedynczej ramce, bo tam właśnie jest całe clou sprawy.
Ramka MPEG-TS
Jak można przeczytać w artykule, ramka składa się z „bajtu synchronizującego” (Sync byte) , nagłówka oraz payload-u (czyli właściwej treści video). Analizując mechanizm scramblingu, dla nas najbardziej istotny będzie czwarty bajt nagłówka, a w nim bity Transport scrambling control (TSC). Jeżeli wartość w tych polach wynosi ‘00’, oznacza to że dana ramka nie jest zakodowana i nie musimy z nią nic robić i możemy przeskoczyć do następnej. Jeżeli wartość bitowa wynosi ‘01’ oznacza to że payload jest zakodowany i aby go odkodować musimy użyć w algorytmie descrambującym klucza parzystego. Jeżeli wartość bitwa wynosi ‘10’ oznacza to że payload jest zakodowany i aby go odkodować musimy użyć w algorytmie descrambującym klucza nieparzystego.
Gdzie ten descrambler?
Za część dekodującą odpowiedzialny oczywiście jest dekoder. To w nim należy zaimplementować odpowiedni mechanizm dekodujący. Przy doborze sprzętu należy zwrócić szczególną uwagę na kompatybilność scramblera oraz możliwości zdekodowania obrazu przez nasz dekoder.