区块见闻 区块见闻
Ctrl+D收藏区块见闻
首页 > BTC > 正文

小科普:真随机数和伪随机数

作者:

时间:

比特币用户很喜欢讨论“非对称加密”、“椭圆曲线”、“量子计算机”这类高深莫测的话题,然后再以一种非常莫名其妙的方式把币弄丢,比如说:“随机”。

历史上多起各品牌的钱包用户丢币事件,都是因为随机函数存在问题。

随机很重要,对于比特币这种密码学电子货币来说,尤其重要。可惜社区内对于随机的讨论并不多,导致很多人缺乏正确的认识,因此,我们今天就和大家聊聊随机。

说到随机,有两个必须要搞清楚的概念:“真随机数生成器”(TRNG)和伪随机数生成器(PRNG)。

大部分计算机程序和语言中的随机函数,都是伪随机数生成器,它们都是由确定的算法,通过一个“种子”(比如“时间”),来产生“看起来随机”的结果。

赵长鹏:币安正在扩大招聘和加快并购:6月14日消息,币安首席执行官赵长鹏在近期会议上表示,熊市是加密货币公司雇用更多人员和增加投资的好时机。他表示,币安拥有一个“非常健康”的战时基金,事实上,币安现在正在扩大招聘,此外,币安还在“加快并购活动”。赵长鹏认为,牛市期间的项目很多,但溢价也通常很高,币安正在寻求增加投资并增加其不断增长的投资组合,将“最大限度地利用加密寒冬”。(彭博社)[2022/6/14 4:24:27]

毫无疑问,任何人只要知道算法和种子,或者之前已经产生了的随机数,都可能获得接下来随机数序列的信息。因为它们的可预测性,在密码学上并不安全,所以我们称其为“伪随机”。这种随机数,用来让游戏里的小人跑跑路没多大问题,如果用来生成比特币私钥,那可就太不安全了。

再说说真随机数生成器,中文维基中,将“硬件随机数生成器”(HRNG)等同于真随机数生成器,这其实并不十分准确,严格意义上的真随机可能仅存在于量子力学之中,我们当前所想要的(或者所能要的),并不是这种随机。

我们其实想要一种不可预测的、统计意义上的、密码学安全的随机数,只要能做到这一点的随机数生成器,都可以称其为真随机数生成器。这种真随机,并不一定非得是特殊设计的硬件,Linux操作系统内核中的随机数生成器(/dev/random),维护了一个熵池(搜集硬件噪声,如:键盘、鼠标操作、网络信号强度变化等),使得它能够提供最大可能的随机数据熵,因此同样是高品质的真随机数生成器。

不过/dev/random是阻塞的,也就是说,如果熵池空了,对于/dev/random的读操作将被挂起,直到收集到足够的环境噪声为止。

因此,在开发程序时,我们应使用/dev/urandom,作为/dev/random的一个副本,它不会阻塞,但其输出的熵可能会小于/dev/random。

好了,在说了这么多之后,在我们开发比特币应用时,应该使用何种随机数生成器来生成私钥呢?

答案很简单:urandom。永远只用urandom。

不要使用任何第三方的随机数解决方案,哪怕是一些高级的安全库,所提供的声称“非常安全”的随机函数。因为它们都是用户态的密码学随机数生成器,而urandom是内核态的随机数生成器,内核有权访问裸设备的熵,内核可以确保,不在应用程序间,共享相同的状态。

历史上,无数次随机数失败案例,大多出现在用户态的随机数生成器,而且,用户态的随机数生成器几乎总是要依赖于,内核态的随机数生成器(如果不依赖,那风险则更大),除了没准儿能简化您的某些开发工作,丝毫看不出任何额外的好处,反而增加了因引入第三方代码,所可能导致的潜在安全风险。

因此,开发者在需要密码学安全的随机数时,应使用urandom。

最后,

有小朋友问,你们的BITHD硬件钱包生成的是真随机数吗?

这里回答一下:当然是啦~

BITHD的芯片是有硬件随机数发生器的,它会通过获取物理噪声源来生成真随机数,这个是不可预测,不可探测的,是真正的随机源。

标签:RandomANDNDODOMSTAND价格JINDOGEThe Kingdom Coin

BTC热门资讯
金色观察 | 全球央行或联动降息 比特币会伺机而动吗?

最新消息:北京时间3月3日晚10点,美联储经济宣布非常规降息,将基准利率下调50个基点,将IOER降低50基点至1.1%。 历史不会重复自己,但会押着同样的韵脚。 冥冥之中,比特币和经济危机、全球央行货币大宽松纠缠在一起,它们也成就了比特币。

金色观察 | 回报率达21.15% 加密货币是好的对冲工具吗?

在过去的一周里,世界各地的市场不约而同的上演着“下跌”的旋律。一向被认为有弹性,是投资者完美避风港的黄金也出现崩盘。甚至美联储主席也发表声明,安抚投资者对经济实力的信心。随着传统市场的暴跌,加密市场也跟随着同样的趋势。尽管如此,很多人仍认为加密货币是最好的对冲工具。

金色观察 | 国际清算银行眼中的CBDC

近日,国际清算银行(BIS)发布了2020年一季度研究报告。在这份长达151页的特别报告中,国际清算银行研究了国际银行和金融市场发展中遇到的问题和挑战,其中大篇幅关注未来的支付(尤其是跨境支付)以及央行CBDC。

成都链安:在过去2个月中共发生13起较典型的安全事件

据成都链安区块链安全态势感知平台Beosin-Eagle Eye统计数据显示,在过去2个月中,共发生13起较典型的安全事件。

隐私和效用不可兼得?隐私保护开辟商业新境地

话说天下数据,分久必合,合久必分。 伴随着计算机软硬件技术的飞速发展,社会整体信息化程度提高,数据的价值逐渐凸显,由此开创了数据汇集、数据提炼、数据变现的信息时代。信息技术商业化日渐深入的同时,数据汇集潜藏的隐私风险也日渐放大。