Introduction to
Hyperledger Fabric
Agenda
Agenda
1. Who am I?
2. What is a blockchain?
3. Public blockchains vs Private blockchains
4. What is a Hyperledger and Hyperledger Fabric?
5. Hyperledger Fabric Model
6. Use Cases
Who am I?
Adrian Hetman
Technical Leader/Blockchain Developer in Espeo
Previously worked at the BAE Systems Applied Intelligence as a Software Developer
adrian.hetman@espeo.eu
What is a blockchain?
Blockchain
Blockchain is a decentralized
and distributed ledger that
records all the transaction
that occur on the network
Public vs Private
Public Blockchains
Anyone in the world can read this kind of
blockchain
Anyone can make transactions to the
blockchain
Anyone can participate in the consensus
Examples of public blockchain
1. Bitcoin
2. Ethereum
Private Blockchains (Consortium)
Right to read the blockchain might be
restricted
Right to make transactions to the
blockchain is restricted to trusted party
Consensus process is handled by selected
nodes e.g. 12 nodes of different banks
Examples of private blockchain
1. Hyperledger Fabric
2. Corda
Public
Pros
1. Public blockchains are open,
everyone can participate
2. Developers have little power of
changing the rules of the application
Cons
1. High transactions fees
2. Probability of 51% attack
Private
Pros
1. Consortium can easily change the
rules of a blockchain, revert
transactions. Etc.
2. Validators are known in the network
3. Transactions are cheaper
4. Privacy
Cons
1. It may be considered more
centralized than decentralized.
2. More suited for Enterprise
Hyperledger
Hyperledger
foundation
Founded in 2015 by Linux Foundation
Sole purpose of Hyperledger is to
advance blockchain technology.
Hyperledger is not a single standard, it
is a collaboration of the community to
create different blockchain
technologies
Hyperledger Fabric
1. One of the project from the Hyperledger Foundation
2. Platform for DLT
3. Permissioned blockchain
4. Elastic and extensible architecture
Hyperledger Fabric Model
Model
1. Nodes
2. Transactions
3. Membership Service Provider
4. Channels
5. Chaincode
Nodes
Client node
Client nodes are the end-users of the Hyperledger Fabric network. They can make
transactions requests and communicate with the network.
Users are using interfaces to communicate with the network e.g. SDKs or CLI
Peer Node
Peers maintain the state of the ledger and can commit transactions.
Peer does not create new blocks but it validates blocks and transactions.
Transaction validation is performed by simulating transactions and applying the
endorsement policy.
Ordering Service (OS) node
The OS node creates new blocks by ordering the transactions. It provides a shared
communication channel to clients and peers, offering a broadcast service for messages
containing transactions.
Transactions
Transaction flow
Client
Peer Peer
Peer
1 Broadcast Tx to Peers
2 Tx Endorsement
Ordering Service
4 Broadcast
new block
3SubmitTx
Membership Service Provider
MSP
MSP generates a certificate for authentication and validation (CA)
Channels
Channels a.k.a small blockchains
Channels include only the transactions made in that channel
Channel can be used to ensure privacy by restricting read access to authorised signatories
Chaincode
Chaincode (Smart Contracts)
Chaincode is the Hyperledger implementation of the Smart Contracts.
Chaincode enforces the rules for reading/altering the state database information.
Chaincode function execution are initiated through a transaction.
Chaincode function results can be transmitted to the network peers to update the state of
the database information.
Use Cases
Maersk
Global container shipment
tracking
Tracking all the containers at
different ports using
blockchain to avoid fraud
City management
Dubai want to use blockchain
for managing the city
Thank you!
Poznań / Helsinki / San Francisco

Hyperledger introduction

  • 1.
  • 2.
  • 3.
    Agenda 1. Who amI? 2. What is a blockchain? 3. Public blockchains vs Private blockchains 4. What is a Hyperledger and Hyperledger Fabric? 5. Hyperledger Fabric Model 6. Use Cases
  • 4.
  • 5.
    Adrian Hetman Technical Leader/BlockchainDeveloper in Espeo Previously worked at the BAE Systems Applied Intelligence as a Software Developer adrian.hetman@espeo.eu
  • 6.
    What is ablockchain?
  • 7.
    Blockchain Blockchain is adecentralized and distributed ledger that records all the transaction that occur on the network
  • 8.
  • 9.
    Public Blockchains Anyone inthe world can read this kind of blockchain Anyone can make transactions to the blockchain Anyone can participate in the consensus Examples of public blockchain 1. Bitcoin 2. Ethereum
  • 10.
    Private Blockchains (Consortium) Rightto read the blockchain might be restricted Right to make transactions to the blockchain is restricted to trusted party Consensus process is handled by selected nodes e.g. 12 nodes of different banks Examples of private blockchain 1. Hyperledger Fabric 2. Corda
  • 11.
    Public Pros 1. Public blockchainsare open, everyone can participate 2. Developers have little power of changing the rules of the application Cons 1. High transactions fees 2. Probability of 51% attack
  • 12.
    Private Pros 1. Consortium caneasily change the rules of a blockchain, revert transactions. Etc. 2. Validators are known in the network 3. Transactions are cheaper 4. Privacy Cons 1. It may be considered more centralized than decentralized. 2. More suited for Enterprise
  • 13.
  • 14.
    Hyperledger foundation Founded in 2015by Linux Foundation Sole purpose of Hyperledger is to advance blockchain technology. Hyperledger is not a single standard, it is a collaboration of the community to create different blockchain technologies
  • 15.
    Hyperledger Fabric 1. Oneof the project from the Hyperledger Foundation 2. Platform for DLT 3. Permissioned blockchain 4. Elastic and extensible architecture
  • 16.
  • 17.
    Model 1. Nodes 2. Transactions 3.Membership Service Provider 4. Channels 5. Chaincode
  • 18.
  • 19.
    Client node Client nodesare the end-users of the Hyperledger Fabric network. They can make transactions requests and communicate with the network. Users are using interfaces to communicate with the network e.g. SDKs or CLI
  • 20.
    Peer Node Peers maintainthe state of the ledger and can commit transactions. Peer does not create new blocks but it validates blocks and transactions. Transaction validation is performed by simulating transactions and applying the endorsement policy.
  • 21.
    Ordering Service (OS)node The OS node creates new blocks by ordering the transactions. It provides a shared communication channel to clients and peers, offering a broadcast service for messages containing transactions.
  • 22.
  • 23.
    Transaction flow Client Peer Peer Peer 1Broadcast Tx to Peers 2 Tx Endorsement Ordering Service 4 Broadcast new block 3SubmitTx
  • 24.
  • 25.
    MSP MSP generates acertificate for authentication and validation (CA)
  • 26.
  • 27.
    Channels a.k.a smallblockchains Channels include only the transactions made in that channel Channel can be used to ensure privacy by restricting read access to authorised signatories
  • 28.
  • 29.
    Chaincode (Smart Contracts) Chaincodeis the Hyperledger implementation of the Smart Contracts. Chaincode enforces the rules for reading/altering the state database information. Chaincode function execution are initiated through a transaction. Chaincode function results can be transmitted to the network peers to update the state of the database information.
  • 30.
  • 31.
    Maersk Global container shipment tracking Trackingall the containers at different ports using blockchain to avoid fraud
  • 32.
    City management Dubai wantto use blockchain for managing the city
  • 33.
    Thank you! Poznań /Helsinki / San Francisco