一篇文章教你读懂“区块链”
从去年开始,区块链一直都是互联网领域比较火的话题,很多人第一次听到区块链的时候很多人都一头雾水,小编在这里简单给大家介绍一下区块链。
一言以蔽之,区块链就是一个去中心化的信任机制,过去区块链主要应用在比特币上,一直到最近半年,区块链已经渐渐开始有了一些其他应用,特别是在金融领域。
区块链是一种特殊的分布式数据库,首先,区块链的主要作用是储存信息。任何需要保存的信息,都可以写入区块链,也可以从里面读取,所以它是数据库。
其次,任何人都可以架设服务器,加入区块链网络,成为一个节点。区块链的世界里面,没有中心节点,每个节点都是平等的,都保存着整个数据库。你可以向任何一个节点,写入/读取数据,因为所有节点最后都会同步,保证区块链一致。
区块链的最大特点是分布式数据库并非新发明,市场上早有此类产品。但区块链的一个革命性突破就是没有管理员,所以它是彻底无中心的。其他的数据库都有管理员,但是区块链没有。如果有人想对区块链添加审核,也实现不了,因为它的设计目标就是防止出现居于中心地位的管理当局。正是因为无法管理,区块链才能做到无法被控制。否则一旦大公司大集团控制了管理权,他们就会控制整个平台,其他使用者就都必须听命于他们了。
没有了管理员,人人都可以往里面写入数据,怎么才能保证数据是可信的呢?这是由于区块链由一个个区块组成。区块很像数据库的记录,每次写入数据,就是创建一个区块。通俗点讲就是在区块链系统中,每个人都可以有机会参与记账。在一定时间段内如果有任何数据变化,系统中每个人都可以来进行记账,系统会评判这段时间内记账最快最好的人,把他记录的内容写到账本,并将这段时间内账本内容发给系统内所有的其他人进行备份。
比特币中的“挖矿”实际上就是记账的过程,比特币的运算采用了一种称为“工作量证明”的机制,系统为了找出谁有更强大的计算能力,每次会出一道数学题,只有最快解出这道题目的计算机才能进行记账,通常把这个行为称为“挖矿”,把获得的比特币视为挖矿成功获得的奖励。由于必须保证节点之间的同步,所以新区块的添加速度不能太快。试想一下,你刚刚同步了一个区块,准备基于它生成下一个区块,但这时别的节点又有新区块生成,你不得不放弃做了一半的计算,再次去同步。因为每个区块的后面,只能跟着一个区块,你永远只能在最新区块的后面,生成下一个区块。所以,你别无选择,一听到信号,就必须立刻同步。
这种产出速度不是通过命令达成的,而是故意设置了海量的计算。也就是说,只有通过极其大量的计算,才能得到当前区块的有效哈希,从而把新区块添加到区块链。由于计算量太大,所以快不起来。这个过程就叫做采矿,好比在全世界的沙子里面,找到一粒符合条件的沙子。
区块链最重要的是解决了中介信用问题。在过去,两个互不认识和信任的人要达成协作是难的,必须要依靠第三方。比如支付行为,在过去任何一种转账,必须要有银行或者支付宝这样的机构存在。但是通过区块链技术,比特币是人类第一次实现在没有任何中介机构参与的情况下,完成双方可以互信的转账行为。这是区块链的重大突破。