Hyperledger Fabric: Towards Scalable Blockchainfor Business

1y ago
5 Views
2 Downloads
719.27 KB
18 Pages
Last View : 1m ago
Last Download : 3m ago
Upload by : Javier Atchley
Transcription

Marko Vukolić, IBM Research - ZurichHyperledger fabric:towards scalable blockchain for businessTrust in Digital LifeThe Hague, Netherlands, June 17 2016 2015 IBM Corporation

Blockchain – shared, replicated, ledgerConsensusprotocol ensuresledger replicasare identical*Party A’s RecordsCounter-partyrecordsLedgerLedgerBank recordsLedgerAuditor recordsParty C’s RecordsLedgerLedgerLedgerParty B RecordsParticipantshave possiblymultiple sharedledgers 2015 IBM Corporation

What is a Blockchain? A chain (sequence) of blocks of transactions- Each block consists of a number of transactions#0Genesisblock #1 #234#235#236Bitcoin transactions- simple virtual cryptocurrency transfers- (address A, address B, amount) Transactions do not have to be simple nor related to cryptocurrency- E.g., smart contracts (Ethereum)- chaincode (Hyperledger)3 2015 IBM Corporation

Growing Proof-of-Work (PoW)-based BlockchainTransactions(payload) #234#235#236A hash of block #236B Root hash ofMerkle tree of txhashesC nonce 1D nonce 2Block #237h hash of Block #237 SHA256(A B C D)§ Block “mining”: Every participant (“miner”) tries to find nonces such that the hash of the block h is lower than a 256-bit target§ Bitcoin Target dynamically adjusted: 1 block generated roughly every 10 minutes Already in 2014, this required more than 280 expected hashes4 2015 IBM Corporation

Example (longest/most difficult chain wins)#237A #234#235#236#237B5#238B#239B 2015 IBM Corporation

Example (longest/most difficult chain wins)Orphaned block#237A #234#235#236#237B6#238B#239B 2015 IBM Corporation

Implications and the performance issuePoW way of extending the ledger heavily and negatively impactssystem scalability and overall throughput§ Bitcoin: With 1 block every 10 minutes and fixed block size of 1 MB Peak throughput: only 6-7 tx/sec Latency (of 6 block confirmations): about 1h§ Better performance by tuning PoW parameters? 7shorter block generation times (increasing block frequency)?larger blocks?Different conflict resolution rules?Limited benefits, potentially weaker security 2015 IBM Corporation

Introducing smart contracts/chaincodeModern crypto ledgers (e.g., Ethereum, Hyperledger)aim at supporting “smart contracts” or “chaincodes”A smart contract is an event driven program, with state, which runs on areplicated, shared ledger and which can take custody over assets on thatledger. [Swanson2015]“Smart contract” à (replicated) state machine8 2015 IBM Corporation

State machine replication (SMR)§ Classical Distributed Computing problemWhat machine faults?§ Crash faults (CFT): A machine simply stops execution and halts Paxos, RAFT, Zookeeper AB, § Non-crash (a.k.a. Byzantine) faults (BFT) A model that cryptocurrencies adopt#237A #234#235#236#237B9#238B#239BNo forks! 2015 IBM Corporation

BFT Consensus (example of PBFT [TOCS2002])Seq #24View noTx1 Tx3Tx2 Tx4Party A (leader)Party BParty CParty DValidate the block Seq #24View no#21#22#23Tx1 Tx3Tx2 Tx4Commit the block to thelocal copy of blockchain(if 2f 1 out of 3f 1 agree)Many other things burden the implementation (it is not simple as it might look) Leader election State transfer (new, slow Party) Reconfiguration10 2015 IBM Corporation

PoW vs. SMR for Blockchain (simplified overview)Proof of Work (Bitcoin, Ethereum,.)State machine replication (Ripple, Hyperledger, )MembershiptypePermisionlessPermissionedUser IDs(Sybil attack)Decentralized, Anonymous(Decentralized protection by PoWcompute/hash power)Centralized, all Nodes know all other Nodes (Centralizedidentity management protects against Sybil attacks)Scalability(no. of Nodes)Excellent, 100k NodesVerified up to few tens (or so) Nodes(scalability limits not well explored)LatencyPoor, up to 1hDepends on the implementation/deployment (order of ms)Throughput7 tx/sec upper bound (Bitcoin) 10k tx/sec with existing implementations in softwarePowerefficiency 1 GW (Bitcoin)Good (commodity hardware)Temporaryforks inblockchainPossible (leads to double-spendingattacks)Not possibleConsensusFinalityNoYesOpen research problem:no. of nodesScalabilityExcellentGiven the use case, network,Excellent(no. of Clients)What is the most suitable and scalable Blockchain technology/protocol?11 2015 IBM Corporation

Marko Vukolić.The Quest for Scalable Blockchain Fabric: Proof-of-Work vs. BFT ReplicationProceedings of the 2015 International workshop on open problems in network security (iNetSec 2015).12 2015 IBM Corporation

edger.org/ 2015 IBM Corporation

Existing blockchains unify many functionalities in one nodeSmart contract executionTransaction s limits achievable performance and harms scalabilityAt odds with confidentiality 2015 IBM Corporation

