區塊鏈與分散式賬本技術(上)

買賣虛擬貨幣

前言:區塊鏈是一種分散式賬本的技術,但它又不完全等同於分散式賬本技術。它們有什麼區別?本文作者Brent Xu 透過比較以太坊、Hyperledger Fabric和R3 Corda來闡述這個問題,對於我們認識區塊鏈和分散式賬本技術有幫助。本文來源於media.consensys.net,由藍狐筆記社群“Anthony”翻譯。

與分散式賬本技術(如Hyperledger Fabric或R3 Corda)相比,以太坊區塊鏈保持了相似性但也有差異。在對區塊鏈和分散式賬本技術平臺及其帶給企業的價值進行合理評估時,對其核心功能和特性進行系統梳理是很有必要的。 由於區塊鏈源於密碼學和資料配置原則,某些功能在協同資料庫系統中已經得到了很好的應用,而其他一些功能只有在真正的區塊鏈技術中才能實現。

在本文中,我們將評估面向企業平臺(包括Ethereum,Hyperledger Fabric和R3 Corda)的基礎業務功能,包括軟體如何獲取其影響以及整個系統是如何整體最佳化的,無論它是透過傳統的分散式系統還是透過區塊鏈系統。


特別是,我們將重點關注三個關鍵功能:

1.資料協調 - 系統中的資訊和信任是如何更好地在利益相關者之間分發和分配

2.加密經濟內部激勵層 - 系統機制如何構建,以便不同的利益相關者和使用者基於經濟激勵來確保系統的有效執行,例如博弈論和機制設計。

3.數字資產整合 – 系統如何融入數字商品經濟,也就是所謂的代幣經濟學。

區塊鏈的主要目標:企業想透過這項技術實現什麼目標?

像Ethereum這樣的區塊鏈與其他分散式帳本技術類似,有著相似的目標。然而想知道企業希望利用區塊鏈技術實現什麼樣的目標很難,就像20世紀90年代的網際網路剛剛誕生時一樣,當時企業也不知道如何使用這種強大的工具。與現在的情況類似,目前我們都知道區塊鏈技術能夠實現很多功能,但如何將這些功能架構到商業業務邏輯上還需要進一步瞭解和評估其底層功能。

有三個主要的評估維度:資料的處理和協調,可信及不可變的記錄以及資產的數字化。

這三大維度足以涵蓋區塊鏈的主要用途,同時允許將這些功能進一步外推到其他商業業務場景中。透過這三個方面的討論,可以揭示實體企業使用該技術的背後邏輯。

有效處理及協調資訊

如果以改進分散式系統設計或資料庫協調性作為唯一目的,那麼區塊鏈不一定是必需的。在傳統的宣傳上,區塊鏈是基於技術促進平臺中資料傳輸,達到更好的資料協調和分散式共識機制。

雖然有用,但這些所需功能特性的重要部分也可透過更好協調中央資料庫或分散式系統設計進行最佳化。在評估當中,有必要確定平臺和協議試圖最佳化現有資料協調功能與實施新的區塊鏈功能程度。區塊鏈不僅只適用於更高階的資料協調。

產品和交易記錄的不可變/可信記錄

關於為什麼我們需要區塊鏈的原始論文圍繞著“數字化信任”的概念展開。如ConsenSys的Andrew Keys所說“網際網路導致資訊數字化,而區塊鏈導致信任和協議的數字化。”

這個論點體現了區塊鏈希望實現的精神,同時為我們的社會及商業提供了另一條路。額外的變數將是價值的數字化。當信任價值被錨定到系統時,某些聯盟結構和激勵機制將影響和激勵系統內的正確行為,從而形成強大的平臺。

在設計一個系統時,不可更改(不變性)常常被用作信任的同義詞,即因為系統是不可變的,所以人們相信系統不變性機制能確保做壞事會受到懲罰。在我們的平臺協議評估中,重要的是要評估可信系統實施背後的機制,以確保商業模式機制(透過密碼經濟學進一步探索)會對平臺使用者有益。

資產數字化

商品和資產的數字化被視為大多數區塊鏈或分散式賬本技術的主要目標。如果企業正在嘗試資產數字化,分散式賬本的資料庫協調能夠提供一些功能,但更應該考慮這些數字產品的可用性。

由於資料庫協調實質上是集中執行或透過傳統軟體模式分佈在一個或多個交易小組之間,因此數字化水平可能會受限於數字化平臺提供的自由度。

雖然數字化商品的概念聽起來像一個簡單的過程,但圍繞房地產,甚至人類注意力及電力等商品如何數字化在經濟激勵動力和經濟推理的不同方面,我們要重新考慮,哪個平臺負責數字化,哪個供應商平臺在哪種情況下出現“供應商鎖定”程度以及對哪個管理平臺的依賴。

