Namecoin Expired Names and Provenance Misconceptions

archivist
16 min readJan 26, 2023

--

Introduction:

Namecoin is the history’s second blockchain and first altcoin (forked from Bitcoin). It was created by Vincent Durham (aka “Vinced”) with the intention of providing the world with the first decentralized naming system (announced on April 18, 2011), giving people the ability to have full control over their online digital content and identity. Its main and earlier application was a decentralized DNS, but it was also built in a way to allow multiple use cases around names, community supported or not, leading to various pioneering decentralization experiments. It is designed to be used as a way to associate values/data with a specific name in a decentralized manner, to make it a .bit domain sometimes (if the d/ namespace is applied), an identity or even a proper blockchain collectible.

It was inspired by the BitDNS idea shared by Appamoto on November 14, 2010 on IRC that was quickly discussed by key crypto actors such as Satoshi Nakamoto, Gavin Andresen and Theymos who showed strong support to the vision. Another key event that inspired Namecoin was a Dan Kaminsky’s insight to Aaron Swartz that led to Aaron proposing Nakanames on January 6, 2011, which used a Bitcoin-like system to solve and “squareZooko’s Triangle introduced by Zooko Wilcox-O’Hearn in 2001.

An empirical study of Namecoin and lessons for decentralized namespace design

Before Namecoin, true ownership of a domain, custom data, or identity was not possible without the risk of it being taken away by a centralized entity. Moreover, to prevent names from being squatted indefinitely or lost forever, the creators implemented an expiration system after 36,000 blocks (up from 12,000 blocks on June 18, 2011), making expired names available for registration again. This is where debates about the provenance of Namecoin names begin.

It’s important to note that the Namecoin team is not particularly supportive of these debates, as they often become too philosophical, and the team’s primary focus is on developing the technology and its initial purpose.

The only reason these debates exist is because of the communities and their interest or rejection born around a new and different use case for Namecoin names: historical collectibility.

Recently, following the rise of NFTs, some blockchain history enthusiasts have started to dig into old chains to see if older forms of NFTs or blockchain collectibles existed before. This led to the “excavation” of old Namecoin names, some of which can have unusual or pioneering on-chain stories or experiments that happened years before the term “NFT” even existed.

As the Namecoin protocol was the first to allow for the storage, ownership, and trading of custom data on the blockchain (primitive concept for NFT, or “non-fungible assets” as described by Vitalik Buterin about Namecoin names in the original Ethereum whitepaper), it has generated a lot of interest from NFT collectors who want to own a piece of early blockchain history, one of the NFT ancestors.

Namecoin mention in the first section of the Ethereum whitepaper (2014)

However, for being a first of its kind, Namecoin had specificities when compared to Bitcoin currency-based standards, such as its 36,000 blocks expiration system, and has even more so to today’s blockchains and NFT standards. This has led to debates not about whether or not Namecoin names are NFTs, as it is generally accepted that they fit into that category, but rather about the legitimacy of the collectability and provenance of Namecoin names.

I have attempted to analyze these questions objectively, with the precious help of Daniel Kraft (Chief Namecoin Scientist & lead C++ developer on Namecoin Core), who agreed to provide helpful answers, despite, as expected, not being particularly receptive to these topics.

Analysis

A first interesting question that arises in the debate about Namecoin names is whether it is the name itself or the ownership/control of the name that expires. In other words, what does the user own: the name or the ownership/control of the name?

Daniel Kraft, Chief Namecoin Scientist, states:

No one can answer this from a technical point of view, it’s more of a philosophical debate. The Namecoin code and comments in the code and so on definitely talk about “the name” expiring, but that’s just since it is simplest to understand what is meant. It is definitely clear to say that control of the name expires, as that is explicit in the code (the UTXO becomes unspendable at expiration). Note that the same can be said about e.g. Cryptopunks or any other NFTs. Does the user really “own” the token with a given ID, or does he just have control to transfer it via the smart contract?”

Therefore, it can be inferred that it is more intended that it is the control of the name that purposely expires, a control giving ownership of the name to the user and that can be exercised through updating values/data associated with the name, transferring this control to another individual, or allowing this control to expire.

So another question arises from the previous one above: does whether the expiration of control over a name constitutes real ownership or is it just renting?

This too is a philosophical debate. One can note that with renting, it is not solely up to the renter to extend the ownership, while with Namecoin names, the decision is solely up to the name owner. In reality, how many services or goods do you have full and exclusive control over that can be rented indefinitely at your sole discretion, for mere cents? Also, what happens to your IRL property if you don’t pay the taxes?