Hyperledger fabric v2 – architecting a scalable blockchain§ Hyperledger fabric v2 (late 2016/early 2017) Separation of concernsChaincode BexecutionChaincode AexecutionConsensus fabricChaincode BvalidationChaincode AvalidationArchitecture-level approach to scalable and confidential blockchainGoal: Towards hundreds of consenters/peers running many thousands -Consensus-Architecture-Proposal 2015 IBM Corporation

Blockchain fabric comparisonFeatureAttributeBitcoin(digital utedapplications)Open essPermissionedPermissionless PermissionedProof of work(custom-made)Byzantine faulttolerant (BFT)consensusProof of work,Proof of stakePluggable consensusframework(currently: provenpractical BFT)Very limitedNone(stack-based(had Codius, butscripting language) discontinued)Soliditydomainspecificlanguage(DSL) (Turingcomplete)Go (golang),Java (in progress) Support for otherlanguages and DSLsenvisioned in futureNativecryptocurrencyYes (BTC)Yes (XRP)Yes hanismsNoNoSmart contractlevelconfidentialitySmart contract(chaincode) level fabric-level confidentialityNo transaction, once verified, can bechanged by any partyConsensusalgorithmPrevention of asset double-spendingBusiness logic can self-execute withassurance that the terms can not bealtered by any party withoutagreement from stakeholdersTransaction execution evolvesaround a blockchain-specific digitalcurrencyTransaction confidentialitySmart contractssupportHyperledger fabric(generic bric 2015 IBM Corporation

Thank You! 201 6 IBM Corporation

Hyperledger (v2) transaction flow123 SUBMIT,cID,chaincodeID,txPayload,sigC PROPOSE,txPayload,tran-proposal,sigSP (tran-proposal : date,verDep)) TRANSACTION-VALID, txID,sigEPi 1Simulate/Execute N-VALID sigsinto endorsementto ute txPayloadVerifyverDepstateUpdateSign TRANSACTION-VALID345consensus service25VerifyverDep, endorsementIf OKapply stateUpdatesclient (C)submittingpeer (SP)endorsing endorsing endorsingpeer (EP1) peer (EP2) peer (EP3)Consensus service API: Broadcast(blob) 4 Deliver(seqno,prevHash,blob)peer (P1)consentersblob (tran-proposal, endorsement)5 2015 IBM Corporation

Hyperledger fabric v2 - architecting a scalable blockchain § Hyperledger fabric v2 (late 2016/early 2017) Separation of concerns Consensus fabric Architecture -level approach to scalable and confidential blockchain Goal: Towards hundreds of consenters/peers running many thousands tps

Related Documents:

platforms include Hyperledger Fabric [2] and Quorum [29]. A. Hyperledger Fabric Fabric is a permissioned blockchain platform developed under the umbrella of the Hyperledger project within the Linux Foundation. Fabric is widely known for its modular and scalable architecture. We briefly describe it, focusing on those

Hyperledger Fabric Hyperledger Fabric is the most notable blockchain project in the Hyperledger ecosystem. It features a ledger just like other blockchain technologies and also utilizes smart contracts. Hyperledger Fabric also allows all participants to manage their transactions like other blockchain applications. .

Hyperledger Fabric Components The Hyperledger Fabric facility in iWay Service Manager (iSM) includes access to the Fabric system, posting services, and query services. For more detailed information on these components, see Hyperledger Fabric Component Reference on page 15. Channel Provider Connection to the Hyperledger Fabric system is handled .

Hyperledger Fabric Documentation (v2.2) The open-source documentation for Hyperledger Fabric is a starting point for key concepts and the architecture of the Hyperledger Fabric blockchain network that you build using Managed Blockchain. As you develop your blockchain application, you can reference this document for key tasks and code samples.

Hyperledger Fabric:1.4.1 Raft consensus core. Client 1 Client 2 Double- CPUs of 2.6GHz RAM of 4GB Ubuntu 16.04.5 LTS Hyperledger Fabric:1.4.1 Raft consensus core. In France In Germany 09/03/2021. 22 Evaluation Hyperledger Fabric In France Ordrers Peer1 Organization Client 1 Peer1 Organization Internet Client 2 Ordrers

1 Hyperledger Fabric Projeto Hyperledger Fabric e como seus componentes interagem 2 Kubernetes Framework Kubernetes, Helm Charts e building blocks básicos 3 Deployando Hyperledger Fabric com Kubernetes Passo-a-passo para deploy de uma rede usando Helm charts para CA, Orderer e Peers 4 Próximo passos Melhorias futuras e como contribuir

Hyperledger Fabric - An enterprise blockchain platform ‣Fabric is a distributed ledger framework for consortium blockchains -One of multiple blockchain platforms in the Hyperledger Project (V0.6 in Oct. '16) -First active platform in Hyperledger project and production-ready (V1.0 in Jul. '17) ‣Developed open-source

GENERAL MARKING ADVICE: Accounting Higher Solutions. The marking schemes are written to assist in determining the “minimal acceptable answer” rather than listing every possible correct and incorrect answer. The following notes are offered to support Markers in making judgements on candidates’ evidence, and apply to marking both end of unit assessments and course assessments. Page 3 .