有没有办法判断PHP脚本是否未被修改?

时间:2015-04-02 13:26:23

标签: php

有没有办法检查PHP脚本是否已被修改?

我编写了一个人们将在自己的服务器上安装的脚本,我希望能够检查输出是否真实或是否已伪造。

这可能吗?

1 个答案:

答案 0 :(得分:1)

简短的回答是:你不能。由于服务器(您无法控制)执行代码(您不再控制),因此它们可以完全控制响应。它总是有可能改变一些东西并试图伪造它是合法的。

但是,你可以尝试让它变得更难。这与软件盗版保护,数字版权管理和其他类似技术背道而驰,这些技术旨在限制可以使用所有者/发起人控制之外的信息执行哪些操作。

有些方法可以做到这一点:

  • 混淆了php,使其更具防篡改功能。
  • 让脚本向您发送自己的哈希值,并使用您的公钥加密,作为其输出的一部分。
  • 加密(对称或非对称)大部分php本身,并为其添加解密/执行部分。
  • 个性化每个脚本副本,包括您允许其他人使用的每个脚本的预期输出中的某种已知的唯一值,并在输出中验证它以确保它是该服务器的预期值。