加密 HLS 文件有什么意义?

What is the point of encrypting HLS files?

我目前正在做一个视频点播项目,我使用 FFMPEG 将视频转换为 HLS。

视频公开托管在 AWS S3 上,并且有一个 API 给出了 HLS 播放列表的 URL。

现在,我正在考虑使用 AES-128 加密 HLS 文件,这样人们就无法下载和离线观看视频。 我找到了包含在线托管密钥并在转换视频以加密片段时使用该密钥的过程。

key的URL写在HLS播放列表中,文件公开在网上

所以任何人都可以访问加密密钥。

如果任何人都可以访问密钥,我不明白加密段的意义何在。

谁能赐教一下?我知道我一定错过了什么。谢谢!

加密 HLS 提供 传输 安全性,只要密钥是通过 HTTPS 请求的。这不是 DRM 级别的解决方案,它只是一种非常基本的内容保护形式。

除了对密钥使用 HTTPS 之外,您还可以通过对密钥请求进行身份验证(例如,使用基于令牌的身份验证机制)并在之后每 n 分钟轮换一次密钥来改进它HLS标准。

如果您想要真正的 DRM,则必须考虑其他解决方案,例如 Widevine、Primetime 等

要限制对密钥文件的访问,您需要添加某种形式的身份验证。例如,您可以使用摘要式身份验证或 TLS/SSL 客户端身份验证。

Apple 网站上有关于 serving key files over HTTPS 的更多信息。