数学计算器
数字生成器


数字生成器

该随机数字生成器根据用户指定的选项(如范围、重复和排序)提供一组随机数字。

选项

随机数字

48, 9, 49, 11, 17, 22, 16, 37, 45, 41, 4, 36, 43, 10, 28, 27, 47, 25, 21, 33

您的计算出现错误。

目录

  1. 随机数字生成器的使用
  2. 随机序列和非随机序列的区别
  3. 随机数字生成器的类型
  4. 谷歌的生成器
  5. 线性同余方法
  6. 现代硬件随机数字生成器
    1. QRBG121
    2. 熔岩灯
    3. HotBits
    4. 真空量子涨落
    5. 碳纳米管生成器
    6. 骰子和电子前沿基金会(EFF)
    7. 诺基亚智能手机的量子随机数字生成器

数字生成器

随机数字生成器是一种每次需要时都能获取一个随机数字的过程,而无法从之前生成的数字中定义出一个模式。这个数字可以通过算法或硬件设备生成。

随机数字生成器的使用

生成随机数字对于各种任务都是必需的,从电脑游戏到常见应用程序。例如,系统使用随机数字生成器在网站上显示随机横幅或随机广告单元。在密码学中,随机数字也被用来制作独特的密码或密钥。

随机数字生成被用于生成验证码、加密、为存储密码生成盐、密码生成器、在线赌场中的牌序、决策、抽样和模拟的数字或文本。

随机数字生成器算法经常用于视频游戏中。即使你在游戏中处于同一级别,每次尝试完成任务时情况都不会完全相同。也许位置或任务上的差异不会被看到,但在敌人接近的数量和出现的地点、气候变化以及遇到的各种障碍上的差异将会被看到。这使得游戏更加令人兴奋。

随机序列和非随机序列的区别

设有一串数字:1,2,3,4,5。它是随机的吗?

随机变量是在试验结果中可能取得某些值的变量。在特定值出现之前,你无法准确预测其发生。

假设这些数字是通过敲击键盘上的顶行键获得的。在这种情况下,这种组合就不是随机的,因为在5之后,下一个数字6可以用很高的概率预测。

只有当符号之间没有依赖关系时,序列才是随机的。

随机数字生成器的一个基本条件,这对于随机数字生成器的正确和公正原则极其重要,是该系统中可能出现的任何数字都有绝对相等的概率。这表明随机因素的完全独立性和它在随机数字之前或之后出现的其他数字的独立性。

例如,假设你第一次掷一个六面骰子。在这种情况下,从1到6的任何数字都有同样的概率出现。不管你的数字是什么,你都可以再次掷骰子,第二次、第一百次或第一千次掷出同一个数字的机会是一样的。

圆周率中的数字序列似乎是不重复的,对许多人来说,它可能看起来是随机的。假设我们假设的生成器依赖于圆周率的位表示,从一个未公开的点开始。这样的生成器在许多情况下可能是不可预测的,可能通过某些随机性测试。然而,依赖于圆周率进行密码学用途存在风险。如果对手确定了正在使用的圆周率的特定段,他们可以预测前面和后面的段,从而危及系统的安全性。

美国国家标准与技术研究所提出了“用于密码应用的随机和伪随机数字生成器的统计测试包”。它包括15个统计测试,其目的是确定由硬件或软件生成器生成的位的随机性程度。

随机数字生成器的类型

随机数字生成器(RNG)有两种类型:真随机数字生成器(TRNG)和伪随机数字生成器(PRNG)。TRNG使用物理现象生成数字,而PRNG使用数学算法。

真随机数字生成器算法是通过使用硬件设备创建的,该设备利用微小的物理过程生成随机数字,即熵。熵是纯粹的、未经过滤的混沌。

真随机数字生成器使用如下物理现象:

  • 放射性,
  • 热噪声,
  • 电磁噪声,
  • 量子力学等。

真随机数字生成器通常用于全球的安全导向系统和某些形式的加密。

随机数字生成器使用熵源累积熵并获得随机数字生成器所需的初始值(种子)。

伪随机数字生成器算法用于没有安全顾虑的领域。随机性有助于避免重复,并使过程对最终用户更具吸引力。实现伪随机数字生成器技术更便宜、更快,因为它不需要硬件,可以轻松地嵌入程序代码。尽管该过程不是完全随机的,而是基于算法确定的,但它更适合游戏和程序。

PRNG使用单个初始值,其伪随机性由此产生。同时,真随机数字生成器总是通过多种熵源提供的高质量随机值,在开始时生成随机数字。

伪随机数字生成有其缺点。它们之所以有效,是因为对外行来说它们是随机的。然而,假设你知道了PRNG特定序列的初始值,你就可以预测接下来会产生哪些数字。

玩快速视频游戏的爱好者经常利用这个漏洞——他们称之为操纵PRNG。他们让游戏运行可预测,以便他们尽快通过。幸运的是,这不会带来关键问题。

但有时预测随机数字是更加关键的。例如,在创建安全密钥时。

如果攻击者找出了用于创建TLS证书中的RSA密钥的初始值,他可能可以解密网络流量。这意味着他可以获取通过互联网发送的密码和其他个人信息。

在这些情况下,需要一种更安全的获取随机数字的方式,即真随机数字生成器。

谷歌的生成器

