Klaytn Improvement Reserve (KIR): New Consensus Algorithm for Blockchain Scalability (BaSE Lab)
- Proposed Period: 2021.09.08 ~ 2023.02.28
- First Milestone: 2021.09.08 ~ 2022.02.28
- Second Milestone: 2022.03.01 ~ 2022.08.31 (Current)
- Proposed Third Milestone: 2022.09.01 ~ 2023.02.28
The goal is to improve Klaytn platform’s scalability, which has limitations of IBFT (Istanbul Byzantine Fault Tolerance), to make the performance of consensus algorithm better by applying a research “A Coordination Technique for Improving Scalability of Byzantine Fault-Tolerant Consensus” (Applied Sciences, Vol. 10, No. 21, 2020) that Intelligent Blockchain Research Center at Sogang University had conducted.
- Consensus algorithms in the existing distributed network environment are only a study to ensure data integrity, but the consensus algorithms in blockchain are responsible for maintaining the blockchain ecosystem as well as ensuring data integrity.
- It is expected that Klaytn will be able to leap to the position of First-Mover in the blockchain market by possessing independent and core element technology through various studies using its platform.
- Through the improvement of the consensus algorithm, it is expected that the scalability of existing services such as NFT and DeFi used in Klaytn will be improved.
To develop a new Coordination Technique, we conducted extended flow analysis of the current Klaytn protocol. Based on the analysis, we developed a new Coordination Technique algorithm and a monitoring website was developed to identify execution of the new algorithm.
1. Extended Flow Analysis of Klaytn Consensus Process
- Closely analyze and debug the consensus process using 4 CNs (Consensus Nodes) and identify the flow thoroughly.
2. Coordination Technique for Improving Klaytn Protocol
- Design a protocol change plan to improve the scalability of existing Klaytn protocol by slightly reducing network communication between nodes by omitting one of the IBFT’s consensus steps.
- Consensus Coordinator acts as a CN, and if all nodes have the same transactions in each round, all nodes do not need to be decentralized to validate the block, and the consensus Coordinator solely leads the block creation. For this, a protocol change plan was designed and code modification was carried out. If normal consensus through the Coordinator is difficult, then the existing IBFT consensus protocol is executed to solve the problem. The Coordinator consensus protocol is a complementary method with the existing protocol.
3. Development of Monitoring Website for Klaytn Private Network
- To overcome the problem that only few transactions are reached consensus, we developed a monitoring website, which has a new transaction generator that can see at a glance the block creation and the flow of transactions to ensure that normal transactions are created and delivered well.
4. Research Result was Published in Korea Conference on Blockchain 2022
- In order to further analyze the IBFT-based consensus protocol used in Klaytn network, a paper was written to propose a Klaytn blockchain simulator using NS-3 network simulator. Through this study, various network environments could be established to conduct various consensus protocol experiments.
1. A new Klaytn Consensus Algorithm based on Agent Concept has been Implemented and Verified through Experiments
- A fixed Coordinator is selected to skip the Prepare step. As a result of conducting the experiment through this proposal, the amount of network communication required for the consensus was reduced by 25% compared to the existing IBFT.
2. Issues and Future Research
- Our experiment has a problem that nodes are physically designed to run within a single machine for the efficiency of verification of changed protocol, so it does not reflect the actual blockchain network environment.
- Decentralization is an issue to be improved in the next phase because of a fixed Coordinator method.
- During the Third Milestone, we plan to study methods to strengthen decentralization and design an experiment environment for our blockchain network with physically isolated nodes.