ERC-223
ERC-223 was initially proposed in 2017 as an alternative standard for Ethereum tokens. This token standard is developed with a strong emphasis on security and its main idea is to make "ether" (ETH) and "tokens" behave identically from technical point of view.
The problems of ERC-20 security
ERC-20 has two main problems:
- Some ERC-20 transactions can not be handled on the recipients side. This can result in a permanent freeze of tokens (which is a critical security vulnerability according to OpenZeppelins vulnerability classification criteria). Read a full description here.
- approve & transferFrom is a pull transacting method. Pull transaction method is not compatible with trustless systems. It is mostly suitable for credit cards which are anything but trustless. Read more about pull vs push transactions here.
As the result of the outdated ERC-20 design that was not changed for years a lot of crypto users lost their funds. There is a script that calculates the amount of "lost" tokens in token contracts https://dexaran.github.io/erc20_losses/
"Its users fault" - let's stop blaming the victim and design a proper solution
As one of the CryptoDevs discord users rightfully pointed out: if your grandma can't use some tech without losing money there then she will not. And the tech will not become widely adopted.
This is very true for financial systems and in our particular - for tokens. An average guy can use a bank app without problems - and it will not result in burned money. At the same time an average guy can easily lose all his life savings in Ethereum tokens due to the contract design flaw that could prevent simplest users mistakes but it didn't.
If our security standards are so fault-intolerant that our contracts can't handle errors properly and a company can lose a significant part of its capital due to a single mistake of a secretary - the adoption of the industry is very limited.
ERC-223 as the solution
ERC-223 was proposed as the solution to the problems of ERC-20 since the very beginning. The original EIP-223 discussion stated it clearly and it is still the most discussed EIP in the history of Ethereum.
ERC-223 eliminates non-handleable transactions and introduces a clear execution model similar to that used in Ether transfers, so ERC-223 tokens rely on the same mechanics as the native currency of Ethereum. At the same time the presence of transaction handling model eliminates the need for "pull transactions" which renders approvals
completely optional for this standard.
ERC-20 & ERC-223 migration and interoperability design
While the standard itself may have significant advantages over its predecessor the problem of migration, adopting new standard and liquidity on DEXes still stands. As the result it was decided to create a contract that will ensure "Interoperability of ERC-20 and ERC-223 standards": EIP-7417 does exactly this.
EIP-7417 Token Converter allows ERC-20 tokens to be converted to ERC-223 1:1 at any time without any fees or restrictions. The ERC-223 tokens can be converted back to ERC-20 origin anytime as well.
The progress on the standard development
ERC-223 standard is on its way to final stage.
- ERC-223 reference implementation source code is available for everyone: https://github.com/Dexaran/ERC223-token-standard/
- The standard is added to the list of tokens on Ethereum page: https://ethereum.org/sr/developers/docs/standards/tokens/
- Token Converter source code is developed: https://github.com/Dexaran/TokenStandardConverter/blob/main/TokenConverter.sol
- Token Converter is submitted as an EIP-7417 https://github.com/ethereum/EIPs/pull/7418
- ERC-223 is formally moving to "Review" status now. After the review is completed it will be moved to "Last call" for 2 weeks and then finalized. It should be noted that the specification of ERC-223 standard was completed in 2017 so upgrading the status of the EIP is just a formal process: https://github.com/ethereum/EIPs/pull/7339
- We are planning to work on a coordination of the Ethereum ecosystem enhancement and a number of media resources that can help to drive the process will be created in the next days.
- A number of tutorials and guidelines that demonstrate the workflow of ERC-223 must be created.
- After the completion of EIP-7417 a UI that allows users to seamlessly transform ERC-20 tokens to ERC-223 and back to the original standard must be developed.
Other token standards
It is fair to note that after the creation of ERC-223 a lot of standards emerged implementing a "transaction handling model" in one form or another. However, none of the existing standards is doing it in a similar way to ERC-223 and therefore none of the standards can be compared to Ether - instead they try to invent some different logic of transferring digital assets.
All the existing token standards except ERC-721 inherit the problems of ERC-20 and security flaws that can result in a loss of funds for end users.
[link] [comments]
You can get bonuses upto $100 FREE BONUS when you:
π° Install these recommended apps:
π² SocialGood - 100% Crypto Back on Everyday Shopping
π² xPortal - The DeFi For The Next Billion
π² CryptoTab Browser - Lightweight, fast, and ready to mine!
π° Register on these recommended exchanges:
π‘ Binanceπ‘ Bitfinexπ‘ Bitmartπ‘ Bittrexπ‘ Bitget
π‘ CoinExπ‘ Crypto.comπ‘ Gate.ioπ‘ Huobiπ‘ Kucoin.
Comments