Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/383.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/88.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
在JavaScript中生成安全、随机、Ascii编码的字符串_Javascript_Html_Webkit_Cryptography - Fatal编程技术网

在JavaScript中生成安全、随机、Ascii编码的字符串

在JavaScript中生成安全、随机、Ascii编码的字符串,javascript,html,webkit,cryptography,Javascript,Html,Webkit,Cryptography,我想为我的JavaScript程序生成一个安全的、ASCII编码的随机nonce(它必须在WebKit中工作)。最好,我想使用现成的工具。到目前为止,我找到的唯一答案是: 唯一的问题是结果是随机的,我不确定如何在不牺牲安全性的情况下对其进行ASCII编码(即减少随机性) 编辑:Math.random()在加密方面不安全,window.crypto只生成字节倍数的值(ASCII值为7位,因此如果编码机制实现得很简单,就会减少随机性).您可以将任意字节数组编码为Base64以获得纯ASCII。编码

我想为我的JavaScript程序生成一个安全的、ASCII编码的随机nonce(它必须在WebKit中工作)。最好,我想使用现成的工具。到目前为止,我找到的唯一答案是:

唯一的问题是结果是随机的,我不确定如何在不牺牲安全性的情况下对其进行ASCII编码(即减少随机性)


编辑:Math.random()在加密方面不安全,window.crypto只生成字节倍数的值(ASCII值为7位,因此如果编码机制实现得很简单,就会减少随机性).

您可以将任意字节数组编码为Base64以获得纯ASCII。

编码不会改变其编码值的随机性。我认为ASCII是7位的,window.crypto只生成字节倍数的值。我的直觉告诉我,将其编码回7位可以减少随机性。Math.random()不是加密安全的。在您定义安全的含义之前,我们无法提供解决方案。@EricChen如果我生成一个x和y之间的随机整数,并让您猜它,如果我碰巧用另一种方式来表达这个数字,你能更好地猜出来吗…