区块链入门 | “区块链村”里不为人知的秘密……

作者:方军

来源:大咖领读

 

假设,有一个村子叫“链村”,区块链的村子。在一个村子,各家各户之间自然有些钱财来往,因此就需要记账。我们来讨论:

第一,  从集中记账到分布式记账的过程。

第二,  谁负责记账?

第三,  分布式记账如何实现不可篡改?

 

从集中记账到分布式记账

第一部分,我们来讨论,从集中记账到分布式记账。很久很久以前,一个村子里是怎么记账的呢?没有记账。春天,这家人家没粮食了,找邻居借几斤稻谷,到了秋天再还。又或者,村里有的年轻人想要出门做生意,找几家凑齐本钱,等把货物卖了就还了。没有记账,很容易出现纠纷。比如,欠条丢了,要不回来钱了。随着村子逐渐地变富了,村里人家的钱财来往多了,必须要有一个新措施了。村里的一个有威望的大户人家开始承担起来大家长的责任,方便起见,我们就把这个大家长叫村长吧。从此,村长帮大家来记账,他帮村里人记录下来,某年某月某日,张三向李四借了100两银子。某月某日,李四把这笔钱还了。等等。这就是过渡到了集中式记账。这有不少好处,比如,可以减少很多账目对不上的纠纷。由村长来记账有好处,也有不足:比如说,你们两家要记录一笔银子的借款,但是几次去找村长,他都不在家,没法记账。比如说,村长老眼昏花,记错了。在大家的要求下,村长找了一个账房先生来帮他记账,这样,就解决了他不在家的问题。账房先生算术也比村长好,不容易记错了。但一个解决方案往往会带来新问题,比如,有人偷偷塞钱给账房先生,让他偷偷改下账本。因此,村长不但要承担账房先生的工资,还要采取措施防止他做坏事。由村长和账房先生来集中式记账,还有一些其他的不足。比方说,历代村长记的帐越来越好,几百年都没有出问题,因此,村子的人都非常信任,相互借款就不再写欠条了。但是突然某一天,村长家突然着火了,账房烧了。这可能是天灾,打雷房子着火了。也可能是人祸,比如有人欠了太多的债了,比如村长已经挪用了很多钱,他干脆一把火把村子的账本烧了。村里人痛定思痛,决定要改革一下记账方法,干脆不要让村长记账了。这就是村子里的第三代记账方法:-   链村的第一代记账方法,是大家相互之间打个欠条。-   链村的第二代记账方法,是靠村长来集中记账。-   链村的第三代记账方法,变成分布式记账。所谓分布式记账,就是区块链用的思路。接下来,我继续用链村的故事来为你解释。既然村长不可信,那我们就改成信自己。分布式记账是这么做的:从此之后,村子里每家都替所有人记账。每家都记录一个全村的账本。原来,我们两个有钱财往来,我们到村长那儿去,请他记账。村长保管的账本烧了,村子里一团混乱。现在,你找我借钱一千两银子,我们到村口的广场上去,敲锣打鼓,说:请大家帮忙在自己的账本记一下,老张家找老王家借了一千两银子。

在现实的村子里,这当然不容易实现,但在计算机世界里,这是很容易实现的,我们在网上给大家都发个通知,每家的计算机都自动地记录下来。很多人都可以一下子看到分布式记账的好处:它和集中式记账一样有效,如果出现了纠纷,那么按照大多数人家的账本为准,这和原来大家相信村长的账本是相似的。但它比村长家的账本要好,现在我们不用担心账本被烧了,因为有很多副本。现在,我们也不用太担心账本被有人偷偷涂改了,如果谁要涂改账本,他得把所有人家的账本都改了才行。

这样的分布式记账方式,你还要特别注意一点,它是用公开透明来对抗原来老村长或者账房先生作恶的问题。那么,区块链就是把账本分散到很多人那里去这么简单吗?不是的,因此,我们接着往下挖。

 

谁负责记账

