Airdrop Use Case: Pull-Based Token Distribution

We use an airdrop-based use case to demonstrate the unique advantages of disposable chains. Let's assume we want to conduct an airdrop of a newly created token to a set of users who meet specific eligibility criteria.

Traditional Push Model Challenges

In a traditional "push" model, tokens are distributed to each eligible user via direct transfers. Two immediate costs arise that can significantly limit the feasibility of such an approach: the cost of individual transfers and, in the worst-case scenario, the need to send an existential deposit to each user. These requirements can lead to upfront costs of thousands of dollars, constraining the viability of airdrops and diminishing their value as a tool, despite the utility they sometimes offer.

Pull Model Solution

Our solution to these challenges is to create an optimized environment for a "pull" model, enabling each eligible user to claim their airdrop independently with minimal friction.

Implementation Overview

Overall Diagram

Asset Setup

Two assets would be created: one on Asset Hub, serving as the trusted system chain for asset handling, and the other on our disposable chain. The asset IDs of these assets must match to allow the disposable chain's transactor to seamlessly map them. For instance, if the native asset created on Asset Hub has an ID of 3000, the asset on the disposable chain should be assigned the same ID. This requirement is also a key reason why asset creation on the disposable chain is restricted to sudo/governance.

Asset Mapping

Dataset and Merkle Root Generation

On a separate off-chain system, for which we also provide a working solution, a dataset is prepared containing beneficiary accounts and their corresponding balances to be claimed, based on specific criteria, such as Polkadot chain usage or messages sent via XCM. This tool calculates a merkle root for the provided dataset, which is stored in the disposable chain, associating it with the asset ID for which the asset was created.

This mapping of roots to asset IDs enables the disposable chain to run multiple airdrops simultaneously, as the root used for verification is determined by the asset being claimed. The storage of a new root associated with an asset ID must be executed by Sudo/Governance.

Asset Transfer and Pot Funding

Due to the ephemeral nature of the disposable chain, asset issuance is managed on Asset Hub. After minting, the amount designated for the airdrop is transferred as a reserve asset from Asset Hub into a pot account on the disposable chain. This approach ensures that the reserve remains secure on Asset Hub.

Claiming Process

Once the assets (technically derivatives of the original Asset Hub created asset) are transferred to the disposable chain and the pot is funded, users can start the claiming process as follows:

1. Merkle Proof Generation

Users must obtain a merkle proof from a provided off-chain tool, which will be validated against the stored root. This proof verifies eligibility, allowing the user to claim the corresponding balance.

2. Free Transaction Claiming

The chain offers a free transaction mechanism with the claim extrinsic whitelisted, enabling users to claim tokens even with newly created accounts, as neither an existential deposit nor transaction fees are required. These free transactions are gated by a cooldown period, so if a user makes an incorrect claim, they can try again after a specified number of blocks.

Free Txn

3. Verification and Distribution

Verifications are performed to ensure each beneficiary is genuinely eligible and part of the dataset, by validating the provided proof against the stored root. Each user can claim their tokens only once.

Merkle Proof

4. Making Assets Permanent

For the final step, a user who has claimed assets and wishes to make them permanent must reserve-asset transfer them back to Asset Hub. At that point, the assets become native to Asset Hub and will not disappear when the disposable chain is eventually discarded. To complete this transfer, the user must fund the sender account on the disposable chain to cover fees, and the receiving Asset Hub account must hold at least the existential deposit (ED) to accept asset transfers. An XCM asset transfer is then executed, with fees covered by the relay token, concluding the operation and securing the assets permanently on Asset Hub.

Token Flow

Additional Benefits

An additional benefit of the disposable chain setup is that it temporarily fosters a low-friction market environment. In this context, mechanisms can emerge where users accumulate more tokens, perhaps by consolidating small balances from other beneficiaries or exchanging different airdrops to increase their holdings, before transferring assets back to Asset Hub. This environment prioritizes smooth, low-cost transactions at the expense of storage, which, again, will ultimately be discarded.

Intuitive User Experience

If managed properly by a front-end application, this entire operation can be streamlined into a single "claim" button, providing a seamless experience even for newly registered accounts.

A key point worth highlighting is the mechanism to prevent double claims. This is achieved by tracking users who have already claimed, which could lead to significant chain storage usage if the user base is large. However, this potential bloating aligns with the purpose of the disposable chain, where temporary storage expansion is not a concern since the chain can later be discarded.