Bidl-Hlf
Background Information
#This is a briefing about background of blockchain
Blockchain
A Blockchain is a distributed database where the nodes are communicating using a p2p network. Blocks, each containing a batch of transaction records, are added tail-to-tail into the chain. As shown in Fig. 1, every block also includes a cryptographic hash of the previous block, and the entire chain is therefore protected from tampering its content.
Fig. 1 Structure of a blockchain
Consensus
Besides, blockchains can be categorized into either a Permissioned or Permissionless one. Permissionless blockchains are maintained totally under the p2p network without any entrance barriers or identification. Therefore, in order to reach an agreement of which node to append the latest block to the chain, a consensus algorithm must be conducted. One of the well-known consensus algorithms for permissionless blockchain is Proof-of-Work (PoW), where all nodes have to compete in solving cryptographic puzzles, i.e., computation intensive works, and the first one presenting the verified solution gets the privilege to append the block. However, the apparent long time for computation is obviously against the requirement for a low-latency financial system. For instance, Bitcoin is only capable of dealing with less than 10 transactions per second with a latency up to an hour (Vukolic, 2015), while a financial system like Visa will handle up to 24k transactions per second with a latency of only milliseconds (Hasbrouck & Saar, 2013). On the other hand, Permissioned blockchains enforces a set of trusted nodes, and uses a Byzantine fault tolerant consensus protocol which will guarantee the correctness of the system even when some nodes in the network became malicious. However, there are limitations to the existing permissioned blockchains, since the consensus protocol now used is of such low a performance that it became the performance bottleneck of the entire blockchain. Also, the sequential workflow (shown in Fig. 2) also degrades the performance, in that the part of the phases cannot run in parallel, which leads to a considerable latency.
Currently-used Consensus algorithms
#This is a briefing about currently used consensus algorithms: PBFT, BFT-SMaRt.
Practical Byzantine Fault Tolerance
Detailed intro to PBFT algorithm
BFT-SMaRt
Detailed intro to Byzantine Fault Tolerance - State Machine Replicant algorithm
Bidl
#This is a briefing about Bidl: principle, architecture, performance.
Principle
Detailed intro to principle of Bidl
architecture
Detailed intro to architecture of Bidl
performance
Detailed intro to performance of Bidl
HLF
#This is a briefing about HLF: principle, architecture, performance.
Principle
Detailed intro to principle of HLF
architecture
Detailed intro to architecture of HLF
performance
Detailed intro to performance of HLF
Bidl-HLF
#This is a briefing about implementing our Bidl on top of HLF code base.
Principle
Detailed intro to principle of HLF
architecture
Detailed intro to architecture of HLF
performance
Detailed intro to performance of HLF
Our team
#This is a briefing about our team.
Zhi Weichen
(Xavier)
BEng(CompSc), IV
Qi ji
PHD Mentor
Dr. Cui Heming
Supervisor