不知道有几个人和JOJO妹一样,在申请第一个比特币钱包之后,每天都在幻想有人转错BTC到我的钱包里来,从此一夜暴富,会所鲜肉在向我招手。
然而我是在做梦。
梦还是要做的,万一有天就实现了
明明钱包里面可能还凑不齐一个币,却还每天提心吊胆的害怕被人知道我的私钥。
在区块链的世界里,我们持有的比特币只是一串私钥,一串256位的二进制数。如果你扔硬币,正面记为0,反面记为1,连扔256次,把它记录下来,再把这串二进制数值转换为十六进制数,你的所有家当就在这串私钥上了。所以保管好你的私钥就是保护你的比特币。
我们都知道私钥可以生成公钥,公钥再生成比特币地址,反过来却不行。打个比方,比特币私钥就如一张银行卡的密码,这个密码通过加密可以生成一个银行账号(钱包地址),但是由银行卡不能反推得到银行密码。
这就是钱包地址可以给别人,但是密钥不能给别人的原因,拥有比特币钱包地址的密钥,就拥有了这个钱包地址的最大权限。
摘自《精通比特币》
某天夜里JOJO妹突然想到,既然比特币私钥可以生成公钥,公钥又能生成比特币地址,那么是不是我自己生成一个随机数,然后经过计算,就得到了比特币密钥,密钥再经过加密,不就得到了一个钱包地址吗?!
嘿嘿嘿,然后我再去查查这个地址有没有交易记录,万一哪个钱包是被使用过的,里面还剩点币的话,我不就发财了!说干就干,找公司程序猿写个代码,以后岂不是躺着就能发财了。
大佬和小白的对话
JOJO妹马上找了公司大佬们寻求帮助,十分得意的把自己这个想法告诉他们,大佬们扭头看了看我。
“年轻人,你说得没错,其实一开始我们也是这样想的,现在看看你,再回想起当初觉得我们都年轻天真过……”
“???”
“那你说私钥是什么?”
“不就是一个256位的随机数吗?”
“的确,字面上是很容易被理解为256个十进制数字,但是计算机是用二进制来存储和计算的,所以256位指代的是256个二进制数字,像下面这样“
“嗯……那有什么关系?不影响我们破解吧?”
“这个虽然是个数字呢,但是这个数字的集合足够大,大到我们很难穷尽所有,并逐一对它们进行验证。2的256次方近似于10的77次方,10的77次方有多大,看了下面这个数字你应该就明白了:”
“还是不明白……我们不是有计算机吗?代码一写不是就搞定了吗?”
“怎么说呢,到目前为止,人类可观测的宇宙中的原子数约为10的80次方,这个数量级和宇宙的所有原子总量可是不相上下。
已经有网友做了个实验,从零开始递增的推算出一亿个的钱包数量就为10的八次方,但是所占存储空间为12GB,如果有足够的算力,算完这些地址并存储下来,所需的空间为1.390*10的77次方GB,即1.357*10的67次方TB,然而地球质量为5.965*10的24次方kg,如果把地球全部的原子都用来制作硬盘,需要满足每千克硬盘容量为 2.275*10的42TB......
“……??”
简单来说,就是以地球上目前的技术,不够存储!!”
“那既然如此,我们就随机!随机的猜,说不定就有机率猜中!”
“再给你看个对比,你应该就知道了,
这是假设地球上有100亿人玩比特币的前提,反正我爷爷活到99岁,都没被雷击中,我爸爸69岁了还没中过彩票,你觉得猜中的机率呢?“
“我……”
不管有没有可能,钱包安全很重要
从概率的角度,我们确实很难破解私钥,但此时你可能会问,彩票一等奖和被雷击中都很难发生,在于它们发生的频率很低,但计算机不一样,计算机的计算速度很快,我们可以很容易的利用计算机的处理速度,来命中别人的私钥,也就是快速计算10的67次方个私钥,总有一次猜中吧。
又有网友通过简单的暴力破解,结果破解10个私钥需要15秒,那么推测下破解10⁶⁷次的时间,需要
对,经过换算后,右边等式已经变成年了,这是多少年,数学不好,已经算不出来了,估计以目前的技术想要暴力破解比特币私钥,几乎是不可能完成的任务。
通过这种暴力破解的方法确实可以实现破解比特币的私钥,但它要付出的代价也是极其高昂的,要是集结多方力量来破解,会不会就有可能实现?
有外媒报道Large Bitcoin Collider(LBC)公司,已经通过暴力成功破解比特币钱包。据LBC发起人表示,他们的软件已经生成了3000万亿条密钥,这些通过与现有存在的比特币钱包比对,目前有30个匹配,而真正匹配的比特币钱包密钥是3个。
隐隐有些担忧,这些人是为了破解而破解,还是为了比特币而破解。到这里,JOJO妹就想问,”你确定你的钱包安全吗?“
©本文版权归“币圈姐妹花”所有
欢迎转载分享
- END -