ERC-20 tokens: what they are and how they work
Most ICOs are based on ethereum as a platform, and more specifically on ethereum smart contracts.
So while we are used to seeing and dealing with ERC-20 tokens, few people know exactly what they are, how they work, or even what ERC-20 means. (If you’re wondering, ERC stands for Ethereum Request Comment, and 20 is the arbitrary number assigned to the proposal.)
As the name suggests, the native currency of the ethereum blockchain is ether ( ETH / USD ). But ERC-20 tokens also act as coins in ethereum. Ethereum is the heart and mind of ERC-20 tokens. Your blockchain processes your transactions and your virtual machine executes your smart contracts .
Ethereum.org describes the mechanism of ICOs as follows: Customers pay for the smart contract (the robot is in the center). The robot sends the money to the owner of the contract. The robot returns the owner’s ICO tokens to clients.
Remember that these tokens are not independent. They reside on the ethereum blockchain and depend on its distributed computing power.
Risks of smart contracts
Although smart contracts are very efficient, they carry certain risks. For example, a smart contract cannot be changed once it is initiated by the developers of the ICO. If a smart contract contains errors or vulnerabilities, you could easily lose your funds, tokens, or both. Such things have happened frequently throughout the history of ethereum.
The most notable example was the hacking of the $ 55 million DAO, and its correction required a fork of the ethereum network (which is how the Ethereum Classic was created).
Why is the ERC-20 standard ncessary
Before the ERC-20 standard appeared, there were many compatibility problems between the different forms of ethereum tokens. Each token had a completely unique smart contract.
In other words, you had to write a completely new code for each change or wallet, in order to host a new token. And supporting the growing set of tokens was becoming overly troublesome and time consuming. As a solution, the industry invented a standard protocol for all tokens, now known as ERC-20.
The ERC-20 token standard has six mandatory parameters for any smart contract, plus three optional (but recommended!). Optionally, you can set the maximum number of decimal places that a token supports. For comparison, bitcoin allows eight numbers after the decimal point, as well as its symbol (usually a 3- or 4-digit code) and its name. (So pick something inspiring!) The six mandatory functions refer to the number and transfer of tokens.
The first two are used to assign the initial state of the token distribution: The totalSupply function of the token must be set. Once the maximum is reached, the smart contract will not be able to create any more tokens. The balance0f function assigns an initial number of tokens to any address, usually the owners of the ICO. Two transfer methods are also needed for additional distribution to users and sending of tokens between users.
They are vital for the functions of the secondary market: The transfer function moves tokens from full supply to any individual user who buys during the ICO phase.Two more functions are needed to verify the two previous functions:
The approve function verifies that a smart contract can distribute tokens, based on the remaining supply. Lastly, the allowance function ensures that one address has enough balance to send tokens to another address.
These 6 easy steps have enabled portfolio and exchange providers to create a single code base that can interact with any ERC-20 smart contract.
ERC-20 token applications
ERC-20 tokens have many uses. For example, they can act as project participations, asset ownership certificates, loyalty points, or even simple cryptocurrencies. It is also possible that ERC-20 tokens simultaneously fulfill several of these functions.
ERC-20 token creation
All tokens are created by smart contracts. These smart contracts manage token transactions and account for the balance of each token holder. For example, CoinLaunch ‘s CoinCreator page allows you to easily create your own ERC-20 tokens. While an ICO is active, you must receive the ICO tokens at the agreed exchange rate, if you send funds in cryptocurrencies and your data (most importantly, your postal address) to your smart contract.
Problems with ERC-20 tokens
The ERC-20 protocol alone is not always sufficient for the purposes of a token. It is merely a standard for creating ethereum-based tokens, and it does not secure useful, valuable, or even functional tokens.
A token can be further customized as long as it meets the basic requirements of the ERC-20.A disadvantage of the ERC-20 standard is that it makes the deployment of a token trivial on a technical level. As a result, many teams that would otherwise have been unable to launch an ICO have been able to do so.
The large number of tokens released (47,454 and counting!) Leads to an abundance of very similar tokens, making the selection process more difficult and confusing for potential investors. Another problem is that some projects implement the guidelines in an idiosyncratic manner, creating more confusion about the way their tokens operate. For example, tokens are sometimes sent to smart contracts of other ICOs.
If that contract has not allowed this type of token, then the tokens will be lost. At the end of 2017, more than $ 3 million was lost in this way. The ERC-223 proposal aims to counteract this defect.
The creation of the ERC-20 token standard has accelerated growth across the ICO space by standardizing functions that facilitate project token development. The protocol has also brought about greater synergy between ICOs projects, exchanges and portfolio providers. In response to common issues and vulnerabilities in ICO tokens, the ERC-20 protocol will likely be improved and expanded in the future.