iT邦幫忙

2019 iT 邦幫忙鐵人賽

DAY 3
0
Blockchain

區塊鏈開發(Blockchain/DLT Application Development)系列 第 3

分散式帳本(DLT)平台:Ethereum、Fabric、Corda

分散式帳本技術(Distributed Ledger Technologies, DLT)目前存在著開放原始碼且持續開發中的平台並不多,可以從以太坊、Hyperledger Fabric 和 R3 Corda 這三個平台開始了解。

關鍵特性

這些平台的共識機制、交易機制都有很大的不同:

  • 共識機制:造成最終確認性的差異
    • DLT 的交易提交(Commit)後應該是不可以撤銷的
    • 交易的順序性相當重要,雙重支付(double-spending)就是以並行交易達成雙花攻擊
    • Fabric 與 Corda 使用的共識機制可提供交易最終確認
  • 共享資料:不同的資料共享範圍
    • DLT 平台的資料採分佈式儲存,網路中的各節點共享資料
    • Fabric 與 Corda 提供點對點間的隱私資料共享

以太坊(Ethereum)

  • 可審計的加密數字資產
  • 支援側鏈(Sidechain),實現跨區塊鏈的數字資產移轉
  • 工作量證明(PoW)對交易進行多次確認,存在被攻擊的空間,有一定成功機率

Fabric

  • 以模組化架構為基礎
  • 適合商業用開發的區塊鏈平台
  • 節點:
    • 客戶(Client):終端使用者,建立交易並呼叫智能合約,向背書節點發送交易
    • 背書(Endorser):所有背書節點一致性的通過共識機制,對交易提供背書
    • 訂購(Orderer):接收客戶節點收集的背書交易,確認順序後於通道(Channel)廣播
    • 對等(Peer):接收訂購節點的訊息,向帳本提交交易
  • 共識機制 智能合約:BFT演算法、多種共識機制

Corda

  • 基於公開金鑰基礎建設(Public Key Infrastructure, PKI)
  • 節點:
    • 公證(Notary):共識機制的驗證
    • 預報(Oracle):共享外部資料,例如外幣匯率
  • 共識機制:
    • 交易合法性(validity):檢查所有數位簽章
    • 交易唯一性(Uniqueness):檢驗輸入狀態(State)僅存在唯一的交易
  • 智能法律合約(Smart Legal Conracts):
    • 法律行文(Legal Prose):支援 Ricardian Contract 法律合同文件結構

三種不同框架的設計理念不大相同。

  • 以太坊:可用於開發不同數字資產,主要還是特定在數位貨幣相關應用領域
  • Fabric:旨在提供一個模組化、可擴充的架構,可適用於不同應用領域
  • Corda:主要適用於金融服務業
平台 以太坊 Fabric Corda
描述 模組化 適用金融行業
主要開發 以太坊開發者 LinuxFoundation R3
運行模式 Public,Private Private,Permission Private,Permission
共識 PoW,PoS 支援多種方法 公證(Notary)節點
智能合約 Solidity Go,Java Kotlin,Java

上一篇
區塊鏈與金融科技(Fintech)
下一篇
瞭解哈希樹 - Merkle tree
系列文
區塊鏈開發(Blockchain/DLT Application Development)30

尚未有邦友留言

立即登入留言