【比特币的算力都用来干什么了 真相可能有点残酷】

算法相关 徐 自远 517℃

【比特币的算力都用来干什么了 真相可能有点残酷】

几乎每一个接触比特币的朋友,都会有这样一个疑问:挖比特币用的算力到底都用来干什么了?即使是专业的“矿工”,也很难回答这个问题。甚至有人说挖比特币的算力用到了科研上了,比如寻找下一个“地球”、解密DNA等。对于不懂比特币的人而言,这样的解释似乎也有些道理。但事实并不是这样。

要想解决这个问题,需要对比特币有一定了解。笔者推荐大家看中本聪的论文《比特币:一种点对点的电子现金系统》,这是比特币的源头。论文涉及到为什么需要比特币、比特币如何产生等知识。也正是这篇论文,能够解答“挖比特币用的算力到底都用来干什么”这个问题。

要想回答这个问题,我们需要从为什么要有比特币开始说。为了避免读者觉得麻烦,笔者将答案公布于此:其实这个问题的答案并不是众人想象的“服务社会、服务科学”,而是服务比特币网络,保证比特币网络的安全。

比特币的目的是要去掉交易中的中间环节,而这个中间环节就是金融机构。为了达到这个目的,比特币需要建立一套证明体系。为什么呢?举个例子,A借钱给B,中间过程需要签字条、公证等其他证明方式,证明A确实把钱借给了B。如果没有证明,B可以矢口否认,A只能认栽。在传统的交易过程中,金融机构起到了证明的作用。为什么是金融机构,因为他有公信力,以信用作背书。

比特币网络算力变化趋势

那么比特币怎么证明A把钱借给了B呢?比特币的思路是,把这个消息记在账本上,然后全人类都能看到这个账本,这样所有的人都知道A把钱借给了B,借了多少,什么时候借的,这样B就无法矢口否认这个事实了。

把一个交易信息让所有人都知道,这就是比特币的证明体系。但又出现了一个问题,这个问题就是“双重支付”。

在解释之前需要说明一下,在比特币网络里,你有多少钱,不是你说了算,而是大家说了算,每个人都是公证人。

双重支付就是一笔钱花了两次,这种情况在纸币上是不可能发生的,但由于比特币并不是实物,只是“记账本”,中间没有实质物质进行交换,所以可以发生。继续举例子:A用1000买了B的一个东西,B记在一个账本上;同时A用相同的1000买了C的东西,C记在一个账本上。这时候B睡觉了,而C把刚才记的帐拿给大家看,B睡醒了才拿给大家看。

在B和C发货之前,这1000是属于B的还是属于C的?为了解决这个问题,比特币网络让交易不可逆,也就是不能退款。不可逆的特点让A的这两个1000交易只被承认一个。

首先,比特币将所有的交易通过随机散列加上时间戳,让交易有先后顺序,然后交易融入到基于随机散列的工作量证明所形成的链条中,这样形成的交易就无法更改。翻译成人话就是:B和C的账本拿给大家看之后,还会有人继续在这个账本上记账。假如后面记账的大部分人都选择在B的账本上记账,那么大家就会把B的账本视为正确的,而B的账本上记着A用1000买了B的东西,这样A的1000就属于B,C记的就不被承认了,B发货给A就可以了。

基于随机散列的工作量证明的链条

在这个过程中就需要算力,算力是为了保证区块的信息不可更改。怎么实现的呢?工作量证明基于随机散列,然后形成链条。这个链条有个特点,你想开头的话,就需要求解,求解就需要算力。而且这个求解的难度是呈现指数级增长的。只要你先求出这个解,你就获得比特币奖励。

但如果你想修改已经出现的区块,那就必须选择链条最长的那个,然后从头开始求解。这样你修改的链条才会被认为是正确的(最长的链条视为正确的链条,不理解的话可以联系前面提到的B的账本)。但这个最长的链条上有着全网下最大的工作量,全部求解的话需要耗费巨大的算力。

而这样做是得不偿失的,因为你耗费这么多算力去修改得到的结果,不如你拿这些算力去求解的收益高。这样就保证了不会有人去更改之前区块的信息,区块的信息自然就实现不可更改了。这个“不可更改”是可以更改的,只是没有人傻到会这么做而已。

也就是说,挖比特币的算力实质上是一直在求解,这样就能保证最长的链条拥有全网最大的工作量,从而不会被更改。这样也就实现了比特币系统是坚固的,是不会被人攻击的。

那么这样做有意义吗?

我们先看这些算力。目前比特币的全网算力是非常高的,据说已经比全球前100名超算的算力总和都要强。这个观点有一定的误导性,比特币全网的算力只要是求一个算法,即SHA256算法的HASH值,这是比特币网络的工作量证明机制的要求。也就是说,比特币全网在求解SHA256算法的HASH值的算力上是非常强大。

那让比特币网络的算力去求解其他的算法呢?整个比特币网络的算力可能还没有你手上电脑的运算效率高。这是因为,比特币网络的算力太过于专业了,只是求解SHA256算法的HASH值,它做不了其他工作。这也是为什么,即使你用GTX1080Ti去挖矿,也不如游戏性能更差的矿机挖的快。

比特币是不是货币这个问题的答案很重要

而且你就算用比特币网络的算力去挖基于其他算法的币,效率也非常低下。

也就是说,比特币网络的算力是否有价值,最终还要看大家承不承认比特币是不是货币。如果大家承认比特币,那么比特币网络将是全世界最安全的金融系统。从这个角度来看,比特币网络的算力实在是太有价值了!

如果比特币没有被公认为货币的话,那么比特币网络算力的价值非常小,小到微乎其微,比特币的价格完全是被炒上去的,充满了泡沫。

以上两个结论都是在比特币被定性之后所得出来的,当下比特币到底是不是货币还无法定性。但目前比特币并没有成为公认的货币,所以现在看来,比特币网络算力的最大价值就是,能挖出比特币卖钱,这样的比特币更像是商品。

最后回答一下刚开始的问题,比特币的算力都用来干什么了?往大的说是维护比特币网络的安全,往小的说就是在算数;耗费这么多人力物力实现的算力有意义吗?不好说;那为什么还有那么多人在挖矿?因为能赚钱啊!

http://m.toutiaocdn.com/group/6528525890341569038/?iid=27300236383&app=news_article&timestamp=1520230834&tt_from=android_share&utm_medium=toutiao_android&utm_campaign=client_share

转载请注明:徐自远的乱七八糟小站 » 【比特币的算力都用来干什么了 真相可能有点残酷】

喜欢 (0)

苏ICP备18041234号-1 bei_an 苏公网安备 32021402001397号