Glossary

ERC-777

Hard

ERC-777 is a tradable token standard spun out from ERC-20 to enable a new way to engage with a token contract while staying backward compatible.

What Is ERC-777?

ERC-777 is a token standard for fungible tokens introduced on the Ethereum network that is fully compatible with existing decentralized exchanges.

In simpler words, the ERC-777 tokenization standard refers to Ethereum's blockchain protocol that specifies the type of tokens compatible with ETH. 

It facilitates complicated token trade interactions and assists the removal of ambiguity around decimals, minting, and burning. It utilizes a distinctively effective feature called a hook
When tokens are delivered to a computer-based analytical contract, it activates a hook mechanism that streamlines how accounts and contracts communicate when receiving tokens. Furthermore, ERC-777 tokens are significantly less likely to get stuck in a contract, which is traditionally seen as a problem with ERC-20 tokens.
ERC777, like ERC20, is a standard for generating tokens on the Ethereum Blockchain. Hooks are programmed into the standard. If you transfer ETH to a smart contract, it will be alerted about the incoming ETH through the hooks, a feature that ERC20 tokens don’t have. The following are the benefits of this standard:
  • It functions similarly to Ether in a way that tokens are sent via the function send (dest, value, data).
  • A tokensReceived code is specified in a contract or ordinary addresses in such a way that it is activated when tokens are received, but this is not the case with ERC20 tokens. It does, for example, transfer from one smart contract to another, but only the owner of the ERC20 tokens is changed within the smart contract, that is the ERC20's issuer. This duplicate call is prevented using ERC-777.
  • Furthermore, the ERC-777 employs the new ERC-820 standard, which allows for the registration of meta-data for contracts in order to enable a basic form of introspection. This enables backward compatibility as well as additional functionality expansions. Contracts in the ERC-777 protocol interact in the same way as contracts in the ERC-20 protocol do.
  • With the introduction of a new transfer function that includes a field called bytes where you can add any identification information to the transfer and it instantly notifies the recipient contract that the transfer occurred.
  • ERC-777 enables anyone to add extra functionality to tokens, such as a mixer contract, for greater transaction confidentiality, or an emergency recovery feature to help you if you lose your private keys.
Despite the fact that ERC-777 had some early security problems that have already been resolved, it may have certain drawbacks, just like any other token. This is the reason, updated versions, such as ERC-820, have already been introduced.

We can transmit tokens to any Ethereum address, which essentially implies that we can send tokens to contracts that do not support them, thereby locking them forever.

What appears to be a problem is that, even if the tokens may be manually moved, it appears to be difficult to determine which tokens originated from whom and who sent them back.