An old horse on an old Etheria tile.
It’s easy to visit the OpenSea website, connect your MetaMask wallet, and purchase what seems to be an old NFT. But how do you know you’ve actually collected a relic on the blockchain? What needs to happen behind the scenes for blockchain reality to line up with your perception of what is happening? These are the questions I will set out to answer in this article. Though I have strong opinions on the subject, nothing I say should be considered financial advice.
Note that I am only concerned with the scaffolding needed to support sound collecting. I remain agnostic about the actual data objects that are collected. They could be anything, including fungible tokens, Ponzi contracts, mysterious documents, or Devcon2 POAPs.
I should also note that I will focus exclusively on the Ethereum blockchain. Despite the presence of relics on other chains, it’s the only one I collect on. There are a few reasons for this:
- Ethereum is one of the major blockchains, and it is the most popular for collectors. The Ethereum ecosystem is replete with great thinkers, and I can’t imagine its status diminishing any time soon.
- Ethereum is essentially a Turing-complete global computer that allows for censorship-resistant computation. Its richness and beauty are unmatched. Collectibles on Ethereum can be used in games, programmed to self destruct, combined in interesting ways, etc. The sky (well, actually, the Church-Turing thesis) is the limit.
- Ethereum recently transitioned from proof-of-work consensus to proof-of-stake. Much less energy is wasted by proof-of-stake. Despite this, I’m confident that the security of the network remains strong.
Simulating Physical Collecting
It’s well understood what it means to collect old relics in the physical world. People find them, confirm their authenticity, maintain them, and sell them. All of this activity can be simulated using the Ethereum blockchain. In fact, the ERC-721 standard from early 2018 was developed with this type of thing in mind.
But what about the collectibles that came into being between the launch of Ethereum in July 2015 and the introduction of the ERC-721 standard? These must be considered on a case-by-case basis, as the underlying code is often quirky and experimental. For each old contract, we must ask whether it allows for sound digital collecting.
To the extent possible, collectors should seek unqualified ownership, unquestionable provenance, and demonstrable novelty. I’ll elaborate on each of these below.
On Ethereum, the smart contract determines the set containing all that is ownable. I believe that it is fair game to use any information in the contract state to partition this set.
For nonfungible items, the situation is fairly simple. There are n different items (each defining a partition), and an address can be associated with each one.
Fungibility introduces some complications. For example, consider a basic token with a supply of 1,000,000. Suppose that address A holds 400,000 tokens, and address B holds 600,000 tokens. Further, suppose that A‘s tokens are unique in that they were held briefly by Vitalik Buterin in 2015 before being transferred to A. In this case, we may want to distinguish A‘s tokens from B‘s tokens.
Once an ownership state is achieved, it is undesirable to have to take any further action to maintain it. As long as Ethereum continues to function as expected, ownership status should be under the complete control of the current owner.
Deviations from the ideal case fall on a spectrum. Some qualifications to ownership are only mildly bothersome, while others are completely unacceptable. Below are a some examples with varying levels of tolerability.
- Etheria versions 1.1 and 1.2 use tx.origin in the code instead of the more common msg.sender. The implication is that tiles cannot be held by contracts, and they can be stolen if owners are careless and interact with certain malicious contracts. I do not consider any of this problematic, as ownership can be retained by simply doing nothing.
- The BeerCoin contract tracks beer IOUs between debtors and creditors. These are semifungible, since the beers owed from D to C are represented by a single number. Suppose that D issued an IOU for one beer to C back in 2016. A problem arises if D promises another beer to C in 2022. The two IOUs will be represented by a single number, and the oldness of the first will be tainted. Fortunately, there is a function in the contract that solves this problem. By calling setMaximumCredit(1), C can limit the number of IOUs they can hold to one, so that further issuances from D will be rejected. Thus, ownership in BeerCoin is qualified, but only in a minor way, as a single call to setMaximumCredit cements it.
- Domains registered using the Ether ID contract expire after 2,000,000 blocks (approximately nine months). Upon expiration, the domain and its associated websites remain intact. However, at that point, anyone can assume ownership of the domain. Thus, retaining ownership entails calling the renewal function periodically. I’d only recommend these to sophisticated collectors who fully understand the obligations that come along with them.
- The Lunar Moon Plots contract has a designated administrator. Whoever controls the administrator address has the ability to disable transfers of plots. It’s possible for the administrator to relinquish control by setting the null address as the new administrator. As of this writing, this has not been done. This condition on ownership is completely unacceptable to me.
- In the King of the Ether contract, there is a throne, and anyone can pay to claim it. However, each time the throne is claimed, it is automatically listed for sale at 133% of the price that was just paid. The throne cannot be considered a true collectible if the owner has no control over whether it is listed for sale.
I only collect items that were created in the pre-ERC-721 era and have existed continuously since creation.
It can often be difficult to pin down a precise creation date. I do not consider the contract deployment date to be the creation date for everything ownable via the contract. What I’m looking for are old transactions in which gas was spent to establish or change a particular item. If an item was created in 2015 and enhanced somehow in 2016, then both of those transactions matter to the item’s provenance.
Here are some examples to further illustrate my thinking:
- When the MistCoin contract was deployed, all 1,000,000 tokens were assigned to the deployer’s address. In this case, it’s safe to say that all tokens date back to the deployment date of the contract.
- Consider PixelMap tile 1317. It was created via the buyTile function on December 30, 2016 at 4:04 AM UTC. Its image and url were updated via the setTile function on the same day at 6:20 AM UTC. Both transactions factor into the provenance of the tile.
- The Ether Rock contract was deployed on December 26, 2017. However, most of the rocks were not created until years later. For example, rock 30 was generated on March 12, 2021. As a purist, I do not consider it to be a relic.
- Many Etheria tiles were not purchased until 2021. However, unlike in the case of Ether Rocks, each tile from every version was separately configured back in 2015. Therefore, I consider every Etheria tile to be a relic.
- Consider the 2016 BeerCoin IOU issued from D to C described above. C can actually use the transfer function to cancel the debt. After C does this, D could issue another IOU to C in 2022. Thus, the entire transaction history must be examined before declaring the IOU between a debtor-creditor pair to be old.
With physical artifacts, we can never be sure that we’ve found the first of something. There will always be more places to search. On the blockchain, at least in theory, we have all of the relevant historical data. If your relic is some kind of first on the blockchain, then you should strive to provide as much evidence as possible.
Here are some examples highlighting different forms of evidence:
- The first contract involving anything ownable and transferable is this one. There were only a handful of contracts deployed before it, so it’s possible to manually inspect all of them.
- The first ownable item that is not divisible (without the help of additional code) is the “MyFirstCoin” domain, registered on August 8, 2015 via one of the Global Registrar contracts.
- The first ownable “kitten” (the literal text string, not an image of a kitten) is most likely this one, which was originally created on January 26, 2016. In a previous post, I showed how to demonstrate this using database queries.
- The Curio Cards are claimed to be the first art project on Ethereum. It’s not possible to prove this via quantitative means. However, it’s still possible to gather evidence by examining all known prior projects and public announcements. Some evidence is better than nothing.
Over the past couple years, many projects that involve neither unqualified ownership, nor unquestionable provenance, nor demonstrable novelty have been heavily shilled as “historical NFTs”. Unfortunately, many people were deceived by the fraudsters behind these scams.
I encourage you to dig deeper before buying into a project. And if you do purchase an item with desirable properties, don’t just present it as an image with a timestamp. Link to the important transactions in your item’s history. Show evidence that it is a first. If you have to write a couple paragraphs to do your item justice, so be it.
When you own a relic on Ethereum, you have a kind of ownership in a long-running computer program on one of the world’s most fascinating computers. That’s special!