1

我正在用 Ruby on Rails 构建一个网页游戏,我希望大部分游戏逻辑都发生在浏览器上。该游戏涉及用户回答问题。我需要在网页中嵌入答案,因为这是我放置验证用户正确回答问题的代码的地方。我不想将答案放在纯文本中,因为精明的用户可以查看源代码以查看答案,所以我想在将它们嵌入页面之前使用散列对其进行加密。

为此,我需要首先在我的 Rails 后端为答案字符串创建哈希值,然后当用户回答问题时,我需要为他们的答案创建哈希值并将该哈希值与嵌入的哈希值进行比较. 如果他们相等,那么他们正确回答了问题,我通知我的服务器。

如何在 Rails 后端和浏览器上的 Javascript 中为字符串生成哈希值?

您会建议一种更好的方法来隐藏我的网页上的答案吗?

4

2 回答 2

1

鉴于 MD5 应作为后缀的目的,从客户端的角度来看,您可以从此处使用 MD5 的 phpjs.org 版本

http://phpjs.org/functions/md5/

如果 MD5 不够好,您可以在 Google Closure Library 中查看其他哈希可能性

http://closure-library.googlecode.com/svn/docs/namespace_goog_crypt.html

我从未使用过 ruby​​,但 MD5 对应物似乎是这样

http://ruby-doc.org/stdlib-1.8.6/libdoc/digest/rdoc/MD5.html

于 2012-12-01T19:14:09.753 回答
1

随着像 lostsource 这样的网站的现成可用,为了加强哈希,您应该将时间戳添加到其中。然后,您的数据中有时间戳,并且可以使用“#{timestamp}#{hashcode}”调用 phpjs md5 哈希码。

于 2012-12-01T19:24:01.627 回答