区块链是一个近期非常火的概念,随便走进一个写字楼的电梯,都会听到有人谈论区块链,或者炒币: ) 希望通过这篇文章,能让你对区块链的概念有一个整体的认识,在理解概念后,下一篇文章将用大约300行Python代码,实现一个区块链网络。
区块 和 链
所谓区块,就是一个块咯(要不然还是什么?),把这些块一个一个连在一起,像链条一样,就称为区块链(别急着打我,先往下看)。
区块和区块链
这是一些链条,链条的价值更多的体现在锁楼下小电动车的时候,不过我们再仔细看一下这个链条是不是有点像那什么?⛓
脱氧核糖核酸
很聪明,高中生物老师在冲你微笑!这就是传说中的脱氧核糖核酸(DNA),DNA也是一种链式结构,携带了遗传信息。区块链中的“区块”,就好比DNA分子中的脱氧核糖核苷酸(我也不知道自己在说什么),而区块链中的“链”,就好比DNA分子的链式结构。
DNA和链条的价值差异,关键在于DNA携带了大量遗传信息,而链条什么都没有携带。对于区块链来说,携带信息也是它的一个重要特点(不携带信息连锁电动车的作用都没有)。
当区块链携带的是账务信息的时候,它就变成了一个特别厉害的东西——账本(我们给他起了个00后的名字——比特币)。
Peer-to-Peer
为了显得专业一些,我们祭出比特币的创造者,中本聪的论文《Bitcoin: A Peer-to-Peer Electronic Cash System》,从这篇论文的题目我们可以看到,区块链是基于Peer-to-Peer的,下面就来了解一下什么是Peer-to-Peer。
Peer-to-Peer,简称P2P(不是互联网借贷的那个P2P),它是一种点对点网络,看图(我也不知道该怎么讲)。
P2P网络
图中每一个方脑袋就是一个Peer(节点),注意一下,这些方脑袋有一个共同点,他们都一毛一样(不仅长得一样,每一个脑袋都跟其它脑袋相连)。这也是P2P网络的最大特点——去中心化,P2P网络中不存在中心节点,所有节点都是平等的,任何一个节点,想跟谁说话就跟谁说话,并且谁(节点)都不能说了算。
共识机制
你和好基友老王,还有你们共同喜欢的一个姑娘阿圆(对,就是圆滚滚的圆),组成了一个三节点的P2P网络,根据P2P网络定义你们三个人谁都不能说了算。这一天,阿圆生日,你和老王同时给阿圆送了一个大蛋糕,那么问题来了,阿圆先吃哪个呢?
既然没有人能说了算,也不能让你和老王决斗(计算机这么做恐怕人类会毁灭),那么就需要采用一个文明的办法决定——商量。既然商量,就要有规矩,这个规矩叫共识机制。
Proof-of-work
区块链共识机制有很多种,Proof-of-work(POW,工作量证明)是其中一种,所谓工作量证明,有点像是比武招亲。你和老王对阿圆都很好,阿圆也很难抉择到底先吃谁的蛋糕,于是她请了两位武力相当的武林高手,让你和老王分别与高手过招,谁赢了高手,就先吃谁的蛋糕,如果你们都赢了高手,那么谁先赢算数。
把这些捏在一起
了解了POW、共识机制、P2P、区块、链的概念,我们就可以把他们拼在一起,看看会发生什么了。
区块链诞生了!
我们把P2P网络中的每一个节点,赋予一条链,这样网络中所有的链都是平等的了,接下来在其中一条链上增加一个带有信息的区块,P2P网络会将这个区块同步到所有的链上,也就是这条信息会被存储在所有节点。
把上面的一段话缩成一句(会显得比较厉害):
区块链是用分布式数据库识别、传播和记载信息的智能化对等网络, 也称为价值互联网。
看到这里是不是对区块链略知一二了?