ICON 2.0 Explained


Nov 17, 2020

4 min read

ICON 2.0 Explained

Hi ICONists🧑‍🚀,

In September 2020, the ICON Foundation announced ICON 2.0, also known as Batang, the bedrock for the future growth of the ICON Network. This is a major redesign and upgrade for the ICON protocol, which will open the door to many more opportunities. If you’re not yet familiar with Batang, it’s definitely time to get up to date with all the ins and outs about it in this article.

🧐 Why ICON 2.0?

From the ICON Foundation’s perspective, it is all very simple. The initial ICON Network was good, but they believe it can be even better. That is why, about a year ago, they decided that it was time to completely redesign the existing loopchain’s architecture to prepare the network for an even brighter future.

It is essential to understand that ICON 2.0 is not an upgrade, but instead, a whole new software architecture. The new software should be faster, more stable, and a scalable, high-performance blockchain that will inherit the current ICON Network. Additionally, ICON 2.0 will come standard with interoperability features to support and power cross-chain DeFi solutions. A critical factor since the value locked in DeFi at the time of writing, according to DeFi pulse, is already over 12.4 billion USD. And the DeFi ecosystem is expected to only grow in importance over the next few years.

Batang’s unique feature is something called “goloop,” a completely enhanced and rewritten blockchain engine. Goloop is the source code of the next generation and is based on Go, an open-source programming language that makes it easy to build simple, reliable, and efficient software. Goloop is a smart contract enabled enterprise-grade blockchain software with many unique features providing a secure, immutable, and scalable environment to develop decentralized applications. Interestingly, any ICON community member can verify the ICON team’s code and technology at their Github Repository.

🤩 New Features

In this part, we will shortly discuss the different new features as announced by the ICON Foundation. For a complete list of features, please see the original article here.

  • Python SCORE executor — this feature can execute Python SCOREs that are already deployed on the network. The reason for the separation of the executor process from the consensus engine is so that the network can handle infinite loop and instability issues of Python SCOREs.
  • Java SCORE executor — Additionally, new SCORE developers can also use Java as their programming language. That is because SCORE is written on Java and it runs on the Java virtual machine, eliminating the need for an audit process, one of the major pain points for developers on the current ICON Mainnet.
  • Performance enhancements — Python implementation makes it hard to utilize the multi-cores using multiple threads because of the global interpreter lock (GIL). The “Go” language provides goroutines that manage threads efficiently. Even though it doesn’t make any big response delay for collecting garbage, it does reduce the response time in handling most user requests; plus, it enables handling more user requests concurrently.
  • BTP — the general-purpose interoperability protocol BTP will become standard on ICON 2.0. The specific use case for this is that it will be supporting interoperability with other public blockchains to support cross-chain DeFi solutions. When launched, the ICON Foundation will deploy all the needed smart contracts on high-profile blockchains and run the relayers. ICX holders can pre-register (at that time) in preparation for a decentralized relayer network. We also wrote an article about BTP here.
  • Vote Spreading — this solution is a novel solution for systematically decentralizing Decentralized Proof-of-Stake Networks, where inactive voters have their ICX spread to all top 100 P-Reps. The issue that it will solve is that of vote stagnancy and allowing active ICX holders to impact governance significantly.
  • IISS 3.1 — ICON 2.0 should give more freedom to design a cleaner and more easily understood economic design. The basic structure of IISS 3.1 follows the structure of IISS 3.0; however, the new design simply divides inflation into a few different predefined categories.
  • Multi-Channel Technology — it is a form of scalability, where each DApp on ICON can become an application-specific channel such as Band Protocol and Kava chains built on the Cosmos SDK. Each channel is essentially its blockchain, which helps DApp developers’ platform risk while making it easy to launch their network.

🛣️ The Road Towards ICON 2.0

Due to the migration to ICON 2.0, the ICON Foundation has decided to save some development portions from ICON 2.0 rather than duplicating work, introducing potential instability in ICON 1.0, and slowing down the entire process. There wasn’t much talk around the network upgrades after IISS 3.0, simply because of the ICON 2.0 migration idea.

The foundation has decided to implement only the Contribution Proposal System on the current ICON Network, and all other planned network enhancements will be saved for ICON 2.0.

The move to ICON 2.0 is as promising and exciting as it sounds. The ICON Foundation team has made a great leap for the betterment of the ICON ecosystem as this brings more efficient advantages not just to the enterprise clients but also to the retail users. It is a privilege to observe and be part of this growing network by contributing as much as we can. That being said, let us all look forward to their future releases and help the community to strive further.

DISCLAIMER — This is not financial advice. Staking, delegation, and cryptocurrencies involve a high degree of risk, and there is always the possibility of loss, including the loss of all staked digital assets. Additionally, delegators are at risk of slashing in case of security or liveness faults on some protocols. We advise you to do your due diligence before choosing a validator.

Subscribe to Stakin Newsletter

Stay informed about the latest trends in the blockchain ecosystem and gain expert insights from a leading Web3 operator.