谷歌拥有自己的基于JavaScript的随机数字生成工具。当与朋友和家人玩游戏时,这个工具可能很有用。您可以在谷歌搜索查询“随机数字生成器”中找到这个生成器。

线性同余方法

伪随机数字生成器中最受欢迎的算法之一是线性同余方法。它用于简单情况,没有密码学强度。1949年,德里克·亨利·莱默提出了线性同余方法。

要通过这种方法实现数字的生成,我们需要选择四个数字:

m > 0,模数

0 ≤ a ≤ m,乘数

0 ≤ c ≤ m,增量

0 ≤ X₀ ≤ m,初始数字

随机数字序列本身是使用以下公式生成的:

Xₙ₊₁ = (aXₙ + c) mod m

值得注意的是,这种方法取决于参数的选择。

例如,对于以下集合:

X₀ = 3, a = 4, c = 5, m = 6

我们得到一个短重复序列

3, 5, 1, 3, 5, 1

这看起来并不随机。

但改变参数为其他值:

X₀ = 2, a = 85, c = 507, m = 1356

结果的分散性变得更加不可预测。必须特别小心地选择这个算法的数字。

2, 677, 1100, 443, 194, 725, 1112, 107, 110, 365, 344, 1271, 62, 353, 680, 1355, 422, 1121, 872, 47, 434, 785, 788, 1043, 1022, 593, 740, 1031, 2, 677, 1100, 443, 194, 725, 1112, 107, 110, 365, 344, 1271, 62, 353, 680, 1355, 422, 1121, 872, 47, 434, 785, 788, 1043, 1022, 593, 740, 1031, 2, 677, 1100, 443, 194, 725, 1112, 107, 110, 365...

虽然线性同余方法生成了统计上良好的伪随机数字序列,但它在密码学上不够强大。基于线性同余方法的生成器是可预测的,因此不能在密码学中使用。

线性同余方法生成器首次被吉姆·里德斯在1977年破解,然后在1982年被琼·博亚破解。她还成功破解了二次和三次生成器。因此,他们证明了基于同余方法的生成器对于密码学是无用的。然而,基于线性同余方法的生成器对于非密码学应用仍保持其用途,例如,用于模拟。它们效率高,且在大多数实证测试中表现出良好的统计性能。

现代硬件随机数字生成器

QRBG121

该设备中的随机性效果依赖于半导体中光子发射的量子物理过程以及随后对单个光子的检测。在这个过程中,光子被随机检测,彼此独立,检测到的光子的时间信息用于生成比特。

熔岩灯

CloudFlare的旧金山办公室设有名为“熔岩灯”的随机数字生成器。这种灯是一个装满透明油和半透明石蜡的玻璃容器。石蜡比油略重,但当轻微加热时,它变得更轻并上浮。

液体的运动由几个摄像头监控,拍摄快照。这些快照被转换为数字,然后从中生成加密密钥。

CloudFlare的另外两个办公室使用不同的方式来获取随机值。在伦敦,一个摄像头捕捉三个混沌摆的运动。在新加坡使用一个盖革计数器测量一小块铀的放射性衰变。在后一种情况下,铀被用作“数据源”,因为放射性辐射的每次衰变都具有随机性。

HotBits

HotBits是一个提供真随机数字的网站,这些数字由记录电离辐射的盖革计数器生成。您在网站上填写请求表格,指定随机字节的数量,并选择获取数据的首选方式。一旦随机数字提供给客户,它们将立即从系统中删除。

真空量子涨落

与其名字(“vacuus”-空)相反,真空不能被认为是空的。根据海森堡不确定性原理,虚粒子不断诞生和消亡。

加拿大物理学家设计了一种基于真空涨落的快速且结构简单的随机数字生成器。该生成器由一个高频率辐射的脉冲激光器、高折射率介质(钻石)和检测器组成。通过钻石时,每个脉冲在传感器上显示不同特性,这取决于光子路径上遇到的真空场涨落。

在散射辐射的光谱中,出现光谱线。由于真空涨落的不可预测性,这些线条每次都以不可预测的方式不同。

碳纳米管生成器

这种方法将紧凑性与产生的热噪声相结合。

研究人员用特殊墨水制成的静态随机存取存储器单元构建了一个随机数字生成器,这些墨水含有半导体碳纳米管。存储器单元使用热噪声波动来生成随机比特。

碳纳米管生成器可以打印在柔性塑料基板上,使其能够集成到微型、柔性的电子设备、可穿戴传感器、一次性标签和智能服装中。

骰子和电子前沿基金会(EFF)

该公司提出了一种使用物理随机数字生成器创建安全密码的简单方法。它基于骰子。

例如,你一次掷五个骰子,并记下结果数字。骰子从左到右排列如下:63131。接下来,你打开EFF网站上的长单词列表,找到63131旁边对应的单词。那个词是“turbofan”(涡轮扇)。

你可以重复这个过程几次。例如,五次。你可能最终得到一个五个单词的短语。比如说,“turbofan purge unfitting try pruning”(涡轮扇 净化 不适 尝试 修剪)。如果你知道如何使用助记规则,你可以记住这样的短语。

诺基亚智能手机的量子随机数字生成器

2014年,日内瓦大学创建了一个使用诺基亚N9智能手机相机的QRNG设备。

智能手机相机计算每个像素击中的光子数量。光源是标准的LED。800万像素相机中的每个像素在短时间内检测到大约400个光子。然后,所有像素处的光子总数被转换为随机数字序列。