Without looking into it, I thought that entire files -anything from 4x4 pixel blocks, 16G videos, 9mb gifs- would be encrypted and stored in a standardized format on the blockchain, with parts of files seeded between Ethereum maintainers much like bittorrent files. In the same way Instagram allows people to upload masses of images, how Netfix never goes down and seems to host hours of video... "What a large set of virtualized storage containers they'd need to keep this ever-updating, ever-increasing series of artwork, tokens and transactions in the blockchain", I thought. And what a large electrical bill it would cause open source users to maintain such infrastructure!
I was partially correct in assuming the storage of NFTs were on a network like BitTorrent. That's one of the ways digital artifacts can be stored. I was totally wrong about how NFTs reference an artwork it claims to represent.
On existing NFT marketplace platforms, there what's known as "on-chain" and "off-chain" ways NFTs reference its relationship to a work of art.1 These different mechanisms dictate the persistence, permanence and longevity of an artwork with a NFT created of it.
How can an artist guarantee an artwork will be accessible 5, 10, or 100 years into the future? > What are the risks of HODL’ing an artwork for a lifetime? Can we re-assure art collector’s they’ll be able to pass NFT’s on to their siblings and they’ll inherit an artwork and not a worthless token pointing to a broken URL?
jboogle, "The broken promises of NFT Art", 2020.
In the on-chain method, information about an artwork (metadata) is embedded in the smart contract. The actual artwork is stored on IPFS (InterPlanetary File System), which works like a peer-to-peer network.2 Platforms like Rarible use conversion services like Pinata or NFT.Storage to create an IPFS object.4 This object contains the information that points to the link of an image, video, or the digital thing you wanted to create a NFT of. The original file doesn't live on the blockchain! 2 3
"...when someone buys an NFT, they’re not buying the actual digital artwork; they’re buying a link to it."
IPFS is fine to use if you decide to run your personal IPFS node to keep your artwork up. You'd foot the cost of the hardware (much like running your own server) and need a constant connection to the internet to maintain availability of your digital file. Otherwise, you must keep pinning the content or pay for the service that keeps pinning it––by this I mean, making the content available to other nodes to copy and distribute it in event your original personal node goes down or the software on the node tries to clean up any unused data to make space for others 49. Just because you make the artwork readily available doesn't mean its data is stored and persisted longterm. Services like FileCoin and infinFT bring both decentralized protocols and storage of digital artifacts for persistence and longevity.
So basically, you have three things to pay for in the process of rolling your own on-chain NFT:
IPFS probably became the choice for peer-to-peer, decentralized storage due to 5:
In the off-chain method, the artwork is stored likely on a centralized server like AWS. In fact, all the popular options I can think of might be more stable and performant. (Good luck! JK)
Does it matter? Why yes it does, says collector diehards.6 7 If the artist can swap out the file, it undermines the certainty of what they paid for! In a bid to show how competitors on the NFT-creation market are selling brittle services, Showcase called out OpenSea, Matic and Editorial for using centralized storage instead of their own means of storage.
Anyhow, some of the advantages of "off-chain" measures include allowing the introduction of outside factors (such as new headlines, weather information, performance of the stock market) to the if/else mechanisms of smart contracts. Currently, the way smart contracts are talked about at an introductory implies that transactions only occur in the vacuum of a decentralized application's logic. This is advantageous for preventing external factors like stock market crashes and natural disasters (barring the coincidental destruction of storage, internet service, the dapp servers, the murder of the development leadership...) from compromising the security and operation of the blockchain. However, it also makes projects harder to connect with those outside factors.
Chainlink's example of how to integrate oracles creating dynamic blockchain NFTs using Chainlink oracles.
For example, if you wanted a NFT to become resaleable only if a certain stock performs well, you could would use an oracle to connect the blockchain with information every few days. This invariably introduces security issues but allows developers to create smart contracts that connect to real world events.
Addressing the generative art perspective, an artistically sympathetic dev, Ricardo Stuven argued, "When it comes to on-chain artwork NFTs, the token doesn’t just refer to a piece. The token itself is the piece."8 It does not matter that the work is pointed at or is stored elsewhere, moreso that the generative and procedural potential of an artwork can be formally leveraged by the functions within a smart contract to create entirely mutative, unique digital works that are according to him, more worthy of collecting. Other engineers beg to differ. Identifying logic gaps in the way the Hashmasks project did not due their full diligence to bind individual tokens to crytographic hashes (instead generating one combined record of provenance), Adam Eisenmann called on the community to arrive at consensus over the best way to connect an artwork with its NFT.9
It sounds like nerd in-fighting but Dash, Khanan, Showcase and other technologists' claims are technically true in regards to off-chain mints.
The current art market is hedging on NFTs to revolutionize the sales of art. And right now, it's working because a sizeable population have agreed to participate given the way this system works. It's extremely unregulated yet. I don't intend to discourage anyone from using these platforms; just sharing what I've discovered so that you can make an informed decision :)
1 Rohan Pinto. "On-chain versus Off-chain: The Perpetual Blockhain Governance Debate", Sept 6, 2019.
2 In his now archived Atlantic article, Dash took issue with the way NFTs today establish its relationship with digital artwork. He was an early proponent of such a transparent system for establishing provenance of digital art. In 2014, he and artist Kevin McCoy created a proof-of-concept that was similar to the on-chain method today, but cautioned that technology had not advanced enough yet to store works larger than 4mb on the blockchain. They called it a Monegraph. See: "Seven on Seven 2014: Kevin McCoy & Anil Dash".
3 "Recently, an NFT-skeptical programmer named Jonty Wareing wrote an in-depth thread on Twitter delving into where the media referenced by NFTs actually lives. He discovered that typically, the token will point off-chain to either an HTTP URL metadata file or an IPFS hash."
Dan Kahan. "Do You Really* Own Your NFT? Chances Are, You Don’t" The Defiant, Mar 31, 2021
6 "On-chain metadata makes an NFT more valuable, in part because the metadata is incorporated into the token, allowing the NFT to last forever (or as long as Ethereum exists), and in part because on-chain tokens have to meet certain Ethereum standards, giving them a liquidity premium and making trading easier. When determining whether the NFT is on-chain or off-chain, the key question is where the NFT is hosted."
Haug and Partners. "Valuation of NFTs: Factors to Consider and an Alternative to Destroying the Original Work" July 28, 2021.
StackExchange. "Can we mint 5 gigabyte video NFTs?" Ethereum.
9 Adam Eisenman. "Ethereum NFT token-to-asset mappings are off-chain and nobody cares" CoinMonks. Medium. Feb 21, 2021