On-Chain Artwork NFTs
Not all art NFTs are created equal. Some seek to overcome the transience of the digital medium. Let’s find out how.
As 2021 was just taking off, CryptoPunk 8219 was sold for ~$176,000. Maybe the highest price paid for any kind of capped ape ever, who knows. Not long after, CryptoPunk 2890 was sold for ~$750.000, because ALIENS. But for such pricey assets, you would expect some permanence guarantees, right? After all, they live on Ethereum, the unstoppable world computer! Well, imagine you’re the proud owner of CryptoPunk 8219 and due to some cataclysmic event Larva Labs, the creators of CryptoPunks, disappear from the face of the Earth and among the few things left standing is the Ethereum network (World War 3-proof Ethereum 2, to be precise). Some points to consider:
- You got bigger problems than worrying about an expensive silly picture. Go loot some food!
- On the other hand, you never know what the post-apocalyptic appreciation rate of an expensive silly picture is. Showing-off is a basic need, it is known. A pixelated ape could save your neck!
- Ah, by the way, your pixelated ape is gone forever. You’re screwed!
That’s right, the actual little image is nowhere to be found, not on the blockchain at least. You may still own the token, but other than a reference to “punkIndex 8219” in the token transactions metadata, there’s no intrinsic connection between your token and the colored pixels. All you got is a punkIndex, an arbitrary number, an identifier Larva Labs uses in their web viewer to retrieve the picture from their storage. You’ll have to keep a backup of the image somewhere or even better, in order to prove its authenticity, you’ll need a copy of the all-in-one CryptoPunks image.
All this is improbable, you’ll say. But not impossible, I’ll reply. As it turns out, a NFT artwork disappearing act is already happening. Just not with CryptoPunks (yet). I’ll tell you about it in a moment. Hang on there.
A popular way to address this concern is storing the NFT artwork and metadata using a decentralized protocol such as IPFS (the InterPlanetary File System, no less). However, persistence is not guaranteed by IPFS, unless someone continuously ensures it pinning the content by themselves or paying for the service. But that’s not often the case. Showcase (a platform for creators) has a strong opinion about off-chain metadata as usually implemented: it’s a plague.
Non Fungible Token (NFT) platforms must secure Metadata in their ERC-721/ERC-1155 implementations. Off-chain metadata vulnerability plagues current generation NFT platforms […] The metadata extension of ERC-721 allows your smart contract to be referenced for its name and for details about the assets which your NFTs represent. Part of this interface is the TokenURI function, which returns a URI pointing to a JSON file that contains data such as the link to the image. The problem is that the server hosting the JSON file is often a centralized web server.
They also point out the case of a closed NFT creation service:
Editional had previously been used to create more than 100,000 NFTs. […] you can see that the metadata URI’s are stored on their servers, and they may or may not be able to host them in the future with the unfortunate business circumstances.
That was in 2019. Like I anticipated above, a disappearing act is happening as you read: thousands of NFTs artwork and metadata gone for good… almost. As of today, Editional token URL redirects to OpenSea, where image and metadata are cached, but for how long will that be effective? In OpenSea We Trust. Speaking of the, uhm, angel:
A piece of digital art is expected to persist throughout the ages, regardless of whether the original website that was used to create the art is still around. It therefore is important that its metadata persist alongside the lifecycle of the token identifier.
That quote is from OpenSea documentation. So persistence is important, but just for the token “lifecycle”. That’s kind of tautological: there is no lifecyle without persistence, so surely it’s important during the lifecycle. But “expected to persist throughout the ages”? Aaah, now we’re talking. Artist jboogle cuts through the core of the issue:
NFTs are often sold with the premise of permanence, but is the reality that most are destined to the trash heap of history? […] 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 NFTs on to their siblings and they’ll inherit an artwork and not a worthless token pointing to a broken URL? I would love to mint the artwork directly on-chain but when a .gif can be >5MB this currently is too costly an option.
Blockchain tokenization of art, blockchain-native digital art in particular, is one of the success stories of 2020. The total trading volume of NFT artwork reached a record $8.2 million in December alone. But just a small fraction of the traded artworks was made to persist throughout the ages.
So, are we just simply contributing to the trash heap of history? Imagine a digital art NFT with the long-term vision of a physical 10,000 Year Clock. Is that even possible?
I’m not saying we should store a high definition image or a full song track on-chain. That’s a no-no. It would be impractical and expensive like crazy. Ethereum simply wasn’t designed for that. On-chain artwork would need to be very small in size (I believe CryptoPunks would’ve been perfect candidates for this, just look at PixelChain) or highly compressed.
We can think of procedural generation as a form of information compression, where a relatively small algorithm and a few parameters can generate highly complex, sometimes aesthetic patterns. There’s actually a subculture called demoscene “focused on producing […] self-contained, sometimes extremely small, computer programs that produce audiovisual presentations” (as per Wikipedia). People have been experimenting with generative stuff way before computers. Some even argue Mozart was a generative artist.
Probably Larva Labs was thinking of off-chain storage weaknesses and the uncertain fate of their CryptoPunks when they created Autoglyphs, “the first on-chain generative art on the Ethereum blockchain. […] A completely self-contained mechanism for the creation and ownership of an artwork.”
Autoglyphs are an experiment in generative art, each one unique and created by code running on the Ethereum blockchain…
In Autoglyphs, the procedure to create those pseudo-random, deterministic, beautiful patterns is specified in the very code of the token smart contract, and the generated pattern is stored in the minting transaction on-chain log, so the storage cost is relatively low compared to other on-chain storage options, and also considered the complexity of the emerging patterns. In the doomsday scenario described above, you can rest assured that your Autoglyphs are safe and sound. Now you can fight for your survival with some peace of mind.
See what’s going on here? When it comes to on-chain artwork NFTs, the token doesn’t just refer to a piece. The token itself is the piece.
In their article, jboogle expands at length on the off-chain storage options available, expressing high hopes on the then upcoming InfiNFT and their combined use of IPFS and Arweave. InfiNFT promises on-chain metadata, on-chain image storage and support for “3D, audio, and other file types’’. Also “costs associated with permanently storing files are factored into the minting price [..] so content will be around forever”. That sounds great! A step on the right direction. The only reservation I have is that Arweave content is moderated and, as we all should know, art and censorship have never hit it off particularly well. On the other hand, Ethereum is inherently censorship-resistant. So, InfiNFT: Is it really on-chain storage? Is it really forever? I digress… What I wanted to highlight is that, just before jumping into off-chain storage options, jboogle is categorical:
Clearly, in an ideal world, all artwork should be minted on-chain.
Quadrillions of avatars generated on the fly from many layers of custom artwork, each mintable as a non-fungible token…
We are overdue for an art revolution. Watching the NFT space evolve has been something that has often left me in awe…
Still, they unfortunately represent a very small fraction of all art NFTs produced. jboogle nails it again:
On-chain artwork is still in its infancy, pioneered by Larva Labs and the Autoglyphs project, [where] the image is stored within the token itself, making it as immutable as the blockchain itself. While the rest of the NFT world relies on off-chain files hosted externally […] It looks like for now, without writing your own Solidity contracts, artists have a limited number of options for minting, all of which could break in the future.
So it seems the barrier of entry to on-chain artwork would reside on learning smart contract programming. Enters Art Blocks.
Then a collector can pick a project, “pay for the work, and a randomly generated version of the content is created by an algorithm and sent to your Ethereum account. The resulting piece might be a static image, 3D model, or an interactive experience. Each output is different and there are endless possibilities for the types of content that can be created on the platform”. There is more to the mechanic, but these are the basics.
Although Art Blocks is not exactly minting the artwork on-chain like Autoglyphs is, because the generator script runs in the browser, all the necessary ingredients to (re)create a piece are present in the smart contract, except for the script language itself (eg. Processing) and the browser APIs. So the longevity of each project is bound to the continued support of that basic layer of language and APIs, either by mainstream browsers or some hypothetical dedicated tool.
For example, if a project is based on rendering an interactive 3D model using WebGL (like “Ignition” seen above), its artworks will live on as long as WebGL is supported or at least new versions remain backward compatible. As far as I know, WebGPU is intended to eventually replace WebGL, which will be deprecated.
It’s possible to update a project script in case it breaks, but only until a project is locked, at which point no further changes are allowed. Worst case though, in the far future, someone could create a transpiler or an emulator that takes the script readily available in the contract and makes it work in a (by then) modern platform. NES and Flash games fans still enjoying their treasured relics in a web browser will understand what I’m talking about.
So, in terms of persistence, Art Blocks definitely represents an improvement over off-chain (de)centralized storage for artworks, but with some caveats withstanding.
We’ll also find off-chain rendering dependency in some on-chain generated NFTs such as Neolastics and Avastars (namely, the SVG format), but the dependency stability might be higher as it’s based in standards rather than external infrastructure or proprietary decoding methods.
In the meantime, as long as Ethereum exists, Autoglyphs owners have nothing to worry about.
Let’s sum up some of these nuances in a table:
This table was updated on February 1 to reflect changes of terminology and layout improvements, and to add some clarifications: First of all, this table is not an acid test or a ranking system. It doesn’t place any value judgment. It’s more about breaking down the different ways of being on-chain. Second, it’s by no means exhaustive or definitive. We believe that innovation will continue to happen in the NFTs space, and we’ll continue to evolve our framework.
There are many knobs we can turn in each column: cost, stability, convenience, etc. It’s a spectrum of possibilities. And, personal preferences aside, there is no good or bad way. Each solution has compromises and, as long as we’re transparent about them and no false expectations are created, we’re OK.
At Treum.io, we’re attempting our own take on this problem, exploring the audiovisual medium. And we found an amazing muse: Leonhard Euler, all round badass mathematician who also had an interest for music theory. We’re calling our project EulerBeats and we’re launching in a matter of days.
What are the most convenient and resilient ways to persist an artwork on-chain so it can be practically recovered in the distant future? What are the design principles implied? In a next article we’ll deep dive into these questions and the nitty-gritty technical details.