您现在的位置: 首页 > 网站导航收录 > 百科知识百科知识
区块链是什么,如何简单易懂地介绍区块链?
区块,账本,互联网区块链是什么,如何简单易懂地介绍区块链?
发布时间:2019-02-08加入收藏来源:互联网点击:
好,我们接下来往下说。
到此为止,我们去中心化账本的理想只实现了一半,并没完全实现,为什么呢?因为还有两个重大的问题没有解决:
第一个问题:账本同步问题。比特币网络中有那么多台电脑,一条交易信息发送出来的时候,当然不可能所有的电脑都开机,必然有一些处于离线状态,开了电脑也未必开着比特币客户端,所以总有一些电脑无法立刻收到这条信息。这样就会导致不同电脑上的记录不同步,到底以谁的电脑记录为准呢?
第二个问题:如何防止同一个比特币被重复使用呢?假如有一个黑客,他只有 1 个比特币,但是他却同时把这个比特币付给 A 和 B(虽然理论上无法真正的同时,但可以做到间隔时间极短),于是他就会在网络上广播两条信息,一条是支付给 A 的信息,一条是支付给 B 的信息,因为网速的关系,必然有的电脑先收到了信息 1,有的电脑先收到了信息 2,这就产生了矛盾,如何确定哪一条信息是有效的呢?
为了解决上面这两个难题,“区块链”技术横空出世——真正让中本聪一战成名的技术。
再次强调:比特币不是区块链,它只是区块链技术的一个具体应用。
接下来,让我一步步为你揭开区块链技术的面纱。
为什么要叫“区块链”?
因为中本聪把这个账本设计成了由一个个“信息包”首尾相连而成的长链,每一个“信息包”被称为一个“区块”,这些区块每一个都有唯一的编号(在比特币系统中,编号被称为高度(height)),这些编号就是自然数 1、2、3、4……一直往下排,不允许跳跃,也不允许中断和重复。
下面讲解区块的具体规则:
第一个区块当然是由区块链的发明人“中本聪”亲自创建的,那是北京时间 2009 年 1 月 4 日,在芬兰赫尔辛基的一台小型服务器上,第一个区块诞生了,这也被称作“创世区块”。在这个区块上,包含的主要信息是:
创世区块
中间那段话是“中本聪”刻在第一个区块上的纪念,从第 2 个区块开始,以后每一个区块都必须严格按照比特币系统的规则来创建。区块的规则是:
区块规则
区块链所有的奥妙就在尾巴上加的这个随机数上,因为它实在太奥妙,让我等凡夫俗子只能大呼过瘾,所以后面我就把它称为“奥数”,以方便讲解。
“中本聪”规定:这个新区块的数字指纹(一个 256 位的二进制数)的前 72 位必须全部为 0 。
回忆一下我们前面介绍过的数字指纹的知识。因为 SHA 算出来的指纹是毫无规律可循的一个数字,所以,想要满足“中本聪”的这个变态规定,唯一的办法就只能凭运气凑“奥数”,从 0 开始不断地去常试,直到满足要求为止。这就是一个纯粹的概率问题。我们来算一下要满足这个要求的概率是多大。
因为二进制数,每一位只有两种可能性,0 或者 1,所以,凑出一个奥数的可能性是 2 的 72 次方分之一,也就是 1 / 4722366482869645213696。这个数字已经大到看花眼了吧,它大约就是 4.7 万亿亿分之一。换句话说呢,就是平均要进行 4.7 万亿亿次 SHA 计算,才可能得到一个“奥数”,你可见每一个“奥数”的金贵。
最巧妙的是,“奥数”并不是某一个方程的解,解出一个少一个,因为每一个区块的字符串都不同,所以,每一次寻找奥数都需要从 0 开始,任何一个数字都有可能成为新的奥数,完全没有规律可循。
一旦成功找到了一个奥数,就获得了一次记账权力,可以给账本上新增加一个区块。那么,为什么要花时间找奥数,去给账本记账呢?因为好处实在太大了。
比特币系统规定,每成功增加一个区块,这台记账的电脑(实际上是某个账号)就能获得 12.5 个比特币的奖励(截止到 2018 年 2 月时的奖金额),以及这个区块中所有交易的手续费,总额取决于交易频繁程度(平均约 2 比特币)。这样一来,相当于每找到一个奥数,可以获得 14.5 个比特币奖励,按照 2018 年 2 月的比特币市场价,相当于12 万美元。这么丰厚的奖励,自然就会吸引大量的电脑愿意去抢夺记账权。
寻找奥数就是抢记账权,抢记账权也就是挖比特币。因此,寻找奥数也被形象地称为“挖矿”。挖矿的电脑就叫“矿机”,一个装满矿机的房间当然就可以叫“矿厂”了嘛,矿厂的主人就是“矿主”,他们是比特币江湖中的弄潮儿。
但是,我需要给你解释一下挖矿的难度,让你打消去挖矿的冲动。个人电脑的运算速度大约是每秒可以进行 60 万次 SHA 计算,也就意味着,一台个人电脑需要花一千万年才有可能凑出一个奥数。当然,这是一种概率计算,我不能从理论上排除某人的人品超新星爆发,算了一次奥数就中了 4 万亿亿分之一概率的奖。但我还是想劝你不要相信自己是耶稣转世,你没有那个命。
我给你看看人家专业的矿厂是怎样的:
图: 一个中等规模矿厂(图片来源:百度图片搜索)
这只是一个中等规模的矿厂,大规模的矿厂据说有几万甚至几十万台矿机同时运行。我在《看看新闻》 2017 年 6 月 17 日的一个新闻中看到,记者拜访了一座位于中国四川的矿厂,根据报道:这个矿厂有 5000 多台矿机的规模,平均每天耗电超过 20 万度,当地的电价是 3 毛/度,一天光是电费就 6 万多元,平均每天可以挖出大约 50 个比特币,一年左右回本,之后能做到 20% 左右的利润。
不过我觉得这个报道中的数据前后矛盾,我查了一下,比特币当时的市场价是大约 2500 美金/个,美元兑人民币的汇率大约是 6.8 ,所以,每天的收入大约是 85 万人民币,一年的收入大约 3.1亿元,一台矿机的成本均价是 1 - 2 万元, 矿厂的矿机总成本是 5000 万- 1 亿元,再算上电费等,一年起码 2 亿的利润。我想,在充分市场竞争下,出现这种暴利的可能性很低。所以,不是记者搞错了,就是被采访对象在吹牛不打草稿。由于比特币的价格和全网算力的波动很大,所以投资比特币矿厂很难做长期预测,不确定因素太多。
图:看看新闻报道的位于四川的某矿厂(图片来源:《看看新闻》官网)
根据我们前面掌握的比特币知识,50 个比特币,相当于找到了 4 个奥数,抢到了 4 次记账权。目前,整个比特币网络的所有矿机加起来的总算力能达到的水平,大约平均每 10 分钟可以找到一个奥数,也就意味着平均每 10 分钟生成一个新的区块。当然,这个 10 分钟是一个平均数,快一点的话 3、4 分钟生成一个区块,慢一点的话 15 分钟左右。
正因为奥数太难找,每个区块平均要 10 分钟才能生成一个,所以就能基本解决我在本章开头提出的第一个问题“如何同步账本?”,只要有个 3、4 分钟的时间,足以让所有在线的电脑同步到这个区块了,那些不在线的电脑或者第一次运行客户端的电脑,上线以后必须要先做一件事情,就是从相邻的节点上获取最新的账本。
请注意,我用了“基本解决”这个词,也就意味着,并没有完全解决账本同步的问题。这是因为总会有极小的概率两台矿机恰好同时(只要在网络上所有在线的节点没有完成区块链同步之前都可以算同时)找到奥数,也就意味着同时抢到了记账权。因为矿机实在太多了,这样的小概率事件时不时也会发生一次。同时抢到记账权的矿机都会将自己生成的新区块广播到比特币网络中。
上一篇:鱼池养小河鱼喂什么?
下一篇:返回列表
相关链接 |
||
网友回复(共有 0 条回复) |