記錄和註冊管理機構(如權證系統和供應鏈)也可以透過分散式賬本系統實現,但如果依賴封閉的專有系統,數字資產與經濟激勵層的互動水平相當有限,並且在擴散到數字生態系統或市場時會嚴重受阻。利用開放市場提供的自由市場系統對於在不斷髮展的數字生態系統中起促進作用。

評估資料協調特性

資料庫協調:特徵

當深入分析了這些平臺的功能特性時,如不可變性,安全性,可擴充套件性,可管理性和效能,但透過了解構建體系結構的基礎,可以瞭解更多內容。

在分散式系統中進行資料協調,已經有許多工具了。其中重要的例子就是Hadoop 及其生態系統整合的Spark,Hive和Zookeeper等工具。對這些產品的依賴顯示了分散式系統工具和協議的大量整合。

進一步的相似性可以在協議中顯示出來,例如Tendermint,BPFT共識引擎被設計為具有與Apache Zookeeper等工具類似的功能。在內部,也有研究沿著事件排序資料庫的方向發展,可以從協調的資料共享系統中複製所需的多種功能。

透過評估Apache Kafka及資料流服務如何在企業環境中實現高水平吞吐量,我們可以根據對這些資料庫協調和最佳化的不同級別的依賴關係區分割槽塊鏈和分散式分類賬之間的功能差異。

包括Plasma在內的以太坊實現正在利用像MapReduce這樣的工具來增強UTXO和基於賬戶的模型之上的某些對映功能,同時也將元件減少到Merkle證明中,儘管協議的基礎層依然依賴以太坊區塊鏈。透過了解這些細節,可以進一步瞭解如何最好地評估這些軟體平臺的技術特性。

資料協調:平臺比較

IBM Fabric

透過深入瞭解Fabric體系結構,該平臺建立了一個複雜的開發環境,專注於軟體體系結構的詳細配置實現出色的吞吐量,從而在分散式節點環境中實現最佳效能。客戶端和分散式背書節點網路之間的鏈碼的移動,以及滿足認可政策的交易機制和收據傳輸在封閉系統中是有效的。

而在專用通道內傳播交易的Gossip 協議允許協調大型資料集。雖然基礎設施強大且有能力,但在思考如何設計架構以允許多邊協調結構的過程中,要考慮最終可能存在一個難以管理的網路涉及的因素。

圖2:Hyperledger Fabric架構


該圖展示了Fabric的一些架構配置以及元件如何組織到為高階資訊處理和最大交易吞吐量而設計的系統中。

主要思想是渠道提供了在平臺內移動交易的機會。在檢視體系結構時,OSN(ordering service nodes)的功能用於記錄Apache Kafka交易排序的功能。在資料流生態系統中,Kafka是一個功能強大的工具,具有將各種交易排序附加到單獨的Kafka叢集並最終分割槽的功能。

這種設定中,資料能夠分佈在叢集中以形成分散式儲存平臺,該分散式儲存平臺可以記錄資料結構,影射在區塊上或有時記錄在“狀態”的結構定義內被稱為“塊”或Blob的資料結構,價值儲存配置。在此軟體框架中承認的是,該生態系統中的所有參與者和資料結構都是本地的,因為它們主要與該軟體生態系統中的其他使用者一起工作。

圖3:Apache Kafka


儘管應該認識到雜湊的配置並不遵循與來自比特幣或以太坊的區塊鏈系統相關聯的原始架構設計,但實際上Fabric採用了分散式帳本的子結構來部署某些雜湊連結的資料儲存。

雖然資料blob被批次處理並經歷交付事件以最終建立交易的雜湊連結,但必須瞭解,此過程不一定會將資料轉換為系統狀態的修改。相反,這些塊的配置方式是將資訊儲存在具有不同雜湊例項的資料庫型別結構中。

在Fabric生態系統中,交付事件稱為塊,而鏈程式碼透過部署事件最終將資料保護在排序服務結構的連結部分中。該系統的資料結構和模組的配置能夠允許分散式資料庫體系結構預期的交易吞吐量,儘管應該承認,資產程式碼協調仍然是一個尚未完全解決的挑戰,作為資產和價值的Fabric生態系統不一定具有可以在賬簿中進行協調的數字表達。

R3 Corda

R3 Corda聲稱不建立區塊鏈的環境之上,而是一個分散式的資料庫,利用各種形式的結構重新配置來構建,它主要由銀行和其他機構用於其流程的系統。該平臺大量借鑑了比特幣交易中使用的UTXO模型,其中狀態由一系列輸入和輸出定義,並且輸入的不同重新配置可以決定輸出的狀態。

R3 Corda架構框架依賴於被稱為公證的子模組的節點結構,該架構有助於保持其他平臺中驗證器結構的網路有效性,該結構有抽象共識功能。節點由附加在資料結構中的關聯式資料庫組成,允許使用SQL進行查詢。交易通訊中受制於子協議。

