【问题标题】:Encryption using Crypto-js in Javascript, Decrypt in PHP with mcrypt?在 Javascript 中使用 Crypto-js 加密,在 PHP 中使用 mcrypt 解密?
【发布时间】:2012-04-11 07:08:53
【问题描述】:

我有一个简单的 JavaScript 游戏,它通过将分数添加到 URL 来向 PHP 发送分数,然后 PHP 使用 GET 来获取它。显然,这很容易作弊。我想让作弊游戏变得有点烦人。我不希望它是诺克斯堡或类似的东西。确实没有意义,但让你的分数更难改变一点就好了。

所以我希望使用 Crypto-JS 对数字分数进行加密,然后在 PHP 中对其进行解密。我不知道如何使用 Crypto-JS 获得与 PHP 的 mcrypt 相同的答案。

我意识到任何人都可以阅读代码并弄清楚如何用 JavaScript 破解它;没关系。这根本不是敏感数据,如果他们遇到那么大的麻烦,他们付出的努力比赢得比赛所需的还要多。

打乱分数的其他方法也可以;任何真正需要普通高中用户投入超过 5 分钟的工作才能“破解”的东西对我的目的来说已经足够了。有什么建议吗?

加密 JS:http://code.google.com/p/crypto-js/

【问题讨论】:

  • 请向我们展示您的尝试!也许我们可以修改您的代码以获得正确的结果...

标签: php javascript encryption cryptography mcrypt


【解决方案1】:

您可以尝试以如下方式发送值:

whatever.php?score=UNHASHED_SCORE&key=MD5(SALT . SCORE)

然后在 PHP 中检查:

$_GET['score'] == md5(SALT . $_GET['key'])

其中 $salt 值是一些您知道其值的随机字符串。

【讨论】:

  • 很好,也不会弄乱原代码,只是添加一些检查,便于调试。不过,我会特别注意 MD5 哈希方法的输入的(字符)编码,否则您可能会遇到麻烦。
猜你喜欢
  • 2014-09-12
  • 2014-02-06
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2014-12-24
  • 2015-11-10
  • 2012-01-28
  • 2020-11-24
相关资源
最近更新 更多