Origin of the Non-Fungible Token Standard

Origin stories have always been an interest of mine. In this post I’ll go through the origin of the technology behind NFTs.

In May of 2022 the NFT asset class reached a peak valuation of $21 billion. OpenSea, the premier application for buying and selling NFTs reached a peak valuation of $13.3 billion in 2022.

In just four years, we went from zero to billions of dollars in value. All powered by the creation of the non-fungible token standard in 2018.

EIPs: Ethereum Improvement Proposals

The story starts with the creation of Ethereum, which launched in 2015.

The Ethereum application platform is constantly evolving due to the development of new features and processes. This development process is organized by Ethereum Improvement Proposals (EIPs) standards.

Ethereum Improvement Proposals (EIPs) are standards specifying potential new features or processes for Ethereum. EIPs contain technical specifications for the proposed changes and act as the “source of truth” for the community. Network upgrades and application standards for Ethereum are discussed and developed through the EIP process.

https://ethereum.org/eips

We intend EIPs to be the primary mechanisms for proposing new features, for collecting community technical input on an issue, and for documenting the design decisions that have gone into Ethereum. Because the EIPs are maintained as text files in a versioned repository, their revision history is the historical record of the feature proposal.

https://github.com/ethereum/EIPs/blob/master/EIPS/eip-1.md

Anyone within the Ethereum community has the ability to create an EIP. Guidelines for writing EIPs are included in EIP-1. An EIP should primarily provide a concise technical specification with a small amount of motivation. The EIP author is responsible for reaching consensus within the community and documenting alternative opinions. Given the high technical barrier for submitting a well-formed EIP, historically, most EIP authors are typically application or protocol developers.

https://ethereum.org/eips

ERC-20: Token Standard

In November 2015 Fabian Vogelsteller & Vitalik Buterin proposed ERC-20: Token Standard.

A foundational standard empowering the ownership of fungible assets on Ethereum.

The following standard allows for the implementation of a standard API for tokens within smart contracts. This standard provides basic functionality to transfer tokens, as well as allow tokens to be approved so they can be spent by another on-chain third party. A standard interface allows any tokens on Ethereum to be re-used by other applications: from wallets to decentralized exchanges.

https://eips.ethereum.org/EIPS/eip-20

ERC-721: Non-Fungible Token Standard

In January 2018, William Entriken, Dieter Shirley, Jacob Evans, and Nastassia Sachs created ERC-721: Non-Fungible Token Standard.

A standard interface for non-fungible tokens, also known as deeds.

https://eips.ethereum.org/EIPS/eip-721

The following standard allows for the implementation of a standard API for NFTs within smart contracts. This standard provides basic functionality to track and transfer NFTs. We considered use cases of NFTs being owned and transacted by individuals as well as consignment to third party brokers/wallets/auctioneers (“operators”). NFTs can represent ownership over digital or physical assets. We considered a diverse universe of assets, and we know you will dream up many more:

  • Physical property — houses, unique artwork
  • Virtual collectibles — unique pictures of kittens, collectible cards
  • “Negative value” assets — loans, burdens and other responsibilities
https://eips.ethereum.org/EIPS/eip-721

The compelling vision for ERC-721 was for the ownership of non-fungible (“distinguishable”) assets on Ethereum.

In general, all houses are distinct and no two kittens are alike. NFTs are distinguishable and you must track the ownership of each one separately.

https://eips.ethereum.org/EIPS/eip-721

The standard was inspired and built on the lessons learned from ERC-20.

This standard is inspired by the ERC-20 token standard and builds on two years of experience since EIP-20 was created. EIP-20 is insufficient for tracking NFTs because each asset is distinct (non-fungible) whereas each of a quantity of tokens is identical (fungible).

https://eips.ethereum.org/EIPS/eip-721