防止通过检查元素下载html5视频

Var*_*ika 3 html javascript youtube video

我们的项目中有一个模块,其中可以选择上传 mp4 视频,我们使用 html5 视频标签播放器来播放视频。

我们面临的问题是视频的隐私。当时,用户可以很容易地通过右键单击“另存为视频”或通过检查元素从视频标签的 src 中获取 url 来下载我们的文件。为此,我进行了很多研究,并通过 YouTube 视频了解了 blob url,但无论如何都无法访问。我尝试研究 blob-url,为我的视频 url 创建了一个,但它们仍然可以访问并且可以轻松下载。就像 youtube blob-url 一样,它不起作用。我还研究了这个问题的一个答案,通过它我了解了 YouTube 缓冲视频的机制以及 YouTube 的检查元素中显示的 blob url 如何是一个欺骗。

最重要的是,我想知道如何欺骗我们的网站网址,以便没有人可以通过检查元素下载它。我们是否可以这样做以及如何这样做?任何与此相关的链接请与我分享。我已经尝试学习很多,但仍然缺少一些东西。

YouTube 实际上遵循什么机制来创建 blob url 并保存其视频?

Mic*_*ick 5

由于您的视频必须到达用户设备,因此您实际上无法阻止用户拦截和存储文件(如果他们愿意)。

此问题的典型解决方案是对文件进行加密,并仅与您想要查看该视频的人共享加密视频的密钥。“坏”用户仍然可以下载视频文件,但如果没有正确的密钥,将无法播放它。

如何获得用户的密钥可以非常简单(您可以通过某些单独的通信渠道(例如电子邮件)直接告诉他们),也可以使用某种 DRM 方法来更复杂。

DRM 是有争议的(请参阅下面链接中的 Firefox 讨论),但它正在被纳入 HTML5 EME(加密 Meida 扩展)的标准中,因此正变得更加主流。EME 实质上允许浏览器请求浏览器/设备中的可信(视频制作者)元素来解码和播放加密视频。请参阅下面的第二个链接,了解 EME 的详细概述。