(For an introduction to cryptogoods, take a few minutes and read this post I wrote on the topic earlier this year)
It’s difficult for newcomers to the world of cryptogood tokens to understand the nuances of this emerging media. Evaluating the pros and cons when choosing a platform for issuing a token can be arduous. Transaction fees and network congestion tell only part of the story. The “realness” of these tokens is, in many ways, the most important facet to consider as both a token issuer and a collector. Will they continue to exist in 5 years, 10 years, 100 years? Will they change over that time? What do I need to know to begin to answer these questions?
The goal of this post is to help better equip you to answer these questions yourself and gain a deeper understanding into the subject of cryptogoods…
A brief history
Over the last several years, there has been a steady increase in interest in a small subset of digitally scarce tokens dubbed cryptocollectibles that fall under the broader category of cryptogoods. They first appeared in April 2015 with the issuance of a trading card token on Bitcoin via the Counterparty platform (here’s an excellent read on this early history).
What are Cryptogoods?
A cryptogood is a token issued by an artist, game developer, musician, etc. that is generally represented by an image, video or text. It’s easy to make the mistake of framing a cryptogood token as representative of the media presented along with it but, in fact, the opposite is more accurate. The media is representative of the token.
The key differentiator between a user issued cryptogood token and other cryptoassets like utility or equity tokens is that a cryptogood is not representative of any physical object, stake or claim. It’s an amorphous, scarce digital thing.
A cryptogood is also not a cryptocurrency, but much in the same way cryptocurrencies do not represent fiat currencies (ignoring those tokens specifically designed for that task), cryptogoods do not represent physical goods, equity or network utility.
To issue a new cryptogood token, you first need to choose a platform. Each platform comes with a unique set of costs and tradeoffs that apply, not only to the issuer, but also to collectors and holders of the token.
The two platforms covered here are Counterparty (Bitcoin) and ERC-721 (Ethereum). Both platforms are smart contracts built on top of public blockchains. Where they differ is in the contract structure and deployment method within that system architecture.
There are also many other platforms not covered in this article such as Waves, Steem, NXT, Bitshares, EOS, Ravencoin, etc.
It’s important to understand what a smart contract is, in its most basic form, in order to evaluate the costs of issuing a cryptogood token. The term “smart contract” can mean a variety of different things depending on who you ask. For our purposes, the definition is as follows…
A smart contract is programming logic representing a contract between users. The code and the agreements contained therein exist across a distributed, decentralized network.
So what do cryptogoods have to do with smart contracts? The answer to this is fairly straightforward… cryptogoods exist within smart contracts.
The smart contract maintains a table of accounts (addresses) and assigns token balances to each account based on input parameters received and executed over time. Input parameters can be sent to the smart contract by anyone, without explicit permission, via public blockchain transactions. The validity of the data within a smart contract is secured by its associated public blockchain.
On-chain and Off-chain
The terms on- and off-chain refer to whether data is written directly to the public blockchain (on-chain) or somewhere else (off-chain) with some type of mechanism for blockchain validation. For data to be written to the chain, it is broadcast to a peer-to-peer decentralized network and paid for with transaction fees. Off-chain data is generally held by only those network nodes that find it useful and is not broadcast to the entire peer-to-peer network nor does it incur transaction fees. Because on-chain data is costly, it’s desirable to move as much information as possible off-chain while maintaining data validity and security.
On the Counterparty platform, smart contract logic and code execution is off-chain with data stored in a federated node running in tandem with a bitcoin full node. The only data that exists on-chain are the smart contract input parameters. The on-chain data is written to the bitcoin blockchain using unspendable outputs in standard bitcoin transactions.
ERC-721 has a much different structure. All contract logic, code execution and input parameters are maintained on-chain. ERC-721 is a smart contract standard for cryptogoods (referred to as non-fungible tokens, NFTs) built on the Ethereum blockchain. Ethereum itself is a smart contract platform with over 1,000,000 contracts deployed!
In contrast, Counterparty is a single smart contract deployed as node software rather than as on-chain logic.
This is why when comparing platforms, it’s better to compare tokens issued on Counterparty to NFTs issued within an ERC-721 contract rather than compare Counterparty to Ethereum itself. In both cases, cryptogood tokens exist within a smart contract.
It’s common for people in the cryptocurrency space to describe public blockchains as data “written in stone”. It is the unchangeability, or immutability, of blockchain data that facilitates the existence of cryptogoods. Without it, there’s a major risk of losing trust in the system and even the construct itself. Changes to token ownership or the nature of the token’s existence challenge the expectation of digital scarcity.
Smart Contract Risk
At the smart contract level, changes to Counterparty software create a risk to any cryptogoods issued on the platform. However, it’s important to remember that changes to the Counterparty smart contract rely on social consensus. Users are free to run any variant or fork of the Counterparty software, which they could choose to do if the Counterparty project maintainers institute an unwanted code change. Because of this, developers are incentivized to be very conservative with consensus related software updates. More token issuers running the same software enriches the entire ecosystem since all tokens are interoperable within the same smart contract.
ERC-721 smart contracts have a very different set of risks. The contracts are deployed on-chain and suited to the needs of the token issuer. The ERC-721 designation refers to a basic contract framework and the inclusion of specific standard functions that allow tokens issued within ERC-721 contracts to be interoperable. This can be an advantage to issuers because they can implement function specific to their token (think breeding Cryptokitties).
However, the risk to the user is that the standard does not explicitly cover the exclusion of any types of functions. All tokens issued within ERC-721 contracts are not created equal. These contracts can vary greatly from one token to another with many implementing a variety of restrictions on token owners. The restrictions are generally based around “golden keys” which token issuers hold and can use to do things like freeze transactions and upgrade contract functions (which could be used to seize tokens). Because the smart contract is on-chain, users don’t have any recourse if the token issuer takes advantage of this authority or allows their private keys to be compromised.
Smart contracts containing cryptogood tokens are built on public blockchains. The mutability risk of each chain is even more important than that of the smart contract deployed on it as it lays the foundation for contract validity and censorship resistance.
There have been minority forks to both Ethereum (Ethereum Classic in 2015) and Bitcoin (Bitcoin Cash in 2017). In each case, a small subset of users decided to move to an alternate implementations of the blockchain node software causing the blockchain to splinter into two versions of history going forward. In the case of a fork, token issuers will generally choose a chain to endorse rendering the tokens existing on the other chain copies of the “real” token. These forks probably represent the greatest risk to the collective belief in digital scarcity as it relates to both cryptogoods and cryptocurrencies.
Another factor to consider with ERC-721 is the Ethereum project maintainers’ planned upgrade from a bitcoin inspired Proof of Work consensus to some type of Proof of Stake consensus model. For more on the differences between these consensus methods, check out Hugo Nguyen’s Work is Timeless, Stake is Not.
There is a lot to unpack and consider when researching cryptogoods and cryptocurrencies in general. Gaining a deeper understanding of the architecture and risk profile of each token platform is crucial to weighing the tradeoffs. There are other important factors to consider before committing resources to a specific platform which include available hardware integration, developer tools and platform awareness to name a few.
Do your own research and don’t get caught up in the hype.