(招商局公路網絡科技控股股份有限公司戰略發展部,北京 100022)
隨著密碼學、分布式網絡、共識算法、點對點網絡等技術的飛速發展,區塊鏈誕生條件日趨成熟,比特幣的誕生成為區塊鏈的標志性事件,之后以太坊開創性地將智能合約和區塊鏈結合起來,目前區塊鏈技術已經在各行各業展開研究和應用。
探尋區塊鏈的機制和發展,比特幣永遠是無法繞過的話題。區塊鏈技術最早可以追溯到比特幣系統中,2008年一個筆名為中本聰的人(或團隊)發布了一篇名為《比特幣—一種點對點的電子現金系統》的文章,又在2009年公開了其早期的實現代碼,比特幣就此誕生。
中本聰并沒有直接提出區塊鏈這一概念,但其解決交易記錄,真實有效并不可篡改的方案可以看作區塊鏈技術的雛形。
區塊鏈技術幾乎與比特幣是同一時間誕生,當時中本聰分別提到了區塊以及鏈的概念,不過并沒有明確提出完整的區塊鏈概念,區塊鏈是在比特幣的基礎上,被許多研究人員挖掘出的技術。
綜合有關區塊鏈技術的研究,我們認為區塊鏈技術是一種由多方集體共同維護,使用密碼學保證傳輸和訪問安全,能夠實現數據去中心化一致存儲、不可篡改、去除第三方信任機構的記賬技術[1]。
區塊鏈根據網絡擴展性、節點的可參與性及其功能價值,可以分為公有鏈、私有鏈和聯盟鏈三種模式。

表1 公有鏈、聯盟鏈及私有鏈對比分析表
非對稱加密算法,就是了使用公鑰和私鑰在不直接傳遞解開密碼的密鑰的情況下,使加密的信息解密,也就是說,加密的方式和解密的過程可以是完全不對稱的關系。
區塊鏈采用密碼學摘要算法技術,保證區塊鏈賬本的完整性不被破壞。摘要算法能將二進制數據映射為一串較短的字符串,并具有輸入敏感特性,一旦輸入的二進制數據,發生微小的篡改,經過摘要運算得到的字符串,將發生非常大的變化。此外,優秀摘要算法還具有沖突避免特性,輸入不同的二進制數據,得到的摘要結果字符串是不同的。
數字簽名是在區塊鏈技術中把摘要函數、密鑰全部運用到的重要機制。數字簽名主要主要有兩個作用:第一,發送節點公鑰和私鑰,因此,確定了消息是由發送節點發送;第二,則是運用摘要函數確保了信息在發送過程中完好無損。
時間戳主要負責記錄每個區塊接受信息的時間,確保每條信息的先后順序,進而保證了每個區塊都能做出一致的判斷。
分布式賬本技術DLT(Distributed Ledger Technology)本質上是一種可以在多個網絡節點、多個物理地址或者多個組織構成的網絡中進行數據分享、同步和復制的去中心化數據存儲技術[2]。
工作量證明的概念早在1993年就已經被人提出了,工作量證明需要發起人進行一定的運算,1998年,戴偉發布了匿名的分散式電子現金系統(B-Money),引入了工作量證明機制,強調點對點交易和不可更改的特性,之后中本聰將工作量證明應用到比特幣上,比特幣采用PoW工作量證明來保證分布式網絡記賬的一致性,這是目前實踐看來最為安全的公有鏈共識算法。
權益證明最早由在2012年8月發布的PPC(PeerToPeerCoin點點幣)系統中首先實現,權益證明是工作量證明的升級共識機制,主要思想是節點記賬權的獲得難度與節點持有的權益成反比,相對于工作量證明,一定程度減少了數學運算帶來的資源消耗,性能也得到了相應的提升,縮短了延遲,但依然是基于哈希運算競爭獲取記賬權的方式,因此,權益證明也不是完全彌補了工作量證明的不足,它只是在工作量證明的基礎之上進行了部分改善。
股份授權證明DPoS是2014年4月由Bitshares 的首席開發者Dan Larimer提出的一種基于代理人機制的PoS算法,股份授權證明比權益證明更加權威,它類似投票機制,由節點選舉若干代理人,由代理人驗證和記賬,是在權益證明的基礎上創造出的共識算法。
拜占庭容錯機制也是一種采用許可投票、少數服從多數來選舉領導者進行記賬的共識機制,但該共識機制允許拜占庭容錯。
本文從比特幣與區塊鏈技術的關聯關系出發,描述了實現區塊鏈分布式記賬的主要技術原理和框架,從技術原理出發到應用場景落地全方位闡述了區塊鏈的實現方式。