AES-128 сбои при загрузке ключей
| Signal | Что это значит | Что протестировать |
|---|---|---|
| #EXT-X-KEY присутствует | Список воспроизведения HLS ссылается на ключ шифрования перед зашифрованными сегментами. | Убедитесь, что МЕТОД равен AES-128, и проверьте URI ключа. |
| Ключевой URI возвращает 403 | Ключевая конечная точка отказывается от прямого доступа или требует исходного контекста воспроизведения. | Попробуйте новый URL, прокси-маршрут и обязательный Referer, если у вас есть к нему доступ. |
| Ключевой URI не имеет CORS. | Браузер может видеть манифест, но не может прочитать ключевой ответ. | Направьте манифест, ключ и сегменты через один и тот же читаемый CORS прокси. |
| URI относительного ключа | Ключ URL разрешается относительно списка воспроизведения URL. | Убедитесь, что при перезаписи прокси сохраняется правильная база URL. |
| Требуется сервер лицензий | Поток защищен DRM, а не обычным AES-128 HLS. | Используйте авторизованное приложение. Этот инструмент не обходит DRM. |
Как исправить ошибку загрузки ключа M3U8
- 1Проверьте тег #EXT-X-KEY.Запустите отчет о работоспособности или откройте манифест и найдите #EXT-X-KEY. Убедитесь, что метод является нормальным AES-128, и обратите внимание, является ли URI ключа абсолютным или относительным.
- 2Загрузите ключ по тому же маршрутуЕсли воспроизведение использует прокси, ключ также должен использовать прокси. Смешение запросов прямого ключа с прокси-сегментами часто приводит к отклонению браузером или источником.
- 3Проверьте статус HTTP и CORSОшибка 403 означает, что сервер отклонил ключ. Ошибка CORS означает, что браузер не смог прочитать ответ на ключ. Они требуют разных исправлений.
- 4Установите Referer для конечных точек защищенного ключа.Если сервер ключей ожидает исходную страницу воспроизведения, установите для этой страницы значение Referer через прокси-сервер и повторите попытку потока.
- 5Подтвердите, что это не DRMЕсли манифест зависит от сервера лицензий или стека DRM, прекратите тестирование с помощью этого инструмента и используйте лицензированный проигрыватель.
Почему доступ к ключу прерывается после загрузки манифеста
Зашифрованный поток HLS может раскрыть свой список воспроизведения, защищая ключ URL более строго, чем сегменты. В результате первый файл .m3u8 выглядит действительным, но воспроизведение завершается сбоем, когда браузер пытается получить ключ, необходимый для расшифровки следующего сегмента мультимедиа.
Почему относительные ключевые URI легко проксировать неправильно
Многие плейлисты используют относительный URI ключа, например,keys/stream.key. Проигрыватель решает проблему с использованием плейлиста URL мультимедиа, а не вашей страницы URL. Прокси-сервер должен сохранить этот базовый путь или правильно переписать запрос ключа, иначе браузер запрашивает неправильную конечную точку.
Как загрузка ключа влияет на экспорт MP4 и MP3
Конвертер не может выполнить повторное мультиплексирование MP4 или извлечь MP3 из зашифрованного HLS до тех пор, пока он не сможет получить ключ AES-128 и соответствующие медиасегменты. Сначала исправьте доступ к клавишам при воспроизведении, а затем запустите экспорт. Для потоков, защищенных DRM, по-прежнему требуется авторизованное приложение.
Связанные зашифрованные страницы HLS
- Зашифрованный проигрыватель M3U8 объясняет разницу между обычными системами AES-128 HLS и DRM.
- M3U8 403 Запрещено охватывает отказ на стороне сервера в манифестах, ключах и сегментах мультимедиа.
- HLS CORS ошибка показывает, почему ключевые URL требуют читаемых браузером ответов, а не только доступных URL.
Часто задаваемые вопросы
Почему мой ключ M3U8 не загружается?
Ключ обычно не работает, потому что URI ключа AES-128 заблокирован CORS, возвращает 403, срок действия истек с подписанным URL, требует определенного Referer или принадлежит рабочему процессу DRM, а не обычному шифрованию HLS.
Что такое #EXT-X-KEY в файле M3U8?
#EXT-X-KEY сообщает игроку, как шифруются сегменты HLS и где получить ключ. Для AES-128 HLS ключ URI должен быть доступен, прежде чем воспроизведение или преобразование сможет расшифровать сегменты.
Может ли прокси CORS исправить загрузку ключа AES-128?
Да, если проблема в доступе через браузер. Прокси-сервер должен маршрутизировать манифест, ключевой URI и медиа-сегменты вместе, чтобы каждый запрос HLS мог быть прочитан браузером.
Почему VLC воспроизводит зашифрованный M3U8, но браузер не работает?
VLC не ограничен правилами CORS браузера и может отправлять запрос другой формы. Если VLC работает, но браузер дает сбой, проверьте CORS, Referer, User-Agent и маршрутизацию прокси-сервера на наличие ключа URL.
Обходит ли исправление загрузки ключа DRM?
Нет. Обычный доступ к клавише AES-128 является частью стандартного воспроизведения HLS, когда вам разрешено получить ключ. Системы DRM, такие как Widevine, FairPlay и PlayReady, по-прежнему требуют лицензированного воспроизведения.