11.3 Hyperledger Fabric Flashcards
Hyperledger Fabric is highly modular and built with a focus on flexibility and scalability.
Features:
§ …: Fabric is designed as platform to set up permissioned blockchain networks. The framework uses a “Membership Service Provider” (MSP) to …
§ Channels and multi-ledger: A core feature of Fabric are so-called channels to … Each member of a channel maintains a … Like in other blockchain networks, the ledger contains a … of all state transitions (transactions).
§ Chaincode: Fabric allows network operators (system chaincode) and developers (application chaincode) to … for a whole channel or for particular transactions.
Permissioned network; enroll new nodes into the network.
establish connections between peers; copy of the channel’s specific ledger; sequenced list
define certain business logic
Membership Service Provider (MSP)
§ The membership service provider has a pluggable interface that supports a … A common external certificate authority (CA) is TLS-CA (https certificates).
§ Fabric implements its own CA which is called Fabric-CA and used by default.
§ The MSP is responsible for … It governs the identity for applications, users, peers and …
§ Takes care of the … in the whole network. It ensures that only authorized clients can … and …
range of credential architectures;
only letting authorized clients join the network; the ordering service.
access control; join certain channels and execute chaincode.
Applications
§ Currently, applications are programs (written primarily in JavaScript, Java, or Go), that …
§ Applications are very similar to DApps in the Ethereum ecosystem. They usually handle the UI and …
§ Applications submit … and ….
§ …
invoke calls on smart contracts.
enable an end user to use the blockchain.
transactions to the network; invoke chaincode calls
Communicate directly with peers
Ordering Service
§ The ordering service consists of one or more ordering nodes. The nodes do not store any…, nor do they hold the….
§ The ordering service … and takes care of the … of the peers.
§ Applications must … an ordering service node. The node then collects transactions and …. The transactions are then put into a new block and ….
§ The blocks are then broadcasted to the peers that …. Before the transactions are committed, the peers validate it.
§ Consensus is reached when the …, the ordering was successful and the execution was valid and committed.
chaincode; ledger
enforces the network policy; authentication and authorization
submit transactions to; orders them sequentially; delivered to all peers of a specific channel
hold the chaincode and the ledger
endorsement of a transaction is accepted
Peer
§ A peer is comparable to full-node in Ethereum or Bitcoin. It … and executes transactions.
§ Multiple roles for peers exist:
-Committing peer
Maintains the state of the blockchain and commits transactions. It … and …
-Endorsing peer
An endorsing peer is always also a committing peer. The difference is that an endorsing peer additionally … and executes them to c…
§ The number of peers in a network is not limited and depends on the …
§ Chaincode supports the emission of events, e.g. when a certain transaction happened. Peers are responsible for … such events to subscribers (applications), publish / subscribe architecture pattern.
maintains the state of the ledger
verifies endorsements; validate the results of a transaction.
takes transaction proposals; create endorsements.
operating consortium
handling and delivering
Chaincode and Smart Contracts
Hyperledger Fabric uses the terms ”smart contracts” and ”chaincode”. While smart contracts refer to the …, whereas a chaincode is a …
Basically, chaincode is a program written in JavaScript or Java that is installed on a… A chaincode program allows to write business logic that …
transaction logic of a business object;
technical container of a group of related smart contracts for installation and instantiation
node
changes the state of the ledger
(see slides 27/28–> some details are not on flashcards)
Limitations of Order-Execution Architecture: Sequential execution on all peers: Only endorsing peers execute Proposed TXs
Non-deterministic code: Applications written in general purpose PL need to follow endorsement policies. If RW-sets differ à Rejection by endorsing peers
Confidentiality of execution: Only a few trusted endorsing peers execute the TXs against the chaincode, the rest just updates the state (RW set)
Explain these limitations further.
see slides 29
Explain the transaction flow.
You should be able to explain this without any support materials from scratch to get a 5.
See slides 31 - 38
A channel is a separate blockchain.
This blockchain is only managed by a subset of … as defined by the membership service provider.
§ … transactions on different ledgers
§ Consensus takes place… by members of the channel
§ Other members on the network are not allowed to … and will not see transactions on the channel
§ A chaincode may be deployed on multiple channels with …
§ …
->Concurrent execution for performance and scalability
all available nodes
Separate channels isolate
within a channel
access the channel;
each instance isolated within its channel
Peers can participate on multiple channels
Single Channel Network
All peers connected to the same channel
All peers have the …
Endorsements by peers E0, E1, E2, and E3
A single channel network is similar to traditional, public blockchain network where the …
same chaincode and maintain the same ledger
whole world state is shared with all participating nodes.
Multi Channel Network
Peers E1 and E2 connect to the red channel for X and Y chaincodes.
Peers E0 and E3 connect to the blue channel for A and B chaincodes.
Fabric support multi channel networks. Each peer only shares … that are in the same channel. Smart contracts also operate on … and are not…
see slide 42, 43 for example
the ledger with nodes; a channel basis; globally available.
Ledger
A block in Fabric consists of transactions that define …
The blockchain is saved on the file system, just like in Ethereum and most other blockchain systems.
Reading from the blockchain can be slow when the … has to be scanned.
Fabric uses a database that …. This provides peers a very efficient data structure to …
reads and writes on the shared state data.
blockchain on the file system
contains the current state of the ledger; retrieve ledger information.
Recent developments in hyperledger fabric
Fabric Gateway
§ Provides an abstraction layer (a simplified API) that clients can use for …
Channel Administration Improvements
§ Now it is possible to …
§ Easier joining of new peers to a channel by … an existing peer
Smart Contract Administration Improvements
§ Multi-party agreement on … § Policy changes without … and reinstalling it
§… packaged together as one package
easy interaction with the blockchain
remove peers from a channel;loading a snapshot from
chaincode parameters and chaincode updates; repackaging chaincode; Installing multiple chaincodes