Hyperledger Flashcards

1
Q

What is Hyperledger

A

Umbrella project for an open-source software that enables institutions to set up a shared and trustless ledger database for collaboration

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
2
Q

3 Features of the Hyperledger Fabric

A
  • permissioned network (MSP to enroll new nodes)
  • channels and multi-ledger (connections between peers; each member of a channel maintains a copy of the channel’s specific ledger)
  • chaincode (network operators (system chaincode) and developers (application chaincode) to define business logic for the whole channel or a transaction)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
3
Q

What is the MSP?

A

Membership Service Provider is responsible for only letting authorised clients join the network.

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
4
Q

Applications

A
  • handle the UI and enable an end user to use the blockchain

- submit transactions to the network and invoke chaincode calls

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
5
Q

Ordering Service main task?

A

Transactions are ordered sequentially

  • transactions are put into a block
  • blocks are broadcast to peers that hold the chaincode and ledger
  • takes care of authentication
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
6
Q

Ordering Service holds chaincode or ledger?

A
  • consists of one or more ordering nodes. The nodes do not store chaincode or the ledger
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
7
Q

Ordering Service gets information from?

A
  • applications must submit transactions to an ordering service node.
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
8
Q

Peer

A
  • comparable to full node in Bitcoin. Maintains the state of the ledger and executes transactions
  • delivers events
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
9
Q

Roles for peers

A
  • committing peer (commits transactions, verifies endorsements, validates transactions)
  • endorsing peer (is a committing peer, takes transaction proposals and executes them to create endorsements)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
10
Q

What is the chaincode?

A
  • technical container of a group of related smart contracts

- allows to write business logic that changes the state of the ledger

How well did you know this?
1
Not at all
2
3
4
5
Perfectly
11
Q

Pros of execution-order-validate

A
  • simultaneous TXs & endorsements
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
12
Q

Limitations of Order-Execute

A
  • sequential execution:
    of transaction sequentially on all peers limits the effective throughput
  • non-deterministic code: applications written in general purpose PL need to follow endorsement policies (so be deterministic) otherwise they are rejected by endorsing peers
  • confidentiality of execution: (only a few trusted endorsing peers execute the TXs against the chaincode, the rest just updates the state)
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
13
Q

Transaction flow steps

A
  1. Application submits transaction proposal
  2. endorsing peers execute the transaction proposal
  3. read/write set is signed and returned to the application
  4. signed responses are sent to the ordering service
  5. ordering service distributes new block to all committing peers
  6. committing peers validate the transaction (RW set is written to the ledger and new block is added)
  7. Notify application
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
14
Q

RAFT

A
  • crash fault tolerant service
  • leader is elected among the ordering nodes and that leader replicates messages to the follower nodes
  • as long as there is majority of ordering nodes remaining it is crash fault tolerant (CFT)
  • step towards byzantine fault tolerance
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
15
Q

channel

A

a separate blockchain

  • only managed by a subset of all available nodes
  • isolates transactions of different ledgers
How well did you know this?
1
Not at all
2
3
4
5
Perfectly
16
Q

Can a chaincode be deployed on multiple channels?

A

Yes. A chaincode may be deployed on multiple channels with each instance isolated within its channel

17
Q

Where is the blockchain saved?

A

on the file system