What is the maximum size of NFTs on the Ethereum blockchain (ERC-721 or ERC-1155 tokens)?
crypto art NFTs on the Ethereum blockchain already contain JPG/PNG files that are about 5 MB large, and sometimes even motion graphics in MP4 format about 50 MB large, so why not full-length hour-long movies wrapped inside an NFT?
Is this impossible to do on the Ethereum blockchain, or would a whole separate company and blockchain be required to support that digital video ecosystem?
Best Answer
I'll come at this from a slightly different direction...
The current price of ETH is ~$1500.
The Yellow Paper states that storing a 256-bit (32-byte) word costs 20,000 gas.
Average gas price is currently ~100 Gwei. That's 100 x 20,000 Gwei per 32 bytes, which is 2,000,000 Gwei, which is 0.002 ETH, which is $3.
1 GB is 1,073,741,824 bytes, so there are 33,554,432 32-byte words. As above, each of these words costs $3, so each GB costs (3 * 33554432) = $100,663,296 at current prices.
5 MB would therefore cost ~$503,316.
Clearly the base cost of an NFT - before any abstract value has been applied - is not the price shown above, so NFT's can't actually be storing the associated picture or movie data on the blockchain.
If you look at the spec for EIP-1155 you'll see it defines an
image
field in the token's metadata:If we look at a real example, in this case by calling the CryptoKitty (an ERC-721 token) API, we see the following:
-> https://public.api.cryptokitties.co/v1/kitties/1
And so we see the image files are stored off-chain.
Yes, given that they're stored off-chain...