如果要聊聊區(qū)塊鏈,那么就得先說說比特幣。
在2008年一個(gè)名為中本村的人發(fā)了一篇名為《比特幣:一種點(diǎn)對(duì)點(diǎn)的電子現(xiàn)金系統(tǒng)》的論文,從此掀起了人們對(duì)新一代數(shù)字貨幣的研究熱潮。如論文題目所述,比特幣是一種點(diǎn)對(duì)點(diǎn)的電子現(xiàn)金系統(tǒng),它的出現(xiàn)主要得益于以下幾種技術(shù):非對(duì)稱加密、哈希計(jì)算、分布式技術(shù)。緊隨比特幣的步伐又出現(xiàn)了許多令人眼花繚亂的代幣,如火幣、彩色幣、以太幣、瑞波幣等。這些所有出現(xiàn)的代幣,都是基于一種名為區(qū)塊鏈的技術(shù)。也可以理解為區(qū)塊鏈技術(shù)是所有代幣的底層,代幣只是建立在它之上的一個(gè)具體應(yīng)用而已(見圖1)。
目前,基于比特幣區(qū)塊鏈的應(yīng)用已經(jīng)遍及生活的方方面面(見圖2),金融領(lǐng)域如股權(quán)交易、眾籌、金融衍生品交易等,政府部門職能如房產(chǎn)所有權(quán)登記、知識(shí)產(chǎn)權(quán)證明等,IT領(lǐng)域如電子商務(wù)、P2P貸款、信息保存等。區(qū)塊鏈的發(fā)展已經(jīng)如火如荼,讓人不能忽視。就連央行也剛剛成立了數(shù)字貨幣研究所來相應(yīng)區(qū)塊鏈發(fā)展的熱潮。
那么,區(qū)塊鏈到底是什么?
圖1
通俗理解,區(qū)塊鏈?zhǔn)且粋€(gè)分布式總賬(見圖3)。
把這個(gè)總賬稱作區(qū)塊鏈的原因是總賬里存儲(chǔ)信息的基本單位是一個(gè)區(qū)塊,而后生成的區(qū)塊基于前一個(gè)區(qū)塊的哈希值建立,抽象地可以理解為后一個(gè)區(qū)塊有一個(gè)指針指向前一個(gè)區(qū)塊(見圖4),這樣所有的區(qū)塊就形成了一個(gè)鏈條。這個(gè)賬本是分布式地存儲(chǔ)在部分或所有用戶節(jié)點(diǎn)中,每個(gè)用戶節(jié)點(diǎn)所存儲(chǔ)的內(nèi)容一致,并且能夠相互之間進(jìn)行驗(yàn)證。
以下內(nèi)容都基于比特幣區(qū)塊鏈來對(duì)區(qū)塊鏈作一步描述。
圖2
圖3
圖4
首先說說區(qū)塊鏈?zhǔn)侨绾伪WC所有的節(jié)點(diǎn)存儲(chǔ)的內(nèi)容是一致的。這是因?yàn)閰^(qū)塊鏈都需要使用共識(shí)算法,而在比特幣中這種共識(shí)算法是工作量證明。那么如何理解這個(gè)工作量證明呢?計(jì)算機(jī)可以很容易地計(jì)算一個(gè)輸入值的哈希值,但是要是計(jì)算出的哈希值小于某一個(gè)值就非常困難,要得到比一個(gè)固定的數(shù)值小的哈希值,可能需要計(jì)算機(jī)進(jìn)行數(shù)十億次甚至數(shù)百億次的哈希計(jì)算才能夠完成,這個(gè)過程是非常耗時(shí)的。在比特幣區(qū)塊鏈里,就把計(jì)算出比一個(gè)固定值小的哈希值的這個(gè)過程中所作出的努力稱為工作量證明。共識(shí)算法的一個(gè)重要的步驟就是計(jì)算出這個(gè)哈希值。由于每一區(qū)塊都是基于前一個(gè)區(qū)塊建立起來的,所以如果有一個(gè)節(jié)點(diǎn)想要篡改區(qū)塊鏈中的數(shù)據(jù),它需要付出極大的努力來重新計(jì)算前面所有區(qū)塊中的哈希值,這個(gè)在實(shí)際上認(rèn)為是不可能的。所以,當(dāng)這個(gè)哈希值計(jì)算出來,所有節(jié)點(diǎn)都可以相信這個(gè)值很大的概率是正確的,然后通過P2P網(wǎng)絡(luò)把區(qū)塊下載到本地即可。
那么比特幣區(qū)塊鏈?zhǔn)遣皇蔷徒^對(duì)安全呢?并不是這樣,網(wǎng)絡(luò)超過一半的算力使壞,比特幣區(qū)塊鏈就可能被攻破。什么是算力呢?假設(shè)現(xiàn)在有兩臺(tái)計(jì)算機(jī),它們除了CPU以外,所有的配置都相同。計(jì)算機(jī)A的CPU是Intel i5,計(jì)算機(jī)B的CPU是Intel i7,假設(shè)Intel i7的計(jì)算能力是Intel i5的兩倍。這個(gè)時(shí)候可以說計(jì)算機(jī)A擁有的算力單位是1,而計(jì)算機(jī)B擁有的算力單位是2。在有超過一半算力在使壞時(shí),它們可以重新計(jì)算前面區(qū)塊的哈希值,然后慢慢就能夠追趕上現(xiàn)有的區(qū)塊長(zhǎng)度,最終達(dá)到篡改的目的。所以比特幣區(qū)塊鏈并不是絕對(duì)安全的。