使用 `crypto-js` 库生成 0 到 1 的随机值

问题描述 投票:0回答:1

我正在开发一个小型 JS 库,它由几个用于 Web、NodeJS 和 React Native 的 npm 包组成,但它们都使用共享核心库。

在核心库中,我一直在使用

Math.random()
,但最近发现一些令人讨厌的随机性问题,导致某些 React Native 引擎的某些版本出现大量重复。我决定切换到 rng 的单一事实来源,这将在平台之间保持一致。

我已经将

crypto-js
用于
sha256
,如果我也能利用
crypto-js
来从
Math.random()
切换,那就太棒了。

我检查了

crypto-js
docs,只发现
CryptoJS.lib.WordArray.random
生成随机字节,其他东西似乎与散列和密码相关。我很确定可以将这些字节转换为 0-1 随机值,但我不完全确定它是否比
Math.random()
更可靠。

问题:有没有办法使用

Math.random()
生成类似于
crypto-js
的可靠随机0 - 1值?

javascript node.js random cryptojs
1个回答
0
投票

由于没有原生可用的替代品

Math.random()
,我最终使用了 React Native 的专用库

该库是 react-native-get-random-values,它使用 IOS/Android 本机实现进行加密

© www.soinside.com 2019 - 2024. All rights reserved.