Hyperledger Fabric 1.0 is an open source permissioned blockchain framework. The document provides an overview of Fabric 1.0's key architectural changes from version 0.6, including the introduction of different peer types (endorsers and committers), flexible membership services, and support for confidential transactions. It also outlines Fabric's roadmap, including plans to enhance privacy, smart contract lifecycles, and cross-organizational querying before the 1.0 release.
4. Let’s start your blockchain adventure
TRAIN • ADVICE • PROTOTYPE • BUILD
@wearetheledger
http://Theledger.be
COMMUNITY
TECHNOLOGY • SCHOOLS • BUSINESS
5. Think
Is it a Use-case?
Stakeholders?
Requirements
Workshop Collaboration
Digital token
Smart contract
sandbox
Integration
Front-end
Iterations
Live
Blockchain
environment
Next steps
build Deliver
12. Linux foundation presents… Https://hyperledger.org
The Hyperledger Project is a collaborative effort created to advance
blockchain technology by identifying and addressing important features for
a cross-industry open standard for distributed ledgers that can transform
the way business transactions are conducted globally.
Modular frameworks
Permissioned Enterprise Blockchain
Open source
100+ members & partners
Shared Ledger
Blockchain 2.0
Permission
Smart contract
consensus
21. Smart contracts and … Go!
AKA Chaincode
In Golang & Java
All the same structure
Init, Invoke, query
Key-value Data storage - ROcksDB
Access Rights
Attributes as caller data
A-CERT
27. Types of peers
Endorser
Peer
Peer
Commits TX – maintains ledger & world state
Endorsing Peer
Endorses & executes chaincode
Ordering Peer
Includes tx in blocks
Communicates with other peers
28. Bring your own Certificate authority
Membership
Services
Client
App
User
Certificate
Authorities
WALLET
29. Vision
Business Endorsement Policy
Not all peers validate transaction
Only (some) Endorsers
Consent network
broadcast network
Orders transactions
Doesn’t execute the smart contracts
No SPoF’s
Bring your own Membership services
Privacy
Support Confidentiality via Sub-ledgering
Update possibilities
Dynamically update fabric
& chaincode
Pluggable
Data-storage & consensus mechanisms
30. 30
MarchDecember2016/17
Hack Fest docker images
• 60 participates tested
• Basic v1 architecture in place
• Add / Remove Peers
• Channels
• Node SDK
• Go Chaincode
• Ordering Solo
• Fabric CA
V1 Alpha *
• Docker images
• Tooling to bootstrap network
• Fabric CA or bring your own
• Java and Node SDKs
• Ordering Services - Solo and Kafka
• Endorsement policy
• Level DB and Couch DB
• Block dissemination across peers
via Gossip
V1 GA *
• Hardening, usability, serviceability,
load, operability and stress test
• Java Chaincode
• Tcerts in SDK / Chaincode ACL
• Chaincode packaging and lifecycle
• Pluggable crypto
• HSM support
• Consumability of configuration
• Next gen bootstrap tool (config
update)
• Config transaction lifecycle
• Eventing security
• Cross Channel Query
• Peer management APIs
• Documentation
June
Connect-a-thon
• 11 companies in Australia,
Hungary, UK, US East Coast, US
West Coast, Canada dynamically
added peers and traded assets
Future
V Next *
• SBFT
• Archive and pruning
• System Chaincode extensions
• Side DB for private data
• Application crypto library
• Dynamic service discovery
• REST wrapper
• Python SDK
• Identity Mixer (Stretch)
Connect-a-cloud
• Dynamically connecting OEM
hosted cloud environments to
trade assets
Proposed Alpha detailed content:
https://wiki.hyperledger.org/projects/proposedv1alphacontent
* Dates for Alpha, Beta, and GA are determined by Hyperledger
community and are currently proposals.
Time-Line
32. Endorser
Peer
Orderer
Chaincode
E2
OO
O O
E1
P3
ClientAppsubmits a transaction proposal
for Smart Contract A to the Endorsing peer
E0
Note:
• Endorsementpolicy: “E0, E1 andE2 must
sign”
• P3, is notpartofthe policy
1 (Propose)
A
D
A
B
A
B
E0
A
B
Client
App
SDK
Ordering-Service
Architecture Flow - Propose
34. Client
App
The client requests further endorsement
from E1 and E2 as per the endorsement
policy
The client may decide to suggest an
anchor obtained from E0. to E1 and E2
3 (Submit, anchor)
Endorser
Peer
Orderer
Chaincode
E2
OO
O O
E1
P3
A
D
A
B
A
B
E0
A
B
SDK
Ordering-Service
3 (Submit, anchor)
Architecture Flow - Submit
35. Client
App
4 (Transaction-Valid)
4 (Transaction-
Valid)
The Endorsing peers E1 and E2 sign the
result and send the endorsement to the
client
Endorser
Peer
Orderer
Chaincode
E2
OO
O O
E1
P3
A
D
A
B
A
B
E0
A
B
SDK
Ordering-Service
Architecture Flow - Endorse
36. Client
App
The client formats the transaction and
sends it to the ordering-service nodes
for inclusion in the ledger
5 (Order)
Endorser
Peer
Orderer
Chaincode
E2
OO
O O
E1
P3
A
D
A
B
A
B
E0
A
B
SDK
Ordering-Service
Architecture Flow - Order
37. The ordering-service delivers the next
block in the ledger with the endorsed
transaction.
6 (Deliver)
6 (Deliver)
6 (Deliver)
6 (Deliver)
Endorser
Peer
Orderer
Chaincode
E2
OO
O O
E1
P3
A
D
A
B
A
B
E0
A
B
Client
App
SDK
Ordering-Service
Architecture Flow - Deliver
38. The peers validate the block received
from the ordering-service and update
their ledger and worldstate
7 (Validate)
7 (Validate)
7 (Validate) 7
(Validate)
Endorser
Peer
Orderer
Chaincode
E2
OO
O O
E1
P3
A
D
A
B
A
B
E0
A
B
Client
App
SDK
Ordering-Service
Architecture Flow - Validate
41. Client
App
• Peers E0 and E3 connect to the red channel for
chaincodes Y and Z
• Peers E1 and E2 connect to the blue channel for
chaincodes A and B
Blockchain Network
E0
Z
Y
E3
E2
E1
A
B
A
B Y
Z
Client
App
SDK
SDK
Ordering-Service
OO
O O
Endorser
Orderer
Chaincode
Multi-Ledgering
43. • V1 still under development
• All code on https://github.com/hyperledger/
• This sample: fabric-sdk-node/blob/master/test/unit/end-to-end.js
• Complete program example to creating a blockchain fabric, deploy smart
contract, submit transaction, query data in 300+ lines of code, using
node.js SDK
• Topology is not the emphasis of sample, so it’s relatively simple. Single
chain, single channel on 2 peers with orderer.
4
Sample program