A Guide to Custodial dApps: Comparing Features and Potential Applications

ยท

7 min read

In this series, I have already described the types of applications. Today, I will dig into different types of custodial applications - what they are, what are the key concepts, and describe some example use cases. So, let's go. ๐Ÿš€๐Ÿš€๐Ÿš€

Specifics of custodial dApps

Custodial dApps are defined as those where the application provider manages control over the blockchain wallet. It means end users of the dApp do not own the private keys to the wallets that hold the blockchain assets. It means that whenever the provider decides to shut down the service without previous notice, the assets held by the customers are locked on their platform. Typical examples are FTX or Celsius, where we have seen the loss of funds of the customers and a very long way to regain control over them.

๐Ÿ’ก
One of the biggest hacks in blockchain history was the hack of the first custodial exchange platform Mt. Gox. Hackers stole more than 200,000 Bitcoins back in 2014. Some of them were found, but platform users still have not fully received their stolen assets.

Benefits

Conversely, the benefits of choosing the custodial approach for building your applications are clear.

  1. You, as a provider of the application, have effortless onboarding of your users. You don't have to persuade users in the first 10 seconds to create a blockchain wallet, integrate their MetaMask or write down mnemonic phrases and never lose it. Otherwise, their assets will be lost forever.

  2. You have complete control over the funds and activity on your platform. You can block incoming transactions, which might be problematic due to compliance (receiving crypto assets from hacks, etc.).

  3. You know exactly the history of every action your users performed. From the compliance perspective, you can report the details local authorities require.

  4. The architecture of the application has been known and proven for decades. You have a Sign in / Sign up page with email or social login, overview screen, or detail screen with the entire history of the user stored on your backend.

  5. You don't have to sync the data from the blockchain every time a new user joins your platform - you create a new wallet for him, and you are starting from scratch with zero history.

  6. You can quickly recover the lost passwords for your users. If the user loses access to the platform, you just reset it. Your users don't have to remember their mnemonic phrases, store them locally and never lose them.

๐Ÿ’ก
In the world of cryptocurrencies, a mnemonic phrase is defined as a set of random words used in a specific sequence that grants access to the holder's owned cryptocurrency assets.

Downsides

  1. You must have robust security in place. No one can hack you and steal your users' assets because it's your users' assets, not yours.

  2. You must be legally responsible for holding the assets of your users. Not every jurisdiction allows this.

  3. You must have all the history of your users available for reporting to local authorities.

  4. You must be able to block the transactions, which might be fraudulent or assets originated from some hack (you can use services like Chainalysis or TRM Labs for this)

  5. Crypto-savvy users are not "happy" and don't trust applications that hold assets on their behalf. The purpose of blockchain was decentralization and no intermediary - this goes against the core principle.

Type of custodial dApps you can build

Crypto exchange

This is one of the most understandable use cases you can imagine. The crypto exchange is a platform where users can trade their crypto assets with each other. The exchange is just a middleman for facilitating the trades. Once users join the platform, a new wallet is created inside the exchange. Users can then perform a deposit of the crypto assets to the crypto wallet which is assigned to them. The user doesn't own the private key of the wallet - the exchange owns it. Once the exchange receives the crypto asset, the balance of the account of that user is topped up with the crypto, and they can start trading. Once the trade is performed, the user can withdraw the bought asset outside of the platform - this is when assets leave the exchange's control and appear in the user's wallet. The user regains complete control over his assets only once the assets leave the exchange, not sooner.

Crypto wallet / custody

A custodial crypto wallet is very similar to a crypto exchange described above. The difference is that it is usually impossible to trade on the platform, and users are just storing the assets securely in the wallet. One of the most used use case from this area is crypto asset custody as a service - SaaS service for other applications, which provides professional custodial services - management of the crypto assets, deposits and withdrawals. Most known providers in this space are Fireblocks or BitGo.

NFT Marketplace

The use case very specific to NFTs of any kind. It's a special kind of crypto exchange, where people can buy or sell their NFTs. NFTs could represent anything - piece of ownership of some digital asset, sword from your favourite game or ticket from the concert of your favioutie singer, which allows you to have a special 15 minutes face to face VIP chat with him.

Ticketing

You can add so much value to the ticket of your favourite sport game or a special concert. Tickets as NFTs can unlock the potential to leverage them even after the event is finished - it can give discount in the fan shop to the owner, meet face to face with your favorite player or buy the next ticket 24 hours earlier then everyone else. You can create a simple mobile app, which will show the NFT you are holding in your wallet in the app at the entrance of the stadium and you can leverage a fast lane. The possibilities are endless.

Tokenization platform

Tokenization platform is a type of custodial dApp, which allows owners of the real world asset to transform the object into the digital form. Usual use case is to enable fractional ownership of the physical asset like property or piece of art in the digital space and allows multiple parties to own the fraction of it. You can now transfer these fractions without a hassle.

Gaming

Gaming is the area where blockchain is exploding. One of the problems in the gaming world is to easily and legally enable transfer of the game items from the user account in a game to another user in the game. There is a huge black market of items from the games, which are being traded by the gamers. With transformation of these items into the NFTs the game author enabled the players to easily exchange the ownership of that item between the players without the need of using the black market and services, which might be risky for the buyer or the seller.

Music industry

Music industry is another market where blockchain is bringing significant shift. Fractional ownership of a song or album, royalties being distributed automatically and equally between the authors is just a one example of how blockhcain technology can help the authors to earn more money.

Loyalty points and user gamification

Not every application you might be building must be built from scratch. You can enhance your existing application and user base with blockhain-enabled loyalty points and gamification features. These loyalty points are usually represented as a fungible tokens and users can receive them for any activity they are doing inside the ecosystem of the application. They can perform actions and collect more points, or even NFTs for special achievements. Holding some NFT might unlock future features of the application others cant leverage. These NFTs might be later sold on the NFT marketplaces easily.

๐Ÿ’ก
Fungible token, usually represented as ERC-20 contract, is a type of token which is non-unique, divisible and interchangeable. Typical example might be USDT or USDC - stable coins representing US Dollar. Every USDT is exactly same and you don't care, which one you were using. On the other side NFTs, or non fungile tokens, are unique, indivisible and irreplaceable.

Summary

Some of the use case I have described above can also be achieved with a fully decentraized - non custodial - approach. In my future posts, I will describe each of the above in technical details, so you can understand, how each of the important piece can be actually developed and how the code could look like. Stay tuned....

ย