The importance of the specific location of the information associated with the famous "NFTs" is conspicuous by its absence today, being a concept of little interest and great ignorance in the blockchain par excellence in terms of non-fungible tokens: Ethereum. The arrival of Ordinals to the Bitcoin Blockchain has returned interest in this important concept: immutability and the security that the content of an NFT or digital artifact cannot and should not be susceptible to being deleted or modified by a centralized external source.
Alvaro Saez, Chuiso https://twitter.com/chuisochuisez https://chuiso.com
During the years 1972 and 1973, Pioneer plaques were affixed aboard the Pioneer 10 and 11 space probes with a visual message engraved on 2 metal plates that were launched into space. We don't know if in thousands, or billions of years, an extraterrestrial civilization will find those plates and fantasize about their origin, about our existence, and about the reason why we left those messages there. It is not crazy, after all, we ourselves fantasize about the messages of the Sumerians, the Nazca geoglyphs or the Great Pyramid of Giza, and that these phenomena happened just a few thousand years ago on our own planet.
If one day our planet collapses and the only remnant of it is a small hard drive in the middle of space with an old node of the bitcoin and ethereum blockchain... What could they ever find there other than an almost infinite record of transactions, numbers and letters?
I will answer you: On-chain content. In the past, only on Ethereum, but now and thanks to Ordinals, with the exception of the message that Satoshi Nakamoto left recorded in the first block, also in Bitcoin.
Surely today we associate NFTs with space kittens, mutant dogs, collections such as "Bored Ape Yacht Club" [1] promoted by celebrities on TV, the Willyrex Gormiti or, in short, with scams. It's a fact, the vast majority of NFTs that have become popular and have gained importance recently are just that: garbage. And same is happening in Ordinals. A bunch of png copied and speculation.
Today we already know a large part of the potential functions that NFTs could represent in the future. There are some examples: NFTs that represent real estate, NFTs that certify the authorship of a work, NFTs to convert a product of great value into divisible sections, NFTs to declare your will immutable and unfalsifiable, Vitalik Buterin himself suggested the creation of soulbound tokens, which would be non-transferable NFTs, very useful, for example, for the educational and training sectors.
But what about the NFTs that have already been created? We already know that there has been a huge bubble of NFT PFP collections, profile picture projects, NFT collections that are based on creating images of humanized characters, kittens, dolphins, zombies, puppies, bears... There are practically any collection of animal that exists in the world, almost always generated automatically based on a series of patterns.
Despite all this speculation bubble of NFT collections of zero intrinsic value and pure hype, there are exceptions. Today in the world of NFTs there are projects that really bring something interesting to the table and deserve attention, and not just talking about technological progress, but also artistic or experimental.
When I first started delving into the world of NFTs, one of the concepts that interested me the most was exactly how one "owns" an NFT. We already know that having a Marvel NFT, for example, does not give you copyright on it, so I did not fully understand what I really had having that NFT in my wallet.
Little by little I discovered how the contracts, the mints, and the json that defined an NFT worked, and at that point it was not difficult to know how each collection worked. As I do not want to lengthen this essay too much, I will explain it to you with some examples:
Cryptoskulls [2], for example, use centralized information that could be shut down or be modified anytime. Specifically, Cryptoskulls, like hundreds of other collections, hosts its json on its own centralized domain, with which it has the possibility of modifying its NFTs, deleting them, increasing their rarities, or even losing ownership of the domain.
Others use IPFS. IPFS is a protocol designed to create a p2p (peer-to-peer) content system for storing and sharing hypermedia on a distributed file system.
On the other hand, there are also collections that store on-chain content, such as Avastars [3] and Critterz [4], a Minecraft server game that interacts with ethereum NFTs.
This literally blew my mind. For practical purposes there is no substantial difference, what's more, from the marketplace itself you will be seeing an image that is not extracted directly from said code encoded in base64, but in one way or another, you know that what you have paid for is there, in the blockchain, natively, and that it will be there forever as long as the Ethereum blockchain persists. It is the real barrier between decentralization and centralization.
Anyone who has web pages knows how easy it is for a domain to expire and you lose its ownership, for your hosting to be closed or for your server to burn down or be damaged and you cannot recover the content. Not to mention the problems that concern us human beings: you can die, you can fall seriously ill, you can end up in jail... There are thousands of reasons why it is a very bad idea for an NFT that is traded on a decentralized blockchain, whether at the end of the day, a link to a JPG in the domain of a private person, on a server of a private company, that you can do and undo as you please.
Where does my idea come from? Of what had not yet been tried. So far, the only project that natively and fully on-chain stores music on the Ethereum blockchain is Arpeggi Labs, a very professional and advanced open source software that mines .arp files that you can then upload to their software. to play a song. This sounds like a great idea to me, but at the end of the day using your software is a centralized bottleneck. What if your software disappeared or stopped working? What if the company goes bankrupt?
We'll come back to this later, but I don't want to pass up the opportunity to explain why it's so difficult to write music on the blockchain. Arpeggi himself explains it clearly and concisely in in a little known Twitter thread [5].
A common song in MP3 format is usually 3,000,000 bytes, or even more, about 3MB. Minting this single song in a valid Solidity format for the Ethereum blockchain would literally cost thousands and thousands of dollars in gas fees. To take another example, mining just 50KB can easily cost you 1 ether of gas on an average day. This is the main barrier that currently exists to host files of relevant weight on the Ethereum blockchain.
Arpeggi's solution to reduce this problem to a minimum involves having to use software that, although it is open source, is not widely known, used and accepted by the great mass. This is where the algorithm we saw earlier on Critterz, Base64, comes into play.
Base64 [6] is an encoding algorithm (not encryption) with which we can transform any character from any language, including images or music, into an alphabet consisting of Latin letters, digits, and signs. With this we can convert any file into a sequence "readable" by any computer, which can be saved, transferred and even on this occasion, stored on the Ethereum blockchain.
Simply put, you can take a picture, song, or book, convert it to Base64, transfer, save, or send it however you like, and then "decode" it again to retrieve that picture, song, or text. It is not a compression algorithm, rather the opposite, since a file encoded in Base64 will weigh 33% more than the original file.
At this point in my head I had a conviction: I wanted my first NFT project to be something special, something different. He wanted to host real music on the Ethereum blockchain and it was clear to him that he could achieve it thanks to Base64.
The only problem I had left to solve was the weight of the songs. This problem is not so important and expensive with Ordinals thanks to taproot discount, but I have already told you at the beginning that an MP3 song usually weighs 3MB, and that is unthinkable with the (in that moment) Ethereum POW system, so I took out my "fruity loops" vein and began to investigate the different types of music files and their features, and yes, I inevitably arrived at MIDI files, the only format in which you can accommodate a melody in just 1KB of information. You may not be able to really quantify how much 1KB is, so I'll leave it here below:
data:audio/midi;base64,TVRoZAAAAAYAAQACA8BNVHJrAAAADAD/WAQEAhgIAP8vAE1UcmsAAAUsAP8DJDQyIExhIGVuZXJnacyBYSBudWNsZWFyIC0gUGF0dGVybiAxAACQW1sAkCtAAJA3ZIFwgFsAAJBWW4FwgFYAAJBSW4FwgFIAAJBPW4FwgE8AAJBKW4FwgEoAAJBGW4FwgEYAAJBbW4FwgFsAAJBWW4FwgFYAAJBSW4FwgFIAAJBPW4FwgE8AAJBKW4FwgEoAAJBGW4FwgEYAAJBbW4FwgFsAAJBWW4FwgFYAAJBSW4FwgFIAAJBPW4FwgCsAAIBPAACQW1sAkCdAAJAzZIFwgFsAAJBXW4FwgFcAAJBSW4FwgFIAAJBPW4FwgE8AAJBLW4FwgEsAAJBGW4FwgEYAAJBbW4FwgFsAAJBXW4FwgFcAAJBSW4FwgFIAAJBPW4FwgE8AAJBLW4FwgEsAAJBGW4FwgEYAAJBbW4FwgFsAAJBXW4FwgFcAAJBSW4FwgFIAAJBPW4FwgDcAAIAnAACAMwAAgE8AAJBZWwCQKUAAkDVkgXCAWQAAkFRbgXCAVAAAkFFbgXCAUQAAkE1bgXCATQAAkEhbgXCASAAAkEVbgXCARQAAkFlbgXCAWQAAkFRbgXCAVAAAkFFbgXCAUQAAkE1bgXCATQAAkEhbgXCASAAAkEVbgXCARQAAkFlbgXCAWQAAkFRbgXCAVAAAkFFbgXCAUQAAkE1bgXCAKQAAgE0AAJBXWwCQJEAAkDBkgXCAVwAAkFRbgXCAVAAAkE9bgXCATwAAkEtbgXCASwAAkEhbgXCASAAAkENbgXCAQwAAkFdbgXCAVwAAkFRbgXCAVAAAkE9bgXCATwAAkEtbgXCASwAAkEhbgXCASAAAkENbgXCAQwAAkFdbgXCAVwAAkFRbgXCAVAAAkE9bgXCATwAAkEtbgXCANQAAgCQAAIAwAACASwAAkFtbAJArQACQN2SBcIBbAACQVluBcIBWAACQUluBcIBSAACQT1uBcIBPAACQSluBcIBKAACQRluBcIBGAACQW1uBcIBbAACQVluBcIBWAACQUluBcIBSAACQT1uBcIBPAACQSluBcIBKAACQRluBcIBGAACQW1uBcIBbAACQVluBcIBWAACQUluBcIBSAACQT1uBcIArAACATwAAkFtbAJAnQACQM2SBcIBbAACQV1uBcIBXAACQUluBcIBSAACQT1uBcIBPAACQS1uBcIBLAACQRluBcIBGAACQW1uBcIBbAACQV1uBcIBXAACQUluBcIBSAACQT1uBcIBPAACQS1uBcIBLAACQRluBcIBGAACQW1uBcIBbAACQV1uBcIBXAACQUluBcIBSAACQT1uBcIA3AACAJwAAgDMAAIBPAACQWVsAkClAAJA1ZIFwgFkAAJBUW4FwgFQAAJBRW4FwgFEAAJBNW4FwgE0AAJBIW4FwgEgAAJBFW4FwgEUAAJBZW4FwgFkAAJBUW4FwgFQAAJBRW4FwgFEAAJBNW4FwgE0AAJBIW4FwgEgAAJBFW4FwgEUAAJBZW4FwgFkAAJBUW4FwgFQAAJBRW4FwgFEAAJBNW4FwgCkAAIBNAACQV1sAkCRAAJAwZIFwgFcAAJBUW4FwgFQAAJBPW4FwgE8AAJBLW4FwgEsAAJBIW4FwgEgAAJBDW4FwgEMAAJBXW4FwgFcAAJBUW4FwgFQAAJBPW4FwgE8AAJBLW4FwgEsAAJBIW4FwgEgAAJBDW4FwgEMAAJBXW4FwgFcAAJBUW4FwgFQAAJBPW4FwgE8AAJBLW4FwgDUAAIAkAACAMAAAgEsAAP8vAA==
Yes, this is 1KB, and a simple melody can fit in this tiny size. Test by yourself copy and paste it in any website that converts base64 to MIdi, like Base64guru, and you will listen it.
Not bad, right? MIDI are widely known because they were the type of melodies used in old video games, the ones we now call retro, when cartridge memories were limited and they had to measure every byte they used.
Once this was done, and after doing the math, everything was clear: it was possible to host MIDI melodies compressed in Base64 fully on-chain. But where do I start? As a newbie to everything related to Ethereum, I looked for the perfect partner: a good friend of those who always say yes to anything crazy: Oliver Perez, Olipp. Oliver has experience developing smart contracts and knows a lot of Solidity developers, so we looked for a developer to make the contract and understand what we wanted to achieve and a composer to create the melodies. Imagine the face of the composer, who is Russian, when we told him that we wanted to create 50 melodies in MIDI format and that they had to occupy less than 1KB each. Yes, it was a poem. Even more so when we had asked him to make a melody about the invasion of Ukraine (and he is Russian).
But hey, not to go on and summarize the whole process, we finally managed to create this project and mint it, and from Opensea you can see it, we decided to call it "Unchaineth Melodies" [7], paraphrasing the popular Righteous Brother song. Oliver had a very good idea: direct the theme of the melodies to transcendental moments of the Universe and of the human race: the Big Bang, the pyramids, the Second World War, the Roman Empire, etc. The composer has tried to convey for each tune as much as he could within the constraints of using MIDI and being limited to 1KB, and I think he did pretty well, although it's true that if you listen to the tunes, you'll like some more than others.
On the other hand, and as you may have noticed, this is not one of those mutant kitten projects that a random guy does to earn money. We are talking about 50 NFTs, a paltry supply, created one by one, and most of them at a very low price. Even if all the NFTs for sale were bought, we would hardly recover what we have invested in development, compositions, working hours and gas fee. It is obviously not a speculative collection and I would not want the owners of these NFTs to be speculators simply looking to make a x2. I have taken the time and affection to make this video to try to explain to you in a simple and easy way the reason for this collection and the intrinsic value that we see in it. For many it will simply be a speculative flip, for many others it will just be a freak, and there will be people who, after seeing this video and understanding what we have done, will really want to have a little bit of this in their Ethereum wallet. Hopefully it will be like that. At the end of the day, this video and this collection is the little medal that Oliver and I have given ourselves for having finally managed to complete this idea, which although it seems very simple, perhaps because it is something different from what everyone else does, has given us It took a lot of time, effort and headaches.
I hope you liked this short summary, greetings!
[1] https://opensea.io/collection/boredapeyachtclub
[2] https://opensea.io/collection/cryptoskulls
[3] https://opensea.io/collection/avastar
[4] https://opensea.io/collection/critterznft
[5] https://twitter.com/arpeggi_labs/status/1450210105027219456
[6] https://es.wikipedia.org/wiki/Base64
[7] https://fullyonchain.eth.limo
[*] https://etherscan.io/token/0x1af45a2ff6b6eb1817fea21f402034dbda9fbcde#code
[**] https://opensea.io/collection/unchaineth-melodies