财经·投资·理财@IT·互联网

比特币技术原理解析(宜小白)

2018-04-01  本文已影响201人  我又多活了一天

文末有福利~

看过几本区块链的书,也看一些公众号文章,隐隐约约知道比特币的运行机制,要想说清楚却不能。前两天看张健的《区块链——定义未来金融与经济新格局》,突然之间有一种畅通感,感觉明白了原理,至于原理是怎么来的,我这种技术白痴就不研究了。下面我就说说我对比特币这一套机制的理解吧。

首先,我们说说去中心化需要的条件。在甲乙丙丁四个人中,他们交易不用任何货币,交易的价值通过账本记录。假如账本由甲保管,而乙和甲有利益矛盾,乙担心甲做手脚是合情合理的。同理可知,账本放在任何人那里多少都人不放心。最常见的一个解决办法是,放在一个所有人都相信的人那里,这就产生了一个中心。

设想一下,如果甲乙丙丁都有一个账本怎么样?每一笔交易,四人都记录好,以后好对账结算。这就是去中心化,需要两个条件:①每个人都有保存账本的权利;②所有人都有权记录数据。

问题来了,每人都有账本并且有记账权利,那有人出于利益不实记账怎么办?账本一旦数据不一样,基本就没用了,乱成一团后以谁的为准?

比特币聪明地解决这一问题。它把每个人记账的权利变成义务。意思是,只要你加入这个系统,就必须参与记账。那它是如何保障每个人都如实记账的呢?

为此比特币引入了竞争机制。之前不是所有人都可以记账吗,现在还是所有人记账,但有个“第一记账人”,也就是一笔交易产生后,谁第一个记账,就给谁奖励,后来者只要承认这笔交易,并抄录好就行,这便是“挖矿”。

那如何判断谁是第一记账人呢?方法就是我们常说的“工作量证明”。怎么证明你愿意且有能力记账呢?和菜头说“未曾为一件事付出代价,就谈不上喜欢”。同样的,得付出点成本才能证明你的诚意。

付出成本的方式区块链世界里有多种,常见的工作量证明、权益证明、股份授权证明,不常见的有燃烧证明、沉淀证明、活动证明。工作量证明翻译成大白话就是,你做些我指定的事吧,谁先做好谁就获得第一记账权。给你一个哈希值,求原函数,就是我要你做的事。通过哈希函数把任意长度的数值映射成一个固定长度的数值。

如果不理解,可以结合因式分解来理解,因式分解的规则是乘法运算,哈希函数相当于因式分解的规则,事实上我把任何函数都理解为一种规则。现在有n个数的乘积等于8546321855,让你求这n个数分别是多少。如果你通过计算找到的数是7,9,13,19,23,33,57,61,然后我把它们乘起来,并不等于我给出的数,说明你没算对,而别人算对了,那就是别人获得第一记账权。哈希值相当于给出一个数,求一个数的因数相当于求哈希函数的原函数,哈希函数这个函数自有它的规则,就像因式分解的规则是乘法运算。哈希函数的特征是,根据原函数的数据很容易计算出哈希值,知道哈希值却很难推出原函数,就像给你一个数的所有因数,要找出这个数只要把因数乘起来就行,而给你一个数求因数就很困难。

工作量证明机制的目的是为了达成共识,达成共识通过所有人承认并照抄第一个记录数据人的数据实现。本质而言,各种证明机制就是一个评判谁第一的标准而已。工作量证明是用计算能力来定第一,权益证明是用持有币的数量和时间来定。这里我要说一个很有趣的评判标准“燃烧证明Proof Of Burn”。意思是挖矿的人丢一些币,谁丢得多谁得第一的可能性更大。这里的“丢”是把币发送到一个永远找不回的地址。很有意思,工作量证明是浪费大量电力计算一些没有实际用处的函数值,至少还能让人们看到计算结果,而燃烧证明的价值则什么也看不到。不如大家发送一些币到我的地址,打死我也不退回,看到我富裕起来,矿工“丢”掉的币便有了价值。或者把币丢到一个基金,这个基金致力于保护地球。哈哈,这当然不可能实现,各种证明机制目的是判断出谁第一,而有多人参与必产生竞争,竞争是在各方面付出成本的比拼。现实中在一场比赛里付出成本,哪怕输了还收获经验,而挖矿过程中,这次没抢到第一记账权,花费的电力并不会产生经验,下次挖到矿的概率只取决于你的计算能力,与你以往的经历没有关系。

一直有人批判比特币挖矿浪费大量电力,并因此否定比特币。我觉得这种看法挺可笑的,人类历史上的共识是怎么达成的,战争啊!那么多大人物,一个时代也只能容纳一人当家,输了的人都是陪跑者,甚至赔掉性命。张健说得好,人类追求更低成本的竞争机制就像对永动机的追求,可以一直追求下去,但永远无法实现。这很像数学中的极限,成本可以无限趋于0,但永远到达不了0。

非技术人员对技术的理解难免有偏差,如有错误,还请指出。另外,想要《区块链 定义未来金融经济新格局》电子书可以加我微信13647449245,免费送~

上一篇 下一篇

猜你喜欢

热点阅读