長期以來,區(qū)塊鏈一直在軟件行業(yè)的壁壘之外引起共鳴。每天都傳播著比特幣價格指數(shù)的發(fā)展相關(guān)的消息,同時初創(chuàng)企業(yè)也正在競相以這項技術(shù)為基礎(chǔ)創(chuàng)建出令人震驚的業(yè)務(wù)模式。
但我們對這項技術(shù)又真正知多少呢?
在2008年金融危機爆發(fā)的風(fēng)口浪尖,以假名中本聰(Satoshi Nakamoto)活動的個人或一組人向一份郵寄名單發(fā)送了一篇題為“比特幣:一種點對點的電子現(xiàn)金系統(tǒng)(Bitcoin: A Peer-to-Peer Electronic Cash System)”的白皮書。這篇白皮書中對拜占庭將軍問題——一個令虛擬貨幣理論家都會為之搖頭的問題——提出了一個實用的解決方案。
在去中心化參與者中創(chuàng)建共識
拜占庭將軍的問題起源于君士坦丁堡于1453年被奧斯曼帝國攻陷的歷史傳說。當(dāng)時只有在各方面精心策劃的部隊移動的幫助下,才能順利攻占這座設(shè)防鞏固的城池。而為了達到這個目標(biāo),奧斯曼帝國的將軍們就不得不依靠信使傳遞信息。
然而,關(guān)于攻擊時刻的決定受到一個關(guān)鍵細(xì)節(jié)的嚴(yán)重阻礙:由于一些將軍想要在蘇丹面前詆毀其他將軍,因此他們會故意提供虛假信息唆使其他人過早發(fā)動攻擊。而自那時起,任何將軍都無法確定收到的信息是否可靠。
這個問題的關(guān)鍵就是共識的問題,源自個別決策者無法相互信任這一事實。
貨幣與中間人的作用
價值的數(shù)字化交易也同樣適用這種情況。我們?nèi)绾芜_成共識,避免虛擬美元不會被支付兩次?到目前為止,這個答案已經(jīng)不能再簡單了:讓第三方中間人監(jiān)督所有交易;換言之,就是銀行。
但這種模式也并不總是一帆風(fēng)順的。以SWIFT代碼形式傳輸?shù)膰H支付由于涉及各方過多,通常都需要幾天的時間進行處理。這就增加了交易成本,使一次性小額付款也變得十分不方便。能夠取消交易這種選擇也會存在隱患;為了盡量減少欺詐行為,不可逆轉(zhuǎn)服務(wù)的提供商需要收集關(guān)于客戶的更多信息,但這通常都超出了必要信息的范疇。
然而對于實體價值交易,這個問題已經(jīng)在很大程度上得到了解決。舉個例子說明:如果Alice想要支付Bob一定數(shù)額的資金,那么她給他一個代表相應(yīng)價值的防偽貨幣就足夠了。Alice不可能使用相同的貨幣同時進行兩次單獨的付款。
目前已經(jīng)有很多嘗試將實體貨幣的原則轉(zhuǎn)化到數(shù)字領(lǐng)域中,也都取得了不同程度的成功。而比特幣則是首個在很大程度上滿足這些要求的。
加密簽名和數(shù)字價值
為確保數(shù)字貨幣只能由其合法所有者使用,比特幣使用了公鑰加密技術(shù)。這涉及到由隨機生成的數(shù)字組成的私鑰,但相應(yīng)地又會導(dǎo)出一個公鑰。但反過來看,公鑰卻不能用于導(dǎo)出相應(yīng)的私鑰。從私鑰和一組數(shù)據(jù)中會生成數(shù)字簽名。公鑰使用戶能夠確定簽名是從相應(yīng)的私鑰中導(dǎo)出的,但卻不需要知道具體簽名是什么。
此外,比特幣還使用了加密的哈希函數(shù),這會將大量數(shù)據(jù)字符串轉(zhuǎn)換為固定長度的數(shù)據(jù)值,或稱為哈希。良好的哈希函數(shù)的特征在于高度的安全性,并且可以使用盡可能少的相同哈希來分配各種輸入量。
與加密相比,這一過程無法逆轉(zhuǎn)。當(dāng)應(yīng)用于相同的輸入量時,哈希函數(shù)總是產(chǎn)生相同的哈希,但相同的哈希卻不能被認(rèn)為是原始輸入量所有。每次對輸入數(shù)量的更改都會產(chǎn)生完全不同的哈希。因此,哈希也稱為數(shù)字指紋。
比特幣系統(tǒng)中的貨幣最終就是數(shù)字簽名的組合。當(dāng)所有者(Alice)對此前交易的哈希和接收者(Bob)的公鑰進行數(shù)字簽名時,貨幣就能夠轉(zhuǎn)移。而為使Bob確定Alice并未將其貨幣用于另一筆交易中,所有的交易都是公開的。
達成共識的數(shù)學(xué)競賽
比特幣通過點對點網(wǎng)絡(luò)實現(xiàn)了這一點。一個網(wǎng)絡(luò)節(jié)點將各種交易匯編到一個區(qū)塊中,并由此生成一個哈希,然后在通過時間戳來釋放哈希。每個區(qū)塊都包含來自前一區(qū)塊的哈希,從而形成一個鏈條:也就是區(qū)塊鏈。
這就讓我們回到了“拜占庭將軍問題”:所有節(jié)點必須先對已經(jīng)發(fā)生的交易,以及是否應(yīng)該將另一個區(qū)塊添加到鏈中達成一致。這一過程的比特幣使用的是所謂的工作量證明機制。要向鏈中添加額外區(qū)塊,需要相應(yīng)的計算機節(jié)點來解決復(fù)雜的數(shù)學(xué)難題。首先找到解決方案的節(jié)點隨后再與所有其他節(jié)點共享。一旦解決方案得到所有節(jié)點的驗證,每個節(jié)點都會將該區(qū)塊添加到其區(qū)塊鏈的副本中。然后,該過程將再次重新開始。
為了順應(yīng)網(wǎng)絡(luò)中不斷變化的總算力,問題的難度會不斷調(diào)整,這樣每隔約10分鐘就可以將新的區(qū)塊添加到鏈中。如果同時發(fā)現(xiàn)兩個區(qū)塊,那么就由發(fā)現(xiàn)的下一個區(qū)塊確定將保留那個子鏈。最長的鏈會獲得勝利。
由于必須針對區(qū)塊的每個變化重新解決這些難題(對于所有后續(xù)區(qū)塊也是如此),因此鏈條越長就越安全。若要對區(qū)塊鏈進行更改,攻擊者必須在將新區(qū)塊添加到區(qū)塊鏈之前再次解決所有區(qū)塊的數(shù)學(xué)難題。因此,目前以銀行形式存在的信任要素也被包含在了區(qū)塊鏈的數(shù)學(xué)邏輯中。
價值網(wǎng)絡(luò)
區(qū)塊鏈起著分布式公共日志的作用,記錄不可逆的交易。用戶能夠快速且經(jīng)濟高效地驗證并審計他們的交易,無需經(jīng)過中間人。
區(qū)塊鏈技術(shù)用例絕不會僅限于比特幣。區(qū)塊鏈遠超價值傳輸——“價值網(wǎng)絡(luò)”。數(shù)據(jù)庫能夠最終確定所有權(quán)的歸屬。所有能夠轉(zhuǎn)化成數(shù)字孿生體(digital twins)的資產(chǎn)類型都可以被包括在區(qū)塊鏈中:鉆石、建筑物、貨物交付——存在著無窮的可能性。
這種創(chuàng)新是顛覆性的還是遞增的取決于業(yè)務(wù)領(lǐng)域。在公司內(nèi)部或之間達成共識就意味著一種演變,而公有區(qū)塊鏈的用例有可能徹底轉(zhuǎn)變現(xiàn)有的市場。
區(qū)塊鏈用例之一的Everledger是一家從事鉆石數(shù)字孿生的初創(chuàng)企業(yè)。這些數(shù)字孿生體將由40個數(shù)據(jù)點計算得來,并存儲在區(qū)塊鏈之上,從而實現(xiàn)從首次開采到成為珠寶的整個過程中追蹤鉆石的所有權(quán)。而目前已有超過100萬顆寶石實現(xiàn)了數(shù)字化保護——這是一個真正的成功案例。