ICOs, Mainnet Launches & Token Swaps – the Redemption of ERC20 Tokens
During the last year, an increasing amount of companies have launched an initial coin offering (“ICO”) to finance their business. The Swiss Financial Market Supervisory Authority (“FINMA”) states in their recently published ICO Guidelines that “in an ICO, investors transfer funds, usually in the form of cryptocurrencies, to the ICO organiser. In return they receive a quantity of blockchain-based coins or tokens which are created and stored in a decentralised form either on a blockchain specifically created for the ICO or through a smart contract on a pre-existing blockchain”. According to a research report by PwC Strategy&, more funding was raised with ICOs within the first five months of 2018 than the total of the previous five years before.
An ICO is usually structured so that the company issues their own tokens using smart contracts that are executed on an existing blockchain. The establishment of a propriety and stable blockchain usually requires a substantial amount of development work and the associated investment in software. Startups developing their own blockchain do not have the necessary financial means at their disposal in the early stages. As these companies cannot immediately develop a blockchain solution from scratch, instead they use an existing blockchain with the ability to host an ICO token. Blockchains that allow this functionality must have “the ability to create a second layer on top of their own native token”.
Ethereum is the most popular blockchain used to issue ICO tokens, using the “ERC20” common technical standard for Ethereum tokens. For companies aiming to build their own blockchain, the issued ERC20 tokens act as a placeholder for the future “native” tokes. From an economic point of view, an ERC20 token exhibits similar characteristics to a convertible note, if the prospective native token meets the requirements of an asset token according to its definition by the FINMA. Whereby in case of a convertible note the initial loans will be converted to equity at a specific milestone, the ERC20 tokens are converted to native tokens at a specific milestone. There is also the option to use a Simple Agreement for Future Tokens (“SAFT”) in order to raise funding – as in the case of the Telegram ICO.
ERC20 Token Standard & Mainnet Launch
The term ERC20 describes a technical de-facto token standard for an Ethereum smart contract. ERC is the abbreviation for “Ethereum Request for Comment” which determines the necessary requirements for tokens to follow within the Ethereum ecosystem. The core ERC20 functions include:
– transfer(to, value)
– approve(sender, value)
– allowance(owner, spender)
– transferFrom(from, to, value)
– totalSupply( )
Based on these commands, an ERC20 token is queried and modified. These commands and rules have to be met for a token to be accepted and to ensure that the tokens can interact with each other and the surrounding infrastructure on the Ethereum blockchain. Besides this “placeholder” function, this kind of token can be also used as a currency for dApps. Moreover, the smart contract may define additional features that hint towards the purpose of a token, for instance, the usage as a payment, utility or asset token.
By using an ERC20 token as a placeholder, issued on the Ethereum blockchain, their target purpose functionality might be limited. Once the final blockchain solution is developed, tested and successfully verified, the next step is the launch of this new, self-sufficient blockchain – the mainnet launch.
The mainnet, i.e. the new blockchain, may differ in basic characteristics such as the underlying security algorithm, cryptography, level of decentralization, level of efficiency, identity obfuscation strategy, network topology, block production policy, permissibility, scope of participants and grandeur of the vision. Many of these properties are highly related. The ERC20 tokens issued during the ICO might not be compatible with the new blockchain and its corresponding features and adaptions. Therefore, they need to be migrated onto the new blockchain. Normally, a project sets a date, or a time period, when the “old” tokens have to be swapped, otherwise they become frozen and thus unusable.
Past projects have approached this in several ways but commonly all ERC20 tokens that were not transferred from the Ethereum blockchain became frozen and thus useless at a pre-determined date. The tokens from the Ethereum blockchain must be moved to the new blockchain. This process is known as coin swap or token swaps. The most recent and best known token swaps were EOS (EOS), Tron (TRX) and VeChain (VEN). Figure 1 below shows a short overview of the most relevant ERC20 token swaps:
Figure 1: Overview of (upcoming) Token Swaps
Given the technical properties of cryptography and the underlying blockchain, the process of substituting two digital assets is not as complicated as it seems at first glance. To explain the whole process more understandably, we summarized two recent token swaps below.
Which are the necessary steps? Exhibited by the example of TRX & VEN
The Tron ERC20 tokens had to be swapped into TRON20 standard tokens (the native coins for the Tron mainnet). All Tron tokens traded at this time were exchanged at a 1:1 ratio.
Figure 2: Visualization of the TRX token swap
To conduct the token swap, the token holders had to deposit their token on an exchange platform that supported the swap – there was no other way to swap these tokens. Around 60 exchanges supported the swap such as Bitfinex, Bittrex and Huobi. According to the official instructions published by the Tron foundation, the ERC20 Tron tokens had to be deposited onto the participating exchanges before June 24th 2018 to ensure a successful migration. Alternatively, the exchange platform Binance, have been offering an ongoing coin swap until the end of December 2018. The mainnet was already launched on May 31th 2018 using a “delegated Proof-of-Stake (POS) consensus algorithm and relies on 27 block validators – dubbed super representatives (SR) – to produce the blocks and verify transactions” – only a side remark for the more technical readers.
VeChain published a specific guide for their token swap. The company has described the whole procedure as a “smooth launch of VeChain’s mainnet”. In contrast to EOS where to tokens had to be swapped on a pre-determined date (and actually 1.2% of tokens failed to do so and are hence frozen), VeChain allows its token holders to swap their tokens during a defined time horizon beginning July 13th 2018. At the time of writing, no end-date for the swap has been announced and there will probably be no deadline (with the exception of a minority of specific token holders). Like Tron, the Vechain ERC20 tokens (VEN) are swapped into the native coins VeChainThor tokens (VET). However, in this case the tokens will be swapped at a 1:100 ratio – for every single VEN token transferred, the token holder will get 100 VET tokens.
Figure 3: Visualization of the VEN token swap
According to the VeChain guide, there are three different methods outlined how the VeChain tokens can be swapped. There is the possibility to swap via an exchange (like Tron), the VeChain wallet or the ledger nano hardware wallet. Using the exchange option, the VEN tokens had to be transferred to the exchange wallet before the second week of July 2018 when the token swap occurred. The swap was supported by seven exchanges, among them Lbank, Bithumb, Binance and Bitfinex. Similarly to TRX, an option to exchange after the announced time horizon passed has been possible using Lbank exchange. For the swap using the VeChainThor wallet, further detailed instructions can be found here. At the time of writing, there is unfortunately no guide released for token migration by using the hardware wallet nano ledger.
Is there a general approach for token swaps?
No. As outlined above, there is no blueprint to how a token swap is constructed. However, it is clear that for all token swaps the token holder must conduct research on the process. The token development teams typically provide instructions on the required steps of a token swap. These instructions are commonly published in the newsfeed of exchange platforms, via Twitter and Medium accounts or on their official homepage. Figure 4 summaries a framework on how a token holder should handle a token swap and which steps should be considered:
Figure 4: General assistance framework regarding token swaps
In the first step, an investor must determine if there is any fixed date when the token swap takes place or if there is any time horizon when the tokens should be swapped. In the case of EOS or Augur there was a pre-determined date on which the tokens had to be transferred. Alternatively, there is also the possibility of a time slot over a few months or more when the token swap can be conducted, such as in the case of Pundi X, Tron or VeChain. A different approach was implemented by Icon where both options were possible.
The second step addresses where the ERC20 tokens are currently stored. Depending on the storage option, a token swap might differ therefore varying actions steps are required.
In case of storing the coins on a wallet on an exchange platform, the investors have to check if the exchange supports the new token – based on announcements on the exchange platform or the website/ forum of the corresponding ERC20 token. In the past, the major exchanges have typically supported the native coin. As a side note, this process of initially issuing ERC20 tokens could represent a cheap and easy alternative of becoming listed on an exchange platform with a native token.
The specific way how the token will be swapped may also differ – there is either the possibility of an automatic exchange where tokens only have to be stored in the wallet on the exchange during a specific timeframe or, alternatively, some specific instructions will be announced. If the token migration is not supported, the token holder will have to transfer the ERC20 to a specific wallet that supports the token swap.
In case of storing the coins on any other kind of wallet, the investor has to analyze initially if their wallet supports the new token standard. For previous token swaps, this was usually not the case and the coins had to be transferred either to a specific supporting wallet or to any exchange platform supporting the exchange.
Are there any risks associated with a token swap?
The primary risk is missing the announced deadline – when it is likely that the ERC20 tokens can no longer be swapped. They will become frozen and thus worthless. Taking into consideration that this is a quite new process occurring in the decentralized cryptocurrency market where no central authority is available, such a “trustless” process itself represents a major problem. There is no legal recourse if anything goes wrong – unlike in a central (bank) system. Additionally, the token swap has to be conducted in a proper manner, like every blockchain based transaction because of their irreversibility. If, for instance, a wrong receiving address for the new wallet is used (which might be due to a mix up of private and public keys), then the coins could be lost.
In a nutshell
If an ICO issues ERC20 tokens as a placeholder, a token swap is an inevitable step that has to be completed by any token holder. The coin swap is necessary to gain access to the (native) token’s full functionality and to prevent freezing of the ERC20 tokens. How a token swap is conducted depends on several factors, however, our framework (see Figure 4) should assist with the swapping process. The key points to remember are to:
– check the official instructions
– be aware of a potential deadline
– follow the instructions in a proper manner
Considering that a significant number of ICOs have issued ERC20 placeholder tokens, there is an increasing amount of future tokens swaps expected – the most relevant ones are exhibited in Figure 1.Read more