Защищенная потоковая передача
Защищенная потоковая передача [1] — это технология DRM от Adobe . Цель технологии — защитить цифровой контент (видео или аудио) от несанкционированного использования.
Защищенная потоковая передача состоит из множества различных методов; в основном есть два основных компонента: шифрование и SWF проверка .
Этот метод используется настольным плеером Hulu и RTÉ Player . Fifa.com также использует эту технику для размещения видео на официальном сайте. Некоторые видео на YouTube также используют RTMPE, в том числе загруженные туда BBC Worldwide.
Шифрование
[ редактировать ]Потоковое содержимое шифруется Flash Media Server «на лету», поэтому сам исходный файл не нуждается в шифровании (существенное отличие от DRM Microsoft ). Для передачи («потоковой передачи») требуется специальный протокол — RTMPE или RTMPS . [ нужна ссылка ]
RTMPS использует SSL -шифрование. Напротив, RTMPE спроектирован проще, чем RTMPS, поскольку исключает необходимость приобретения сертификата SSL. RTMPE использует хорошо известные криптографические примитивы промышленного стандарта, в том числе обмен ключами Диффи-Хеллмана и HMACSHA256, генерируя пару ключей RC4 , один из которых затем используется для шифрования мультимедийных данных, отправленных сервером (аудио- или видеопоток). ), а другой ключ используется для шифрования любых данных, отправляемых на сервер. RTMPE вызывал меньшую нагрузку на процессор , чем RTMPS на Flash Media Server. [ нужна ссылка ]
Adobe устранила проблему безопасности в январе 2009 года, но не устранила дыры в безопасности в конструкции самого алгоритма RTMPE. [2] Анализ алгоритма показывает, что он опирается на безопасность за счет скрытности . Например, это делает RTMPE уязвимым для атак Man in the Middle . [ нужна ссылка ]
Инструменты, имеющие копию известных констант, извлеченных из Adobe Flash Player, могут захватывать потоки RTMPE, что является одной из форм проблемы доверенного клиента . Adobe выпустила запрет DMCA на инструменты записи RTMPE, включая rtmpdump , чтобы попытаться ограничить их распространение. Однако в случае с rtmpdump это привело к эффекту Стрейзанд . [3]
SWF-проверка
[ редактировать ]Adobe Flash Player использует хорошо известную константу, добавляемую к информации, полученной из SWF-файла (хэш файла и его размер), в качестве входных данных для HMACSHA256. Ключ HMACSHA256 — это последние 32 байта первого пакета подтверждения сервера. Flash Media Server использует это для ограничения доступа к тем клиентам, которые имеют доступ к SWF-файлу (или которым была предоставлена копия хеша и размера SWF-файла).
Все официально разрешенные клиенты (которые на самом деле являются файлами *.swf) должны быть размещены на сервере Flash Media Server, осуществляющем потоковую передачу файла. Любой другой клиент, запрашивающий соединение, получит сообщение об отказе в соединении.
Комбинация обоих методов призвана гарантировать невозможность перехвата потоков и их сохранения в локальном файле, поскольку проверка SWF предназначена для предотвращения доступа сторонних клиентов к контенту. Однако этой цели он не достигает. Сторонние клиенты могут свободно записывать расшифрованный контент в локальный файл, просто зная хэш SWF-файла и его размер. Таким образом, на практике собственная реализация Adobe Macromedia Flash Player является единственным клиентом, который не позволяет сохранять данные в локальный файл.
Единственный возможный способ ограничить подключения к Flash Media Server — использовать список известных хостов, чтобы избежать размещения всего проигрывателя (Flash-клиента) на неавторизованном веб-сайте. Даже это не имеет реальной пользы для файлов, распространяемых массово, поскольку любой из известных хостов может взять копию данных и перераспределить их по своему желанию. Таким образом, безопасность «известного хоста» полезна только в том случае, если можно доверять известным хостам, которые не будут перераспределять данные.
Примечания
[ редактировать ]Ссылки
[ редактировать ]- Технический документ от Adobe
- РТМПЕ (Adobe LiveDocs)
- РТМПС (Adobe LiveDocs)
- rtmpdump 2.1+ (исходный код и двоичные файлы)
- Исходный код rtmpdump v1.6 от Андрея Степанчука
- Спецификация RTMPE , сгенерированная из исходного кода rtmpdump
- Механизм шифрования RTMFP (DRAFT) , реконструированный с нуля.