A few days ago, the ERC-223 token standard, first proposed by well-known hacker Dexaran in 2017, was finally added to Ethereum’s official standards list.
ERC-223 solves some security and usability issues of the classic ERC-20, simplifying the end-user-side experience.
Let’s take a look at all the details together.
A dive into the past: the Dexaran hacker and involvement in the Ethereum hard fork
Before delving into technical issues related to Ethereum’s token standards, it is appropriate to look back at the history of Ethereum’s DAO hack and the subsequent hard fork that saw Dexaran as one of the main players in the affair.
Back in June 2016, an unknown hacker attacked Ethereum’s DAO, known to be the world’s first decentralized autonomous organization committed to supporting and funding the ecosystem of the chain.
3,641,694 ETH worth about $60 million (now more than $7 billion) were stolen by exploiting a native “fallback” function of the Solidity programming language.
The attacker even sent an encrypted message to the Ethereum team to render the manner in which he had executed the token claim and to clarify that his attack had not violated any US federal law by acting in line with the terms of the DAO smart contract.
He added in the letter that he would defend himself legally if his stolen assets were illegally freed or blocked by Ethereum’s top management.
The hack shocked the entire Ethereum community, which hung by a thread for the next two months, waiting to find out how things would unfold for the DAO and how the private investors who had funded the project would be liquidated.
After several debates, the Cryptographic Network Foundation chose the hard fork route to “go back in time” and pretend that the hack had never happened.
More precisely, a new chain ( what we know today as the real Ethereum) was created that was identical to the initial one but resumed address balances at the time before the 3.6 million ether hack.
This fork was the result of internal disagreement that emerged from the decentralized community, which was divided between those who supported the “code is law” philosophy and those who took a less extreme view and believed that artificial tampering with the code was the right thing to do on such occasions.
One individual in particular, known by the nickname Dexaran, shared the idea of the immutability of transactions and that even in the face of incidents of this character, the code and history of the blockchain should be respected.
Dexaran occupied the faction of those who did not upgrade to the software and remained in the original chain, now known under the name Ethereum Classic.
The same individual personally committed $500,000 of his personal funds to finance some work on Callisto Network, a decentralized protocol aimed at creating experimental improvements for Ethereum and Ethereum Classic.
The figure of Dexaran is well known among the Ethereum community, both for his philosophical stance and for inventing the ERC-223 token standard that solves some bugs and transaction efficiency issues related to the classic ERC-20 standard.
The security and efficiency issues related to ERC-20 tokens
The token standard proposed in 2017 by the supporter of Ethereum Classic Dexaran, was not intended to solve security issues related to the Ethereum DAO hack, whose flaw in the code was fixed soon after the incident.
The ERC-223 standard was designed to put a patch over another critical problem that plagued the ERC-20 standard that caused the loss of $3 million in Ether to users in just a few years.
In detail, we are talking about the fallacy that sees as “lost forever” all those ERC-20 tokens that are mistakenly transferred to a contract address rather than a wallet address.
In fact, if a user mistakenly sends their tokens to the address of a contract, there is no mechanism that blocks this transaction or returns the assets to the sender (this is because it is not possible to handle incoming token transactions on a contract).
Because of this programming “flaw,” until 31 December 2017, about $1.3 million in QTUM, $1 million in EOS, $250,000 in GNT, $217,000 in STORJ, and many other small losses have been lost.
Another problem with the ERC-20 standard relates to an issue of efficiency in ERC-20 address-contract communication: when, for example, a user intends to execute an asset deposit on a decentralized platform such as Aave, they must first approve the transaction and then execute it.
This happens because the traditional Ethereum standard sees no difference between the interaction between two addresses or between an address and a contract, invoking the “transfer” function in both cases.
When you execute the smart contract in question by making the deposit, what is actually performed is a “transferfrom” callback of a previously approved amount of assets.
This, in addition to being undesirable in terms of “ease of use,” requires the payment of gas fees on two separate occasions as well as clogging the blockchain with transactions with associated risk of “bloating” situations.
Ethereum’s ERC-223 token standard
The ERC-223 standard represents a superset for ERC-20 that allows the use of tokens as first-class value transfer resources in the development of smart contracts.
A few days ago, the ERC-223 was added on the official Ethereum website in the section dedicated to token standards, officially sealing the entry of this category of tokens into the family of the decentralized smart contract development network.
This was announced by Dexaran, which had already introduced this topic in EIP-223 dated 5 March 2017.
As mentioned, it serves as a more secure standard in that it does not allow token transfers to contracts that do not explicitly support receiving tokens, hence avoiding mishaps for users less navigated in the field.
Going more specifically, the benefits of ERC-223 are the following:
- eliminates the problem of accidentally lost tokens with deposit on contract addresses;
- simplifies the user experience by allowing assets to be sent via a single transfer function;
- allows developers to manage incoming token transactions on contracts;
- reduces unnecessary spending of gas fees, helping the network reduce congestion;
- makes transactions similar to those that occur with Ether;
It is worth noting that the ERC-223 standard is backward compatible with ERC-20 tokens, hence every feature of the primary standard is applicable to the secondary standard.
All contracts or services that work with ERC-20 hence can also be used with ERC-223.
In addition, there is a converter that allows ERC-20 tokens to be converted to ERC-223 1:1 at any time without cost or restriction. ERC-223 tokens can also be converted back to the ERC-20 origin.
A series of tutorials and guidelines exploring the workflow and operation of ERC-223 tokens will be presented by Dexaran in the coming days.
All the details have been published in a post on Reddit.
We hope that Dexaran’s proposed standard will play a central role in the Ethereum framework, going on to improve the user experience and eliminate unnecessary risks for users, with a push toward mass adoption of cryptocurrencies.
Source: https://en.cryptonomist.ch/2023/07/31/erc-223-lands-among-ethereum-standars/