在创建数字资产钱包时会生成私钥,随机生成私钥有2的256次方种可能。大家都说2的256次方是很大很大的一个数字。但是我这个人比较较真,2的256次方是什么概念?很大是有多大?
以下内容来自3Blue1Brown,翻译:Cobo钱包。
(2的256次方)这个数字比我们常见的数大太多了,所以很难让人有概念,不过我们可以试试。
2的256次方也就是8个2的32次方相乘。
2^256 = 2^32✖️2^32✖️2^32✖️2^32✖️2^32✖️2^32✖️2^32✖️2^32
2的32次方约等于40亿——这个数字有概念了吧?就是新闻标题里会出现的那种数字。
所以我们要做的,就是去理解40亿连续相乘8次是什么概念。
40亿✖️40亿✖️40亿✖️40亿✖️40亿✖️40亿✖️40亿✖️40亿
第一个40亿:电脑里的GPU可以快速进行大量并行运算,如果你专门让GPU反复计算密码哈希函数,一个性能很好的GPU每秒可能算出近10亿个哈希值。如果你把这样一堆GPU全塞进电脑里,让电脑每秒能算40亿个哈希值,那第一个40亿就代表——每台电脑每秒算出的哈希值的数量。
第二个40亿:想象一下40亿台这样满载GPU的电脑。用谷歌作为对比,虽然谷歌没有对外公布服务器的数量,但是有人估计大概有几百万个。事实上,大部分谷歌服务器的算力都不如我们这些满载GPU的电脑强。我们假设谷歌把上百万个服务器全换成这样的电脑,那么40亿台电脑约等于1000个这种打了鸡血的谷歌——把这个算力叫做“千谷歌”。
第三个40亿:全世界大约有73亿人,假设一多半的人都有自己的千谷歌,
第四个40亿:然后,想象一下40亿个这样的地球。用银河系作为对比,银河系大约有1000到4000亿颗恒星,所以这相当于银河系里1%的恒星系有一个地球,并且在这个地球上一半的人都有自己的千谷歌。
第五个40亿:我们把40亿个这样的银河系称为“亿万星系超级计算机”,每秒能计算2的160次方。
第六、七个40亿:40亿秒约等于126.8年,它的40亿倍就是5070亿年——差不多是宇宙年龄的37倍。
所以就算你有:
GPU满满·人手千谷歌·行星云集·亿万星系计算机
不断猜上个37倍宇宙年龄的时间,也只有40亿分之一的可能性拿到正确答案(第八个40亿)。