【问题标题】:php check license id with postback urlphp使用回发网址检查许可证ID
【发布时间】:2014-04-14 09:19:24
【问题描述】:

我正在为 Web 应用程序/软件开发 php 安装程序。

安装程序需要一个有效的许可证 ID 才能完成安装(例如:“aDs34Nsi9sa”)。

要检查许可证 ID 是否有效,我在我的主域上有一个 php 脚本来检查我的数据库,如果 licenseID 存在且处于活动状态则返回 1,否则返回 0。这个文件应该这样调用:

https://www.domain.com/check.php?id=aDs34Nsi9sa

所以我想知道使用 file_get_contents() 通过 PHP 检查许可证 ID 是否正确。

$check = file_get_contents("https://www.domain.com/check.php?id=$license_field");
if( $check == 1 ) {} // finish installation
else {} // print error msg 

这种方式正确和安全吗?

【问题讨论】:

  • 为什么要使用file_get_contents 来检查id 的值??这没有意义
  • @Simon_eQ 我不确定 file_get_contents(),这就是我发布问题的原因。我应该使用什么功能?
  • 只需使用$_GET['id']

标签: php licensing postback file-get-contents


【解决方案1】:

当然,在将数据注入 URL 之前,您需要对数据进行正确的 URL 编码。检测暴力攻击取决于您的远程服务器。除此之外:

  • 您的检查假定 allow_url_fopen is enabled 和 PHP 具有 SSL support。请务必在必要条件中说明这一点,并为支持查询和解决编码问题做好准备。

  • 通过 SSL 发送的数据应该保持足够的私密性。

  • 而且,破解它并不是特别困难。恶意用户只需冒充远程站点即可。

【讨论】:

  • 非常感谢您的回答!你能建议我一个更好的方法还是我应该简单地使用上面的方法加上一个额外的密钥和蛮力保护?
  • 对不起,我从来没有做过这种东西。我想专业的许可系统使用密码学,但我不能告诉你如何。
猜你喜欢
  • 2013-01-02
  • 2017-08-14
  • 1970-01-01
  • 2023-03-31
  • 2013-05-31
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-05-16
相关资源
最近更新 更多