【问题标题】:What hash algorithms are supported by modern Javascript?现代 Javascript 支持哪些哈希算法?
【发布时间】:2015-07-04 17:54:17
【问题描述】:

我想仅使用客户端 Javascript 生成 SHA1 或类似的哈希值。换句话说,使用IE、FF和Webkit提供的Javascript引擎。我想知道存在哪些哈希实现?

【问题讨论】:

  • 存在很多。谷歌是你的朋友。 (例如:webtoolkit.info/javascript-sha1.html
  • @user1150525 - 我认为 OP 正在寻找仅在浏览器中使用 JS 引擎的实现。昨晚我自己也在寻找同样的东西,以避免依赖第三方库。

标签: javascript hash


【解决方案1】:

我不相信有任何直接内置到浏览器中,但有一些有据可查的实现。

我找到的最好的是http://code.google.com/p/crypto-js/,可通过 CDN 获得并支持:

  • MD5
  • SHA-1
  • SHA-256
  • AES
  • DES
  • 兔子
  • MARC4
  • HMAC
  • HMAC-MD5
  • HMAC-SHA1
  • HMAC-SHA256
  • PBKDF2

如果安全很重要,那么请使用尚未被破坏的算法(还)并且较少受到各种形式的攻击(维基百科在this article 底部有一个很好的细分)。

由于缺乏对 this question 的回答,这似乎不是本机浏览器功能。我希望有,但我可以看到依赖浏览器引起的问题。例如,如果在算法中发现了一个缺陷,那么在您知道他们的所有浏览器都支持它(并且他们已经升级)之前,很难将您的用户转移到一个新算法。如果您控制哈希算法,那么您可以随时部署新脚本。

【讨论】:

    【解决方案2】:

    我不确定除了已用于关联数组之外的内置哈希实现,但这里有一些带有代码的示例实现。

    SHA

    MD5(包括其他一些)

    【讨论】:

    【解决方案3】:

    Movable Type 在这里发布了一个 SHA1 的 js 实现: http://www.movable-type.co.uk/scripts/sha1.html

    我相信还有很多其他的实现。

    【讨论】:

      猜你喜欢
      • 2020-09-24
      • 1970-01-01
      • 2013-09-19
      • 2012-06-03
      • 2011-06-08
      • 1970-01-01
      • 2016-06-23
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多