我偶然发现了一个桌面项目(特别是一个可执行程序),它不断/重复/连续地生成随机数据字符串。下面是它的预览:
但是,我想在 Javascript 中编写代码。由于这个想法非常令人困惑,我不能简单地从零开始,我希望这里是否有人开发了类似的东西或对我如何在 Javascript 中执行此操作有任何想法,以便给我一些信息或其他资源,也许是 jQuery 插件管他呢。
先感谢您!
我偶然发现了一个桌面项目(特别是一个可执行程序),它不断/重复/连续地生成随机数据字符串。下面是它的预览:
但是,我想在 Javascript 中编写代码。由于这个想法非常令人困惑,我不能简单地从零开始,我希望这里是否有人开发了类似的东西或对我如何在 Javascript 中执行此操作有任何想法,以便给我一些信息或其他资源,也许是 jQuery 插件管他呢。
先感谢您!
这看起来并不特别难,只是 JavascriptMath.random
不是随机数的高质量来源。您可能会查看一些最近发布的Web Cryptography API实现,以了解如何改进它。
一旦你有了它,将随机数流转换为不同的格式应该很简单,并且使用鼠标移动来添加熵也应该不难。
哪些部分让您觉得特别困难?
更新:
我在JSFiddle上发布了部分版本。这只是显示该字段如何不断更新和冻结。但它对密码学没有任何作用。您仍然需要将鼠标移动转换为一组数值,以作为更强大的随机数生成器的输入。但是将鼠标移动转换为数字非常简单。同样,请查看Web Cryptography API以获取更多信息。
它使用这些片段:
var getRandomHexDigit = function() {
return (Math.floor(16 * Math.random())).toString(16).toUpperCase();
}
和
setInterval(function() {
hex.value = hex.value.substring(1) + getRandomHexDigit();
}, 50);