带有HLS流的AES128

时间:2015-06-26 05:52:38

标签: html5 encryption aes hls

我是使用Streaming Server的新手。我们正在评估EvoStream媒体服务器以使用AES128加密来传输HLS流。

我对AES 128的查询很少。我通过谷歌搜索但没有运气

当使用VOD(视频点播)进行HLS时,Evostream会创建包含m3u8索引文件的段块,其中包含所有信息,包括键和IV向量。

#EXT-X-KEY:METHOD=AES-128,URI="2015-06-25T11-20-18.key",IV=0x0360f11b211ef025d7f72c41d58e0a2d

我的问题是,当我在html5媒体播放器中播放此文件并使用F12进行调试时,我可以轻松获取用于加密文件的密钥和IV。那么,如果有人能够获得那些密钥和IV向量来解密数据,那么AES提供了什么样的安全性。

请任何人对此有所了解,请分享......

4 个答案:

答案 0 :(得分:1)

The key seems to be in yet another file:

URI="2015-06-25T11-20-18.key"

2015-06-25T11-20-18.key is only a reference to the key, not the key itself.

So you need to control access to the file and only make it available to persons that are allowed to play the video.

答案 1 :(得分:1)

您的问题的答案是,使用AES-128的HLS提供了transport security,这使得某人难以在中间人中捕获您​​的内容。它没有提供DRM。

您应该每3-4小时更换一次密钥,每50 Mb数据更改一次,并通过 HTTPS 而不是普通HTTP提供密钥。

请参阅Apple Developer网站上的Serving Key Files Securely Over HTTPS

答案 2 :(得分:0)

首先,在处理内容保护时必须牢记,事实上没有完美的解决方案。没有解决方案可以保证只有您打算观看的观众才能观看视频。所有的保护计划都让其他人更难以窃取它,但并非不可能。以下是您的一些选择:

  • AES-128加密 - 您必须特别注意保护密钥。一旦密钥“泄漏”,任何人都可以通过一些努力解码视频。优点是这种方法很简单,并且受到众多参与者的支持。
  • SAMPLE-AES加密 - 您必须再次处理密钥。但即使它“泄漏”,也需要一个专门的软件来解码视频,因为它不是微不足道的。缺点是并非所有玩家都支持这种方法。
  • 使用DRM - DRM解决方案非常昂贵,需要集成和专业玩家的努力。但它们提供了最大的保护。

没有银弹。这取决于您的需求和您需要的保护级别。不要忘记,毕竟即使是最先进的加密方案也不能防止屏幕捕获之类的简单事情。

答案 3 :(得分:0)

在正常情况下或一般用例

 1. You can continue to use AES-128 as the encryption mechanism
 2. Use HTTPS to provide the transport security.
 3. Use token/cookie to authorize the user 

(cookie /令牌应该发送到密钥服务器,密钥服务器在交付密钥之前对其进行验证)

以上3个步骤为您提供内容保护,传输保护和授权用户。 要回答你的第二个问题, 具有权利令牌的授权用户将能够下载内容和密钥以对其进行解密。 (有很多工具可以做到这一点)你需要一个自定义客户端来避免这种情况,并且html5支持的浏览器无法阻止它。