使用PHP生成PDF包括到期日期

时间:2011-05-30 16:10:41

标签: php date pdf drm

我必须从网络服务器向用户发送一些文本信息。不幸的是,这个文本必须在7天后销毁(这意味着应该拒绝访问信息)。因此,一个想法是创建一个内部具有“到期日期”的pdf,以便在7.天之后获得无法打开的文件。 这可能用PHP吗?

但是如何开始?

我不需要100%安全的解决方案。如果他以禁止的方式保护,复制或操纵本文档,则责任将转移给用户。我希望找到一种方法,使内容不可读(即使是(仅)第一印象)。但看起来,没有办法。

3 个答案:

答案 0 :(得分:4)

生成PDF后,无法“销毁”。 PDF中没有“7天后不开放”的支持,这种支持完全依赖于pdf查看器应用程序来表彰它。没有任何迹象表明用户无法将系统时钟重置回到PDF的查看限制范围内的日期/时间。

PDF(in)安全标志仅限于加密文档以使其无法编辑,并且应禁止向pd查看器施加一些标记,以打印,屏幕阅读或文本搜索。但它们只是建议而且PDF查看器可以随意解释/忽略它们。

最终,这种安全“系统”将毫无用处并且被忽视。由于它是基于浏览器的,因此您无法控制远程用户的计算机以防止以某种形式下载/缓存/保存数据。

答案 1 :(得分:1)

内容过期实际上是一个不可能的问题。您可以创建一些将在7天后清除的页面,但不能阻止人们将内容复制到其他地方。

此问题的所有现有“解决方案”都取决于Security through Obscurity。这意味着人们无法绕过你的“安全”,因为他们不知道它是如何工作的,而不是因为它本质上是安全的。

答案 2 :(得分:1)

您可以将内容放在隐藏的表单字段中。然后,您可以为文档打开事件添加JavaScript PDF操作,以便Javascript脚本检查日期并显示表单字段。这仅在最终用户使用Adobe Reader时才有效。我不确定是否有其他支持Adobe PDF Javascript的PDF查看器。

这种安全有点业余。正如另一个repsonder所提到的,最终用户可以更改系统日期并绕过安全措施。

如果JavaScript可以从带有数字证书的https网络服务器获取,那么这可能会有效。