Existing ERC standards, and what you need to know about them
The blockchain industry develops at astronomical speed, and problems inevitably arise in the path of this development that must be solved. As noted in the previous article, the introduction of the ERC-20 standard was a turning point in the cryptocurrency world. The simplicity of the Ethereum platform, open code and the presence of many services have led to the formation and distribution of thousands of new tokens.
The previous article mentioned the problems that arose when using the traditional ERC-20 standard. One of the most serious vulnerabilities was the lack of a regulatory mechanism for sending tokens created on the basis of the ERC-20 standard to other addresses that this standard does not support. All tokens transmitted in this way burn.
This mechanism can be described in more detail as follows: users who use a function called Transfer in the contract when sending coins ERC-20 to contracts that do not expect entry and do not recognize incoming tokens, lose their funds, as they simply go nowhere. This function differs from the automatic transmission function of Transferfrom, introduced earlier, which does not lead to loss of funds. ERC20 standard uses both functions – Transfer and Transferfrom. The result of discussing this problem on the GITHUB developers network was the creation of other types of standards for smart contracts.
In 2017, a user with Nickniem Dexaran posted GITHUB open access to the proposal of the new standard ERC-223, which was designed to solve the problem described above. The elegant solution included the unification of the two functions of Transfer and Transferfrom ERC-20 standard into one function called Transfer, but now with three parameters-Address _to, Unit _value, Bytes Data. These parameters made it possible to exclude the possibility of improper use of the function by users.
Another important improvement was the introduction of the Tokenfallback function, which prepares a contract for the adoption of any type of coin and prevents their sending if it does not receive an answer from the address of the recipient. At the moment, the Ethereum platform has a similar function for the entire network – the Payable modifier that prepares contracts for obtaining Ether coins.
In fact, the implementation of the ERC-223 standard is slow, and most projects continue to use the ERC-20 standard. This is partly the popularity of the second and insufficient awareness of the first, as well as the distrust of the creators of projects for other options for standards. An important factor is that the mentioned bugs are quite rare and the Ethereum network itself is now an additional protective factor from this kind of error.
Nevertheless, among the projects using the ERC-223 standard, several interesting ones can be noted: Amigocoin, Cargocoin, Expercoin.
The new proposal of the standard created at the end of 2017 was designed to solve several problems at once. Thanks to the new TokenReved function, which allowed not to use the reconnecting approval function (Second Verifeing Transaction), the transaction time was reduced by half. Also, in this standard, it became possible to mark unreliable or incompatible addresses that may be associated with hackers or scammers. This standard also solved the problem of incompatibility by using the reverse compatibility method, which made it a cross-standard compatible on the Ethereum platform.
Among the disadvantages of this rather new standard, its code can be called, which still undergoes changes, as well as the creation of a large number of interdependent calls of contracts in case of its use, which can create security problems in the future. One of the projects using the token of this standard is Orca.
This standard appeared in 2017 thanks to the game Cryptokitties, where you can exchange and collect collections of virtual kittens with unique genotypes or 256-bit, unlawful codes. The unusual in this game was that each kitten was a unique cryptocurrency of various prices, depending on its popularity and rarity.
The ERC-721 Standard was the first example of Non-Fungible tokens (NFT)-unique or unexplored tokens, which was proposed for electronic collecting items. FungIBILITY is a characteristic feature of the currency, each monetary unit of which can be replaced by another exactly the same. For example, 5 or 20 dollars are good in the same way as any other $ 20 and 20.
All fiat money is interchangeable, as well as divisive. The second means that the currency has divisibility to a certain limit. For example, the dollar is 1/100, which means that each dollar is divided into 100, in his case, cents.
The APPROVE and TAKEWNERSHIP functions, as well as two types of events: Transfer and Approval make transactions more protected from accidental loss of funds, as in the case of the ERC-20 standard.
This type of standard is now undergoing a real explosion of use, not only because of the popularity of cryptocotes, but also because many critics saw the importance of creating unique tokens not only for the collecting process, but also for use in real life, for example, real valuables items or protecting intellectual property.
Among other projects created on the basis of the ERC-721 standard, it is worth mentioning: Cryptopunks, Decentraland, Rare Pepes, Wepower and Cryptocup.
ERC-821 and ERC-875 standards
The ERC-721, the ERC-821 and ERC-875 standards, have become a continuation of the standard, each in its own way, approached the improvement of smart contracts for non-replaceable tokens.
ERC-821 has the same TransferandCall function as ERC-777, which allows contracts to respond to incoming tokens. He also suggested using more specified neiming, so as not to cause confusion between different types of collecting items. Compatibility signals with all other standards are now in development.
ERC-875 proposed the possibility of sending several NFT (non-free tokens) in one transaction, by assigning a personal index to each of them. The standard also involves safe sending and exchange of tokens, as in the case of ERC-721.
At the moment, two main types of standards can be distinguished. The first includes all the proposals created to improve the ERC-20, and to the second standards engaged in the unification of NFT or electronic collecting items.
Each standard requires time to develop, as well as verification, approval and implementation of the platform community. These and many other standards of the Ethereum platform are the development engines of the entire crypto -ecosystem and are designed to make interaction on the network easier, safer and cheaper.
Perhaps already soon we will see the cataloging of compatible and proven ERC standards for use in various decentralization projects.