Author: Initia
Compiled by: TechFlow
The cryptocurrency ecosystem has had to adapt to new development realities, and Initia was born into this environment.
As an industry, we must acknowledge that a single state machine cannot meet the ambitious goals of cryptocurrency. Improving transaction throughput while keeping costs low for users and operators and maintaining a reasonable level of decentralization is almost impossible to achieve with a single approach.
In fact, the idea that a single chain can succeed is no longer mainstream. Earlier this year, the discussion about modularity vs. monolithic became a hot topic. But the key point is: this is not an either-or choice. The future direction is a combination of the two: a fast, programmable first-level blockchain (L1), coupled with a series of application-specific rollups that can work with L1 to expand execution capabilities.
When we look at Solana, we can clearly see the advantages of a hybrid (we call it interwoven) approach. Over the past half year, many teams have begun developing their own custom “network extensions” on Solana. However, isn’t Solana known for its native scaling capabilities? Isn’t that core to their brand?
In fact, rollups are about much more than expanding execution capabilities. They are also about sovereignty - giving developers complete control over their execution environment. For example, higher TPS, lower or even no gas fees, control over transaction order and processing, and full ownership of their business economics.
Clearly, rollups have become an integral part of the ecosystem and are here to stay.
Initia exists on the idea that it is purpose-built to support a thriving interwoven rollup ecosystem called Minitias.
The future is intertwined
Initia is designed to be home to thousands of Minitias that work together to deliver diverse, powerful, and unique applications through an organic design experience. Currently, there are two types of ecosystems. One is built for the interconnected chain world (such as Cosmos), and the other is betting on rollups in the later stage (such as Ethereum and now Solano). Each approach has achieved some success, but also has shortcomings, and these lessons are invaluable when building a new L1 model.
Initia bridges the gap between these two extremes, an L1 design to support an interconnected L2 network, ensuring Minitia developers have everything they need to succeed. From the outset, Initia has avoided the mess in the middle by being clear in its design and asking a simple question: what does L2 actually need from a hub?
On Initia, rollups fit in naturally. With full economic alignment between L1 and L2 through Initia VIP, the product suite is clean and simple, and technically designed to ensure Minitias has oracles, bridge beams, liquidity, interoperability, and native stablecoins from day one. The Interweave stack makes it easy for teams to deploy a Minitias using any virtual machine (VM) of their choice, whether it’s EVM, MoveVM, or CosmWasm.
So, what is the key component that makes rollups on Initia possible? The answer is the Interweld Stack, an Optimistic Rollup framework built from scratch for the Cosmos SDK. Want to know the secrets of this framework? Let’s take a deep dive.
Interweld Stack
Initia's Optimistic Rollup framework consists of three tightly coupled components: OPHost, OPChild, and OPinit Bots.
These three fit perfectly like three pieces of a puzzle, forming a whole that provides strong support for every Minita.
OPHost and OPChild are modules of the Cosmos SDK that form the core part of the Interweaving stack, which runs on the chain. Since the OPinit stack is implemented at the chain level, rather than at the smart contract level that depends on a specific virtual machine (VM), this allows us to support a variety of VMs, giving Minitia developers more freedom of choice.
On Initia, rollups are treated as first-class citizens on the chain. This gives us the flexibility to adjust implementation details, resulting in a better user experience.
The OPHost module is located on Initia (i.e. L1) and is responsible for serving as the base for all Minitias running on Initia. The main tasks of OPHost include:
Manage the optimistic bridge (connecting L1 and L2) and the assets involved.
Responsible for confirming output proposals from Minitias.
Act as an arbitrator between challengers and proposers to resolve disputes.
OPChild exists in every Minitia, like the heartbeat of every rollup. Its responsibilities include:
Operators who manage rollups
Execute messages from L1
Update the oracle’s price data
Manage L1 token withdrawals
OPHost and OPChild together form the optimistic bridge of each Minitia. An OPHost on Initia acts as an endpoint of L1, connecting OPChild modules in multiple Minitia.
It is important to note that for rollup, the local bridge is not just for messaging, it is actually the headquarters of the rollup on L1. Since the two different consensus systems cannot understand each other's state machines, the rollup bridge becomes the true basis of the rollup on L1 by submitting a state root or similar verifiable output to ensure its correctness. This is why L1 is often referred to as the settlement layer.
You might ask: “What connects OPHost and OPChild? A relay?” Actually, that’s exactly what OPinit Bots are for! As an extension of the previous point, two different consensus systems cannot communicate directly without the assistance of an off-chain process, because the off-chain process acts as a physical connection between their separate state machines.
OPinit Bots are off-chain processes responsible for handling key operations between Initia and Minitias. They are divided into two types: Executor and Challenger. In short, these two Bots are jointly responsible for the following tasks:
Execute Token Transfer
Submit output proposals to Initia L1
Submit transaction batches to Celestia to ensure data availability (DA)
Passes oracle price updates to Minitias.
In the rest of this article, we’ll dive deeper into how specific features in The Interwoven Stack are implemented, which will help you understand more clearly how the pieces work together!
Token transfer on optimistic bridge
One of the most critical features of Rollup technology is that it can inherit the security of L1 where its settlement is located.
Did you know? A native bridge between L1 and rollup is often the most secure way to transfer assets. This is because using a native bridge introduces no additional trust assumptions — just trust the two chains.
Before we discuss the transfer mechanism, let's first solve an obvious problem:
Why not use Inter-Blockchain Communication (IBC)?
While all chains on The Interwoven Stack are built on the Cosmos SDK, local bridges cannot simply serve as IBC channels. This is because the instant nature of IBC transfers does not match the trust assumptions of our protocol. Suppose one day, a malicious Minitia operator decides to insert a malicious transaction, tampering with the balance of INIT on L2 and withdrawing all INIT on his Minitia to L1. We cannot accept this situation because such a mistake would be catastrophic.
Withdrawals to Initia via the optimistic bridge have a 7-day delay period during which Challengers can challenge and cancel suspicious withdrawals in case malicious behavior is detected.
On Initia, we wanted to provide a smooth user experience during asset movement between Mintia and Initia L1. To this end, we developed a secure custom solution called Minitswap to enable fast transfers from L2. You can learn more here: Minitswap — L2 to L1 withdrawals completed in seconds, not days.
Token deposit (L1 → L2)
Depositing tokens from Initia to Minitia is almost instant. The process is as follows:
1. The user submits a deposit transaction on Initia, which locks their tokens on L1 and triggers a deposit event from the OPHost module.
2. Executor OPinit Bot continues to listen to new events on Initia. When the initiate_token_deposit event is detected:
2.a — The Executor builds a FinalizeTokenDeposit message and submits it to Minitia.
3. After receiving the message, Minitia will mint the corresponding token on L2 and send it to the user.
The process is simple and safe, ensuring the job is done right!
Next comes token withdrawal (L2 → L1).
The withdrawal operation is slightly more complicated. Although the deposit process from L1 to L2 is relatively simple, in turn, L1's trust in Minitias cannot be easily established.
The reason is that Initia is secured by a group of decentralized validators with economic interests, while Minitias are usually managed by a single or a small number of operators without economic interests. Therefore, when Minitia initiates a withdrawal request to L1, it needs to prove that it has no malicious behavior.
The specific process of withdrawal is as follows:
1. The user submits a withdrawal transaction on Minitia, causing the OPChild module to destroy their tokens and trigger the initiate_token_withdrawal event. At the same time, the Executor monitors all blocks on L2. When the event is captured, it stores the withdrawal request, but does not pass it immediately, but waits for the checkpoint to be submitted.
3. When the commit checkpoint is reached, the Executor performs the following operations:
3.a — Collect all withdrawal requests during this time period.
3.b — Generate a sorted Merkle Tree to organize these withdrawal requests.
3.c — Create an L2 output containing the root of the Merkle tree.
3.d — Submit this output to OPHost on L1.
4. After that, the withdrawal enters a review period. During this period, if the Challenger OPinit Bot finds anything suspicious, it can challenge the withdrawal and cancel the operation.
5. If no challenges occur during the audit period, users can call the finalize_withdrawal function on Initia to unlock their tokens.
5.a — This function receives a withdrawal request and its corresponding proof.
5.b — Verify that the submitted proof is valid.
5.c — If verification passes, the Token will be sent to the user!
Although the withdrawal process takes some time, this is a necessary price to pay for security. However, in order to improve the experience of Interwoven users, Initia developed Minitswap. By leveraging IBC and OPinit Bridge, Minitswap is able to achieve instant withdrawals while providing a fairly high level of security.
Now that you understand how withdrawals work, the challenge mechanics are still a little unclear - we’ll dive into that next.
What happens when Minitia tries to cheat?
In the previous section, we mentioned that Minitia could be a scam. This is why a withdrawal period is in place to prevent tokens from being stolen through fraudulent activity on the OPinit Bridge.
So who is responsible for stopping fraudulent withdrawals? That task is undertaken by the Challenger OPinit Bot.
1. Challenger continuously monitors L2 output submitted to L1.
2. On each commit, it gets the output from Initia and computes its own output based on the state of Minitia.
3. If the output submitted on Initia is inconsistent with the result calculated by the Challenger, the Challenger will delete the output proposal by sending a DeleteOutput message. This function can only be called by the Challenger.
In addition, Celestia can be used for state synchronization rollback.
Yes, when an invalid proposal is deleted, does it mean that the current state of the rollup becomes invalid? Indeed, this is exactly why we have designed a perfect rollback mechanism.
After a successful challenge, the Minitia node can synchronize the state from the data previously published to Celestia, as all aggregated transaction batches are published to Celestia for Data Availability (DA), which is useful in case a rollback is needed.
To ensure the integrity of the Minitia state and prevent the Executor from performing malicious operations, the two bots, the Executor and the Challenger, are designed as independent entities.
However, does this give too much power to the Challenger? What if the Challenger acts maliciously and starts deleting valid outputs?
To prevent this, Initia has established a system of checks and balances through L1’s governance system.
If Challengers and Proposers (the entities responsible for submitting outputs) behave maliciously, they can be replaced through governance proposals. For Challengers, malicious behavior means deleting valid outputs, while for Proposers, it means submitting invalid outputs.
When a governance proposal is created, Initia’s L1 validators vote by running L2 nodes to identify who has acted improperly. This system ensures that no single entity can censor transactions or interfere with the withdrawal process.
The icing on the cake
If we are content with the routine and do not go further, it cannot be called Initia's work.
Initia makes it incredibly easy to build your own rollup. As many people may know, building a rollup is not just about hosting it. As a developer, you need to build a lot of peripheral infrastructure, such as indexers, oracles, and bridges.
Did you know that the Interwoven Stack provides all the functionality you need?
Skip Connect — built-in oracle service
With Skip, Initia is able to provide fast and up-to-date asset price data to itself and all Minitia built on the Interwoven Stack.
Connect is a built-in oracle sidecar service run by Initia validators that is responsible for pushing price updates to the chain. This implementation leverages two new features introduced in Cosmos SDK version 0.50: ABCI++ and Voting Extensions. These features allow validators to submit arbitrary data and store it on-chain, preventing malicious parties from blocking price updates by filling blocks with spam.
Once price updates are on-chain, developers can query them through the command line interface (CLI), application program interface (API), or at the smart contract layer.
Additionally, Connect’s prices will be passed on to every Minitia on the Interwoven Stack, ensuring they have convenient access to the latest prices from day one.
This way, Minitia doesn’t have to shoulder the burden of running the necessary infrastructure, or find, strike agreements with, or invest resources into integrating third-party oracle providers. It’s all taken care of for them!
Cross-chain contract calls
In order to achieve true interoperability, Initia needs a secure and efficient way to communicate across chains. Developers can choose from a variety of methods, one of which is through the bridge hook on the Optimistic Bridge. The bridge hook functions similarly to the IBC hook, allowing contract calls to be triggered when token transfers are made. The OPinit bridge hook is used to trigger contract calls while transferring assets through the OPinit Bridge.
On OPHost, the bridge hook is responsible for updating the bridge metadata; on OPChild, the hook allows arbitrary execution of transactions during the FinalizeTokenDeposit phase.
We designed the system to support multiple virtual machines, so whether it is EVM, MoveVM or CosmWasm, the bridge hook can execute arbitrary transactions based on the data field in the message.
This is a data format suitable for use in an EVM chain, for example.
Built-in indexer
Minitia comes with a built-in indexer that automatically indexes and stores all relevant data on the chain. Through the REST API, this data can be accessed for querying historical records.
Whether it is the account's tokens, NFT information, or transaction records, all these functions are already built-in.
Indexing is a major difficulty when building on-chain applications, and this built-in indexer greatly simplifies the process! Running your own indexer is usually expensive and cumbersome. With this built-in indexer, developers can display information such as token balances, NFTs, and transaction history without having to build their own or rely on third-party indexers.
This built-in indexer also provides out-of-the-box support for Initia Scan, a block explorer for L1 and each L2.
in conclusion
It was a very pleasant experience to dive into The Interwoven Stack. This technology is beautifully designed and supports Initia's Interwoven vision. By building The Interwoven Stack as a Cosmos SDK module, Initia has successfully transformed the SDK into a technology stack for building optimistic rollups while retaining all the benefits of the Cosmos SDK, which is excellent.
There is a lot more to The Interwoven Stack than we could explore today, and I highly recommend checking out its codebase and the associated robotics codebase to gain a deeper understanding of the technology.
Ultimately, one immutable fact remains: Initia is the true home for rollup technology. Initia was designed from the ground up for Minitias to thrive. The Interwoven ecosystem is already spurring innovation, with Minitias like Blackwing, Contro, MilkyWay, and Inertia being novel application-specific rollups that will be available on day one! All of this innovation is enabled by The Interwoven Stack.