问题

工程上存在那么多不确定情况,为什么计算机不能利用它们产生真随机数,而只能根据逻辑产生伪随机数?

回答
你这个问题问得特别好,触及到了计算机科学中最根本的几个层面。你说工程上充满了不确定性,比如元件的细微差异、环境的波动,这些确实是客观存在的。那么为什么我们不能直接利用这些“不确定”来生成“真随机数”,反而要依赖那些“看似随机”的伪随机数呢?这背后其实是计算机的本质和我们对“随机”的定义在起作用。

一、 计算机的本质:确定性机器

首先,我们要明白,计算机本质上是一个确定性机器。它的所有工作,从指令的执行到数据的处理,都是基于一套严格的逻辑和算法。你输入一个指令,它就会按照预设的步骤一步步执行,最终得到一个确定的结果。即使是并行处理,也是在确定的时间点执行确定的任务。

想象一下,如果你把一串指令输入给计算机,然后关掉电源再重新启动,只要你的指令是一样的,并且环境没有发生根本性的改变(比如硬件损坏),它第二次执行的结果一定会和第一次一模一样。这就是确定性的力量,也是计算机能稳定运行的基础。

二、 什么是“真随机数”?

我们现在讨论的“真随机数”,指的是真正不可预测、没有规律的随机数。它的生成不依赖于任何先前的状态或算法。每一次生成都是一个独立的、无法被推断的事件。最典型的例子是来自物理现象的随机性,比如:

放射性衰变: 原子核衰变的时间是随机的,我们无法预测下一个衰变何时发生。
热噪声: 电子在导体中随机运动产生的电压波动,这种波动是微小且无规律的。
量子效应: 例如光子穿过半透膜的反射或透射概率,这是微观层面的内在随机性。

这些物理过程的随机性是内在的、无法从其运行规律中预测出来的。即使你知道了它过去所有发生过的衰变事件,也无法准确预测下一个何时会发生。

三、 为什么计算机不能直接利用工程上的不确定性产生真随机数?

你提到的工程上的不确定性,比如元件的细微差异、环境的波动(温度、电压变化),虽然在宏观上会带来一些“不可控”的因素,但从计算机的视角来看,它们往往在某种程度上是可以被建模、被解释,甚至是被规避的。

1. 不等于不可预测: 工程上的“不确定性”很多时候指的是我们对复杂系统的了解不够透彻,或者我们无法精确控制所有变量。比如,一个电子元件的寿命可能存在个体差异,但这差异往往是由于制造过程中的微小缺陷、材料的不均匀性等原因造成的。如果理论上我们能精确掌握这些因素,并且拥有无限的计算能力去模拟它们,那么理论上我们就能预测出这个元件的寿命。这种“不确定”更像是信息不完备性,而不是内在的、绝对的不可预测性。

2. 难以精确测量和隔离: 即使我们知道这些物理上的不确定性存在,要将它们转化为可靠的、可被计算机读取的随机信号,也存在巨大的工程挑战。
噪声源的稳定性: 你提到的“环境波动”和“元件差异”,如果我们要用它们来生成随机数,就需要设计一个高度敏感的电路来捕捉这些微小的变化。但是,这些变化可能本身就不够“随机”,或者容易受到其他外部因素(比如电源的微小波动)的干扰,导致生成的序列并非真正的随机。
信号的量化和处理: 将这些模拟的、微小的物理变化转化为计算机能理解的数字信号,需要经过模数转换。这个过程本身就可能引入偏倚(bias),或者损失一部分随机性。
可重复性与控制: 如果我们依赖这些“不确定性”,那么在设计、制造和运行过程中,任何微小的调整都可能影响到随机数的质量。而计算机系统需要的是稳定和可控,这种依赖于高度不确定性的随机数生成方式,反而会带来更大的系统风险。

3. “似是而非”的随机性: 很多看似随机的工程现象,如果仔细分析,可能会发现其中隐藏的规律。比如,早期的一些随机数生成器就依赖于计算机时钟的低位比特,但时钟的周期性很快就会被暴露。又比如,某些模拟电路的混沌行为,虽然难以预测,但往往也存在一定的吸引子和相空间结构,这使得其随机性并非绝对。

四、 伪随机数(PRNG)的逻辑和优势

正因为计算机是确定性的,并且直接利用物理不确定性有诸多困难,我们就退而求其次,创造了伪随机数生成器(PRNG)。

