Building a Tokenization Infrastructure
When Ethereum went live back in 2015, developers suddenly had the ability to create their own tokens without first having to build an entirely new blockchain. Before this era of programmable blockchains, there was no such choice. Litecoin, for example, had to clone the Bitcoin code and run an entirely separate network with its own miners, despite the fact that everything else was absolutely identical, except for a few numbers in the protocol which gave Litecoin a shorter blocktime and a higher number of total coins that could be mined over the chain’s lifetime.
The challenge of making tokenization accessable
Today, basically anyone can create their own token, provided they have some knowledge of how to write (or rather copy/paste) solidity code and handle a client. But now, as blockchain grows in popularity outside of its original niche, there is a new challenge; how to create tokens without all the technical nitty gritty; or rather, how to make it possible for anyone, regardless of technical knowledge, to issue their tokens through something as nice and convenient as an App or a web portal — no more Solidity code hardwiring necessary.
This, however, is hardly a simple goal. In order to build all that from scratch, there are a lot of moving parts. This article is meant to illustrate the sheer dimension of this task, though without giving any detailed numbers, as these can change depending on the project; we’ll just cover the core components needed in order to create a reliable, useful tokenization infrastructure. Ultimately, the price tag will depend on the price of the developer’s resources, however you should get an impression of the magnitude of a project like this.
So what do you need to build a tokenization infrastructure?
1) Well, first you need a blockchain. You can either start with an existing one, or go old-school and launch your own. This does have some advantages. A lot of projects had difficulties with the metrics of Ethereum, like its transaction price and longer transaction times. In fact, a number of projects died because of that wasted time and cost, so if those factors are important to your end user, then it is worth considering whether you want to launch your own network. If not, the choice should be a careful one. As of today (late 2020) there are already plenty of alternatives to Ethereum.
2) Next you need a way to interact with the chosen blockchain. This can even be outsourced to Blockchain-as-a-service providers. In any case, you need a way to read-and-write to and from the distributed ledger.
3) All data read from blockchain — and ideally only the data that is relevant for you and your customers — needs to be stored somewhere. You can’t access it in raw format. Well, technically you can, but doing this means a significant restriction when you want to do something meaningful with the data, such as running any structured queries. And you can say goodbye to the plan to ever run on more than a single blockchain without a significant rebuild of this rather crucial part. Basically, you have to build a central data store that maintains blockchain data and transforms it into business data that can be used in your processes.
4) Every good project needs a user interface. The most simple one is a web interface, however most people nowadays prefer an App. Some things can be done on an App, but the limited screen size does makes it difficult to handle complex tasks like tokenization.
5) If you have users, then you have to authenticate them and administrate their user data. There are several tools available for this purpose, which you can use and integrate; however it is an important separate component and it is needed in every part of your project.
6) An infrastructure for tokenization requires data do be written to the blockchain, e.g. when smart contracts are created and tokens are minted. This is only possible if there is a way to prepare transactions and submit them to the user to sign.
7) If transactions are signed, then you need a way to handle private keys. To minimize the attractiveness of your new infrastructure to hackers and miscreants, the keys should be stored by the token issuers. There are some standard means for this purpose. You can do it through an API like metamask, however you do run into a number of problems if you decided to run your own blockchain. Choosing an existing provider means you either unload the technical hassle on your users or to be limited with the few options the providers give you in terms of blockchains and supporting technologies.
8) You need a solution for how to store additional data. Blockchain is not exactly a good place to store large quantities of information. IPFS might be a good solution, or another centralized or decentralized data storage. But still the off-chain data has to be linked somehow with the information on-chain.
What does it cost to put all these ingredients together?
What drives the costs? Well, first of all these things have to be developed. Even if you chose to take on existing components, where available, they have to be linked. The major cost drivers in the initial phase are:
- Audits, Security Checks, and the subsequent “hardening”
Once you’ve gotten past these initial hurdles, congratulations! But now there are additional costs over time. Blockchain is not exactly an old and established technology. Things can change quickly. New blockchains get developed, some technologies have security holes and need to be replaced (see “Heartbleed bug”) or simply run out of maintenance. The more existing components have been used, the more unpredictable the maintenance becomes. It is difficult to know whether or not some component might become obsolete, supporting projects abandoned, or products even banned in certain countries. All of this has happened, and much of it is out of your control. The costs/problems that you face in this phase include:
- New blockchains, new technologies, new protocols
- Security improvements, bug fixing
- Usability improvements
If any of the products were Apps, then you’ve opened a whole can of worms; it can become a major battle against the different platforms and hardware devices. If you have to maintain two or more Apps, then this becomes really expensive over time.
And finally, there is the constant need for support and maintenance. Customers might wish to have some special features for their business implemented and integrated into the tokenization solution. This might prove tricky, because it requires an excellent architect to consider possible scenarios in advance and plan for an extension with generic business models.
In a nutshell…
To sum up: it’s not an easy task to create a tokenization infrastructure, and certainly not one that is meant to last longer than two years, the average time it takes for a technology to become outdated in the fast-paced world of blockchain. All in all, the creation of a tokenization infrastructure from scratch must be considered carefully, as it is costly in terms of time, money, and risk.
Fortunately, there are a few solutions out there to help you build a tokenization platform quickly and easily. Our mission is to make blockchain adoption as simple as possible. With our Active Sandbox, CoreLedger provides a safe, affordable, and realistic environment for businesses to test and optimize their blockchain use cases using our full suite of token lifecycle management tools, including web and mobile apps. Build a live proof-of-concept on blockchain or test and tweak your solution in a safe and realistic environment. Then, when you’ve worked out the bugs and are ready to launch, we’ll move your solution to a productive chain.
It’s the perfect way to save yourself those upfront costs and risks; with our Active Sandbox, you can essentially skip all the problems and costs associated with the first stage of getting your tokenization platform off the ground. We even offer solutions to help future-proof your tokens.