https://s3-us-west-2.amazonaws.com/secure.notion-static.com/07db23a8-d214-4e76-adc2-3c72feb37637/Untitled.png

What is the ERC-20 Standard?

In Ethereum, an ERC is an Ethereum Request for Comments. These are technical documents that outline standards for programming on Ethereum. They're not to be confused with Ethereum Improvement Proposals (EIPs), which, like Bitcoin's BIPs, suggest improvements to the protocol itself. ERCs instead aim to establish conventions that make it easier for applications and contracts to interact with each other.

Authored by Vitalik Buterin and Fabian Vogelsteller in 2015, ERC-20 proposes a relatively simple format for Ethereum-based tokens. By following the outline, developers don't need to reinvent the wheel. Instead, they can build off a foundation already used across the industry.

Once new ERC-20 tokens are created, they're automatically interoperable with services and software supporting the ERC-20 standard (software wallets, hardware wallets, exchanges, etc.).

A quick recap on Ethereum tokens

Unlike ETH, ERC-20 tokens aren't held by accounts. The tokens only exist inside a contract, which is like a self-contained database. It specifies the rules for the tokens (i.e., name, symbol, divisibility) and keeps a list that maps users balances to their Ethereum addresses.

To move tokens, users must send a transaction to the contract asking it to allocate some of their balance elsewhere. For example, if Alice wants to send 5,000 BinanceAcademyTokens to Bob, she calls a function inside the BinanceAcademyToken smart contract asking it to do so.

Her call is contained inside what appears to be a regular Ethereum transaction that pays 0 ETH to the token contract. The call is included in an additional field in the transaction, which specifies what Alice wants to do—in this case, transfer tokens to Bob.

Even though she isn't sending ether, she must still pay a fee denominated in it to have her transaction included in a block. If she has no ETH, she needs to get some before transferring the tokens.

How are ERC-20 tokens created?