ERC777 — a new Standard of Ethereum tokens, which will replace ERC 20

in #ethereum6 years ago (edited)

erc20-erc777.jpg
Anyone who is familiar with virtual currencies, probably heard about the tokens of the ER20 standard from Ethereum, on which a huge number of crypto-currencies are built. But there is also the less well-known standard RS 223 and the new ERC777, which has all the chances to become the most popular in the industry.

IRC stands for Ethereum Request for Comment (Ethereum request for discussion), the number means the number of the proposal submitted by the developers to the github discussion. First, let's take a look at the most common ERC 20 format.

What is the standard ERC 20?

The invention of the ERC 20 tokens was a real breakthrough for the crypto-currency market, thanks to this technology in 2017, it was possible to see the appearance of a huge number of new projects conducting ICO.

The standard itself appeared in 2015, it is a "template" with a set of rules that simplifies the program work on the creation of new virtual currencies. Examples of projects based on RC 20 are Tether, Augur, OmiseGo and many other cryptocurrencies.

As of June this year, the platform created by Ethereum has become the basis for 66 thousand projects. One of the advantages of such a universal platform is the simplicity of listing new cryptocurrencies on exchanges. Thanks to this, the digital currency industry was able to solve the problem of liquidity and accelerate the market capitalization, which launched an explosive growth of quotations last year.

The main problem of ERC 20 is the presence of a critical error

ERC 20 has become the first Ethereum standard and, as often happens with new developments, it contains a number of bugs. The main one was an error with the Deposit of tokens to smart contracts.

In ERC 20 has two functions of transaction tokens. The first of them is a transfer to the recipient's address. The second is a Deposit for smart contracts, which uses a combination of the approve and transferfrom functions. But the developers did not close the Deposit through the transfer function, which led to a successful sending, while the recipient's contract could not recognize the receipt of tokens.

Smart-Contract-----kopiya.jpg

An example is the situation with the replenishment of accounts on exchanges, which many users have faced. When depositing to a decentralized exchange, tokens were debited from the sender's account and found themselves in the recipient's network, but the balance in the personal account did not change. If the exchange did not support the function of an urgent refund, they were lost forever. This error over time has led to the fact that inattentive or inexperienced users have lost millions of dollars.

ERC 20 is still in active use
One of the first above-mentioned bug noticed a Reddit user with the nickname Dexron, who is also the developer of a more advanced contract ERC223. He told why such an imperfect standard is still used:

  • Developers behave irresponsibly and build new projects on a deliberately unreliable solution.
  • The Ethereum Foundation company behind the second largest cryptocurrency continues to promote ERC 20, despite errors in its code.
  • The creators of new digital currencies aim to make a profit, not to bring a quality product to the market.
  • The use of several types of smart contracts in different currencies will lead to consequences for the health of networks. And that's not something to do when Ethereum is experiencing considerable scalability issues.

Standard ERC223 - better than ERC 20, but not perfect

A more advanced standard of ERC223 tokens was created in order to get rid of the transaction error present in ERC20. Operations in ERC223 were the same as in the Ethereum network, which allowed to protect the user from the loss of tokens as a result of erroneous sending. A critical error in them has been solved — when the token holder tries to conduct an incorrect transaction, he receives an error message and the cryptocurrency does not disappear in an unknown direction.
erc223-erc20.jpg

This has been achieved by the network being "taught" to determine whether the sending endpoint is smart contracts. If this is the case, transfer From is not executed, and instead the token Fallback function is started, which "revokes" tokens back."

The ERC223 standard introduced new data parameters, which allowed more complex operations than simple token sending.

ERC 777-the most modern standard

The latest standard token is ERC777, which is built taking into account the proposals ERC820 (Contract registry pseudo-self-examination) and, as ERC223 aimed at solving problems with the transaction and disappearances tokens in ERC20.

The new standard offered a variety of options for conducting transactions, unlike ERC223, the main goal of the developers was not so much security as the creation of a platform that will help the penetration of cryptocurrencies.

Benefits of the standard ERC777

The main drawback of the Ethereum network is the inability to determine the functions supported by the contract. This problem was solved in ERC820 and implemented in ERC777.

The main advantage of ERC777 is the ability to recognize the contract interface. For the network having a Central register of contracts, the creation and the principles of which are described in the offer ERC820. The system can access this registry to find out what features a particular address supports. This will help prevent the user from performing actions that can lead to undesirable results such as the loss of tokens.

The implementation of ERC777 can guarantee a significant improvement in the functionality of the network and help the project built on these tokens to pass the listing on the exchange faster. This will attract a lot of developers: as practice shows, most of them are primarily interested in making a profit, which requires a listing on the stock exchange.

Trading platforms will be more willing to accept projects on ERC777, as it is an improved version of the familiar ERC20, but with closed "holes" in the code. This will contribute to more widespread adoption of such token that was not enough ERC223.

In ERC777, functions and their logic are completely reworked: instead of the transfer command, the code is written send, instead of approve is now used authorizeOperator, instead of tokenFallback is activated tokenReceived. The new features allow you to not "overlap" with other token standards, while making ERC777 compatible with the technologies offered in ERC820.

Security flaws and problems

In ERC777 embedded team authorizeOperator that allows you to give "the Trustee" the ability to control the tokens. A Reddit user under the nickname Dexaran involved in the development considers this to be a functional threat and argues that it should not be used.

Also in the new standard, there is an option that allows you to prevent the loss of tokens by checking The itokenrecepient interface, which determines whether the address is in the white list. Since the function is focused on security, it should not be optional, and working constantly.

ERC777 works on the Central register of smart contracts, which can also be a security threat. It simplifies the life of developers, but can be a source of major problems when hacking, as it was with project Parity. All of the multiple Parity signatures worked with the Central code library, which had a bug.

Standards ERC777 and ERC223 designed to solve problems in ERC20, but each does it differently. ERC223 has already found its application in Ethereum Classic, ERC777 has the best prospects and in the future you will see a lot of projects built on it.

Sort:  

Hi @realmedvedev, I'm @checky ! While checking the mentions made in this post I noticed that @dexaran doesn't exist on Steem. Did you mean to write @earan ?

If you found this comment useful, consider upvoting it to help keep this bot running. You can see a list of all available commands by replying with !help.