By Amy Loftsgordon, Attorney

However, it’s important to note that not all Namecoin names are valued based on the name alone. Sometimes this value is also based on the metadata contained in one or multiple of its operation values, such as a base64 encoded file, a document/artwork hash or a link to an external image, some of these following punk-vibe experiments from early pioneer users. In these cases, some people argue that the name’s operation values history is not really attached to the name and that the metadata in it is just public data stored on-chain, meaning it cannot be owned.

Earliest example of an image file tokenized in a name’s operation value (d/fuckyea on January 20, 2012)

Daniel Kraft answers:

“Yes, it can indeed be said and seen like that. What can be owned is the name, in other words the asset, any past records metadata just give it historic value. But the same is true about any other NFT: what you own is just a number (the token ID). Any metadata, image, whatever “attached” to an asset/token is just something referred to on the blockchain and philosophically not necessarily “owned” by the asset/token owner” [e.g. see how tokenURI works for ERC-721, for instance]. «However, if the current social consensus is that metadata by a particular artist, entity or date makes a token ID valuable, then so be it.

Also an interesting position about this by 0xSchatz (creator of oldnft.com):

“I feel like NFT has multiple functions, other than time stamping or data stamping on the Primary Asset, it actually work as PoE (Proof of Existence) as well, which depending how we see the NFT, in some cases the Secondary Asset might be more ‘valued’ than the Primary Asset (Token). What makes an NFT, rhetorically? Is it just the blank slate token? Or it has to include something (like codes, jpeg, art, etc), for it to be ‘socially’ qualified as an NFT? Technically, you can just create ‘empty’ NFT, and sell it. But I doubt people will call that an ‘NFT’.”

Then come multiple questions surrounding the core provenance debate, mostly based on the 36,000 blocks expiration process implemented to avoid squatting or asset lost:

  • Does a name still exist after expiration, is it burnt or is it tied/soulbound to the last owner’s wallet?
  • Is it the same version of the name if it expired and is re-registered years later, or is it a new version of the same name?
  • Does a name created in 2011, expired in 2012 and re-registered in 2023 be 12 years old or 1 day old?
  • Is the asset the name itself or the UTXOs chain?
  • Can a name leap between UTXOs chains?

Some people argue that if identical name fields (pointing to the same unique identifier in the Namecoin decentralized database) are not linked to each other directly throughout the transactions that have occurred on the Namecoin blockchain (so that the UTXOs chain is broken), then 1) they cannot be the same names , so as a result the old name doesn’t exist anymore or is soulbound to the previous owner’s wallet, 2) the new name is a duplicate in the blockchain records history.

In response to the claim that names become soulbound tokens tied to the wallet after expiration, Daniel Kraft states:

That is clearly not true. The name can be re-registered and then is owned by another wallet. Of course if you see the UTXO chain as the asset, then you might argue like that, but even then I would rather say that the old chain ceases to exist rather than that the name becomes soulbound.”

He goes on the UXTOs chains to also explain that:

“Consensus rules of Namecoin are based on Bitcoin, but Namecoin adds more rules, including rules that are not strictly based on UTXOs, but on a database keyed by names. So the consensus code itself, by the implemented rules, has to look at more things than purely inputs of a transaction. The consensus rules do not say “name exists”, this is just how it is convenient (and easy to understand) to express them in discussions. What it says is that a name can be registered if it either has never been mentioned on the blockchain before, or if it has, then the last name_update operation on it was more than 36,000 blocks in the past. Also, consensus does not say that names have to be unique within 36,000 blocks, since you can have name_updates of the same name within that block range as you like. The rule is just that then the previous owner must sign it and that at any given point in time, a name has at most one owner. So even if names do not expire, they are not unique by that argument, nor are Cryptopunk IDs in Ethereum transactions.”

Jeremy Rand (Namecoin Lead Application Engineer) adds:

“I think it’s pretty well-known that Bitcoin consensus keeps track of a UTXO index, whereas Namecoin consensus (in addition to the UTXO index) also keeps track of a name index.

2011 and 2014 Consensus codes showing Namecoin is a decentralized database/index keyed by names

Then, the question arises, where is the transaction linking the name being traded to the old name, showing a clear and isolated chain of custody/provenance?

In response, Daniel Kraft states:

