謝開斌
21世紀以來,隨著普適計算技術、網絡技術和人工智能技術的不斷進步,金融業得到了快速的發展,應用領域也越來越廣泛。然而基于金融業所進行的交易主要依賴第三方機構來進行處理,如銀行、保險、交易所等平臺,即需要一個中心化的可信機構作擔保。這種以第三方作為中介的交易模式盡管在絕大多數情形下表現良好,但存在著以下的主要問題:a)中心化機構內部的操作不透明,存在著內部人員進行暗箱操作的金融風險;b)中心化機構的建設及維護成本高,需要巨額資金;c)中心化機構容易成為網絡黑客的攻擊目標,需要時刻防范黑客可能發起的網絡攻擊。
為了解決中心化機構存在的上述種種問題,一個化名中本聰的研究人員創新性地提出了顛覆中心化架構的區塊鏈技術,并開發了首個基于區塊鏈的應用——比特幣。區塊鏈和比特幣的核心思想體現在文獻中。該論文首次對區塊鏈進行了如下的定義:通過為包含交易事件的區塊進行哈希運算,從而為區塊添加時間戳特征,并廣播區塊的哈希值,以達成對區塊內交易確認的共識,根據與時間戳對應的哈希值將不同的區塊按時間順序鏈接起來,形成一個不斷變長的交易記錄鏈條。
隨著越來越多的科研人員加入到區塊鏈的研究中來,區塊鏈中的哈希加密、共識機制以及智能合約等核心技術都得到了深入的研究。哈希加密技術確保了區塊內的交易的安全性以及相鄰區塊之間鏈接的有效性。共識機制主要解決了如何激勵分布式個體加入區塊鏈生態系統以及增強交易可靠性的問題。智能合約技術是虛擬空間與物理空間之間的橋梁,使得人們在物理空間達成的合約能夠通過虛擬空間的智能技術來實現。
比特幣作為首個采用區塊鏈技術并成功運行的數字貨幣,其市值已達到了上千億美金,但在九年多的運行過程中,其在交易速度、交易確認時間、能源消耗、應用可擴展性和存儲安全等方面的不完善之處也逐漸顯現。為了對比特幣的上述不完善之處進行改進,比特幣之后開發的以區塊鏈技術為基礎的數字貨幣,如以太坊(Ethereum)、達世幣(Dash)、卡爾達諾(Cardano)以及比特股(BitShares)等都對比特幣進行了一定程度的改進和演化,推動了數字貨幣在使用便捷性、應用的多樣化性和數字貨幣的安全存儲性等方面的進一步發展。
區塊鏈作為一種去中心化的分布式系統的關鍵技術,成功地實現了在無中心化機構背書的前提下節點與節點之間可以進行可信的交易。這是由于區塊鏈采取了適應P2P交易的數據結構,才使其成功地實現了去中心化。此外,哈希加密技術、共識機制和智能合約技術等都是區塊鏈技術飛速發展的關鍵,促進了基于區塊鏈的數字貨幣的基礎理論研究及應用的發展。
區塊鏈中區塊的基本結構由 4部分組成,分別是區塊分隔符、區塊大小、區塊頭部和區塊體。其中區塊大小決定了區塊中所能記錄的交易數量;區塊頭部用來鏈接其緊鄰的區塊;區塊體記錄了所有需要被驗證的交易。
區塊頭部由以下6 部分組成,分別是區塊版本號、父區塊哈希值、Merkle 樹根值、時間戳、目標值和隨機數。區塊頭部通過父區塊哈希值實現了相鄰區塊之間的鏈接。
區塊體由兩部分組成,分別是區塊的交易記錄以及每條交易記錄的詳情。
區塊鏈是未來交易信息存儲和查詢的重要技術,其關鍵技術正從理論研究走向具體應用。目前,區塊鏈的3 個主要關鍵技術分別是哈希加密技術、共識機制以及智能合約技術。下面對這3 個關鍵技術進行剖析和說明。
1.2.1 哈希加密技術哈希加密技術以哈希加密算法為基礎,是區塊鏈系統安全的重要保障技術之一。哈希加密技術具有下述4 個方面的特性,使其非常適用于區塊鏈領域。具體描述如下:
a)破解困難。對哈希加密后的信息進行逆向推算需要的時間是天文數量級,因此幾乎不可能破解哈希加密信息。
b)加密或驗證簡單。給定要加密的信息與對應的哈希算法,能夠在非常短的時間內對信息進行加密;或者給定加密后的信息,很容易驗證其是否是某段信息的哈希加密結果。
c)信息敏感性。加密信息即使只進行了輕微的改變,則其經過哈希加密運算后得到的值也會發生根本的變化。
d)加密結果無沖突。不同的加密信息經過哈希算法運算后不可能產生相同的哈希值。
此外,在區塊鏈中利用Merkle哈希樹可以驗證交易數據是否被竄改或刪除。Merkle 哈希樹是一類以哈希運算為基礎的樹,通常為二叉樹,也可以是多叉樹,樹上的葉子節點為交易數據的哈希值,非葉子節點是其孩子節點的哈希塊連接在一起進行哈希后的值。Merkle 哈希樹的樹根可以用來驗證交易數據的完整性以及交易數據是否被竄改過,而且驗證過程所需要的數據傳輸量及數據計算量是很低的,通常是對數數量級的。
1.2.2 共識機制共識機制主要是為了解決在去中心化的場景下如何讓區塊鏈中的分布式節點之間互相信任的問題,而且也是保證區塊鏈系統能夠持續運行的關鍵。目前的共識機制主要有工作量證明機制(PoW)、股權證明機制(PoS)、股份授權共識機制(DPoS)和拜占庭容錯機制(PBFT)等。
PoW 的核心思想是讓工作量越大的節點收益越高,即收益與工作量大小近似成正比。該機制正是依靠強大的工作量來確保區塊鏈的安全性。但是該機制也有明顯的缺陷,即大量的資源耗費以及工作量計算所造成的交易等待時間較長。比特幣就采用了PoW,讓所有節點求解復雜但易于驗證數學難題。通常只有算力最高的節點才能解開難題,獲得若干比特幣的獎勵。
PoS 是用“擁有的幣齡”的多少來證明節點是否有資格進行記賬。其目的是盡可能地減少資源的消耗,而又能達成共識。該算法讓具有最多幣齡的“記賬人”節點負責創建區塊,且享有投票權。相比PoW,PoS 最大的優點是縮短了共識達成的時間和減少了能源消耗;但也造成了擁有資源或幣齡少的節點幾乎永遠不可能獲得記賬權和投票權。卡爾達諾(Cardano)采用了PoS 機制,以太坊(Ethereum)計劃未來也采用該機制。
DPoS 是一種股份授權證明機制,類似于公司董事會投票,其機制是讓每一個節點選出候選人,讓候選人作為代表進行記賬和投票。由此可以看出,DPoS 從一定程度上減少了參與記賬和驗證的節點個數,并且讓每一個節點都可以參與到記賬和投票中來。因此,DPoS 在某種程度上是一種結合了PoW 和PoS 優勢的機制。目前比特股(BitShares)等都采用了該機制。
PBFT 實現了一種拜占庭容錯的分布式文件系統,該機制能夠保證系統的活性和安全性,并且提供了很高的容錯性。一般在該機制中的失效節點數只要小于系統節點總數的1/3 就能保證系統的安全性和活性。這里的活性指的是系統中的節點發送消息后都會收到響應;安全性指的是復制副本以滿足線性一致性。該機制通常用使用在私有鏈上。除了上述4 種主要的共識機制外,目前國內也提出了兩種主要的共識機制,即授權拜占庭容錯算法(dBFT)和POOL 驗證池算法。dBFT 對PBFT 機制進行了改進,其核心思想是根據節點權益來選擇區塊的記賬人,然后記賬人之間的記賬權通過拜占庭容錯算法來達成共識。POOL 驗證池算法是在一致性算法Pasox 等的基礎上,結合數據驗證機制實現的快速共識算法。
1.2.3 智能合約技術智能合約技術是跨領域學者Szabo 首先提出來的,并給了智能合約如下的定義:一套以數字形式定義的承諾(pro- mises),包括合約參與方可以在上面執行這些承諾的協議。在區塊鏈領域,智能合約用來封裝區塊鏈系統中的各類腳本代碼。這些腳本代碼規定了合約中交易的執行方式及交易的具體內容。智能合約使得區塊鏈可以成為一種可編程的貨幣,而且比傳統的貨幣交易更加靈活和高效。通常在合約中可以設置合約的執行時間、合約的觸發規則等。數字貨幣中的以太坊等都實現了智能合約的功能。
基于區塊鏈的智能合約的構建及執行通常包括如下3 個步驟。
a)產生合約。根據合約參與方的需要,設計腳本代碼來實現合約的內容。
b)合約的存儲。實現合約的腳本代碼需要存儲到區塊鏈的塊中。
c)合約的執行。合約的腳本代碼要能夠自動地執行,而無須人為地干預或操作。
區塊鏈技術發展至今,已經出現了上千種的以區塊鏈為設計基礎的數字貨幣。這些數字貨幣都以區塊鏈中的首個應用即Bitcoin 為原型,對Bitcoin 在功能或性能等不完善的方面進行了一定程度的演化,以此來滿足各種應用場景的需求。
Bitcoin 的設計原理如下:一個建立在P2P 協議和橢圓曲線簽名算法(ECDSA)基礎上的加密數字貨幣,該數字貨幣需要由“礦工”通過挖礦,即獲取滿足區塊頭部難度系數的哈希值;每個區塊附帶的數字貨幣數量初始為50 個,且每4年減半,從而保證Bitcoin 有確定的上限。
Bitcoin 作為一種以密碼學為理論基礎的數字貨幣,取得了巨大的成功;但在約九年的運行過程中,其不完善之處也逐漸顯現,主要體現在下述幾個方面。
a)基于Bitcoin 的交易速度慢。比特幣由于10 min 左右才出一個塊,塊大小僅有1 MB 且得經過連續6 個區塊的確認才能生效,所以交易時間通常長達數個小時,遠達不到目前商業交易的要求。
b)生成Bitcoin 需要耗費大量 的能源。Bitcoin 的生成采用基于PoW 的共識算法,需要進行大量的運算,耗費的電能是巨量的。
c)應用單一化。Bitcoin 由于其功能相對單一,其除了與法定貨幣或其他數字貨幣進行交易或交換外,要進行其他方面的應用開發難度通常很大。
d) 存儲安全性有待加強。Bitcoin交易所以及個人保存的 Bitcoin 近年來多次遭到黑客的攻擊,造成Bitcoin 被竊和用戶的恐慌,影響了Bitcoin 的推廣。
e)監管缺失,成為洗錢工具。由于Bitcoin 的私鑰只有擁有者自己知道,且擁有者的身份等都是匿名的,所以很容易被不法分子作為洗錢的工具。
f)去中心化程度的削弱。隨著Bitcoin 中挖礦的礦場的規模越來越大,大的礦場的算力遠遠高于小礦場和個人的算力,且幾個大礦場的聯合算力已超出總算力的50%,這使得經濟實力薄弱的個體和小團體不得不退出挖礦,背離了Bitcoin 的去中心化的初衷。
由于Bitcoin 存在上述6 個方面的不完善之處,后來陸續開發的數字貨幣系統如Ethereum、Cardano、Dash、BitShares 等以Bitcoin 為基礎,對Bitcoin 在功能上進行了演化,分別在一定程度上解決了Bitcoin 存在的上述若干問題。下面分別對這幾類數字貨幣系統的設計原理進行介紹,并說明它們與Bitcoin 相比在哪些方面進行了完善和演化。
Ethereum 是以Bitcoin 為基礎的一個區塊鏈應用開發平臺,能夠適應不同的操作系統和開發語言,具有多樣化的客戶端。Ethereum 使用Python、C、Java 等語言來開發區塊鏈應用,這些應用所使用的高級語言通過各自的編譯器轉換為圖靈完備的腳本語言(Ethereum virtual machine,EVM 語言)去執行。Ethereum 與Bitcoin 最大的一個區別是其提供了功能強大的智能合約編程環境。如果說Bitcoin 的功能只是局限在數字貨幣本身的使用價值上,即通常認為的區塊鏈1.0,那么Ethereum 根據各類應用在商業與非商業環境下的復雜邏輯,可以開發出滿足各種需求的智能合約應用程序,極大地豐富了數字貨幣的應用領域,直接將區塊鏈技術的發展帶入到區塊鏈2.0 時代。
Ethereum 與Bitcoin 相比,其 進行演化的地方主要體現在以下 幾點。
a)多樣化的應用開發。智能合約使得Ethereum 上的應用眾多,極大地開拓了數字貨幣的應用領域和使用范圍。
b)交易速度的加快。Ethereum的出塊只需十幾秒,比Bitcoin 的出塊速度要快一個數量級,因此其交易速度比Bitcoin 快。
c)增強了去中心化的程度。Ethereum 采取SHA-3 哈希算法,可以阻止使用ASIC 挖礦,使得超級礦機出現的難度增大,從而能使得更多的“礦工”加入以太幣挖礦,增強了Ethereum 的去中心化程度。
Cardano 是數字貨幣行業內首個先做數字貨幣的學術研究,再根據發表后的研究成果去實現加密數字貨幣,即Cardano 數字貨幣系統。由此可以看出,Cardano 的性質及其功能都是經過嚴格的數學證明和學術界同行的評審,保證了其在理論上是安全和正確的。
Cardano 采用的共識機制是PoS,該機制的具體實現協議名為烏洛波羅斯(Ouroboros),且該協議使用經過嚴格的數學證明,確保其安全性是有理論保證的。
Cardano 采用分層架構進行實現,主要功能層如下。
a)清算層。Cardano 的代幣在該層流通,是Cardano 整個生態系統的基礎,是為了實現對Cardano 幣的交易量、交易時間等信息的記錄。
b)計算層。在該層提供智能合約、消息認證、消息通信等功能,以方便應用開發者在這一層開發滿足各種需求的應用。Cardono 的一項重大創新就是計劃采用形式化方法來完成受控計算,從而實現用戶隱私與監管需之間的平衡,進而試圖減少使用Cardano 所存在的金融風險。此外,Cardano 計劃使用不同于TCP/IP 的遞歸網絡架構(recursive internetwork architecture,RINA),使得節點之間的信息交互類似于進程間交互,以加快節點之間的信息傳遞效率。
Cardano 與Bitcoin 相比,其進行演化的功能主要體現在以下 幾點。
a)交易速度的提升。Cardano功能的分層實現以及采取RINA 架構,使得Cardano 的交易速度得到了極大的提升。
b)Cardano 采用PoS 共識機制,極大地降低了能源消耗。
c)使得對數字貨幣的監管成為可能。Cardono 在形式化的推理設計中,考慮了對數字貨幣的金融監管。
d)多樣化的應用開發。智能合約功能豐富了基于Cardano 的應用開發。
e)增強了數字貨幣的存儲安全性。Cardano 的形式化實現方法有利于設計與其匹配的存儲方案。
Dash 是Bitcoin 的超集,具有Bitcoin 的主要特性。例如其也要進行挖礦來產生達世幣,只是達世幣中出塊的速度為約每2.5 min 產生一個塊,獎勵給挖出該塊的礦工五個達世幣。Dash 對Bitcoin 的最大擴展之處在于增加了主節點網絡。Dash中的節點如果擁有了1000 個用來進行資質認證的達世幣,其就可以作為主節點。主節點網絡以Bitcoin 的底層區塊鏈網絡為基礎,由專用服務器組成。目前主節點網絡中的主節點總數超過了4000。
Dash 將挖礦產生的達世幣按照45%、45%、10%的比例分配給“礦工”、對交易進行確認的主節點以及達世幣社區。由于主節點網絡的存在,Dash 內的交易可以在幾秒內完成,即實現即時支付;而且由于有主節點網絡的信用背書,能大大增強交易的安全性。Dash 中的社區為區塊擴容、生態鏈發展等方面問題提供了一個解決的通道。
在挖礦算法方面,Dash 使用X11 算法,即使用11 輪SHA3 算法進行哈希運算,且每輪的計算結果都作為下一輪的輸入,直到完成11輪的運算。這樣做的目的是為了延遲針對特定算法的礦機的產生時間,使得更多的人們使用普通的計算機參與到Dash 的挖礦中來。
Dash 與Bitcoin 相比,其進行演化的功能主要體現在以下幾點。
a)商業級的交易速度。主節點網絡使得交易能夠達到絕大多數的商業需求。
b)很高的去中心化程度。X11算法保障更多的“礦工”可以參與到Dash 的挖礦中;且Dash 中的社區也增強了Dash 的去中心化程度。
c)Dash 中的社區機制從一定 程度上對Dash 幣的交易起到了監管作用。
BitShares 是一個基于區塊鏈技術的金融交易綜合服務平臺,其目標是構建一個去中心化的自由市 場金融生態系統。任何個人或機 構都可以在BitShares 平臺上進行轉賬交易,發起眾籌等,還可以基于BitShares 構建虛擬貨幣交易所,甚至還能在BitShares 平臺上實現符合監管的黑白名單等功能。
BitShares 設計了一種可自由交易的新型數字資產——比特股市場錨定資產。該類資產可以與美元、歐元或黃金等進行兌換。例如比特股數字錨定資產BITUSD 可以兌換同等數額的美元。比特股市場錨定資產通常以兩倍價值的比特股數字錨定資產作為抵押物,并以智能合約自動執行清算來保證兌換的執行,從而可以避免兌換交易的違約風險,保證了比特股市場錨定資產價值的穩定性,讓比特股生態系統形成良性循環。
此外,BitShares 使用了DPoS機制,讓擁有比特股的節點都有權進行投票,票數最高的101 個節點有權對交易進行記錄。
BitShares 與Bitcoin 相比,其進行演化的功能主要體現在以下 幾點。
a)商業級的交易和轉賬速度。BitShares 由于采用了DPoS 機制,使得交易確認時間在3s 內可完成,交易速度可達每秒10 萬筆,完全達到了通常條件下的商業交易的要求。
b)低能源消耗的DPoS 機制確保BitShares 中的節點達成共識。
c)適用于多個應用領域。比特股市場錨定資產可以保證比特股的價格在一定時期內保持價格穩定,從而使其能夠在多個領域內應用。
區塊鏈對傳統中心化技術進行的顛覆性創新,為金融、食品安全、物種保護、物聯網等眾多行業提供了可供選擇的去中心化的應用模式。根據區塊鏈本身的特性以及區塊鏈目前的應用現狀,以下所列的研究內容預測是未來區塊鏈研究的主要方向。
a)基于區塊鏈的數字貨幣發行方面的研究。數字貨幣目前在發行、流通、監管、調控等方面技術尚不成熟,缺少有效的發行方案。未來在數字貨幣方面的研究將會涉及如下方面:降低傳統紙幣發行、流通的高昂成本,提升經濟交易活動的便利性和透明度,減少洗錢、逃漏稅等違法犯罪行為,以及提升央行對貨幣供應和貨幣流通的控制力等。
b)基于區塊鏈的交易追蹤方面的研究。目前的研究主要考慮了基于區塊鏈的數字資產交易如何進行,在基于區塊鏈的交易的可追溯方面的研究還較少。未來的研究方向應該是設計交易規則和監管框架等來保證交易的高效性和追蹤的及時性。
c)區塊鏈中海量數據的分析研究。目前的研究很少有涉及到對區塊鏈中的海量數據分析。但是區塊鏈中記錄的數據都是物理世界中產生的真實數據,這些數據對于用戶畫像和用戶行為等方面的分析具有巨大的商業價值,因此,未來的研究將會是使用機器學習或深度學習等各類智能算法分析區塊鏈中的用戶數據,提煉出其中有價值的商業信息。
介紹了區塊鏈技術的基本原理,分析了基于區塊鏈的比特幣 的性質以及在比特幣基礎上開發的>Ethereum、Cardano、Dash、BitShares等對比特幣的功能演化。以區塊鏈技術目前的主要應用現狀為基礎,分析了數字貨幣研究面臨的挑戰和未來可能的研究趨勢。
區塊鏈技術從提出到現在尚不足10年,還處于非常初期的發展階段,與其相關的標準還未成熟。盡管如此,許多國家都將區塊鏈作為重大的戰略研究技術,這是因為區塊鏈對一個國家在金融主權、社會征信、跨境交易等領域都將產生重要且深遠的影響。因此,積極參與區塊鏈相關技術在各領域標準的制定,深入研究區塊鏈對各領域技術創新的價值,將會增強國家未來在科技、經濟等諸多領域的話語權和領導權。?