I created an NFT, but the image renders differently based on who's looking at it. For example, on OpenSea: opensea.io/assets/0x5c61afa4… ...vs on Rarible: rarible.com/token/0x5c61afa4… ...vs if you own it, it currently renders as a large 💩 emoji in your wallet. How this works: 1/n

11:22 PM · Oct 12, 2021

54
644
237
1,949
NFT image data is not on-chain (too costly). Instead, what's on-chain is just a URL that *points* to the image. But surprisingly, there is no hash commitment in the NFT for the image at the URL. This means whoever controls the URL host can change the NFT image at any time. 2/n
20
118
90
769
Looking at popular NFTs, there are tokens trading for crazy $$ where the NFT image comes from a random VPS running Apache. The VPS admin, or anyone who controls the domain name, can change the NFT image/name to render as 💩 (or whatever) at any point w/o owning the token. 3/n
11
56
14
546
My NFT simply does this by default. It renders differently based on the IP/UA of the request, so the NFT image data isn't ever consistent, and what you bid on isn't what you get. This is how ERC721 is setup, though, not something unique to this NFT Good luck to all bidders! 4/n
19
24
2
657
Update: my NFT was removed by OpenSea without warning or explanation. I don’t see any terms it violated? No problem, this is web3 right? But the NFT also disappeared from my crypto wallet! Why? Because MetaMask just calls the OpenSea API. Loving the decentralized future so far..
116
287
147
1,247
Replying to @moxie
lol nice
0
0
0
0
Replying to @moxie
Moxie, I really appreciate you.
0
0
0
12
Replying to @moxie
Interesting, IP string passed as svg data? Or maybe much more than that. So cool!
1
0
0
0
This isn't cool, this is just how websites work since basically forever.
3
0
0
47
Replying to @moxie @briantoth
Amazing!!
0
0
0
0