如何防止用户直接下载MP3

时间:2011-09-29 10:26:44

标签: php http drm

我正在构建类似网络广播的服务,其中用户对服务进行身份验证,获取cookie并且基于Flash的应用程序从服务器播放mp3。如果允许客户端使用该特定mp3,则服务器仅提供。

如果用户打开HTTP记录器(如FireBug),他可以看到闪存下载的文件。如果他直接通过地址栏打开mp3网址,他可以轻松下载MP3,尽管用户无法猜到这些网址。

我正在寻找一个安全的系统,以防止用户将MP3直接下载到他的系统。我检查过last.fm,因为他们使用类似的设置,并以某种方式防止它。

2 个答案:

答案 0 :(得分:1)

最后,你无法阻止那些坚定的人。但是,你至少可以让它变得困难。

有几个选项涉及引荐来源检查,身份验证和有趣的事情。但是我见过的最成功的反下载检查可能是这样的:

用户表示他想要传输文件;该应用程序进行经过身份验证的加密请求,指示其所需的操作。结果是一个一次性使用且有时间限制的URL,该URL可由托管该文件的任何应用程序或CDN识别。 URL使用一次后(即通过Flash应用程序),然后过期,永远不能再使用。如果流在指定的时间(几秒)内没有开始,则URL同样到期。显然,给定的URL并不直接对应于文件名,而是在服务器端进行身份验证,解码和翻译。

解决问题仍然不是不可能,但这很难。

答案 1 :(得分:1)

您可以使用RTMP而不是HTTP来传送音频数据。 RTMP旨在用于流式传输音频,视频和misc数据。它仅流式传输数据而不是文件。这不是100%安全,因为如果有东西进入客户端(浏览器,flash播放器等),用户可以保存它,但它仍然比通过HTTP提供文件更好。

您需要一台支持RTMP的服务器,例如Flash Media Server(FMS),Wowza或Red5。