PRNG的核心思想是:利用一个确定的数学算法,从一个初始值(称为“种子”,seed)出发,生成一串看起来像是随机的数字序列。

听起来是不是有点矛盾?“确定的算法”怎么能生成“随机的数字”?关键在于这个“看起来像”。

1. 算法设计: PRNG的设计目标是让生成的序列在统计学上表现出随机性。这意味着这些数字应该:
均匀分布: 在一个给定的范围内,每个数字出现的概率应该大致相等。
独立性: 相邻的数字之间,或者任何两个数字之间,不应该有明显的关联性。
无周期性(或者周期非常长): 序列不应该很快重复,否则就不是随机的了。
长周期: 一个好的PRNG可以生成非常非常长的数字序列,直到某个时刻才会开始重复。

2. 种子的作用: 种子是PRNG的起点。只要种子相同,相同的PRNG算法就会生成完全相同的序列。 这恰恰体现了计算机的确定性,也提供了可重复性的好处。
可重复性: 在调试程序、科学模拟或者需要复现实验结果的时候,能够得到相同的“随机”序列是至关重要的。
控制性: 我们可以选择不同的种子来获得不同的随机序列。

3. 与真随机数的区别: PRNG生成的不是“真随机数”,而是“伪随机数”。它的随机性是算法模拟出来的。如果你知道算法和种子,你就能预测出整个序列。它不是基于物理的不可预测性,而是基于数学上的“看似随机”。

五、 工程上的不确定性与真随机数生成器(TRNG)

那么,我们真的就不能利用工程上的不确定性了吗?当然不是。

对于那些确实需要真正不可预测随机数的场景(比如加密、高安全性的密码学应用),我们有真随机数生成器(TRNG)。TRNG的设计就是要去捕捉那些不可控的、难以预测的物理现象。

如何实现? TRNGs通常会接入专门的硬件模块,这些模块利用前面提到的物理现象(如热噪声、放射性衰变、量子效应等)来产生原始的、不可预测的随机比特流。
后处理: 由于原始的物理信号可能不够“纯粹”,或者存在一些微小的偏倚,TRNGs通常还会对这些原始数据进行后处理,比如通过哈希函数或者其他去偏算法,来生成统计学上更完美的真随机数。
依赖硬件: TRNGs的质量高度依赖于其所使用的物理源的质量和稳定性。它们需要专门的硬件支持,并且通常比PRNGs更慢、更昂贵。

总结一下:

计算机之所以不能直接利用工程上的不确定性产生真随机数,是因为:

1. 计算机是确定性机器: 它的运作是基于逻辑和算法,无法凭空创造出真正的不可预测性。
2. 工程上的不确定性并非绝对不可预测: 很多时候是信息不完备或系统复杂度的体现,其根源可能存在规律,或者难以精确测量和隔离。
3. 伪随机数生成器(PRNG)的优势: 通过确定性算法和种子,PRNG可以生成在统计学上表现良好、周期长且可重复的“看似随机”的数字序列,满足了大多数计算应用的需求。
4. 真随机数生成器(TRNG)的存在: 对于需要绝对不可预测性的场景,我们依靠专门的硬件来捕捉真正的物理随机性。

你可以这样理解:PRNG是在一个完全可控的“剧本”里,通过精妙的编排,让演员(数字)的表演看起来像是即兴发挥,充满了意外。而TRNG则是直接从真实世界的、不可控的现场找来“演员”(物理现象),即使表演方式有些粗糙,但它的“意外”是真的。工程上的不确定性,虽然听起来很有潜力,但要将其稳定地转化为计算机能高效利用的、真正意义上的“不可预测”的随机信号,其难度和成本远大于采用数学算法模拟。

网友意见

user avatar

题主很聪明。


没错,计算机的确使用这些东西产生了真随机数——在Linux下,你只需访问/dev/random就可以使用它。


不过,如果你真的在工程中用过这个/dev/random,你就会知道……这玩意儿可不是一般的慢。

它产生真随机数的速度,比你在键盘上乱敲都快不了多少。任何使用了这玩意儿的算法,都会有肉眼可查的明显延迟——哪怕你仅仅用它产生一个简单密码。


这是因为,它需要利用系统“熵池”收集的随机性才能产生真随机数;而“熵池”累计随机bit的速度极其有限。

