Understanding NFTs on Bitcoin The Ordinals Approach

19 replies 295 views
HyperCipherFull Member
Posts: 220 · Reputation: 780
#1Mar 3, 2023, 10:59 PM
So, Casey Rodarmor came up with this thing called Ordinals. It's a way to let people move individual Satoshis around by using the Taproot upgrade, and it can also hold NFT info in those Taproot scripts. I'm still figuring it all out by going through this blog. n0nce, pooyah, and any of you tech whizzes, could you break it down for us newbies and average folks? Haha. Also, I'd love to hear what everyone thinks about Ordinals.
8 Reply Quote Share
LuckyCoinLegendary
Posts: 832 · Reputation: 4795
#2Mar 5, 2023, 06:06 PM
It's not using OP_RETURN, but it's using conditional branches with OP_PUSH, and also while the article claims the limits on witness data have been relaxed, there is still an overall transaction size limit of 4 (million?) weight units (about 1 vMB), and that data has to be stored elsewhere. What it's basically saying is you can now use most of the 1MB for NFT-related stuff as well as for anything else, but expect to pay a premium on transaction fees.
2 Reply Quote Share
ape_2018Senior Member
Posts: 412 · Reputation: 1728
#3Mar 5, 2023, 09:01 PM
Quite interesting, I'll have to read up on it a bit. From the get-go there's two things that bother me though: (1) Blockchain bloat, since the non-transactional data payload is now only limited by blocksize, rather than OP_RETURN (2) It would be seriously detrimental to privacy and fungibility (1) is a discussion that has been around ever since OP_RETURN has been used to store non-transactional data on the Bitcoin blockchain and since this case is no different I'm going to skip over that one. (2) is in my opinion a bit more serious. While it is addressed in the BIP I'm not quite sure it's quite that simple. For reference: I disagree that this objection can be that easily dismissed. Right now, each satoshi is the same. Sure, blockchain analysis exists, but there's nothing to distinguish one satoshi from another on a technical level. Some addresses may be more suspicious to exchanges than others, but in the end a satoshi is a satoshi. Even governments and their regulatory apparatuses know that, so while they try their best to work around these limitations they still accept it. Have to accept it. They won't once we provide tools to assign every single satoshi a unique identifier. Though it's pointed out in the BIP that Ordinals are "opt-in", this optionality is unlikely to prevail once governments catch wind of this and start making it a requirement. First for exchanges, then for businesses and eventually for consumers. And while "any reasonable person will assume that a new owner of a particular sat cannot be understood to be the old owner" it won't prevent the average Bitcoiner from entering a world of bureaucratic pain whenever a satoshi non grata ends up in their wallet. If you think it's frustrating to be immediately suspect by taking care of your privacy by using a coin mixer, just wait until Ordinals become commonplace.
0 Reply Quote Share
hodlg4ngFull Member
Posts: 108 · Reputation: 733
#4Mar 6, 2023, 12:19 AM
I agree; that's why I still believe it's best to have any 'funny business' pushed off-chain e.g. the way RBG is doing it. https://rgb.info/ But I will read about this one later & tell you guys what I think about it.
1 Reply Quote Share
Posts: 35 · Reputation: 189
#5Mar 6, 2023, 07:09 PM
All I have to say on this matter is this won't end well for Bitcoin if this becomes a spam chain. NFT's are a WASTE of time we are supposed to be focused on being MONEY not a "utility" chain for data. Satoshi clearly said NO to data on chain when BitDNS was proposed. I think this is a stupid concept and idea and should not get any attention let's get back to being sound money.. Nothing more.
3 Reply Quote Share
im_apeHero Member
Posts: 629 · Reputation: 3824
#6Mar 6, 2023, 07:42 PM
It seems to me like the author is desperately trying to convince the readers (and possibly himself too) that the "controversy" that died over a decade ago still exists! This is exactly why he has to dedicate most of the post about the "controversy" itself instead of explaining the proposal! Is he trying to fake the data here? Correct me if I'm wrong but a quick and dirty comparison between number of outputs with OP_RETURN (ignoring small possibility of more than on per tx) and number of transactions (look at row count at the bottom) from Jan 2018 to Jan 2019 shows that 8% of the transactions contained OP_RETURN which is nowhere close to 20%! A short lived peak that is mostly from a completely useless altcoin spamming bitcoin blockchain is also not a good argument to revive this dead "controversy". In other words it needs another network and rules and side-chains is the place to do all of this! It is not controversial, it is useless In other words people are exploiting Taproot for spamming bitcoin blockchain with garbage like back in early years where they placed it simply in the output script at any arbitrary size. Suffice it to say that that spam forced the introduction of very limiting standard rules that prevented such spams and the introduction of OP_RETURN with an 80 byte limit to manage the spam size. In short all I see here is just an exploit of a protocol (Taproot scripts) that was not meant to be used this way so that they can inject arbitrary data that another self-defined and self-enforced protocol can detect and is not detected or enforced by the Bitcoin protocol. Like a side-chain jammed into bitcoin blockchain instead of having its own chain.
0 Reply Quote Share
HyperCipherFull Member
Posts: 220 · Reputation: 780
#7Mar 6, 2023, 11:47 PM
While I do understand what your debating in your post, and I have just researched about the "OP_RETURN Wars" after reading it in NotATether's post, but I have the same question as those other Bitcoiners who may or may not believe that the Bitcoin blockchain should or should not be a "utility chain". What was the use of the OP_RETURN Wars if Taproot would allow people to put arbritary data in the blockchain again freely? Or a new attack vector. It could be used in different nefarious ways, like bringing unnecessary, extra bloat to the blockchain, and perhaps also make people believe some Satoshis' "serial numbers" are worth more than a Satoshi, causing the currency to be not fungible.
4 Reply Quote Share
hash_bossLegendary
Posts: 1166 · Reputation: 5261
#8Mar 7, 2023, 12:13 AM
1. Omni layer and other kind of colored coins (nowadays it's called NFT) use OP_RETURN as part of their protocol. 2. Using OP_RETURN allow you to create only 1 transaction. 3. Many block explorer show decoded text from OP_RETURN output, which means higher accessibility. 3. Easier to use. You can even use Electrum to do that.
1 Reply Quote Share
coin777Senior Member
Posts: 143 · Reputation: 970
#9Mar 7, 2023, 03:07 AM
It can be solved by using OP_RETURN inside TapScript. Then, scripts are still committed to those addresses, but will never be pushed on-chain, so there will never be more bloat because of that. And then, revealing commitments can be done on a separated network. For that reason, it should work as a "commitment to a public key", then it could be attached to any address, not only by TapScript, and then it will never be visible outside of that separate network for commitments. Also, those commitments should be connected not to output scripts, but to input scripts, specifically to R-values of signatures, then it will be indistinguishable from a regular payment. So, all that is needed, is creating a system of commitments, where you can commit any data to a given signature, make a publicly visible transaction, and then, if you reveal your commitment, anyone can validate that it is attached to a given signature. And then, when it comes to storing those commitments, they could be stored only by users, for example in the same way as Lightning Network transactions are only stored by users. But if there is a need to reveal those commitments, then a separate chain can be created for that purpose, it will make it cheaper than pushing it on Bitcoin, and it will be also protected by Bitcoin Proof of Work at the same time, because for each transaction it is possible to attach an SPV proof if needed.
3 Reply Quote Share
cobra2013Senior Member
Posts: 308 · Reputation: 1912
#10Mar 7, 2023, 05:34 AM
I was reading about this Ordinal thing and, I don't know if it's contrary to what you said, but Peter Todd mentioned about this possibility having always been there since forever. His point is that this isn't about Taproot at all. Taproot didn't change anything. Neither is it even about SegWit as people could already publish "as much you want" data on Bitcoin in P2SH.[1][2] Apologies for the ignorance and if this looks like an intrusion of a non-technical pleb. I just need some clarification. [1] https://twitter.com/peterktodd/status/1619692068519149568 [2] https://twitter.com/peterktodd/status/1620490422681473024?cxt=HHwWgMDQ3YTdkf0sAAAA
1 Reply Quote Share
sage777Full Member
Posts: 102 · Reputation: 305
#11Mar 7, 2023, 08:54 AM
1. If you have P2SH, then standardness rules apply. You cannot just "OP_PUSH <anything> OP_DROP" in your script, because it will be non-standard, so only miners could do that. 2. If you want to stick with standard transactions, then you need to express your data as public keys, use trap addresses, or use OP_RETURN. In Segwit, you can also push more data as a witness, but then you need some custom P2WSH, which is standard, and for that reason people can misuse that. So yes, you can put any data in your transaction, but if you don't use witness, then it is more expensive, or even non-standard. Also, in practice you don't need to push everything into your transaction, you can just create a commitment, and send your message in some cheaper and more private way, as vjudeu said.
4 Reply Quote Share
hash_bossLegendary
Posts: 1166 · Reputation: 5261
#12Mar 7, 2023, 01:35 PM
Yesterday someone decide to create an NFT[1] which has size 3915537 bytes with 0 tx fee[2]. I can't believe pool Luxor (which mine that transaction) would rather mint an NFT rather than earning more Bitcoin from tx fee. They even made tweet about it[3], where the response isn't positive. [1] https://ordinals.com/inscription/0301e0480b374b32851a9462db29dc19fe830a7f7d7a88b81612b9d42099c0aei0 [2] https://mempool.space/tx/0301e0480b374b32851a9462db29dc19fe830a7f7d7a88b81612b9d42099c0ae [3] https://twitter.com/LuxorTechTeam/status/1620921129287430144
0 Reply Quote Share
ape_2018Senior Member
Posts: 412 · Reputation: 1728
#13Mar 7, 2023, 05:33 PM
Oof. Imagine we'd get rid of blocksize restrictions like some folks would have us had a couple years ago. Someone would have probably added the Lord of the Rings extended edition by now. If not via Taproot, then by using some other means. Either way, nice stunt, I guess? Just goes to show the importance of a healthy fee market though.
4 Reply Quote Share
hash_bossLegendary
Posts: 1166 · Reputation: 5261
#14Mar 7, 2023, 08:45 PM
Perhaps. We've seen people tried to to store weather data[1] or 2GB of multiple duplicate image on BSV network. Yeah, i learned existence of Luxor from this stunt. People doesn't seem to mind pay the transaction when the size to is only few hundred bytes[3] to few KB[4] though. [1] https://thenextweb.com/news/bitcoin-satoshi-vision-bsv-activity-transactions-weather-cryptocurrency-blockchain [2] https://twitter.com/bsvdata/status/1427866510035324936 [3] https://ordinals.com/inscription/6fb976ab49dcec017f1e201e84395983204ae1a7c2abf7ced0a85d692e442799i0 [4] https://ordinals.com/inscription/3c6e07036a94946250919a83a94b0f06fb2c6dc91925e493fe6cc5f46509d049i0
1 Reply Quote Share
Posts: 35 · Reputation: 189
#15Mar 8, 2023, 12:02 AM
This is terrible news for Bitcoin is bitcoin just following the pack of shitcoins now by allowing NFT's and data on-chain...  Bitcoin was supposed to be money nothing more nothing less this won't end well for Bitcoin in my view this will lead to the death of hardcore supported not being able to run nodes. Do we really want to be BSV 2.0  I highly doubt that. Fee market or not bitcoin chain is NOT for shitty JPEGs Really disappointed to see this happening to bitcoin we have clearly lost our way.
3 Reply Quote Share
LuckyCoinLegendary
Posts: 832 · Reputation: 4795
#16Mar 9, 2023, 12:10 PM
To be fair though, the developers had nothing to do with this. When they made Taproot, they clearly did not have NFTs in mind as one of the possible use cases for it. "A framework for smart contracts" is the closest they've ever gotten to reasoning for Taproot during the many years of debating it in the mailing list, and even that did not quite take off properly - since things like DLCs are still niche.
3 Reply Quote Share
just_gangMember
Posts: 43 · Reputation: 241
#17Mar 9, 2023, 04:54 PM
Or the importance of designing your blockchain so that transactions can include no more free data than what fits in a past lockheight (between 2 and 3 bytes).
4 Reply Quote Share
ape_2018Senior Member
Posts: 412 · Reputation: 1728
#18Mar 9, 2023, 11:07 PM
When it comes to blockchain bloat this is mostly a rehash of the OP_Return discussion we had in 2013/14. The projects back then did bring something new to the table by enabling things like Tether and early proto-NFTs. Their impact can't be understated, regardless of whether one likes these projects or not. Either way, my worry is limited. On-chain minting of oversized NFTs isn't really sustainable given a strict enough blocksize limit. Yes, it's going to be interesting to see whether there will be a "fix" for this, assuming it becomes necessary. If this becomes a problem it will not be easy to get the miners on board though, as it is in their interest to have the blocks as full as possible, regardless of whether they are filled with monetary transactions or other data.
3 Reply Quote Share
paul.stakeHero Member
Posts: 651 · Reputation: 3798
#19Mar 9, 2023, 11:40 PM
This is my take: I don't get the bad part. All I know is that blocks contain information. Whether that's financial or arbitrary is none of my business. Each byte comes at the same cost, regardless of how it's used. I noticed a lot of toxic response to this Ordinal theory, especially from some Twitter accounts like this one. Some Bitcoiners appear to impose their morality upon how the protocol should be used. Do I need to remind that we're talking about a freedom protocol here? What were the OP_RETURN wars about? Making large OP_RETURN scripts non-standard? How so? What's the problem?
0 Reply Quote Share
im_apeHero Member
Posts: 629 · Reputation: 3824
#20Mar 10, 2023, 02:31 AM
We have spam attack then we have spam attack with an incentive. This is the later. In a spam attack when someone is pushing garbage into the blockchain (as it is a "freedom protocol") the fee market kicks in and increases the cost for them. They won't have the incentive to continue pushing the garbage to the blockchain. When there is incentive (meaning a useless token with actual price that they can sell for real money to cover the cost of the spam attack) then the fee market is only harming the real regular uses trying to send bitcoin around since the attacker is earning money to spam the network. This is not the OP_RETURN discussions at all. This is that altcoin that used to be "mined" by pushing its hash into bitcoin chain. As long as it was being pumped, they spammed the hell out of bitcoin blockchain and as soon as it got dumped the spam died too. AFAIK it was from back when people were starting to use scriptpub to push arbitrary data with any size to the blockchain. That created chain block and chainstate bloat (the node had to load all that unspedable data to memory). Then they introduced OP_RETURN and its rules as a "prunable output" to be used when you want to push arbitrary data to the chain.
4 Reply Quote Share
?Reply
Sign in to reply to this topic

Related topics