There is no transaction linking it directly, but the question is whether or not such a transaction is mandatory. The concept of transactions linking stuff is only relevant in strictly UTXO-based systems, while one could argue that Namecoin uses UTXOs as technical underpinning, but the assets themselves are identified by the name. Note that the same is true for Ethereum assets as well. There is no “transaction linking” any NFTs on there either. Just a transaction including the identifier (token ID) and specifying that it is to be owned by a new address. Similarly a name operation (including name_firstupdate on an expired name) just specifies an identifier (the name) and causes ownership rules to be updated.

On the technical, implementation level, each re-registration creates a new coloured/special coin attached to the same name, and the coloured/special coin itself is a chain of UTXOs being spent (and creating a new one). The UTXOs are just temporary stations along the journey of a name, that are created & destroyed as part of how the system works. Technically, the name as a concept itself (which I think is what matters in the end) is strictly not exactly the coloured/special coin, but all individual coloured/special coins throughout its history (each coin corresponding to one session of registering & letting the name expire).

The transactions contain the name operations (e.g. registration or updates), and from the block that contains this transaction you can see when it happened and look through all blocks to find all transactions and operations on a particular name if you wish. Strictly on the blockchain, all that exists is indeed a history of transactions. But that’s just how all chains work. Also Bitcoin does not have on-chain e.g. a balance per address, nor does Ethereum store ERC20 balances or NFTs in the blockchain itself (the only thing in there are also just transactions).”

The fact that a name “jumps” or “leaps” is because the Namecoin system and rules, built on top of a Bitcoin fork (which was the only existing blockchain at the time in 2011), are based on first-of-their-kind use cases. Also, it is explicitly mentioned in the chain, in the consensus code, consensus rules and documentation, that:

  • The Namecoin chain is treated as a decentralized database (“DB” or “database” are everywhere in the code and documentation). Vitalik Buterin also describes Namecoin as such during the 2017 TechCrunch Disrupt event.
https://web.archive.org/web/20160722064148/https://wiki.namecoin.org/index.php?title=FAQ
  • Names are the on-chain unique/hard identifiers in that database (UTXOs are for the Bitcoin-inherited parts). Namecoin was designed around the idea of “names” as the entities and not expiring UTXOs (see, for example, how name_history RPC command works (lists all name values of a name, whether or not re-registered), or how Namecoin consensus code treats the names). The name is the unique ID, the UTXO is the mechanism that manages control expiration, so the same ID can get multiple UTXOs-chains. This leads us to believe that the name’s provenance is attached to the name, not the UTXOs.
Number of “name” mentions in Consensus codes
  • Names have three different statuses in that database: 1) names that are active and not expired (whether or not re-registered), 2) names that had been registered already, but are now expired, 3) names that don’t exist in the database at all, because it never was registered. This distinction (which is a rule at the protocol level) shows that expired names are still in the database, as they are treated differently than names that never existed, meaning that even if all three statuses share common operations, they are clearly not treated the same.
Namecoin Consensus code example showing expired & non-existent names are not treated the same
  • An existing name remains in that database after expiry until the next re-registration, and so on.
Conversation with Daniel Kraft (aka “Domob”) about names staying in the database after expiration

Vitalik Buterin has said about Namecoin when announcing the Ethereum project in January 2014 on Bitcoin Magazine:

“Over the past year, there has been an increasingly large amount of discussion around so-called “Bitcoin 2.0” protocols — alternative cryptographic networks that are inspired by Bitcoin, but which intend to make the underlying technology usable for far more than just currency. The earliest implementation of this idea was Namecoin […]. However, up until this point all of the protocols that have been invented have been specialized, attempting to offer detailed feature sets targeted toward specific industries or applications […]”.

Colin Harper, also said on Bitcoin Magazine:

“Two years and some change after Bitcoin was founded, Namecoin, cryptocurrency’s first altcoin, was created. Toward the tail end of 2011, Namecoin would be joined by a few now-defunct alts and Litecoin, Bitcoin’s most well-known fork. All of these early altcoins were source-code forks, offshoots of the Bitcoin network that tinkered with its code in their own ways to deliver variations of its consensus mechanism, inflation rate, circulating supply and other parameters. With them, the ecosystem not only expanded in volume of coins, it also expanded technically, introducing the forks and all the new hashing algorithms and technical developments that came with it. The ecosystem was evolving, and it was no longer just about Bitcoin.

In the end, the point of view that holds that “UTXO = the asset” is not philosophically sound because Namecoin could be implemented in an entirely different way (without UTXOs at all, for instance) and it would still operate in the same way from a high-level point of view. The claim that this “jump” or “leap” concept between UTXOs erases or unleashes the initial provenance of the name (so it is not the same name/asset after re-registration) is purely philosophical and subjective, while tolerable however, as nothing leads to any absolute law or truth on one interpretation or another. Whether other-minded blockchain/NFT people accept that as reference/ground truth or not is up to them.