简单说,系统可能利用当前进程数、IO错误次数、用户键入等等“客观”随机过程选择随机bit;但这类东西往往若干毫秒甚至若干分钟才会更新一次……


举例来说,假如你敲键盘是绝对随机的;键盘上有26个字母以及10个数字。那么你每敲一下键盘,就相当于在36个不同可能中选择了其中一个。

换句话说,你的每次击键产生了ln(36)个随机bit。两次击键才有一个多字节的随机二进制信息产生——注意前提是你的击键是绝对随机、而且每个按键几率均等的。否则产生的随机位数还要更低。


假如你每分钟能击键1000次,那么借助你不间断的键入活动,计算机大概可以得到500多个字节/分钟的随机信息。

相对于内存访问动辄几十G字节/秒的恐怖速率,这个产生速度可真是比蜗牛惨太多了。


大多时候,随机值的产生速率比它是不是真随机重要得多。对很多算法,我们往往只是需要一个“随机值”,并不需要它“真随机”。


甚至,哪怕我们的确需要“无法预测的随机性”,我们也无法容忍真随机数的低速率。

比如说,我们想用一台服务器支持数万人同时玩牌类游戏;如果依靠/dev/random,那么恐怕很多用户就不得不排队“等随机数”。

为了减少等待,我们就不得不想办法加速熵池;然而计算机内部的“真随机性”就那么点点,而且严重依赖于用户活动——于是,要么用户老老实实等上几分钟的随机数,要么我们就得降低熵池的质量,使得“真随机数”不再随机。


因此,虽然的确可以利用计算机运行的不确定性产生真随机数,但它的产生效率实在太低,实在难以利用。


而一个质量足够好的伪随机数生成算法完全可以做到不可预测同时分布良好,并且还有极高的生成效率。再借助真随机数初始化它的“种子”,就可以以极高效率得到足够完美的随机序列了。


综上:

1、计算机完全可以产生真随机数,借助用户活动或硬件不稳定性即可(甚至有专门制造的真随机数产生器,可以利用分子热运动的随机性输出随机序列)

2、但是,仍然无法利用算法本身产生真随机数


学艺不精者很容易在这里出现迷惑。他们会觉得数字电路就和随机性无关,只要一见别人说“计算机内部产生真随机数”就兴致勃勃来杠上一番。


但事实上:

1、算法无法产生真随机数

2、计算机完全可以借助用户活动、复杂的硬件结构本身的噪音(比如机箱风扇的震动引起硬盘寻道速率变化)等等得到真随机数

这两者完全可以同时存在。


补充一句:热噪声本质上是海量微观粒子彼此间量子交互、并经混沌演化后投射到宏观世界的某种统计量。哪怕量子随机性被破,它都还有一道“海量粒子构成的混沌系统”构成的双保险。这显然是把比单纯的量子随机更安全的锁。


经典物理的混沌解释只是一种解释

如果人类能对自然“言出法随”,这样解释了,热噪声就必须按“三体”这样的混沌原理出现的话,它当然只能是经典的混沌系统,当然比不上量子随机性。

可惜的是,自然界懒得理你们人类的错误解释。它就是要让微观粒子遵循量子论,然后才在宏观上表现出热噪声的随机性——而你们人类还绞尽脑汁都找不出差别。

当然,热噪声系统容易受外界干扰(以宏观层面的干涉来影响宏观层面的统计值),所以在使用中需要小心滤除。在这点上,它的确不如纯粹的量子系统安全。但这和“它的本质是经典的因此比不过天生高贵的量子系统”完全是两回事(这个论调的荒诞程度和量子速读无非五十步笑百步罢了)。

user avatar

看来你需要了解大名鼎鼎的熔岩灯随机数墙。长这样:

美国IT公司 Cloudflare 的旧金山总部,有一面由100盏熔岩灯(lava lamp)组成的墙。这面墙位于接待处附近,每一位踏入公司大门的人,都没法不注意到它,因为这些诞生于上世纪 60 年代的灯具,拥有着艳丽且奇幻的色彩,玻璃容器内形状不定的液蜡还会不时地上下浮动,极易让人联想到流动的熔岩。不过,这一切不只与办公室装饰相关。这些变幻莫测的熔岩灯,还是 Cloudflare 提供的网络安全服务的一部分。

