17

Is it possible to protect flv files from download? I'd like to protect my files from download but I don't have the money for a streaming server which I think provides some sort of protection. The files are streamed via PHP and are located in an upload folder on my server.

I've used PHP to ensure that only subscribers can view the video but I basically want to go a step further and prevent subscribers from, upon login, downloading my videos with downloaders such as Sothink Flv Downloader for Firefox.

4

9 回答 9

33

我完全同意其他答案的 DRM 共识。但是想补充...

有几种混淆技术可以满足您的需求。 正如他们所说,“足够好” 。这些不是完整的证明机制,但很可能会阻止 80%-99% 的人尝试复制您的FLV流/文件。一个专门的黑客会得到它,但大多数人只是脚本小子(或他们喜欢 FireFox 插件的表亲)。另外,其中一些技术非常简单:

  • 更改/删除服务器响应的 MIME 类型。无论如何,Flash 播放器都乐于忽略它。例如:图像/JPEG
  • 将文件扩展名从 .flv 更改为其他内容,例如 .jpg。同样,Flash 播放器无论如何都乐于忽略它。此外,一旦文件保存到磁盘,非 FLV 播放器将打开它(并抱怨它是无效的文件格式。)
  • 为所有FLV内容设置激进的“不缓存”标题。(这自然意味着消耗更多的流量和带宽。也许这对您来说不是问题?)
  • 通过基于 UDP 的协议(如 RTSP)流式传输。虽然我的阅读是 UDP 协议即将用于大规模点播内容流,但复制起来要困难得多。例如:Real Downloader 目前无法窃取这些流。
  • 将内容分解为两个或多个部分内容,并背靠背播放。
  • 将您的 FLV 内容隐藏在一种简单的自定义一次性身份验证机制后面
    • 播放器请求内容 A 的授权密钥
    • 服务器返回一个授权密钥:SHA1(内容密钥+ salt1
    • 服务器存储内容密钥、授权1密钥、授权2密钥(即SHA1授权1 + salt2))
      • 一次性使用
      • 有限的有效性(例如:2 秒)
    • 玩家创建授权2
    • 播放器请求内容 a 具有授权 2
    • 服务器向客户端发送“FLV”内容当且仅当
      • 授权密钥与服务器端存储中的内容密钥匹配
      • 授权密钥未过期

我实际上已经实现了最后一个想法,授权机制,我自己可以保证它的实际有效性。不,它并不完全安全。但这已经足够了。即使是高级用户也无法击败它。

打败它需要

  1. 对过程进行逆向工程,
  2. 反编译您的 Flash 播放器,
  3. 将它们重新组合在一起。

够好了。


令人惊讶的是,这篇文章从“简单、自定义的一次性身份验证机制”建议中生成了多少“请向我发送代码”电子邮件。不要打扰,我不能——这是我的雇主xtendx AG的专有项目。如果有兴趣购买该系统,请发送电子邮件至 sales@xtendx.com。

于 2009-10-30T15:54:30.340 回答
8

无法为静态 FLV 文件添加 DRM 保护(即加密) - 任何知道 URL 的人都可以简单地下载它们,或者(在某些情况下)将它们从浏览器的缓存中取出,然后在任何支持的播放器中播放。(但是,您可能会阻止人们将您的内容嵌入其他网站 - 谷歌“ Hotlinking protection ”。)

使用Red 5之类的 OSS 可以免费流式传输您的 FLV 。这本身不提供“DRM”保护,但它确实以文件流的形式发送视频,因此没有供用户下载和保存的单个文件。用户仍然可以使用某些程序来捕获文件,但它更不方便。

至于“真正的” DRM,我知道的唯一解决方案是Adob​​e Flash Media Rights Management Server。我从未使用过它,但显然它会流式传输 DRM 加密的 FLV 或 MP3 内容,并使您能够应用通常的 DRM 限制。

于 2008-11-19T02:38:38.753 回答
6

你不能。您花在追求 DRM 上的任何努力或金钱都将浪费您本可以用于改进产品的资源。将您的徽标和 URL 放入视频中,以便任何复制它们的人都在为您的网站做广告,在视频中放入版权声明并起诉任何您发现非法复制您的内容的人,然后收工。

于 2008-11-19T02:06:48.253 回答
3

简短的版本是 DRM(任何形式)是一场军备竞赛,如果我能玩它,我就能偷它。唯一的问题是它有多难。

就个人而言,我不认为 DRM 是一个好主意。从长远来看,这无济于事,因为窃取它的人,无论您做什么都会窃取它,即使如此,那些不这样做的人也会因此而感到不便。

http://xkcd.com/488/


也就是说,窃取它也不是一个好主意,你应该有权控制你生产的东西。(但是我不知道该怎么做)


我能想到的唯一答案是:1)开始销售不能被盗的东西或1)让购买变得更容易然后被盗。第一个相当于 Pandora 付费/Netflix 音乐(但类似于主要唱片公司歌曲的 CC 许可证)。第二个甚至不是音乐行业的问题,而是金融行业的问题;如何使双方的在线支付变得轻松和安全,而又不至于搞砸买卖双方。

于 2008-11-19T01:28:05.087 回答
2

您是否考虑过在 Amazon S3 上托管您的视频?您可以将视频的网址设置为过期,以便视频链接仅在特定时间段内有效。这不会阻止任何人在下载视频后从缓存中获取视频,也不会阻止使用 Orbit 下载器或 RealPlayer 视频下载器等其他方式,但它会阻止盗链。

我同意这样的评论,即这是一场军备竞赛和一种视频交付策略,它接受人们确实想要下载视频以共享或复制到其他设备等,并尝试与之共存可能是最成功和最轻松的。水印,嵌入到您网站的链接,尝试利用由于可下载而导致观看您的视频的眼球数量的增加。

于 2009-10-30T11:06:17.147 回答
1

像 youtube 这样的网站试图通过混淆 flash 并经常更改结构来使下载视频变得困难。正如其他人所说,这是一场军备竞赛。Youtube 更新了它们的结构,然后像pytube这样的工具也必须更新。

于 2009-11-12T00:38:41.890 回答
0

为您的内容创建一个单独的站点。为第二个站点(“内容服务器”)配置 Web 服务器应用程序设置以拦截对任何静态内容(您的视频、图片等)的请求,以便您可以检查每个请求的内容的权限 cookie,以检查它们是否已经验证并授予对该内容的访问权限。

于 2015-01-26T20:36:37.297 回答
0

看看Longtail 的这个分析

它始于一条黄金法则:

任何可以观看您视频的人都可以窃取您的视频。

它最终会带来一系列非常好的安全问题和预防技术。

于 2010-04-29T15:22:01.640 回答
-1

没有任何保护可以击败 WireShark + NetMiner 的简单使用。

时期。

哦,顺便说一下,关于 youtube,如果您使用 Chrome,请查看此扩展程序:

http://hosting.gmodules.com/ig/gadgets/file/113621719436589749332/ZiTube.crx

它只是在 youtube 视频下创建一个下载按钮;)

于 2010-05-28T11:12:20.177 回答