Daniel Kraft concludes:

“The code and rules are still just implementations, and there could be others. But it clearly shows what the Namecoin creator’s intent was. The code is pretty clear in that names are the unique identifiers for Namecoin features. Expiration as a concept was clearly introduced against squatting, and also to prevent names lost forever due to e.g. lost private keys. The tech process based on UTXOs and so on was implemented in the way it is simply because Bitcoin existed as a base and was forked. In the end, the blockchain is just a means to implement an idea. I think my position on this debate has been made clear well beyond any doubt.

There is a high chance that if Namecoin had been more popular earlier and smart contracts were only now being introduced, people today would fully accept using names for tracking provenance in Namecoin. While the skepticism from Ethereum users who strictly prefer tracking ownership through smart contracts is understandable, it becomes concerning when someone would accept the provenance of assets from a protocol like Counterparty (XCP) but not from Namecoin. Ultimately, both methods of tracking provenance, whether through a chain of UTXOs or unique name identifiers, require assumptions based on the design of the individual chains. People may be more familiar with the “chain of UTXOs” method where one has to check transactions to map different UTXOs that get spent and get created, but that familiarity doesn’t make the “unique name identifier” method any less legitimate in Namecoin’s context. It’s important to remember that assumptions must be made on all chains, even Ethereum, and not accepting the design assumptions of one chain while accepting those of another would be unnatural.

In summary, the Namecoin protocol, as the first decentralized naming system and the first allowed for on-chain custom data storage, ownership, and transfer, has specificities that cannot be reasonably and objectively compared to today’s blockchain or NFT standards, nor to the Bitcoin’s standards built around a currency system and fungibility.

Misconceptions surrounding the provenance of Namecoin names will always remain on a purely philosophical level and only depend on whether or not one sees the name or the UTXOs chain as the asset.

Based on Namecoin creators’ clear-cut intent and from a proof of existence perspective, it is valid to say that Namecoin names do keep their age provenance since the first time they were registered. Therefore, a Namecoin name like d/bitcoin, which was first registered on April 21, 2011, is 12 years old in 2023, not 7 years old, even if its control expired in 2016. The new owner who registered it the same year just holds a 7-year-old “deed” to a 12-year-old piece of property.

d/bitcoin 2011 first registration tx versus 2016 re-registration tx

Conclusion:

It’s important to note that people are free to not adhere to the initial Namecoin vision and may not see any particular value in expired and re-registered Namecoin names or their metadata. It is a matter of personal taste and perspective.

Different people value different things when it comes to blockchain collectibles, such as art, utility, hype, memes, innovation, scarcity, community, roadmap, technology, cause, experiment, team, or historical significance. Each blockchain, project, and asset has its own pros and cons. Some already very valued collectibles are divisible/fungible, have metadata editable by the asset owner, have infinite or unlocked supply, be new hashes on old token or new mints on old smart contracts, not fully on-chain or have no original content. Ultimately, it is up to the individual to decide what they want to collect.

Punycodes, Tokenized Androidify, SATOSHICARD, RAREPEPE, Cryptopunks, MoonCats

It is also important to remember that there will always be subjective arguments and claims especially in the crypto world. The debates around Namecoin names and their expiration are more like “is a tomato a fruit or vegetable” than “is the Earth flat” kinds of discussions. It’s ultimately a matter of semantics and how one chooses to define things. It is crucial to approach these debates objectively and consider the intent and technical aspects of the Namecoin protocol, rather than getting caught up in biased claims and echo chamber reasoning. These discoveries were always going to come out eventually.

In the end, it’s important to have dissenting opinions to build transparency in communities so that people can form their own opinions. Namecoin predates the concept of NFTs & smart contracts by years and it stands to reason that its records don’t neatly fit into the ERC-721 definition of what an NFT is understood to be today. Assets creators (whatever the chain) did use chain(s) available at a specific point in time to apply digital collectibility and to preserve provenance the way it was possible to.

If a person doesn’t like collecting Namecoin names because they find them clunky or have doubts about their age or provenance, the conclusion should be that it’s simply not for them.

The only universal advice in blockchain collectibility should be DYOR (ask questions, seek out reliable sources, verify accuracy before making decisions), and then collect what you like/understand and are willing to pay for. Stay informed and do not let FOMO or FUD decide for you.

--

--