
Once a block is finalized, the entire prefix of the chain is also finalized. Replicas finalize a block whenever the block satisfies the Commit rule based on their local state. The basic structure of a blockchain is depicted in the figure below.įorks happen because of conflicting blocks, which is a scenario in which two blocks do not extend each other.Ĭonflicting blocks might arise because of network delays or proposers deliberately ignoring the tail of the blockchain. On receiving a block, replicas take actions according to the Voting rule and update their local state according to the State Updating rule.įor each view, replicas should certify the validity of the proposed block by forming a Quorum Certificate (or QC) for the block.Ī block with a valid QC is considered certified.

Similar to classic BFT protocols, cBFT protocols are driven by leader nodes and operate in a view-by-view manner.Įach participant takes actions on receipt of messages according to four protocol-specific rules: Proposing, Voting, State Updating, and Commit.Įach view has a designated leader chosen at random, which proposes a block according to the Proposing rule and populates the network. What is cBFT?Īt a high level, cBFT protocols share a unifying propose-vote paradigm in which they assign transactions coming from the clients a unique order in the global ledger.Ī blockchain is a sequence of blocks cryptographically linked together by hashes.Įach block in a blockchain contains a hash of its parent block along with a batch of transactions and other metadata. Warning: Bamboo is still under heavy development, with more features and protocols to include.īamboo details can be found in this technical report.

Therefore, Bamboo abstracts the 4 rules into a Safety module and provides implementations of the rest of the components that can be shared across cBFT protocols, leaving the safety module to be specified by developers. Bamboo is a prototyping and evaluation framework that studies the next generation BFT (Byzantine fault-tolerant) protocols specific for blockchains, namely chained-BFT, or cBFT.īy leveraging Bamboo, developers can prototype a brand new cBFT protocol in around 300 LoC and evaluate using rich benchmark facilities.īamboo is designed based on an observation that the core of cBFT protocols can be abstracted into 4 rules: Proposing, Voting, State Updating, and Commit.
