2018-2-5 23:30
希望你在这个引导和结构下有一个(gè)比(bǐ)较好的阅读体验。Let's go~
既(jì)然(rán)已经达成共(gòng)识(shí),所以(yǐ),我们事(shì)先构(gòu)建好了一个去中心化的P2P网络;同时,为(wéi)了让读者朋友们听起来更(gèng)轻(qīng)松,我先粗暴的规定在这个极简的区块链系统里,每十分钟有且仅产(chǎn)生一笔交易。
故事继(jì)续,在节点(diǎn)的视野里,大概每十分钟会(huì)凭空产(chǎn)生一个建(jiàn)立(lì)在自己平行(háng)宇宙(zhòu)世界(jiè)的神奇(qí)区块(你可以(yǐ)将区块想象(xiàng)为一(yī)个盒子),这个区块(kuài)里放着一些数(shù)字货币以及一张小(xiǎo)纸条,小纸(zhǐ)条上记录了这(zhè)十分钟内产生的那唯一一笔交(jiāo)易信息(xī),比如说——“小A转(zhuǎn)账给了小(xiǎo)B100元”;当然,这段信息肯定是被加密处(chù)理过的,为的就是保证只(zhī)有(yǒu)小A和小B(通过他们手上的钥匙)才有(yǒu)能(néng)力解读里面真正的内容。
这个神奇的区块被创造出来之(zhī)后,很快被(bèi)埋在了地底下,至于(yú)埋在(zài)哪(nǎ)里?没有(yǒu)一个人不知道,需(xū)要所有计算机节点(diǎn)一起参与进(jìn)来(lái)掘地三尺后才有可能找到(找到一个有效的(de)工作量证明)。显然(rán),这是(shì)一件工作量巨大、成果(guǒ)随机的事件。但是(shì)呢,对于计(jì)算机节点来说(shuō),一旦从地底下挖出这个区块,他将获得区(qū)块(kuài)内价值不菲的数字货币,以及“小A转账给了小B100元”过程中小A所支(zhī)付的小费。同(tóng)时,对于(yú)这个节(jiē)点来(lái)说,也只有(yǒu)他才有权利真正记录小(xiǎo)纸条里的内容,这(zhè)是一份荣耀,而其他节(jiē)点相当于只能使(shǐ)用它的复制品,一(yī)个已经没有数(shù)字货币加持的(de)副本。当然这个神奇的区块还有(yǒu)一些其他很特别的地方(fāng),后面我们(men)会再(zài)细细聊。
为了(le)更好的(de)描述,我们将计算(suàn)机节点从地底下挖出(chū)区(qū)块的过(guò)程叫做「挖(wā)矿」,刚才说了(le),这是一(yī)件(jiàn)工作量巨大、运气成分较多、但收益丰(fēng)厚的(de)事儿(ér)。
过了一会儿,来自中(zhōng)国上海浦东新区张衡路上(shàng)的一个(gè)节点突(tū)然跳出来(lái)很兴奋的说:“ 我挖到区块了!里(lǐ)面的小纸条都是有效的!奖励(lì)归我!” 。虽然此刻张衡(héng)路节(jiē)点已经拿到(dào)了数字货币,但(dàn)对于其他(tā)计算机节点来说,因为(wéi)这里面还涉及到其他一些利(lì)益瓜葛,他们不会选择默(mò)认相信张衡路节点所(suǒ)说的话;基于陌生节(jiē)点彼此不信任的原则,他们(men)拿过张衡路(lù)节点所谓挖到的区块(副本),开(kāi)始校验区(qū)块内的小(xiǎo)纸条信息(xī)是否(fǒu)真实(shí)有效等等。在(zài)区块链世界里,节点们正(zhèng)是(shì)通过校验小纸条信息的准确性,或间接或直接判断(duàn)成功挖出区块的(de)节点是(shì)否撒谎。(如何定义小纸条信(xìn)息真实有效,后面会讲解,这里(lǐ)暂(zàn)不(bú)做赘述(shù))。
在校(xiào)验过程中(zhōng),各个(gè)节点们会直接通(tōng)过下面两个行为表达自己(jǐ)对张衡(héng)路节点的认(rèn)同(准确(què)无误(wù))和态度:
你可以稍微(wēi)有(yǒu)点困惑:停(tíng)止可能已经执行了80%的挖矿行为,那之前(qián)80%的工作不是就白做(zuò)了嘛?!然后,区块链的末尾又是个什么(me)鬼(guǐ)东(dōng)西(xī)?
对于(yú)第一个困惑(huò)。我想说,你说的(de)一点没错,但是没办法,现实就是这么残酷,即便工作做了80%,那也(yě)得(dé)放弃,这80%的工作劳苦几乎可以视为无(wú)用功,绝对的伤(shāng)财劳众。第二个困惑,区块链(liàn)和区块链(liàn)的末尾(wěi)是什么鬼?这里因为(wéi)事先并没有讲清楚,但是你可以简单想象(xiàng)一下:区块是周期性不断的产(chǎn)生和不(bú)断的被(bèi)挖出来(lái),一个计(jì)算机节点可能事先已经(jīng)执行了N次(cì)“从别人手上拿过区块 -> 校验小纸条(tiáo)有效性”的流(liú)程,肯定在(zài)自己的节(jiē)点上(shàng)早已经存放了N个(gè)区块,这(zhè)些区块会按照时间顺序整齐的一字排列成为一个链状。没错,这(zhè)个(gè)链条,就是你一直以来认为的(de)那个区块链。如果(guǒ)你还是(shì)不能够理解,没关系,文章后面(miàn)还会有很多次机会深入(rù)研究。