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

标签 javascript html video youtube

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

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

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

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

最佳答案

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

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

将 key 提供给用户的方式可以非常简单(通过一些单独的通信 channel (如电子邮件)直接告诉他们),也可以使用某种 DRM 方法更加复杂。

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

关于javascript - 防止通过检查元素下载html5视频,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31780760/

相关文章:

video - 如何提高 Raspberry Pi 到 YouTube 流的帧速率?

javascript - 从 URL 中抓取文本和媒体

javascript - onreadystatechange 函数在 AJAX 中不起作用

javascript - 某些图像未在 Chrome 中显示

javascript - 如何在 Highchart 中自定义工具提示?

html - 防止编辑器将以百分比为单位的标签宽度大小转换为像素单位

javascript - 删除 Iframe 中的类

html - 从输入文本字段中获取正确的 HTML 编码值

php - 将 PHP 音频和视频上传链接到 Linux 服务器上的 FFMPEG

c# - 从隔离存储中将视频从手机传输出去