1

我研究了使用 WideVine DRM 保护视频内容的整个过程。我能够实现的步骤是: 1- 从 Widevine 服务器请求内容密钥 2- 使用我的保护信息加密/打包内容。生成 MPEG 加密内容和 mpd 清单文件。3-将 mpd 文件 url 传递给视频播放器,并在视频播放器中设置许可证 url。然后播放器播放加密的内容。

现在我想知道非常基本的一点。使用当前设置,任何拥有此 url 的人都可以播放该文件。我想将用户身份验证/授权添加到流程中,这样如果只有 mpd url 可用,就无法播放内容。

我还在widevine文档中发现有一种为此目的实现代理服务器的方法,但这似乎是一个复杂的过程。

那么有什么方法可以 1- 阻止播放仅提供 mpd url 的视频 2- 以比实现代理服务器更容易的方式将用户身份验证/授权级别添加到后续。

4

1 回答 1

2

首先认证的目的不是为了认证mpd下载。Mpd 描述了受 DRM 保护的内容 = 内容本身已加密,您需要 DRM 许可证/解密密钥才能播放该内容。保护 mpd 没有任何价值 - 它可以在 CDN 上公开获得。

当播放器发现内容已加密(来自 mpd 或来自流本身)时,将使用身份验证。播放器需要向 DRM 服务器发送许可证请求,这就是身份验证发生的地方。

理论上有两种选择如何确保只有选定的用户具有播放权限(获取解密密钥):

  • 您将使用代理。Widevine 代理是 Web 服务器,它将提取任何类型的身份验证信息并验证客户是否有权播放内容(例如,付费订阅)。基于此,它将呼叫转接到 Google 部署的 Widevine 或失败。
  • 您将部署自己的 Widevine 服务器并对其进行扩展以支持您的身份验证方案(它很可能只包括另一种类型的代理)。

在实践中,第一个选项是您想要做的。第二种选择主要由大型流媒体服务使用,需要 Google 的一些特殊协议/许可。

编辑:可能还有第三种选择 - 使用一些已经内置身份验证并允许您进行某种集成的第 3 方解决方案。

在任何一种情况下 - 如果您想要控制将颁发许可证的人,这是服务器端工作,它涉及部署一些服务。

于 2017-07-03T10:52:00.420 回答