代码之家  ›  专栏  ›  技术社区  ›  Kyle

IE和Webkit中是否有内置的对加密随机数的浏览器支持?Firefox有window.crypto

  •  4
  • Kyle  · 技术社区  · 14 年前

    有什么类似的吗 https://developer.mozilla.org/en/javascript_crypto 对于IE或webkit浏览器?

    我只需要生成加密安全的伪随机数,但我不想包含一个大型的第三方js库。

    4 回复  |  直到 14 年前
        1
  •  0
  •   Marcus Pope    14 年前

    这是一个很小的SHA1模块,可以用Date.now+some salt n pepper提供一个相当随机的字符串。把字母表去掉,继续打电话,直到你有足够的号码来满足你的需要。

    http://www.movable-type.co.uk/scripts/sha1.html

    当然很老套-所以也许对webservice的ajax调用就足够了?

        2
  •  1
  •   lorrat    14 年前

    您应该读入缓冲区,而不是直接读入字符串,因为上面的代码是UTF-8编码的(为什么您有这么多的字节)

        3
  •  0
  •   slacktracer    14 年前

    我支持webservice的想法,并提出以下建议: random.org ,一个真正的随机数生成器。

        4
  •  0
  •   mbinette    12 年前

    this reference .

    不幸的是,当我尝试 crypto.random(8) 在JavaScript错误控制台中,它抛出 NotImplemented 错误。我想看看这个函数是标准的。

    在运行在osx/linux上的node.js上,我建议:

    node> var urandom = fs.openSync('/dev/urandom', 'r');
    
    node> fs.readSync(urandom, 8);
    
    [ '.\ufffd\u000f\ufffdK!L\ufffd', 8 ]
    

    我相信同步读取是可以的,因为 /dev/urandom