【问题标题】:How does EME prevent me from recording a netflix stream?EME 如何阻止我录制 netflix 流?
【发布时间】:2017-09-18 16:29:09
【问题描述】:

所以我们现在的免费软件浏览器中有 DRM,还有apparently it works quite well。然而,该视频仍受制于通常的合成。

我正在运行 Fedora 25,包括 Wayland 显示服务器。如果我确实正确理解了它的架构,它基本上希望应用程序将其内容呈现到缓冲区中并安排复合的显示(例如,将多个窗口层叠在一起)。为此,它必须能够访问这些缓冲区的内容。 AFAIK Wayland 不附带任何 DRM。那么内容是如何保护的呢?

具体来说:

为什么我不能:

  • 使用虚拟脉冲音频设备录制声音
  • 使用自定义显示服务器记录图像

【问题讨论】:

标签: html encryption video-streaming drm wayland


【解决方案1】:

EME 本身不会阻止您录制内容 - 它不是 EME 的重点。 EME 只是提供了与本地 DRM 浏览器组件(称为内容解密模块 - 又名 CDM)进行通信的统一方式。该界面允许您:

  • 检查 CDM 中加载了哪些解密密钥
  • 为许可证服务器创建特定于 CDM 的解密密钥请求
  • 从许可证服务器推送响应以在 CDM 中提取新的解密密钥
  • 检查与解密密钥相关的限制(例如 HDCP 要求)

所有的解密都是在内部完成的——现在内部的含义很大程度上取决于你在播放什么内容以及在什么平台上。

从商业内容的角度来看,每个分辨率通常有不同的内容价值:

  • SD - 通常是 SW DRM,可能根本没有输出保护
  • HD / FHD - 通常 SW DRM 和 HDCP 1.x+ 很好 - 模拟输出应该是不可能的
  • 超高清 (4k) - 硬件 DRM(包括安全处理器和安全视频路径),HDCP 2.2+ 是必须的(除非 Netflix 减少对自己内容的保护)

如今,只有极少数台式 PC 能够为 UHD 内容提供安全保护。它需要操作系统和 CPU 的组合来提供硬件安全性(您应该在 Windows 10 的 Edge 中使用最新一代处理器来实现这一点)。这与多年来一直是标准的 ARM 形成鲜明对比(它通常允许在电视上播放 4k 流媒体)。

内容在消费过程中也有不同的价值:

  • 加密的压缩内容 - 没有价值。该内容在 CDN 上公开可用,并且是您在流式传输时下载的内容。没有解密密钥,内容就毫无用处。
  • 解密的压缩内容 - 高价值。这表示解密后的视频或音频的编码样本。此内容被认为具有很高的价值,因为它具有来自流媒体服务的原始编码。它的价值也很高,因为编码使其相对较小。当涉及 HW DRM 时,此内容永远不会暴露在您可以寻址的内存中。
  • 解密的解压缩内容 - 较低的值。这表示来自解码器的各个帧。原来的编码不见了。存储每一帧将需要大量空间,因此唯一的选择是重新编码它,这将比原始编码质量更差。当涉及安全视频路径时,您再次无法访问保存这些帧的内存。

值得指出的一点是,很多 DRM 保护都是为了确保普通用户不能只记录内容。一旦你开始谈论使用特殊的驱动程序、重新编译内核并进行修改或其他任何事情,你就不再是普通用户了。

我不确定 Google 究竟如何在 Linux 发行版上启用 Widevine,但它并不适用于您选择的每个发行版。谷歌必须首先“启用”发行版。在 Widevine 乐于在平台上工作之前,可能已经完成了一些驱动程序签名验证 - 只是猜测。

除此之外:

为什么不能录音?

您可以 - 音频输出根本不受保护。

为什么不能录制视频?

如果您设法做到这一点,那么您正在使用我之前提到的解密解压缩内容。多年来,还有其他更简单的方法可以获取这些内容,而且它并没有停止流媒体服务。

【讨论】:

  • “为什么你不能录制声音?你可以 - 音频输出根本不受保护。”你这是什么意思? EME 不保护音频吗?
  • 取决于设置,有些编码只加密视频。但这不是我这个答案的意思。对于视频,DRM 组件检查许可证中所需的输出保护,并且仅在满足输出保护时才允许输出 - 例如。您可能需要 HDCP 才能输出到外部屏幕。音频没有这样的限制,因为没有广泛的保护音频输出的规范。
猜你喜欢
  • 1970-01-01
  • 2016-09-11
  • 2012-08-27
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-01-15
  • 2012-08-17
相关资源
最近更新 更多