Fully Decentralized Token Distribution on Cardano

A quick reference on the Cardano blockchain architecture

An unspent transaction output (UTXO) is a unit of information in UTXO-based blockchains like Cardano or Bitcoin. Every transaction on such blockchains spends some UTXOs as inputs and produces some UTXOs as outputs. In the case of Cardano, a single UTXO can store a lot of information: a bundle of native assets, some data, and even an on-chain script for referencing (available since Vasil hardfork). Every UTXO is locked either by a user wallet’s public key or an on-chain validator script. The validator script addresses are marked with tags “Contract” or “Smart Contract” on blockchain explorers such as cardanoscan.io.

How centralized distribution works on Cardano

The most used method of token distribution looks as follows. Every eligible user sends a small amount of ADA to the designated wallet address. This ADA covers the distributor fees and the minimum ADA in UTXO requirement. A distributor program, run on the server, sends the project tokens and some ADA back to the user. DripDropz.io, for example, is a portal that provides token distribution services based on this method to smaller projects.

Decentralized Distribution Protocol

The protocol assumes that the project’s token has 1) a fixed supply and 2) a list of addresses and token amounts to distribute to each address.

Figure 1. The diagram of collaborative token distribution protocol.

ENCOINS Distribution Tool

Here at ENCOINS, we are building a tool that implements the Decentralized Distribution Protocol, and we will be ready to share its source code in the near future. The tool allows Cardano projects to distribute their tokens in a fully decentralized and trustless way by executing the proposed protocol. ENCOINS will be one of the first projects that take this route: ENCS token distribution is scheduled for the second half of February 2023. You can read more about ENCS use cases in our whitepaper.

--

--

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store