這些流程與IBM Fabric中看到的渠道體系結構相當,只有與交易相關的各方才能訪問資訊。類經過轉換,變成稱為Fibers或協同例程的狀態機。該體系結構與子流進行通訊,並與在平臺範圍內具有預定義功能的流庫進行互動。此外,Corda內還有一個自包含的身份層,允許在整個網路中進行不同程度的訪問控制。

R3 Corda公開宣告不打算成為區塊鏈,因為考慮到將分散式資料庫的概念重新配置到分散式資料庫確實非常依賴傳統資料庫系統。雖然系統圍繞新型資料結構和分散式系統組織方式的不同構成進行架構,但該平臺確實具有資料分配的功能,並找到了各種最佳化資料分配系統功能的方法。

需要記住的是,由於系統僅限於特定架構範圍內的資料協調,因此,由於模組化和互操作性未在原始設計中實施,所以已經犧牲了與實際區塊鏈系統的整合。

圖4:R3 Corda工作流程


Ethereum

以太坊生態系統由私有鏈和公有鏈生態系統組合而成。公有鏈沒有在資料協調環境中描述的吞吐量和資料處理能力,因此不應根據這些能力進行評估。在評估以太坊的這一方面時,最有意義的是綜合以太坊私有鏈的網路拓撲的不同細微差別。

以太坊黃皮書頒佈了關於以太坊的規範以及程式碼庫的技術細節。由於嚴格遵守此協議,以太坊的分支以及聯盟實施方案確實與原有的技術基礎相類似。事實上,無論是在工作證明(Proof of Work, PoW ),權威證明(Proof of Authority)或利益證明(Proof of Stake, PoS)實施方面,相同的規範都是連續的,因為協議被認為是相同的以太坊虛擬機器(EVM)規範的後代。

改進的體系結構仍然指定與原始EVM對齊。像Quorum這樣的平臺的關鍵變化包括改變共識機制,修改全球根狀態以適應私有和公有狀態,Patricia Merkle嘗試以及處理私人交易的附加模組。

該架構允許該軟體從原來的以太坊配置中維護系統和資料結構,同時透過改進實現更高的交易吞吐量。除了Quorum提供的改進的資料交易最佳化之外,透過諸如Plasma,Truebit和Cosmos等工具協調和整合公共以太坊環境的功能為協議提供了額外的可擴充套件性。

透過對Plasma等工具的技術評估以及在Casper中獲得一致意見的形式,資料庫管理工具(如MapReduce和Abstract Rewrite Systems)將在Ethereum中實施。在Plasma體系統中,MapReduce是彙集基於賬戶的系統的協調和多重設定的點陣圖 - UTXO承諾結構的組成部分。

透過結合防欺詐機制設計(Fraud-proof mechanism designs)和權益激勵結構(Fidelitybond incentive structures),利用根鏈,Plasma鏈和子鏈之間的相互作用,精心策劃的交易處理範例有助於滿足Block-withholding和Mass withdrawalsurfaces之間的動態。

它還允許使用來自Casper或Truebit等系統的機制來填充更多的加密經濟結構,以便根據空間中普遍存在的資料可用性問題映象擦除編碼中使用的概念。對於多連線體系結構,以太坊將能夠將分散式資料庫系統的資料庫協調和吞吐量功能與實際區塊鏈的公有鏈相容功能相結合。

資料庫協調:結論

關於資料庫協調能力的一個可行結論是,由於依賴傳統資料庫和分散式系統軟體架構,IBM基於整體單一設計和大量資源密集型過程,構建了Fabric,IBM擁有卓越的資料庫管理工具集。

R3 Corda仍在進一步定義其功能,同時為銀行和金融機構提供多種協調服務,對比特幣協議中的細微差別進行私人重新配置。以太坊雖然設計用於公有鏈的相容性,它沒有IBM Fabric的原始資料庫處理能力,但和Fabric相比,在企業案例中具有很好的可用性和可伸縮性。

遵循基於unix理念的模組化設計,以太坊和互補客戶的私人例項可以作為構建大型系統的構件。與Ethereum相關的程式碼庫旨在與Fabric等資料庫平臺的事務吞吐量功能相媲美,同時允許Corda和Fabric中不存在的功能,但互補關係也可跨平臺進行探索。主要的區分因素可能會從後續因素的評估中進一步闡明。


---未完待續---


風險警示:藍狐所有文章都不構成投資推薦,投資有風險,建議對專案進行深入考察,慎重做好自己的投資決策。


想要深入瞭解區塊鏈,長按下面二維碼關注“藍狐筆記”區塊鏈公眾號:lanhubiji 或加入知識星球:https://t.zsxq.com/iaQNnIq

免責聲明:

  1. 本文版權歸原作者所有,僅代表作者本人觀點,不代表鏈報觀點或立場。
  2. 如發現文章、圖片等侵權行爲,侵權責任將由作者本人承擔。
  3. 鏈報僅提供相關項目信息,不構成任何投資建議

推荐阅读

;