1

我正在寻找一个 MIT 许可的 javascript 库来生成加密随机数。我必须用来生成 AES 128 密钥,所以生成器必须是非常好的东西。不幸的是,我在 Internet 上找到的所有(严肃的)库都是 GPL 许可的,出于法律原因我不能使用它们。你知道一个可用的图书馆,它会是麻省理工学院许可的,或者更好的是,公共的?

非常感谢你

4

3 回答 3

0

你可能想看看crypto-js——它是 BSD 许可的,我认为它很受尊重——已经存在了 3 年多。

于 2012-09-13T17:46:31.730 回答
0

这个问题非常类似于Generate cryptographically strong pseudorandom numbers in Javascript? .

浏览器中的 JavaScript:

在 Firefox 和 Chrome 中,有一个实验性 API 可以做到这一点:window.crypto.getRandomValues.

浏览器库中的其他库是有问题的,因为很难在浏览器中收集足够的熵。所以它们通常有很长的启动时间,或者可能会产生低质量的随机性。

一些随机数生成器库:

前两个可能满足您的许可证要求,因为 BSD 是许可许可证。为了完整起见,我已经包括了第三个。

节点.js:

crypto.randomBytes

于 2012-09-14T13:57:37.633 回答
0

自上次以来,MSR JavaScript Cryptography Library已经发布,这正是我所需要的。

顺便说一句,现代浏览器现在原生支持一些加密(chrome 支持加密安全的伪随机数,IE11 的功能更多:http: //msdn.microsoft.com/en-us/library/ie/dn302338%28v=vs .85%29.aspx

于 2014-11-29T15:09:56.737 回答