From choas, order.
NFTs — Picassos or Pogs?
NFTs, or non-fungible tokens, are bursting onto the blockchain scene with all of the exuberance and bluster of a three-month-old Labrador puppy. Unfortunately, they're bringing the-knock-everything-off-the-coffee-table-with-their-tail finesse as well.
I’ve seen a variety of articles and opinions swirling around social media and the blogoshpere, many breathlessly extolling the exciting new world of NFTs, while others take a decidedly skeptical view of the whole scene, calling NFTs anything from questionable to worthless.
So, let’s take a deep breath, and unpack this.
In this article, I will explore features and issues particular to the digital-goods-based model of NFTs. NFT-enabled physical goods (like the ones pruf.io can make possible) have many unique advantages and characteristics, but I’ll explore those in a later article.
At their core, digital-goods NFTs are a unique digital token, stored on a blockchain, holdable and transferrable on that chain with cryptographic assurances about its uniqueness and who has control and custody of the token. That’s it.
The fact that they exist on a public, decentralized chain means that they have a reasonable assurance of being “permanent”, and that they cannot be deleted, taken, or invalidated by a third party.
A common misconception among neophytes is that tokens can store, directly, digital artifacts. This is not typically the case. Most tokens merely point to information stored on private servers, and if those servers are shut off, the data that the token represents is gone. The token then is just an expensive broken internet link.
So if the token doesn’t store the data, what does owning it mean? In an alarming number of cases, the token acts as a stand-in for a license to use a work of art or media product, a stand-in that is often on very questionable legal ground. In any case, even a good license is probably going to suffer from jurisdictional issues.
In many cases, the “license” is only enforced by the TOS and access policies of a third-party website. Sometimes, the digital artifact is encrypted and the owner of the NFT is given a key. But isn’t then the key holder the actual owner? Why does the NFT even exist?
With careful legal crafting, it is possible to create a license that confers to the holder of the token. It may be an exclusive, all-uses license, or a license to use the item in certain ways, or any other type of license that may be applied to a digital artifact. This is perhaps the strongest common form of NFT “ownership”, but it is still far from perfect. The onus of enforcement lies with license holders and is reliant upon the legal system, which can be expensive or even practically impossible to access, depending on the jurisdiction. Even in the best of cases, this is an extremely centralized solution and one that would arguably be better served by a signed legal contract on paper.
So, once again, why does the NFT even exist?
It would be understandable, at this point, to suspect that I am ideologically opposed to NFTs for digital content — but that is far from the case.
As a founder at pruf.io, I have bet a year of my time (as of 2021) and tens of thousands of dollars of my own money on the idea that NFT tokens have a strong value proposition.
So how do we realize this value in NFTs?
First, we have to talk about storage. For NFTs to have a real value they must have some direct, immutable link to reliably stored data. What I mean by immutable is that the link is to a very specific piece of data, one that cannot be changed or “disconnected” from the token.
Storing files immutably is a little complicated. I can have a picture of a puppy, and call it puppy.jpg. But I could also have a picture of a kitten, and call it puppy. jpg. I could even replace the original puppy.jpg with the kittenized puppy.jpg, and I think you can see where this is going. Chaos. Dogs and cats living together. Mass hysteria. There is no guarantee that puppy.jpg is actually a puppy.
In the case of NFTs, this could mean your precious token is now connected to a Rick Astley GIF. This is a very real problem if your token uses a centralized third party to store your images in a data base. There is no real guarantee that that image will not be corrupted, compressed, or otherwise manipulated. The companies TOS could change, they could go bankrupt, or they could be purchased.
The next step in immutability is content-addressable storage. Content addressable storage typically means that the filename in the system is a derivative of the file itself. If the file changes, so does the name. The name is typically a cryptographic hash of the data itself and can be thought of as a shadow of the data. This hash-filename will always be for that file, and only that file.
If the URI stored in your token points to a file on a content-addressable system (such as IPFS), you know that any linked file will be the file you are supposed to get. Unfortunately, immutability doesn’t mean your data will last forever. For that, you need not only immutability but persistence as well. With content-addressable storage, if a file is lost but is re-uploaded at least it will always be accessible with the same name, but it can still go missing if no one decides to keep it on the system.
Immutability on the blockchain is comparatively simple. You just store something as an immutable construct. It can’t be changed. It can’t be erased. In the immortal words of the 1990s rap duo Tag Team, whoomp, there it is. On-chain storage also provides strong persistence — which we address next.
Persistence in this case means durability. What guarantee do you have that the file you are storing will be there in a year? In 5? In 20 years? If a centralized host storing it goes out of business, virtually zero. Who is going to pay to store it? Obviously, you could store it yourself on a thumb drive or something, but doesn’t that kind of beg the question again, why bother with the NFT in the first place?
At PRüF, we always use on-chain storage for certain important characteristics. This is important because these items are intrinsically critical to the validity and value of a token. They need to be stored on-chain so that they have permanent immutability and persistence. So why not store all data on-chain?
Although storing all data on-chain would make NFTs nearly perfect, storing large amounts of data on-chain is cost-prohibitive for most applications. On the Ethereum blockchain, for example, it costs about $2-$5 per byte right now. That means that storing a small jpeg could easily cost nearly half a million dollars.
Our go-to solution for most data storage off-chain is IPFS, and we will soon offer on-chain storage for token data — at prices well below current ETH rates. For off chain storage, we prefer IPFS and similar protocols because they are content-addressable and decentralized. IPFS does not guarantee persistence, but at least with IPFS, it is possible to underwrite persistence by “pinning” the relevant files, making it possible even for small content creators to personally guarantee the persistence of their data.
Although we are working on an on-chain storage protocol that we hope someday will result in affordable (if not really inexpensive) on-chain storage on a dedicated storage sidechain, for most applications IPFS will have to suffice until we can solve the forever-storage problem.
Standard NFTs usually have one URI that can point to a data item. Depending on the token contract, this URI can be reset by the token holder. This can create problems, as a bad actor can point a fraudulent token to a legitimate file resource, leading to confusion about which token is real and which is a copy. The contract address of the token can help to resolve this, but there is typically no clear path that leads to an easy to discover, unambiguously authoritative source, especially for smaller issuers.
PRüF enabled NFTs, on the other hand, not only link to both mutable and immutable resources but also bear an easily verifiable seal from their minter, with a single, authoritative mechanism for verification. Minters in the PRüF ecosystem are authorized in the system with ACNode tokens. Without authorization, tokens cannot be minted within the system, and each token bears the mark of the minter so that authorization can be directly resolved to an official presence on the internet.
Using ACNode keys as a requirement for token minting in PRüF not only protects token buyers, it also protects content creators and minters by securing their unique space within the ecosystem, and preventing their brands from interference from bad-faith actors. The PRüF community governance DAO can quickly deal with bad actors within the system, clearly marking fraudulent tokens.
The mutable data available in PRüF enabled tokens is useful for including things like certifications of authenticity, media, and other documents that you may wish to add or change after the fact. Meanwhile, the immutable data can only be set once and then is permanently locked to that token on the blockchain. This would typically reference the media that the NFT was meant to confer the rights to.
PRüF enabled NFTs also benefit from universality. They are backward compatible with legacy tokens but can make use of an interoperable system of markets, galleries, and commerce systems that can be built around the PRüF API. PRüF tokens are monetizable by design, and the PRüF contract infrastructure can support purchases, transfers, escrows, collateralized transactions, loans, and more without developers having to write any special contract code.
PRüF is being built as an ecosystem. The PRüF protocol is open and extensible so that the features available with PRüF enabled tokens can be built on by anyone. This helps to ensure that PRüF enabled assets will continue to be in use long after legacy NFTs have gone by the wayside. With open standards and future-proof design, PRüF helps to secure ongoing value for creators and holders. PRüF NFTs can even be designed to continue to provide revenue for creators after the original sale.
The PRüF network is designed to align incentives between creators, asset holders, and utility-token holders, to ensure a vibrant, prosperous ecosystem long into the future. Community governance and ACNode staking are key to achieving this outcome.
Along with offering token holders a source of passive income, node staking is expected to bring a vibrant guidance mechanism to the PRüF community; empowering token holders and node operators alike to steer the platform to prosperity and dynamic growth.
PRüF is a carefully buiding an extensible, long-term solution for decentralized NFT asset management. Far from merely “cashing in” on the current explosion in NFTs, PRüF development started while the market was still quiet in early 2020, and since then we've been analyzing and quietly crafting trusted solutions for the NFT economy.
To read more about PRüF as an NFT platform for developers and content creators alike, be sure to check out our site at https://pruf.io/devs.html.