Я пытаюсь понять, как протокол HTTP Live Streaming, который Apple поддерживает на своих устройствах iOS, а также в Safari, защищает ключ, который разблокирует контент.
Насколько я понимаю, файл .m3u8 содержит все вместе и ссылается на контент (в контейнере TS MPEG2, зашифрованный AES 128) и ключ к файлу TS.
Как в этом примере:
#EXTM3U
#EXT-X-MEDIA-SEQUENCE:7794
#EXT-X-TARGETDURATION:15
#EXT-X-KEY:METHOD=AES-128,URI="https://priv.example.com/key.php?r=52"
#EXTINF:15,
http://media.example.com/fileSequence52-1.ts
#EXTINF:15,
http://media.example.com/fileSequence52-2.ts
#EXTINF:15,
http://media.example.com/fileSequence52-3.ts
#EXT-X-KEY:METHOD=AES-128,URI="https://priv.example.com/key.php?r=53"
#EXTINF:15,
http://media.example.com/fileSequence53-1.ts
Предполагается, что воспроизведение на основе браузера, где элемент
загружается в файл m3u8 в атрибуте «src». В этом случае, даже если ключ доставляется через https, как я могу убедиться, что пользователь не просто вводит URL-адрес https в своем браузере и не сохраняет ключ на своем жестком диске? Насколько я понимаю механизм, загрузка ключа выполняется тегом
, поскольку он воспроизводит исходный код m3u8 с помощью браузера ' s Стек https - чем законный клиент в браузере отличается от пользователя, просто вводящего его в адресную строку? Это должно быть действительно очевидно, но я просто этого не вижу ...
Всего наилучшего,
dansch