開發區塊鏈都用什麼框架?
開發區塊鏈都用什麼框架?以適應不同場景的需求為目標,區塊鏈應用在實際使用過程中向來會需要進行多次修改,來滿足特定業務的需求,於是用於定製專用區塊鏈系統的架構就出現了,採用這些框架就能夠便捷地定製出適用於企業自身業務需求的區塊鏈系統。
1、比特幣架構
比特幣(Bitcoin)身為區塊鏈的始祖,在區塊鏈的大家族中具備舉重若輕的影響力。
無需中央機構就能夠發售貨幣;
無需中介機構就能夠支付;
維持使用者匿名;
交易無法被撤銷。
2、以太坊架構
以太坊(Ethereum)的目標是提供一個帶有圖靈完備語言的區塊鏈,用這種語言能夠建立合約來編寫任意狀態轉換功能。使用者只要簡單地用幾行程式碼來實現邏輯,就能夠建立一個基於區塊鏈的應用程式,並應用於貨幣以外的場景。以太坊在比特幣的功能之外,還有下列幾個設計目標:
圖靈完備的合約語言;
內建的持久化狀態儲存。
3、Fabric架構
Fabric是由IBM和DAH主導開發的一個區塊鏈框架,是超級帳本的專案成員之一。它的功能與以太坊相似,也是一個分散式的智慧合約平臺。但與以太坊和比特幣不同的是,它從一開始就是一個框架,而不是一個公有鏈,也沒有內建的代幣(Token)。
身為一個區塊鏈框架,Fabric採用了鬆耦合的設計,將共識機制、身份驗證等元件模組化,使之在應用過程中能夠方便地根據應用場景來選擇相應的模組。除此之外,Fabric還採用了容器技術,將智慧合約程式碼(Chaincode)放在Docker中執行,從而使智慧合約能夠用幾乎任意的高階語言來編寫。
下列是Fabric的一些設計目標:
模組化設計、元件可替換;
運行於Docker的智慧合約;
4、Onchain DNA架構
Onchain DNA(Onchain Distributed Networks Architecture),能夠同時支援公有鏈、聯盟鏈、私有鏈等不同應用型別和場景,並快速與業務系統整合。分佈科技同樣也是超級賬本的成員之一。
Onchain DNA的設計目標關鍵有下列幾點:
多種數字資產的底層支援;
圖靈完備的智慧合約和持久化狀態;
跨鏈互操作性;
交易的最終性。
5、Corda架構
Corda由Java和Kotlin開發,並在其各項功能中充分依賴於Java,比如智慧合約、資料訪問介面等。Corda的設計目標關鍵是:
沒有全域性賬本;
由公證人(Notaries)來解決交易的多重支付問題;
只有交易的參與者和公證人才能看到交易。
為此Corda的所有交易都不會向全網進行廣播,而且所有的節點都是直接通訊,沒有P2P網路。這一點導致了其網路規模會被限制在一個較小的規模內,無法形成大規模的聯盟鏈,適用的業務場景比較狹窄。