一本谁都不拥有的笔记本
想象有一本共享的笔记本,记录着谁付钱给了谁。再想象成千上万的人,每个人都在同一时刻保管着一份完全相同的副本。每当添加一条新记录,所有人都把它抄进自己的那一份。这里没有总部,没有锁在保险库里的唯一正本。一句话、一幅画面,这就是区块链:一份不是存在一个地方、而是同时存在于各处的记录。
因为同一本书存活在许多互相独立的机器上,没有任何单一的拥有者能随心所欲地修改它。想改动记录,你得同时说服一整群人。这种特性——权力被分散,而不是握在某一方手里——叫作去中心化,也正是区块链让人觉得与以往一切都不一样的核心所在。
页页相扣
这本笔记本不是一条一条地记。记录被收拢成一批批,每一批就是一页,叫作区块。当一页写满,它就被封存,新的一页随之开始。到这里为止,它还只是一本带编号页码的笔记本而已。
巧妙之处在于这些页是怎样被连在一起的。每一张新页都带着它前一页的一小段指纹——一份取决于前一页上每一个字的微缩摘要。第 2 页指回第 1 页,第 3 页指回第 2 页,如此一路回溯,直到最初的那一页。这些页不只是叠放在一起,而是串成了一条线。这就是它为什么被叫作“区块链”——一条由区块连成的链。
[ Block 1 ]<---[ Block 2 ]<---[ Block 3 ]<---[ Block 4 ] entries entries entries entries + summary + summary + summary + summary of nothing of Block 1 of Block 2 of Block 3 each arrow = "this page carries a fingerprint of the one before it"
为什么你无法偷偷作弊
正是这种指回前页的指纹,让这本书极难伪造。假设你想潜入第 2 页,把一条旧记录改成对自己有利。你只要动了一个字,第 2 页的指纹就对不上了。而第 3 页是围绕第 2 页的*旧*指纹搭起来的——于是第 3 页也跟着崩掉。接着是依靠第 3 页的第 4 页。一个小小的谎言,会让它后面的每一页接连散架。
所以要想令人信服地伪造,你就得在自己那份副本上,把从改动之处往后的每一页统统重建——然后还得让那一整群各自持有诚实版本的人,把他们的丢掉,转而接受你的。在成千上万份副本的注视下,这极其不切实际。这条链并非靠魔法让篡改*变得不可能*;它是让篡改变得喧闹而显眼——对一份共享的记录来说,这同样管用。
一家公司的数据库,与一条区块链
把它和你每天早已信赖的那种记录比一比,会很有帮助。当你查看银行余额时,你读到的是一家公司的数据库。这家银行拥有它、运行它,而你只能听信他们说那个数字没错。通常这没什么问题——但它意味着某一方可以改动一行、冻结一个账户,或者干脆出个差错,而你手上没有自己的副本可以对照核验。
区块链把那个唯一的拥有者,换成了一群开放的人。这本书由许多互相独立的机器保管,它们被称为全节点,每一台都存着完整的历史,每一台都会先用规则检验新记录,再决定是否接受。没有哪一个节点说了算;一致是从整个群体里来的。这笔交换是真实的:区块链比一个整洁的公司数据库更慢、也更费。你用这份代价换来的,是一份没有任何单一方能暗中操控的记录。
一段话的收获
记住这幅画面:区块链是一本共享的、只追加的账本,被复制到许多互相独立的计算机上,新的页被封存、并由一段指纹链接到上一页——于是整段历史彼此咬合,而改动过去会让这条链断裂,让所有人一眼看见。这就是它的全部要义。其余的一切,都只是往里填充的细节。