问题标签 [prng]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
11 回答
24135 浏览

algorithm - 真随机数发生器

抱歉这不是一个“真正的”问题,但有时我记得在这里看到一篇关于随机化随机化器以生成真正随机数的帖子,而不仅仅是伪随机数。如果我搜索它,我看不到它。

有人知道那篇文章吗?

0 投票
9 回答
14589 浏览

algorithm - 汇编语言中的伪随机生成器

我需要一个用于课程中分配的汇编程序的伪随机数生成器算法,我更喜欢一个简单的算法。但是,我不能使用外部库。

什么是用于组装的好的、简单的伪随机数生成器算法?

0 投票
10 回答
6572 浏览

random - 是否存在无状态随机数生成器?

使用单个随机数生成器 (RNG) 生成多个数字与每个生成器生成一个数字并丢弃它之间有区别吗?两种实现都生成同样随机的数字吗?正常的 RNG 和安全的 RNG 之间有区别吗?

我有一个 Web 应用程序,它应该代表客户生成一个随机数列表。也就是说,从每个客户的角度来看,这些数字应该是随机的。这是否意味着我需要为每个客户端会话保留一个单独的随机 RNG?或者我可以在所有会话中共享一个 RNG 吗?或者我可以根据每个请求创建和丢弃 RNG 吗?

更新:这个问题与随机序列的子集是否也是随机的有关?

0 投票
6 回答
623 浏览

security - 密码的陷阱

我正在修改现有的安全代码。规范很清楚,有示例代码,但我不是密码专家。事实上,示例代码有一个免责声明,实际上是“不要逐字使用此代码”。

在审核我要修改的代码(据说功能完整)时,我遇到了这个用于生成挑战的小宝石:

当然,我立即做的第一件事就是把它传遍办公室,这样我们都可以大笑。

生成此代码的程序员知道这不是一个好的算法(如评论所示),但我认为他们不理解安全隐患。他们甚至懒得在主循环中调用它,所以它至少会变成一个自由运行的计数器——仍然不理想,但世界不止于此。

但是,我知道我生成的代码同样会导致真正的安全专家发笑或发抖。

  • 我需要了解的最常见的密码学安全问题是什么?
  • 有哪些好的资源可以让我了解除了常见错误之外我应该知道的内容?

-亚当

0 投票
6 回答
1754 浏览

javascript - 创建程序化颜色选择器

如何创建一个确定性的Javascript HTML 颜色选择器,它给出需要多少颜色的参数返回一组 HTML 十六进制颜色代码,即:

颜色本身可以随机选择/生成,但该方法必须保证在调用之间选择的颜色始终相同,并且始终以相同的顺序排列。

例如,如果函数决定的颜色系列以以下 8 开头:

该函数将在客户端上的单独方法调用中以以下一致的响应运行

注意:颜色没有预先定义为变量;可能会要求该方法提供 345 种颜色,所有这些都需要通过任何合适的方式生成。

要解决的问题是 -首先也是最重要的 - 你将如何在方法中创建一种能力来生成 n 个 HEX 颜色值,每次都一致地相同,同时保留序列

0 投票
3 回答
934 浏览

thread-safety - PRNG 需要是线程安全的吗?

只要并发调用不会导致 seg-v 或返回相同的值,当这些错误的主要影响是不可预测的结果并且这就是 PRNG 的重点时,有什么理由可以防止PRNG中的竞争条件和数据损坏?


编辑:是否有任何 PRNG 在竞争条件和数据损坏下​​不会受到影响?

0 投票
1 回答
313 浏览

math - 来自可计算正常数的伪随机数生成器

以这种方式构建 PRNG 不是很容易吗?为什么没有完成?

也就是说,据我所知,我们可以简单地拥有一个带有种子 n 的 PRNG。当你要求一个随机位时,它取可计算正常数的二进制扩展的第 n 位,并递增 n。

我的第一个想法是,也许我们没有找到可计算的正常数,但我们找到了. 剩下的想法是,有一个很好的理由不这样做——要么是我不熟悉的 PRNG 的某些属性,而这种方法不具备,要么在某种程度上不切实际,要么被其他方法超越。

0 投票
8 回答
561 浏览

simulation - 是否可以通过物理过程模拟生成随机数?

是否可以通过物理过程模拟生成随机数?

如果我模拟骰子的物理掷骰(即你拿起它,在手中摇晃它,将它释放到桌子上并记录哪一面最终“向上”......)会产生一个“随机”数字还是会我只是有一个复杂的模拟,它真的什么也没做。

0 投票
6 回答
3613 浏览

php - 如何在 PHP 中生成唯一的随机数?

我正在开发一个 MCQ 模块,我需要从我的数据库中获取随机问题。问题是我似乎得到了重复。

0 投票
3 回答
636 浏览

string - 什么是用字符串播种 prng 的好的散列算法?

我正在寻找一种散列算法,它产生一个 31/32 位有符号/无符号整数作为 utf8 字符串的摘要,目的是使用输出播种 prng,例如 Park-Miller-Carta LCG 或 Mersenne-捻线机。

我研究过 FNV1 和 FNV1a,但它们为最后一个字符不同的相似字符串提供了非常接近的值;我希望有一个低冲突哈希,它会在对输入字符串的最小修改时彻底改变。性能不是问题。

我目前的方法包括使用字符代码和素数作为乘数的脏 LCG:

请让我知道任何更好的选择。