在Javascript中使用Crypto-js加密,使用mcrypt在PHP中解密?

问题描述:

我有一个简单的JavaScript游戏,通过将分数添加到URL来向PHP发送分数,然后PHP使用GET来抓取它。显然,这很容易作弊,因为它可能是。我想让它变得温和地刺激游戏。我不是在寻找它作为堡垒或类似的东西;这真的没有意义,但是让它变得有点难以改变你的分数会很好。在Javascript中使用Crypto-js加密,使用mcrypt在PHP中解密?

所以我想用Crypto-JS加密数字分数,然后用PHP解密。我无法弄清楚如何用Crypto-JS得到与使用PHP的mcrypt相同的答案。

我意识到任何人都可以阅读代码并弄清楚如何在JavaScript中破解它;没关系。这根本不是敏感数据,如果他们遇到了这么多麻烦,他们已经花费了比打败游戏更多的努力。

加扰评分的替代方法也可以;只是任何真正需要普通高中用户投入超过5分钟工作才能“破解”的东西足以满足我的需求。有什么建议么?

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

+0

请向我们展示您的尝试!也许我们可以修改你的代码以获得正确的结果... – 2012-03-27 22:27:04

你可以尝试像发送值:

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

然后在PHP检查:

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

凡$盐值是一些随机的字符串,你知道的价值。

+0

不错,不会弄乱原始代码,只需添加一些检查,便于调试。不过,我会特别注意MD5散列方法输入的(字符)编码,否则可能会遇到麻烦。 – 2012-03-27 22:29:34