目前,我的朋友有一个程序,检查用户的Windows CD-Key,然后它通过单向加密。然后,他将这个新生成的数字添加到程序中用于检查目的,然后编译它,然后将它发送给客户端。有没有更好的方式来保持该程序不使用任何类型的登录系统,而是使用PHP以某种方式共享,而不是使用当前的方法。我还能如何检查用户的程序?
0
A
回答
1
总之,任何使用密钥的程序都可以以某种方式伪造。尤其是如果可用的资源(大多数PHP项目都是这种情况),如果你真的想要专业的东西,你可能想看看Zend Gard。)但是我认为大多数安全系统对客户来说都是一种痛苦。
A 不错系统我遇到过一次是一个C编译库,有许多冗余代码检查(意大利面类似调用树),并验证加密的序列号。由于该应用程序是自定义的,并且没有多少版本,因此没有可用的“破解”,当转售商破产时,客户处于深水处境。最终,该代码无论如何都被破解了。
在我看来,唯一真正安全的方式是托管你的应用程序并且不发布你的任何源代码,然后让客户支付一个许可证并只发送一个他必须为每个请求发送的API密钥。
2
幸运的是,我在这方面做了大量的研究,更实惠,有人说Zend Guard的安全选项是SourceGuardian。它允许绑定到IP地址,MAC地址,域和时间。他们还在研究支持连接到计算机的物理加密狗的版本。他们也经常发布并拥有相当不错的支持。
另一个经济实惠且安全的选项是NuCoder,它们与SourceGuardian有类似的选项,但也允许选项绑定到唯一生成的硬件ID。
无论如何,SourceGuardian和NuCoder都是最好的,但无论如何NuCoder已经落后于支持最新的PHP版本。目前它们支持5.2,而SourceGuardian支持最新的,包括5.3。此外,由于您的代码已转换为受保护的字节码,因此您也可以获得速度优势,因为PHP不需要额外执行将代码转换为字节码的步骤。但是,正如前面的评论者指出的那样,这将需要你的用户安装必要的装载机,但是,这通常需要在php.ini中添加一个简单的行,或者在> 5.2.6的情况下,否则通常不需要添加。
相关问题
- 1. 如何检查我的Facebook应用程序的当前用户是旧用户还是新用户?
- 2. 如何检查用户是否在我的iPhone应用程序
- 3. 如何检查用户是新用户还是旧用户
- 4. 如何检查应用程序是由用户还是NSWorkspace启动
- 5. 如何检查应用程序是游戏还是不是android?
- 6. 如何检查我的图书馆是用于Win8商店应用程序还是用于Win32应用程序?
- 7. Graph Api:如何检查用户是否正在使用我的应用程序
- 8. 如何检查当前使用PowerShell程序的用户?
- 9. 如何检测用户是否正在查看我的应用程序(Android)
- 10. 如何检查用户是否对我的应用程序进行了评分
- 11. 检查用户是否已安装我的Facebook应用程序
- 12. 检查Facebook用户是否喜欢我的应用程序
- 13. PHP-SDK:检查用户是否授权我的应用程序
- 14. 如何在客户端的模拟器上检查我的应用程序
- 15. 如何检查用户是否从iOS上的其他应用程序调用我的应用程序?
- 16. 如何检查我的应用程序是否安装在客户机上?
- 17. 如何检查用户是否安装了应用程序?
- 18. 如何检查用户是否喜欢facebook应用程序?
- 19. 检查程序性能
- 20. 如何检查Django应用程序的性能?
- 21. 如何检查是用户登录还是不在codeigniter
- 22. 如何检查我的汇总查询是好还是坏?
- 23. 如何在XCode上检查我的iPhone应用程序的TARGET_NAME?
- 24. 如何检查已安装的应用程序是我的?
- 25. 如何在我的应用程序中检查3G的状态:
- 26. 如何检查用户是匿名用户还是用javascript登录?
- 27. 如何使用lttng检查多线程用户应用程序的调度?
- 28. 我scrollViewDidScroll功能不接受我试图检查用户是否上下滚动我的应用程序调用
- 29. 如何检查数组是降序,升序还是未排序?
- 30. 如何检查我的应用程序是否有焦点?