What is ERC-20, what are its main advantages and how to properly store such coins
An ERC-20 token is a generalized protocol that allows other tokens to be created on top of the blockchain. Tokens that meet these specifications are known as ERC-20 tokens (ERC stands for Ethereum Request for Comments), and today they are the most widely used standard in the cryptocurrency industry for creating new tokens.
ERC 20 standard
To begin with, it is necessary to give a general concept of a “standard” in relation to software development, including cryptocurrencies. A standard is a certain set of functions and requirements that developers must follow and use in order for their product to be compatible with projects using this standard.
So, ERC20 – what is it and how does it work? The standard formalizes the requirements for the operation of tokens created on the Ethereum cryptocurrency blockchain.
Important: this standard describes the rules for the operation of created tokens. The ERC20 code is open, any developer can get the source code on the official project page on GitHub and create their own ERC20-compatible coins.
The goal of creating a formalized standard was to simplify transactions between ETH wallets, smart contracts and exchanges. Thus, it is easy for a new coin on ERC20 to enter the exchange, since the protocol for working with it is known, and there are no obstacles to exchange listing.
List of top 20 ERC20 tokens
Despite the comparative shortness of its history - 4 years, Ethereum has become a reliable platform for the creation of very successful projects that have qualities no less than the original platform. Today, at least 45 of the TOP 100 cryptocurrencies are ERC-20 tokens and are projects no less popular than “coins”. You can get acquainted with them in detail on the page https://coinmarketcap.com/tokens.
EOS (EOS)
This token has the largest capitalization among those built on Ethereum. Moreover, it also has its own blockchain with the inclusion of Ethereum tokens, and also allows you to create the same smart contracts, in fact challenging its predecessor. Indeed, the project is determined to take away some of the users from Ethereum . The EOS platform allows you to create dApps, quickly carry out transactions in parallel with others, it is designed for scaling and working with large projects.
Tron (TRX)
This token was created for users who realize their talents in the entertainment industry. After all, today not all videos and photos can be published on the Internet just like that, but on the Tron network you can not only publish them, but also receive a reward for it . According to the creators, today's life is tightened by the control of content by the authorities, who literally force others to view publications and programs that benefit them, including in China. It is not surprising that this original idea for creating a token came from the developers of this particular country. The Peiwo App was the first to become available to currency users.
VeChain (VET)
The project was created to convert data between control systems for the supply of goods to enterprises and ordinary customers. The value of the token lies in the fact that the user will receive a guaranteed quality product as a result, or otherwise receive the money paid. Another implemented solution is the tracking function along supply chains, based on requests in manual mode. The blockchain stores all this data, and when requested, provides the necessary information in the database. Today renamed VeChain Thor (from VEN to VET), the platform has also begun to support commercial dApps through the Thor utility token.
OmiseGo (OMG)
One of the hottest offers of recent times. The motto of the project is the expression “Unbank Banked”. The idea of the OmiseGo project is to transfer banking services to the blockchain platform so that people using them can not be tied to bank accounts. The list of project tasks turned out to be very wide: wholesale and classic trade, one-time and regular payments, salary projects, asset management, discount systems and financial support of supply chains. The purpose of the platform is to transfer mutual settlements in all directions from national currencies to digital coins.
ICON (ICX)
The startup ICON was created by Dayli from South Korea. Its task is to increase the efficiency of information exchange between various institutions. The ICON blockchain, implemented in the Loopchain concept, has high performance and communicates with other chains independently, without the help of services. The chains connected to the blockchain belong to the system participants, whose voting determines the resolution of issues in the information system. The ICON project, for example, is involved in creating a common database of hospitals with the databases of insurance agencies, and recruiting agencies with universities.
Popular (PPT)
The team of this project set the task of solving problems with budget shortages when paying salaries from companies, which is especially important in developing countries. Companies connected to the blockchain will be able to apply for a loan from others in case of delays in salaries. Users will be able to leave proposals for companies on what terms they would like to lend. All this may turn out to be more profitable than banking services and deposits.
Binance Coin (BNB)
The token was created as the internal currency on the Binance crypto exchange. According to the developers’ plan, this token will first be used by the exchange commission, and then by the smart contract trading project into which this exchange will one day be transformed. The project owners routinely buy back tokens and cancel them until only half are left, in order to increase their value.
RChain (RHOC)
A very ambitious project, the blockchain of which is designed for industrial use. His team is trying to scale the network as much as possible so that it can process up to 40 thousand transactions every second and cope with the powerful flow of data, like VISA and Facebook, while maintaining the same level of security. In addition, the developers plan to create a virtual machine with a cost-effective programming language translator, where any smart contracts could be adapted in one click.
Status (SNT)
The goal of the project is to scale the Ethereum network by supporting all types of mining equipment, including smartphones. In addition, Status allows you to send encrypted messages through the messenger, has an anonymous browser that supports dApps, has a wallet for SNT and some other functions.
Maker (MKR)
This erc20 token exists as one of the internal currencies created as part of the Maker project, where each of them will be equal in exchange rate to assets - stocks, gold, oil and many others. This system has, for example, a local currency, Stablecoin, pegged to the dollar. The company that owns DAO also plans to open a cryptocurrency exchange, an analogue of commodity and futures, where these assets can be traded. The range of assets will continue to expand.
DigixDAO (DGD and DGX)
This is the same company that created the previous token. Its goal is to link real assets to the digital ones it creates. She also provides grant funding for some projects. The platform supports two ERC20 tokens - DGD and DGX. The first token is used for participants in the discussion of grant applications, and the second is used for investments in gold stored in the Singapore vault, in the equivalent of 1 DGX: 1 gram.
Aeternity (AE)
Decentralized platform for concluding functional contracts. Thanks to the Turing virtual machine with the MAST extension, the platform allows you to use only the blockchain blocks involved in confirming the transaction, and not the entire chain where confidential data will be stored. This allows the network to greatly scale. Supporting the network with the power of computers and smartphones, combined with forecasts from Smart Oracles, further increases the security of the network and allows you to anticipate situations based on real events.
Waltonchain (WTC)
Another project created to track the supply of goods and logistics processes. The main function of the project is the Waltonchain tag on the shipped product, which carries its description and is also used by the tracking tool. An additional function is the automatic creation of smart contracts, which are confirmed upon delivery. This automates and speeds up the entire process and eliminates errors.
August (REP)
The project allows its participants to create various forecasts by betting on them in REP currency. Opponents of their opinion accept the bet and wait for this event - in politics, sports, and so on. The winner of the bet takes both bets. The game takes place completely anonymously, and it is quite possible that the number of interested participants will grow and the capitalization of this token will increase significantly.
Veritaseum (VERI)
Servicing investment and commercial accounts on decentralized platforms is several times cheaper than in banks. The Veritaseum network allows both financial transactions to bypass intermediaries and commissions. Credit-free trading is carried out through the VeADIR program, where 12 smart contracts have been created for this purpose. To provide access to the service, payment is made in VERI tokens. The tokens are planned to be sold to business platforms. The project itself has not yet found its clients.
0x (ZRX)
The objective of the project is to provide a fast exchange of ERC20 tokens , bypassing exchanges and cryptocurrency exchangers, where the principles of decentralization are actually violated and user identification is required. The Ox protocol supports all of these tokens, and trading fees for them are paid using the ZRX coin. If the project team manages to convey its value to those interested in it, then the project may turn out to be the most successful and compete for the “Breakthrough of the Year” award.
Revain (R)
The objective of the project is to provide reliable reviews of products, services and services, bypassing advertising from its customers. Moreover, these reviews are checked by highly intelligent systems that conduct analysis and exclude low-quality texts, and the publications themselves cannot be deleted. Users who publish them will receive payment in R tokens, and reviews will be saved in the RSS storage. In addition, goods and services can be purchased at a constant price in RVN currency.
Kucoin Shares (KCS)
Kucoin is a cryptocurrency exchange that competes in the market with Binance. Its internal currency KCS is also used to pay commissions in an economical way. A special feature of the site is its focus on the sale of tokens at the ICO stage. Although the project is still young, thanks to the efforts of the team it has already managed to overtake many trading platforms.
Zilliqa (ZIL)
This is a blockchain platform with enormous throughput, processing several tens of thousands of requests per second. Using a special programming language, it supports high-load dApps with millions of low-complexity transactions per minute, which is not often seen among cryptocurrency platforms. Applications have their own platform on Turing. Verification on the PoW protocol occurs only when logging into applications.
Basic Attention Token (BAT)
This token is used as a currency when paying for advertising on specialized platforms that can be found through the Brave browser. Its function is also to control the visibility of advertising in accordance with thematic queries and user behavioral factors collected by this browser. Users who don't mind viewing ads can receive rewards in BAT tokens. In addition, the platform filters out advertisements for fraudulent projects.
The above projects are unique in their own way, and each user of his choice will be able, if not just to invest in their tokens, then at least to take advantage of their offers on the market.
Functional features of ERC20
ERC20 implements several functions according to the specification.
Table 1. Methods implemented by the standard
Function | What is he doing |
"Name" | Return a string constant containing the name of the token |
"Symbol" | Returns the string value of a token's ticker |
Decimals | Returns the number by which the token sum value should be divided for display. For example, the number 8 returned means that you should divide by 100000000 (1 followed by 8 zeros) |
“Total supply” | Returns the value of the total number of tokens |
"Balance" (balanceOf) | Shows the balance in the account of the wallet specified by the address _owner parameter (where _owner is the wallet of interest) |
“TransferB” (transfer) | Implements the transfer of funds online of a certain amount to a specific address |
"TransferFrom" | Transferring tokens from one specified address to another |
"Approval" | Allows withdrawal of funds from the account up to the maximum allowable amount passed to the function as a parameter |
"Permission" | Shows how much a user with address X is allowed to withdraw from the wallet of a user with address Y |
The standard provides for two types of events:
- transfer – event of transfer of tokens between accounts;
- approval – the event is triggered upon successful execution of the approve function described above.
The standard is based on ether smart contracts, implemented for the first time in the blockchain of this cryptocurrency. Although some elements and rudiments of smart contracts are also present in Bitcoin, Ethereum is still considered the first cryptocurrency to fully implement the concept of “smart contracts”.
Wallets for storing Tether
Studying which wallets support the stablecoin standard is necessary for those who are thinking about where to profitably sell and where to buy USDT. At the time of preparation of the material, the coin is added and stored in more than 110 wallets. Therefore, this situation of concentration in wallets alone could potentially create a risk of exchange rate manipulation.
For those who are still looking for where to store USDT, this article will be useful. The Tether wallet itself looks like a digital key, with which the owner gains access to his savings and controls transactions. Among the other wallets, you can focus on the following:
- Omni Wallet;
- Omni Core;
- Guarda;
- imToken;
- TronLink;
- Math Wallet.
It is also acceptable to store funds in your account on Binance. For the convenience of clients, the token can choose a suitable blockchain: VER2, VER20, TRC-20, ERC-20, OMNI.
Myetherwallet
An open source mobile web wallet powered by the JavaScript programming language. In addition to a high level of security, it allows you to easily exchange assets based on ERC-20. Browser mechanisms are used for generation. The keys are stored on the owner's PC or smartphone, and no third party has access to the keys or data.
Metamask
An online wallet for different tokens based on ERC-20 allows you to interact with different dApps. You can directly withdraw funds from the applications and replenish wallets with them. The wallet looks like a browser extension, and you can also choose a mobile version with similar functionality. This is one of the most convenient ways to connect to Uniswap.
Trust Wallet
The official application, which is developed by a popular exchange, and with the help of a wallet it is easy to verify on Binance. It can also be used to deposit and withdraw funds to payment systems and even plastic cards. You can exchange fiat and crypto assets on the built-in exchange. Among the advantages is that personal data is not collected or transferred to third parties. The functionality includes an integrated browser for working on decentralized exchanges, and also provides a mobile version for devices on different OSes.
How it works
The operating principle of smart contracts according to the ERC20 standard is quite simple. For example, a user needs to transfer some amount in standard-compliant tokens to another account. From a human perspective, a transfer is initiated, after which electronic money leaves one wallet and appears in another - just like a bank transfer. Technically, everything looks completely different:
- the user starts the ERC20 token transfer process;
- a directive is sent to the smart contract to change the owner of the specified amount of tokens;
- The sender's balance is reduced, and the recipient's balance is replenished by the specified amount.
That is, the parties to the transaction do not interact with each other directly, but with the smart contract.
This leads to simplification of all network operations - there is no need for lengthy reconciliation with databases, you only need to check the transaction’s compliance with the terms of the contract. This simplification made Ethereum's ERC20 technology very popular, and today many altcoins comply with this standard.
Other benefits include standardization of tokens. Previously, projects with unique tokens were created based on the Ethereum blockchain, and this created a big problem for exchanges and other platforms and applications that were going to interact with the new coins. Various mechanisms had to be created to ensure compatibility. This made the process very complex and time-consuming, since it was necessary to create new software “layers” to interact with the newly created tokens. ERC20 tokens solved this problem.
Explanatory video about the standard:
Stablecoin USDT (Tether)
USDT is a dollar-pegged cryptocurrency created in March 2015. And the increasingly popular USDT TRC-20 is a platform for launching tokens that can be tied to real money. In addition to the direct link to the USD, there is also a link to the euro - EURT, as well as to CNYT with a link to the Chinese yuan, and any state can issue such an asset.
The ratio of Tether to the dollar is 1:1, and the supply is unlimited. The reserve assets are located in Hong Kong and are backed by Tether Limited.
There are more than 710 million coins in circulation. The issue of new tokens is carried out by the decision of the company itself, and several hundred million are brought to the market at once. This is done when the market needs new coins. For example, in March last year, 720 million new tokens were immediately issued. And if you are interested in what cryptocurrency is needed for and how you can make money on it with minimal risks, you should take a closer look at this particular stablecoin.
Teather market indicators (at the time of writing)
Index | Size |
Current price | 73.4 rub. |
Change per day | -0,42% |
Daily trading volume | RUB 5,961,493,999,991.42 |
Market capitalization | RUR 4,534,584,983,293.78 |
Capitalization taking into account the entire issue | 4,658,839,359,269,44 |
Disadvantages of tokens
While everything looks good in theory, there is a downside to ERC20. It lies in the downside of the ease of creating coins based on the standard. Ease attracts scammers who launch ICOs, collect money and then disappear. The scheme works because the ICO of the project on ERC20 is seen by many as interesting and promising.
In addition, there is another problem - lost coins inside smart contracts. This occurs when a contract is used that is not intended for transactions with sent tokens. Its developer proposes to solve it using the new ERC-223 standard.
What happens after the smart contract creates a token?
From this point on, ERC-20 comes into play.
Once a token is created, it can be exchanged, spent, or given to someone else. ERC-20 is the universal language of the Ethereum ecosystem, which allows you to exchange one token for another.
Illustration source - Storify News
Imagine that you have created a crypto casino. Here players must use chips for ease of calculation among themselves. So, the player comes in, exchanges his money for chips and heads to the poker table.
The analogy is clear, but how exactly does it work?
Let's take a closer look at each of the above-mentioned token parameters in our crypto casino.
Developers must follow the rules flawlessly.
Let's start with the optional parameters:
- Token Name: Blu Chip;
- Symbol: BLU;
- Decimal: 2.
Why 2? We want our tokens to be divisible to such an extent that the minimum player bet is at least 0.01 BLU. We could leave zero, and then the minimum bet would be 1 BLU, since in this case it is impossible to split the tokens. For the sake of clarity, we will not go into these details.
Let's start with the main parameters. What is [totalSupply]?
[totalSupply] identifies the total supply of ERC-20 tokens created.
The first thing you need to decide is the number of chips. Let's say there are 10 BLUs on our poker table for ten players.
What about [transfer]?
[transfer] allows you to transfer a certain number of tokens from their total number to the user’s wallet.
Before the game starts, each player must receive their BLU from the dealer. Everyone gets one chip.
What is the purpose of the [balanceOf] function?
The [balanceOf] function, when called, returns the number of tokens at a specific address.
In the first hand, five of the players looked at their cards and decided to skip the round. The remaining five placed 0.5 BLU each. Using the [balanceOf] function, we can determine the exact number of chips in each player's hand.
How can I receive ERC-20 tokens from other users?
The [transferFrom] function allows you to transfer coins to other addresses.
Good news! Our player won 2.5 BLU in the first round. So that he can get his chips, we will use the [transferFrom] function.
Tokens on Ethereum
A lot has been said above about tokens. What is this in relation to ether and why are they needed?
Ethereum is not just a cryptocurrency, but an environment, an ecosystem. Each of its users has the right to use the blockchain provided by Ether to create their own applications and projects using smart contracts. This system can be described in a simplified way by comparing the airwaves with the Internet, and distributed applications (dApps) in it with websites. Moreover, the sites belong not to one owner, but to many - those who purchased the “site” tokens during the ICO process in exchange for ETH coins. That is, a token is the currency of a specific project that circulates on the Ether blockchain.
There are two types of tokens:
- Interior. They act as a currency in dApps, an example of such a cryptocurrency is Sia Coin.
- Promotional. These are, for example, DAO tokens: they play the role of shares and give the owner the right to vote for the provision of funding for some project in the DAO, by analogy with “offline” joint-stock companies, where the weight of the shareholder’s vote depends on the number of shares in his hands.
The question arises: what are separate tokens for? Isn’t it easier to use the usual ETH to carry out operations?
A comparison can be made with ordinary life, where tokens are also often used. A good example is the subway, where you need to purchase a token to get into it. A similar principle is used, for example, for allowing citizens to enter amusement parks, making in-game purchases, implementing coupon services, etc. The metro is a dApp, the money paid for the token is ETH coins, and the token received in exchange has the right to enter the metro territory is a token.
What is Ethereum anyway?
Ethereum is a decentralized computer network with two basic functions.
These functions include the blockchain itself for recording transactions and a virtual machine for executing smart contracts.
Thanks to this, Ethereum can support the execution of decentralized applications (DApps). DApps are built on Ethereum and can use the resources of the Ethereum system. The process is not free; developers pay for the use of platform resources with ETH coins, the native currency of the ecosystem.
Depending on their purpose, DApps can be used to create ERC-20 tokens that can function as currencies, company shares, loyalty program points, or even proof of ownership of something.
ERC20 compatible wallets
To store tokens compatible with this standard, you need a wallet that supports them, which you will either have to create or use one of the existing ones. There are several main ERC20 compatible wallets.
MyEtherWallet
Website https://www.myetherwallet.com/. This is an online service, one of the most popular. Its notable feature is that MyEtherWallet does not store tokens on its balance sheet, the funds are located in the blockchain, and the service only provides the user with an interface for interacting with it. This gives additional security to the owner’s funds, but there is a downside: if you forget the passphrase, the ERC20 tokens in the account will be lost.
Figure 1. MyEtherWallet logo
The wallet is secure, simple and versatile: it can be used for both ETH itself and ERC20-compatible tokens.
MetaMask
Website https://metamask.io/. Another “light” wallet implemented as an online service. It serves as an intermediary between the main wallet and sites where the user makes payments with cryptocurrency. A notable feature of MetaMask: it is created as a browser plugin and can be synchronized with a similar plugin on another electronic device.
Figure 2. MetaMask logo
The principle of operation of the service: the user transfers the required amount to the wallet and makes a payment.
Mist
The code is on Github here. This is a proprietary wallet from the creators of Ether, which has received official status.
Figure 3. Launching the Mist wallet
It can be used as a classic ERC20 and ETH-wallet, but the application also has additional capabilities such as working with smart contracts.
The disadvantages of Mist are its size and the need for synchronization with the blockchain, which sometimes causes problems.
Parity
Website https://www.parity.io/. Until a certain point, this wallet was very popular due to its convenience and ease of interface. But a vulnerability discovered in November 2022, which led to the blocking of the owners’ funds for almost 150 million USD, turned the audience away from it, and the wallet’s reputation is mostly negative.
Figure 4. Parity wallet
ImToken
Website https://token.im/. This is a lightweight mobile application for IOs and Android platforms, created in China. The wallet is user-friendly and supports ERC20, making it a great tool for participating in ICOs. The list of supported tokens is constantly updated.
Figure 5. Loading ImToken.
In addition, using the wallet you can monitor coin rates on exchanges, view ICO news and operate with dApps. The user has the ability to link a specific application to a wallet, simplifying transactions.
Main competitors and analogues
- BEP20. A token standard on the Binance Smart Chain, which supports smart contracts. It compares favorably with the Ethereum blockchain with fast transactions with low fees. It has a wide ecosystem, including DeFi projects with billions of dollars in turnover. 70% of new dApps users choose BSC with BEP20 tokens and affordable farming offers, instead of insanely expensive services on Ethereum.
- TRC20. The Tron project was originally launched on the Ethereum network, but later moved to its own blockchain. During the ICO, $70 million was raised for the new dApps platform. Smart contracts and TRC20 format coins created in Tron are fully compatible with Ethereum. Tron has greater scalability and lower fees due to its dPoS consensus algorithm. The network is expected to become a leader in the decentralized gaming application industry.
- Cardano. Blockchain in Haskell with increased fault tolerance. It is being developed as the most decentralized smart contract platform with the most advanced functionality available. The network turnover is often greater than that of Ethereum. The configuration of the bridge for the migration of ERC20 tokens to Cardano is being completed, which in the future may become part of the absorption and outflow of users.
Why choose an ICO with ERC20 support
The reason why it is worth supporting an ICO with ERC20 support stems from the features of this standard: such a project will be guaranteed to be compatible with others using similar specifications. This will allow the new token to be freely operated within the Ethereum blockchain and will simplify the listing procedure on exchanges. A token without standard support will be deprived of these advantages, which may create problems for its promotion and, as a result, ICO support will become unprofitable for the investor.
Additionally, one ERC20 wallet can be used for any ICO that uses the standard in question.
Expansion of functionality
In addition to standard methods, ERC-20 tokens can be configured to include the following features:
- Automatic buying and selling. It becomes possible to link the value of a token to the price of another token, creating a fund that automatically buys or sells tokens to maintain a balance.
- Automatic balance replenishment. Transactions on the Ethereum blockchain require payments to miners. It is possible to program your token to automatically recharge gas for future transactions if it falls below a certain level.
- Freezing of tokens. You can freeze tokens owned by the user and unfreeze them if necessary.
Services that do not support ERC20
Not all wallets and online services work with this specification in cases of ICO:
- virtual exchange wallets, Exmo, etc.;
- Cryptonator;
- JAXX (but its private keys can be uploaded to MEW (MyEtherWallet), which will make the tokens available there);
- other wallets not included in the list above.
However, a number of exchanges have ERC20 tokens listed. It is noteworthy that at the beginning of January 2018, Bittrex announced that it was closing the ability for users to create new deposit addresses for ether and ERC20.
Important: to operate with the tokens in question during an ICO, you need a special wallet or service that supports them. You should not use exchange addresses to receive ERC tokens, this may lead to loss of funds.
What is the coin backed by?
Each coin has an official “trust fund” backing. This is very convenient from a calculation point of view: 1 fiat currency - 1 digital asset. The value remains unchanged, which is especially important during market fluctuations. My readers know that world currencies - the euro, dollar and even the yuan do not collapse in value every second. The token combines fiat currencies and cryptocurrency. The most typical manifestation remains a peg to the dollar, but there are also tokens backed by assets in the Japanese yen, Chinese yuan, euro, but they are not as common as 1 USDT = 1 USD.