这是我们今天第二部分要讨论的:谁负责记账?其实,假设所有人都记账,即便是在计算机的环境下,也是不可行的。在比特币系统里,实际上也只是少量的所谓全节点负责记账,刚刚我去查询了一下,现在这一刻比特币的全节点数量是9417个 。用链村的故事说,就是不是每家每户都记录一个账本,而是要靠少量的人家来记账,比起只有村长一家记账,现在记账的人数多了,但不会到家家户户都记账那种程度。一个实际能够运行的链村分布式记账,可能是这样的,在村口的广场四周,有了几十家帮大家记账的账房。当老张和老王去广场上宣布时,这些账房先生就开始争夺记账的权利。他们为什么愿意抢着记账呢,因为如果谁成功记账了,我和老王付十两银子的酬金。负责记账的账房先生,必须检查确认,老王家的确有一千两银子,这个银子也的确给老张家了。如果没有这个检验,万一两家假冒伪造一个借款,后面大家就认为老张家有这笔钱,会带来很多麻烦。那么,哪个账房先生可以获得这个酬金?村民们定下了规则,这些账房进行一个复杂的计算比赛,谁先算出来,谁就获得记账权,获胜者拿到这笔酬金。这在比特币系统里叫“工作量证明”,工作量,就是进行计算的工作量。讲链村的故事时,我们也经常形象地说,让这些账房先生举石头,谁先在一分钟内把一百斤的石头举完100下,就赢得比赛,获得记账权,拿到酬金。现在,账房先生不只是要脑子好、笔头快,还要体力好。这个类比和比特币系统是非常像的,比特币系统的节点要干跟记账完全无关的事,来争夺记账权利,他们都得是“像大力士一样的账房先生” 。好,有人第一个举完石头,获得记账权利了。他要告诉村口广场的所有账房先生,我已经算完了,这个奖金归我了。请大家把我计算的结果,抄录到你的账本上去。这个时候,其他账房先生就要遵守规则,抄录结果。然后,赶紧去争夺下一次记账机会。但要注意的是,每个账房先生在把这个账目抄录到自己的账本上之前,每个人都必须再做一遍验算,验算正确,才能记录。如果第一个记账的人记错了,那么错误立刻就被发现了。这里讲谁可以记账,其实讲了三层校验逻辑,我们来梳理一遍:第一层:老张家找老王家借了一千两银子,这件事不能一方去村口说的,必须是双方共同去村口宣布的。如果一个人去说,我借钱给某某了,就这样开始记账,那不得乱套了。第二层:争夺记账权,是进行复杂的计算,也有对应的奖金,这使得账房先生之间有一种按规则进行的良性竞争,这个竞争的作用是保证账本的正确性。第三层:每个账房先生在记账时,不管是第一个记账,还是把别人算好的记录下来,都要进行验算,这样进一步保证了账本的正确性。 

账本的不可篡改

故事的第三部分,我们来讲讲,如何保证账本的不可篡改。这同样非常重要,刚刚讨论的,是保证每次记录进账本的信息的准确性,而一个账本要是安全、可信的,我们还要防止有人偷偷地涂改它。分布式记账,当然是增加了一点安全性。比方说,过去,一个人要改账本,只要偷偷撬开村长家的账房,涂改一下就好了。现在采用分布式记账,账本存放在很多家,他就要挨家挨户地去撬门、涂改,难度大大增加。这看起来很有说服力,但你要注意,这并不是区块链记账主要的防篡改措施。其实,如果的确有一个很厉害的小毛贼,他能够撬开所有的账房,把所有的账本都改了怎么办?区块链有更高级的防篡改措施。“区块链”这个名字,是两个词的组合:区块和链。区块,就是数据块,用账本类比就是账本里一页。链,就是用密码学的方法把这些数据区串在一起,它的一个关键特征是,如果你要改较早之前的一页账本上的内容,你必须把后面每一页都改了。这个把账本的页串在一起的方法叫“哈希指针”,你可以在《区块链:技术驱动金融》第一章第二节中读到对它的详细技术讲解 。用链村的故事说,假设现在有一百个账房先生在记账。有小毛贼想改一页账本,首先,他要到一百个账房先生那里去修改。同时,这一页后面已经多了100页。因此第二,它要把这后面每一页都改了。通过一个简单的计算就可以看到,难度一下子增加了一万倍:原来,改一次就好了,现在要改一万次。你觉得这够安全了吧?还有更厉害的安全措施。刚才我们讨论谁可以记账的时候说,每次要记账的时候,大家要通过举石头来争夺记账权。我们假设说,账房先生要比赛举石头,谁先在一分钟内把一百斤的石头举完100下,才可以记账。比特币的区块链的安全措施是这样的,只要你想修改账本的这一页,你必须把石头按要求再举100下。难度一下子又增加很多倍,你看,再厉害的小毛贼也无法涂改账本了。我们这里打比方说的举石头,在区块链的世界中,就是计算机的计算能力,有了这样的设计,你就发现,即便你有最强大的超级计算机,你也很难攻破区块链,去篡改其中的记录了。再深挖下去,区块链还有更多的安全措施来保证账本的不可篡改,但我想到这里,你已经能够从原理上理解,区块链这个分布式记账是怎么安全的了。比特币的系统,它现在上面运行的比特币高达1300亿美元,一定有很多黑客想攻破它,把别人的比特币涂改写到自己的地址中去,但事实证明,在过去十一年,都没有人能够攻破它。在可见的未来,它都很难被攻破,它甚至永远都无法被攻破。小结一下。今天,我们用链村的故事来给你讲解区块链的原理。我们讲了三点:

第一,  我们讲了链村的记账方法的演变,从集中式记账到分布式记账;

第二,  我们讲了谁可以记账,这里的做法主要是用来保证第一次记录到账本中的信息是正确的。

第三,  我们讲了区块链用什么机制,来保证账本的不可篡改特性。

“链”村的故事到这里就结束了,怎么样?是不是觉得意犹未尽?今年10月,中国宣布,要将区块链作为技术创新突破口,发展区块链产业,这使得,比特币、区块链不再是跟你没关系,现在,每个人都需要学习这项新技术、它的应用场景、它的未来价值。

>>> 【买币首选】DragonEx龙网交易所,买比特币和以太坊等币简单快捷,现在注册交易手续费终身4折,每天现金分红 + 30%年化理财收益,注册并中级认证即可获得抽DT奖励(100%中奖),1小时内极速出入资金。

...

...

>>【8年老牌】现在注册Gateio比特儿交易所,即可享受一年内交易手续费9折优惠+糖果空投。

...

...

相关推荐

评论 抢沙发

  • 昵称 (必填)
  • 邮箱 (必填)
  • 网址