因为要处理海量的加密流量,它需要使用到大量的随机数。这些随机数都是伪随机数生成器产生的。伪随机数生成器产生的随机数能被预测和破解。那么如何减少随机数的可预测性?Cloudflare 披露了它的方法——使用熔岩灯。熔岩灯的名字源于内部不定形状的蜡滴的缓慢流动,让人联想到熔岩的流动。Cloudflare 利用摄像头监视熔岩灯,拍摄视频和照片,然后将其转变成无法预测的随机比特流,再用它生成密钥。

user avatar

其实除了产生效率的问题,很多真随机数的均匀性是很难被严格证明的。而很多时候,均匀性比不可预测性更重要……

类似的话题

  • 回答
    你这个问题问得特别好,触及到了计算机科学中最根本的几个层面。你说工程上充满了不确定性,比如元件的细微差异、环境的波动,这些确实是客观存在的。那么为什么我们不能直接利用这些“不确定”来生成“真随机数”,反而要依赖那些“看似随机”的伪随机数呢?这背后其实是计算机的本质和我们对“随机”的定义在起作用。一、.............
  • 回答
    在我看来,工程技术人员的技术成果走向更广阔的应用天地,就像是要把一块精心打磨过的璞玉摆上世界级的展台,其中的过程并非一帆风顺,而是充满了各种意想不到的“门槛”。首先,语言和文化隔阂是第一个需要逾越的“高墙”。咱们国内的很多优秀技术成果,其原始的文档、报告、甚至关键的设计理念,都是用中文书写的。这对于.............
  • 回答
    硅谷的中国超能力者(软件工程师)圈,这说法挺有意思的,带着点江湖豪侠的色彩。要说它是一种“存在”,那确实是,而且是挺独特、挺有能量的存在。它不像一个有固定边界的帮派,更像是一个由共同经历、相似目标、文化背景和技术热情编织而成的一张大网。想象一下,在硅谷这个寸土寸金、人才济济的地方,每个人都在为了某个.............
  • 回答
    2021年,中国工程院院士候选人刘建国因涉嫌一稿多投被撤稿,这无疑给科研界的诚信和学术风气敲响了警钟。这件事的发生,不仅仅是一个个案,更折射出科研领域存在的一些深层问题。刘建国事件的背景首先,我们要知道,一稿多投是指将同一篇研究成果,在未告知期刊编辑的情况下,同时或先后投给多个期刊发表。这是一种严重.............
  • 回答
    MobileNet 和 ShuffleNet 在理论上被设计成轻量级网络,在参数量和计算量上远低于传统的大型卷积神经网络(CNN),例如 VGG 或 ResNet。这使得它们在理论上具有天然的速度优势,尤其是在资源受限的移动设备和嵌入式系统中。然而,在实际工程应用中,我们往往会发现它们的性能提升并没.............
  • 回答
    油电混合动力汽车之所以能够实现发动机和电动机的协同发力,背后是一套精妙的工程协调系统在运作。它不像我们想象中那么简单粗暴地“一人一半”,而是根据驾驶场景、动力需求以及能量效率等诸多因素,动态地、智能地分配这两种动力源的输出。核心的协调者:动力分配单元/集成式传动系统要理解协同出力的机制,首先要明白动.............
  • 回答
    科技发展对洪水治理的作用,以及与跨海大桥这类超级工程相比,洪水治理的技术难度所在,这个问题很有意思。咱们不妨从这两个方面来掰扯掰扯。科技发展为洪水治理带来了什么?过去,人们对抗洪水,更多依靠的是经验、人力以及一些相对简单的工程措施,比如筑堤、挖河道。效果固然有,但往往是“头痛医头,脚痛医脚”,应对起.............
  • 回答
    国人在汽车使用上追求“面子工程”,这事儿可不是一天两天了,也绝非三言两语能说透。它背后牵扯着文化、社会心理、经济发展好几个层面的东西,就像一颗剥洋葱一样,层层都有讲究。首先,咱们得聊聊“面子”这玩意儿在中国人心里的分量。 “面子”在中国文化里是个非常核心的概念,它不仅仅是虚荣,更是一种社会认同和个人.............
  • 回答
    听到你高考分数够得上清华,而且对车辆工程的车身设计情有独钟,这绝对是个好消息!这说明你不仅在学业上有着扎实的基础,更有明确的兴趣和方向,这在如今竞争激烈的申请中是很有优势的。咱们就来好好聊聊,如何把这个“想上清华车辆工程的车身设计”的愿望,变成现实。首先,咱们得弄明白,清华车辆工程的车身设计,到底是.............
  • 回答
    曾武这个名字,近期在学术界引起了不少关注,尤其是他年仅15岁就迈入大学校门,并在学术研究上展现出不俗的潜力,更是引得众人侧目。要评价曾武的情况,不能简单地用“优秀”二字带过,这背后蕴含着多方面的因素和解读。首先,15岁上大学本身就是一个极不寻常的现象。这通常意味着他在早期教育阶段就展现出了超乎寻常的.............
  • 回答
    这个问题很有意思,也挺复杂的。要回答比尔·盖茨如果生在中国,仅凭他在微软工作期间的工程贡献能否当选中国工程院院士,咱们得掰开了揉碎了好好聊聊。首先,咱们得明确一下中国工程院院士的评选标准。这玩意儿不是谁名气大谁就能上的,那是有规矩的。工程院院士,说白了,就是中国工程科学技术领域里最顶尖的那批人,是国.............
  • 回答
    这绝对是家常便饭,尤其是遇上那种脑子像被掏空了,但甲方爸爸的DDL却一天天逼近的境况。我身边很多同行,包括我自己,都经历过这种“灵感枯竭却项目催命”的煎熬。首先,别慌。越是急,越要先让自己冷静下来。越是焦虑,越像在浓雾里开车,什么都看不清。深呼吸,告诉自己这只是暂时的,也别把所有压力都揽在自己身上,.............
  • 回答
    我理解你现在的心情,绝对不正常才怪!这件事听起来确实挺让人纠结和不爽的。我来帮你把这事儿掰开了揉碎了聊聊,看看为什么你会有这样的感受,以及这些感受合不合理。首先,咱们得承认,在他拒绝过你之后,你们的关系就有点微妙了。之前是你对他有点意思,他没接受。这本身就是一种“不匹配”或者说“被拒绝”的经历,放在.............
  • 回答
    工地上的项目经理,他们的生活状态可不是非黑即白那么简单。说他们“私生活乱”、“吃喝嫖赌是必须的”,这其实是一种比较刻板的印象,而且把一群非常多样化的人概括成一个样子,本身就不太符合现实。首先,我们得搞清楚,“工地上的项目经理”这个群体有多大,有多复杂。 项目规模差异巨大: 一个小型市政道路抢修项.............
  • 回答
    这个问题很常见,也是职场中很多年轻人都可能纠结的地方。简单来说,答案不是非黑即白,而是 具体情况具体分析,并且在很多时候,两者兼顾才是最佳选择。不过,如果非要区分一下老板的态度,我们可以这样理解:一、老板更喜欢“立刻解决问题的员工”,但有前提条件: 解决问题的能力强,并且能确保解决方案是有效的:.............
  • 回答
    工地上的汉子们和健身房里的教练,要说在身体肌肉力量方面有没有得比,那可真是一个有意思的话题,不能一概而论。先说说工地上的兄弟们。你看看那些搬砖的、扛钢筋的、浇筑混凝土的,他们每天的工作强度可不是盖的。这可不是那种在家练练哑铃就能比得上的。他们用的是全身的力量,而且是长时间、持续性的负荷。比如说,一个.............
  • 回答
    这问题,估计不少职场人心里都憋着一股气。被直属领导“穿小鞋”,说白了就是你的工作成果、晋升机会,甚至日常的体感都被那个小领导明里暗里地刁难、压制。这滋味可不好受,感觉就像在一个本就不那么轻松的工作环境里,还要时不时踩到钉子,别提多糟心了。先来捋一捋,这“穿小鞋”具体都表现出哪些迹象,让你能确定不是自.............
  • 回答
    这绝对是个两难的境地,一边是众望所归的认可,一边是内心深处的忐忑不安。看到大家愿意把你推上领导的位置,这本身就是对你能力、品格以及在团队中影响力的极大肯定,这股力量是很强大的。但与此同时,这份“害怕”也真实地在你心里扎根了,这也很重要,说明你对责任的认知,对未知的不确定,以及对可能出现的困难的预判。.............
  • 回答
    .......
  • 回答
    .......

本站所有内容均为互联网搜索引擎提供的公开搜索信息,本站不存储任何数据与内容,任何内容与数据均与本站无关,如有需要请联系相关搜索引擎包括但不限于百度google,bing,sogou

© 2025 tinynews.org All Rights Reserved. 百科问答小站 版权所有