4

我开发了一些 Flash + PHP 游戏,游戏逻辑在 PHP 文件中。Flash 仅用于动画和 UI。现在我有一个客户对我的游戏感兴趣,但我们有某种协议,他可以使用这些游戏仅 2 个月,之后,如果他不支付费用,游戏将停止运行。

我想保护我的游戏,这样他就不能永远使用它们。我在想,当游戏开始时,它会向我的服务器发送一个请求,如果我的服务器响应 PASS=123456,那么游戏就会运行,否则会显示一条消息“游戏已禁用”。

另一种方法是将部分 PHP 逻辑移动到我的服务器,但这可能会导致游戏运行速度比预期慢。

我也试过 Kindisoft 的secureSWF,但他们的软件改变了一些游戏的功能。

有人对如何保护它有其他想法吗?

4

3 回答 3

3

使用公钥认证 - 认证他的 php 服务器。使您的服务器证书颁发机构,在他的服务器上保留公共时间有效的密钥,在您的 CA 服务器上保留它们的私有密钥。每次 Flash 游戏开始时 - 向您的 CA 验证他的服务器。
此解决方案不是很复杂,您可以使用标准工具来执行此操作。另外 - 如果不真正破解 Flash 应用程序,他将无法克服此检查。它还具有防窃听功能。
最大的可能问题是他在没有您的 Flash 应用程序的情况下使用您的 php API。

于 2012-12-11T13:35:12.950 回答
0

如果客户是一位熟练的编码员(甚至是狂热的谷歌用户),他将不难绕过初始密码测试。

唯一安全的事情(imo)是将php托管在您自己控制的服务器上

于 2012-12-05T15:35:36.507 回答
0

只要逻辑不在您的服务器上,您就必须确保尽可能最好地保护闪存文件,然后您可以从游戏到您的服务器进行任何类型的检查(只要闪存文件没有被破解不管你做什么检查)。

http://active.tutsplus.com/tutorials/workflow/protect-your-flash-files-from-decompilers-by-using-encryption/

这是一篇关于 swf 保护的好文章,但最后 swf 仍然是开放格式,只要文件不在您的服务器上并且逻辑在 php 文件中,无论您做什么,它仍然可能被破解。

话虽这么说,控制游戏的最佳方式是在您的服务器上拥有逻辑。

于 2012-12-16T00:07:46.440 回答