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

3
我们的项目中有一个模块,可以上传mp4视频,我们使用html5视频标签播放器播放视频。
问题是,我们面临着视频隐私问题。用户可以通过右键另存为视频或通过检查元素从视频标签的src中获取url来轻松下载我们的文件。我研究了很多,了解到了通过YouTube视频无法访问的blob url的想法。我尝试学习blob-url,并为我的视频url创建了一个,但它们仍然可以被访问并且可以轻松下载。就像YouTube blob-url一样,它不起作用。我还研究了这个问题question的第一个答案,通过它我了解了YouTube缓冲视频的机制以及检查元素中显示的blob url是一个欺骗。
最重要的是,我想知道如何欺骗我们的网站URL,以便没有人可以通过检查元素下载它。我们能做到吗?如何做?请与我分享任何相关链接。我已经尝试了很多,但仍然缺少一些东西。
什么机制实际上是YouTube用来创建Blob URL并保存其视频的?

目标受众是谁?我的猜测是大多数人(非程序员或非IT人员)不知道“检查元素”是用来做什么的,也永远不会使用它。 - David Votrubec
仍然可以通过第三方浏览器插件从YouTube下载视频。这些插件在Firefox中工作,但通常不适用于Chrome。 - David Votrubec
为了更加安全,我们希望像YouTube一样工作。 - Vartika
如果您可以播放视频,除非您研究HTML5视频加密媒体扩展(EME)来提供您的内容,否则有人可能会窃取它。 - Offbeatmammal
如果您只需要混淆URL以防止他人找到它,那么您可以编写一个处理程序,类似于http://blog.offbeatmammal.com/post/2006/06/30/Using-ASPNET-to-restrict-access-to-images.aspx(但使用一种更新的语言!) - Offbeatmammal
1个回答

5
由于视频需要到达用户设备,所以实际上没有办法阻止用户拦截和存储文件。
此问题的典型解决方案是加密文件,并仅与您想要查看它的人分享加密视频的密钥。一个“坏”用户仍然可以下载视频文件,但无法在没有正确密钥的情况下回放它。
如何向用户获取密钥可能非常简单(通过某些单独的通信渠道直接告诉他们,例如电子邮件),也可能更为复杂,使用某种数字版权管理方法。
DRM存在争议(请参见下面链接的Firefox讨论),但正在将其整合到HTML5 EME(加密媒体扩展)标准中,因此正在变得更加普及。 EME基本上允许浏览器请求浏览器/设备中由视频生产商信任的元素对加密视频进行解码和播放。 在下面的第二个链接中可以找到EME的良好概述。
链接如下:

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接