邱元陽
新的事物新的概念層出不窮,以至于有些名詞已經流行了,但還沒有確切的定義。區塊鏈(Blockchain)就是這樣。如果搜索“區塊鏈”,可以搜到很多區塊鏈的意義、前景、新聞等,卻不見明確的定義。百度百科中對區塊鏈的解釋也只是一種描述性的文字:區塊鏈是分布式數據存儲、點對點傳輸、共識機制、加密算法等計算機技術的新型應用模式。這里面的“共識機制”則是區塊鏈系統中實現不同節點之間建立信任、獲取權益的數學算法。
普通大眾對區塊鏈的認識則一般是來自于比特幣(Bitcoin)。我們見到最多的描述就是:“區塊鏈是比特幣的底層技術”。數字貨幣為什么要采用區塊鏈技術,這其實就是為了解決網絡中的“信任”問題。
我們先來看一個經典的點對點通信協議問題——拜占庭將軍問題:拜占庭是東羅馬帝國的首都,羅馬帝國國土遼闊,為了防御外敵入侵,每個軍隊都分隔很遠,將軍之間只能靠信差傳遞消息。戰時拜占庭軍隊內所有將軍必須達成共識,再決定是否進攻。但在軍隊內可能存在叛徒和間諜左右將軍們的決定。這時候,在已知有成員謀反的情況下,其余忠誠的將軍在不受叛徒的影響下如何達成一致的協議?
拜占庭問題最早由萊斯利·蘭伯特提出,其含義就是在存在消息丟失的不可靠信道上如何通過消息傳遞的方式達到一致性。如果將這個問題量化和抽象為數學模型,是可以設計出相應的解決算法的,從而解決共識和信任問題。例如,引入一個困難的需要一定時間求解的工件量計算,限制網絡中每個時刻中被提出的進攻時刻數目,再將所有求解出的工件量證明逐一加入,形成一個越來越長的鏈條,及記錄所有參與攻擊時刻哈希計算的將軍、計算的工作量證明、關于工作量證明的計算等的總目錄。這就是中本聰最初提出的區塊鏈的技術原理,并作為一種使數據庫安全而不需要行政機構授信的解決方案首先被應用于比特幣,成為比特幣的核心組成部分。但直到2016年,“區塊”和“鏈”才終于合并定格為一個詞:“區塊鏈”。
區塊鏈是一個非安全環境中的分布式數據庫,沒有中心服務器,也沒有中心節點,所以它是一個去中心化的系統。這個數據庫依靠集體維護,全民參與記賬,系統會把一定時間段內最快最好的記錄寫入賬本,分發給其他人進行備份。這樣雖然效率低了,但是具有極大的安全性。由于每個區塊都包含一個時間戳和一個與前一區塊的鏈接,基于哈希函數和非對稱加密的設計使得數據不可篡改,記錄在一個區塊中的數據將不可逆,因此很難作弊。基于工作證明機制的共識算法則用來與新增數據達成共識。但區塊鏈最重要的還是解決了中介信任問題,實現了在沒有任何中介機構參與的情況下,完成雙方可以互信的交易行為。這就使得基于互聯網的機器信任取代了基于行政機構的人的信任。
區塊鏈的技術特點和激勵機制使它可以應用于多個領域,但它沖擊最大的,還是金融領域。去中心化的機器信任機制對于金融脫媒有著巨大的誘惑和潛能,從這個角度看待區塊鏈,我們甚至要重新審視貨幣的價值。
“生于互聯網,死于區塊鏈。”但愿這句話不會成為某些互聯網行業的讖語。