区块链最近火到没朋友啊!
区块链到底是个什么东西?
区块链名字叫blockchain,也就是block(区块)+chain(链),和它名字一样,区块链其实就是区块组成的链,是一种分布式账本。
区块是怎么组成链的?
由一个一个的区块堆叠而成,形状有点像文件盒堆在一起,当堆起来的区块越来越多,它就形成了一个链,所以叫区块链。
而区块有点像这种装文件的文建盒
文件盒里放的文件,就是区块里放的账本,之前说的区块链是分布式账本,账本放在哪呢?账本就放在区块里面。
既然区块和文件盒很类似,为什么文件盒堆起来不能叫区块链,而区块堆起来能叫区块链?
因为区块多了一个功能,把新区块接入到下面的旧区块中,从而延长了区块链的长度,我们的文件盒只能堆在另一个文件盒上,它没有接入功能,无法与下面的文件盒融合。
就像我们吃面放葱花,葱花是堆在面上的,而吃面放的盐,它与面融合了,区块就是这样,新区块要与旧区块融合在一起,它才能延长区块的长度,才能成为区块链。
新区块是怎么融合到旧区块上的?在解答这个问题前,我们得先了解区块的类型,区块有2种类型。
1创始区块
2普通区块
普通区块有2个功能,区块头和区块尾。区块头要接入上一个区块,而区块尾要留给下一个区块来连接。
比如现在区块链上有3个区块ABC了,有一个新区块D要接入进来,就得把自己的区块头链接到区块C的区块尾,把D自己的区块尾留出来,当有新的区块E要接入时,区块E就把自己的区块头接入到D的区块尾,然后把E自己的区块尾留出来给区块F链接。
而创世区块是区块链最下面的区块,它不需要链接上一个区块,它只要留区块尾给下一个区块来链接,所以创始区块只有区块尾的功能。
知道了区块类型,那我们看看新区块是怎么融合到旧区块上的?
现在有一个新区块M被系统产生出来,它需要链接到区块L的区块尾上,但是它自己不能跑过去链接,因为它是一串数据不会自己跑,那怎么办?
这时候神奇的矿工就出现了,新区块需要通过矿工把它链接到区块L上,当矿工接受到新区块M被产生出来的消息,就会把它链接到区块L上,怎么大家会愿意把新区块链接到旧的区块链上呢?
在上一篇文章说到,在比特币系统中,系统会给矿工比特币生产奖励,这个生产就是把新区块链接到旧的区块链中,所以大家都在抢着做这件事。
那么多人都在抢,那系统把接入这件事交给谁做呢?
在比特币系统中,系统会出一道数学题,哪台电脑算出来这道题,哪台电脑就可以把新区块接入到旧的区块链中。而这道数学题很奇怪,没有运算逻辑,只能随机去猜,矿工们在不断地猜答案的过程叫哈希碰撞,谁运气好碰撞对了,那么谁就能把新区块接入旧区块链中,获得比特币奖励。
所有的区块按照新区块的区块头接入旧区块的区块尾这样的方式,构成了区块链。
领取专属 10元无门槛券
私享最新 技术干货