2017-05-28 98 views
-4

我必须构建一个应用程序,用户可以从网站下载视频,但无法共享它们。我的第一个解决方案是将这些文件保存在用户计算机上的隐藏位置,因为其中一个要求是用户应该能够离线观看下载的视频。如何将文件保存在隐藏位置php

请我怎么去保存文件的位置,用户无法看到使用PHP。

谢谢。

+1

因此,您想要将数据保存在用户计算机上,但他们找不到?这听起来不太安全。 – Epodax

+0

听起来像作业/工作要求 –

+0

如果你去了一个能够用你无法找到和删除的数据填满硬盘驱动器的每个最后一个字节的站点,你会如何?现在看看你正在寻找的解决方案将需要什么。 –

回答

0

一种解决方案是为每个视频请求生成令牌。该令牌将有其一生。 Php脚本应该为内容提供服务,而不是直接访问资源给用户。该脚本应在服务内容之前检查令牌是否仍然有效。 这取决于你如何传递令牌。最简单的方法是将其包含在uri中。

+0

需要他们离线观看视频 –

+0

平均视频有多“重”? – OHNH

+0

如果您打算存储10mb以上的浏览器,这是不可能的。 请查看:https://developer.mozilla.org/en-US/docs/Web/API/Web_Storage_API – OHNH

0

没有,你把你的视频在目录结构中的事情,你总是发送数据作为部分请求。数据一旦被用户采集,就可以保存一份转载。

还有技术,但是,通过curl,wget或其他下载方式保护您的视频免受直接下载。并且这是使用安全令牌到期,作为参数传递。这样,您的视频下载窗口将受到限制,手动生成令牌将非常困难。

+0

感谢您的回复。需要他们离线观看视频 –

0

Chidiebere Onwunyirigbo,它是一个很好的问题。您的要求的一个解决方案是隐写术。这是隐藏你的数据(视频)在其他文件(如图像,音频,视频等多媒体文件)背后的过程,在你的情况下最好是图像隐写术。这是一项相当古老的技术,但对很多人来说都是新的,你可以在互联网上获得几种现成的工具/代码,你可以根据自己的需要进行定制。从你的角度来看,你必须提供已经嵌入在图像中的文件供下载。只有用于检索和呈现隐藏视频的工具才能呈现您的视频。因此,对于这部分,您网站的所有用户都必须先从您的网站下载此桌面应用程序才能观看视频。这样可以让您的视频在离线状态下安全地保存在用户电脑上,因为每个拍摄视频的用户都需要从您的网站下载反向隐写术工具。您甚至可以在Stego图像中嵌入隐私信息,例如用户IP,以及视频和每个工具下载,将用户计算机的IP与该工具相关联。如果隐藏在Stego镜像中的IP只与工具相匹配,那么您允许播放其他重定向应用程序以使其注册。但限制是,用户将不得不下载您的应用程序,并且只能在您的桌面应用程序上观看视频,这些视频将呈现Steganographed视频。

+0

非常感谢......将对此进行更多研究。再次感谢。 –

0

您无法隐藏用户计算机上的信息。即使您的进程以SYSTEM用户的身份在Windows comp上运行,高级用户也可以获取这些文件的所有权。

唯一的解决办法你,正在开发或使用已知的DRM系统,只允许播放视频确定计算机或其他规格上(例如,如果程序有一些用户的认证令牌)。

无论如何,您需要为此做两件事: - 如果您想检查DRM,则需要自定义应用程序播放视频。 - 您需要在下载之前对视频进行重新编码/修改,以在其上添加代码,以便仅允许在目标计算机上播放或用于验证DRM的数据。