TL; DR: A Non-Fungible Token (NFT) is nothing more than a statement of ownership. Usually, this statement includes a pointer to an external asset, an image for example. How the ownership of the NFT relates to that asset is often unclear and can be complicated. When you buy an NFT of some artwork it could be anything, from complete copyright ownership to just a link for viewing. It’s important for creators to clearly communicate the content and rights attached to their NFT and equally important for buyers to research thoroughly before purchasing.
This article explains, in simple terms, the technical aspects of what a Non-Fungible Token is, how they are created in the blockchain with “smart contracts” and how NFT technology can be beneficial for both creators and consumers.
Crypto Currency 101
There are several technologies that come together to create NFTs: The blockchain, mining software, wallet software and smart contracts. The first three are components of every Crypto Currency. Smart contracts are a component of some Crypto Currencies, Ethereum for example, and hold custom data used to make NFTs. Let’s go over each of these technologies in a bit more detail to better understand how the crypto currency works.
Blockchain
The term “coin” is often associated with crypto currencies. It conjures up misleading imagery of digital doubloons in electronic treasure chests. In reality, crypto currencies work like bank ledgers. They are simply a record of transactions. In other words, a long list of who owes what to whom.
As new transactions occur, they are added to a group of transaction records called a “block”. When a block is created it is cryptographically locked to the block that came before it, forming a “chain”. This chain of blocks is referred to as the “blockchain”.
Blockchains, such as Bitcoin and Ethereum, are public and millions of copies are held world wide. Copies of a blockchain are called “nodes” and anyone can make one. This mass distribution of the public record ensures its security. Whenever a change to the blockchain occurs, 51% of all nodes world wide must agree on the change. If any single party were to try to slip in a bogus transaction, the other nodes would disagree and reject it.
Mining
Further adding to confusing imagery, crypto currencies employ the term “mining”. Mining is simply the act of encrypting the block and adding it to the chain. This process is made difficult, deliberately, by introducing “work” for a computer to do in the form of a complex computational task. The end result is a mathematical proof of the work that was done. This system is known as “proof of work” and ensures that blocks are added to the chain in a controlled manner.
The term “mining” comes from the fact that these computers are awarded new currency for their work. Some systems produce this new currency from nothing. While others require the person making the transaction to pay for the mining. Ethereum employs this kind of payment system which is called “gas”. You may have heard about “high gas fees” in relation to NFTs. Popularity of the platform increases demand for mining which, being a limited resource, increases the price for the task.
Wallets
End-users interface with blockchains using software called a “wallet”. Think of the wallet as a blockchain viewer. It doesn’t actually store anything beyond the means to encrypt and decrypt its specific transactions on the blockchain. The wallet reads the blockchain, reports the transactions it has access to and issues new transactions.
Every blockchain transaction includes a unique ID number attached to an end user. This is called an “address”. When used for the first time, wallets are assigned a new address. It’s important to understand that once you start using a wallet address it essentially becomes YOUR ID. Every transaction you make will be attached to that address. If you change wallets, you then have to transfer funds from the old wallet address to the new one.
If you lose a wallet due to computer failure or theft, your currency still exists in the blockchain. You’ve only lost your ability to interact with it. This is why it’s important to be able to “recover” your address, by assigning the old address to a new wallet. It’s best to set up your own wallet address, and ensure you have the ability to recover it, before investing any money in crypto currencies.
On a side note: When you use an exchange like Coinbase, you’re using their wallet. As far as the blockchain is concerned, your funds belong to the exchange. It’s good practice to transfer any long-term investment in an exchange to your own wallet address.
Smart Contract
Some blockchains, like Ethereum, can store more than monetary transactions. These systems employ “smart contracts”, which are computer programs that run right inside the blockchain. Smart contracts have an address and can send and receive funds just like a wallet. In addition to funds, it can accept and store data too. Anyone can write a smart contract and add it to blockchains that support them.
What makes a smart contract special is it can be programmed to perform tasks when it receives a transaction. For example, say you wanted an address to accept donations for two charities and split them evenly. You could write a smart contract that splits every amount and automatically sends half to one party and half to another. You could even store some additional information right in the contract, like a list of top donors. This information is stored in real-time on the blockchain for public view.
You might be wondering: What’s to stop someone from writing a deceptive contract? The answer is: Nothing. In the example above, the contract could discretely transfer part of the donation to an undisclosed third party. However, like the blockchain itself, the code that makes up a smart contract is public and available for anyone to read. Any suspicion of a deceptive contract can be easily investigated by another programmer. Also, a smart contract can’t be changed once it’s published. Much like a bogus transaction, any attempt to change a contract after publishing would be rejected by the other blockchain nodes.
This public and permanent nature of smart contracts ensures a level of honesty. However, just like any traditional contract, it’s important to read it over before using it. The computer code that makes up a smart contract is often short and simple to understand even for someone without programming experience.
So what is an NFT?
An NFT is simply a piece of unique data, tied to an address, and stored in a smart contract. The data itself is referred to as a “token”. Since the token data is unique, it cannot be exchanged evenly for another token. This makes it Non-Fungible, or a “Non Fungible Token”. The contents of the NFT is up to the writer of the smart contract. It could be anything: a number, some text, even binary data like images and apps.
Because images are the most common representation of NFTs, many people mistakenly believe that NFTs are images. This is rarely the case. Images tend to have a lot of data, making them prohibitively expensive to store in the contract on the blockchain. This has to do with the fact that miners must do extra work to store the data and subsequently charge to do that work. Depending on the blockchain, and market conditions, mining an entire image may cost thousands in US Dollars. Some NFT artwork is small enough that it is stored right in the contract. This is known as being “on chain”. This is seen in some of the early NFTs, like Crypto Punks, that were extremely low resolution pixel art.
High resolution images are prohibitively expensive. When most artists want to sell digital images, the solution is to post the image elsewhere and store the url for that image in the NFT. In this case, the NFT is only a link. There may be additional legal rights afforded by the artist but this is not inherent to the NFT. Unless you know exactly what data is stored in the contract, you should never assume an NFT is anything more than a link.
Some digital artists meet halfway. A common practice is called “procedural art” or “generative art”. This is software that uses a unique string of text or “key” as instructions to reproduce a randomly generated image. While the software that produces the procedural art is stored elsewhere, the key that generates a specific image is stored in the NFT. My own NFT project, ExoBits, uses this method. Be aware that some generative artists will fall back on the previous technique of storing only a link to a pre-rendered image.
In order to make an informed purchase it’s important to know what data is stored in the NFT. If your NFT is an image stored on-chain, ownership is fairly unambiguous. However if the NFT stores a link to an image on the internet, you need to have a solid understanding of what that NFT represents. Is it a copyright to that image? Do you own the ability to reproduce the image? Can you stake a legal claim if someone else sells that image? Or did you just buy nothing more than a link? These are questions that should be asked of the creator, and verified with a written statement, before investing any money. The source code of the contract should be inspected as well.
Some NFTs aren’t images at all. There isn’t any restriction on what data a contract can store. An NFT might store a product number representing a physical good. Or it may entitle the holder access to a venue. What we see now in NFTs is only the earliest application of this technology. The possibilities are limitless.
The importance of NFT technology
I often refer to NFT technology as the future of DRM. When used responsibly, it’s an extremely powerful technology for monetizing digital items. The very nature of the system creates a user identification method, and an easy secure means of payment. In many ways it’s preferable to a credit card. A creator with their own smart contract has complete control over what that contract stores, and direct access to their own accounts. They can define royalty payments for resale of their work. They also have the means to write their own legal statements right in the contract, eliminating ambiguity and instilling confidence in buyers.
This is not without drawbacks. The number of people holding crypto currencies are relatively small. The currency your customer uses has to be on the same blockchain as the NFT. You can’t use Bitcoin to buy an NFT on Ethereum, the Bitcoin has to be converted by an exchange first. NFTs also require a smart contract, which has to be written by a programmer. Many artists would have to hire help to write one. And of course, deploying the contract is a transaction itself, which requires payment to mine.
Marketplaces like OpenSea eliminate some of these problems. They provide a fast and simple method of creating an NFT using their contracts. Many have built-in exchanges as well. In some cases this is ideal, but beware of the limitations of using some else’s contract. It may not clearly convey legal rights offered in your sale. Your content may be stored somewhere you have no control over. The contract itself may be closed someday, freezing its state and preventing future creation and resale of your NFTs.
What we see now is only the first round of innovation. NFT technology has established itself as a way for digital creators to monetize their work. But for declaring ownership, digital assets are only the beginning. An NFT subscription to your local gym could be programmed to expire in 12 months. And if you give up halfway through, you can sell it to a friend. A writer could sell NFTs to fund their next novel. Holders of that NFT might get a signed copy. You may one day purchase the title for a car as an NFT.
Non-Fungible Tokens cover a broad range of technologies and techniques. There’s no one definition that covers the complete breadth of their offering. Each NFT must be measured by its own content and legality. In the same way it’s important for buyers to research their NFT, creators must research their means of creating the NFT. Being aware of all of the available methods and technologies allows you to choose the best NFT for you.