8 votes
Accepted

Raw data vs information encoded in OP_RETURNs

The current Bitcoin P2P protocol has no concept of compression, though there have been some proposals to incorporate it. The transaction data is sent as-is. Some earlier discussion: https://lists....
Pieter Wuille's user avatar
6 votes
Accepted

Understanding how ordinals work with the Bitcoin blockchain. What is exactly stored on the blockchain?

Ordinals Inscriptions don't use OP_RETURN, they are embedded within the script of a taproot input. It's not just a link to a file on some website, the entire file is actually published to the ...
Vojtěch Strnad's user avatar
5 votes
Accepted

Can any Script opcode be used in the witness program, or only specific ones?

I was wondering, can one use an OP_RETURN in the witness script? Yes, you can, though I believe it is pointless. Executing an OP_RETURN opcode causes the script to return false immediately, marking ...
Pieter Wuille's user avatar
5 votes
Accepted

How can I recognize an OP_RETURN transaction looking only at the hex?

You can use bitcoin-cli to decode the transaction and get a sense of what is going on: bitcoin-cli decoderawtransaction 0100000000010173...275d9a2100000000 That returns: { "txid": "...
sr_gi's user avatar
  • 3,192
5 votes
Accepted

Was the lifting of the Taproot transaction size limit "accidental"? Why would ordinals want to fill a block with OP_RETURNs?

No it was not accidental, see the BIP342 section on Resource Limits Script size limit: The maximum script size of 10000 bytes does not apply. Their size is only implicitly bounded by the block weight ...
pinhead's user avatar
  • 5,002
3 votes

Why weren’t Inscriptions possible before taproot by just using OP_RETURN to store the data?

It may have been possible but it would be more expensive to do so. From Michael Folkson Was the lifting of the Taproot transaction size limit "accidental"? Why would ordinals want to fill a ...
Poseidon's user avatar
  • 633
3 votes
Accepted

Can someone break down what is returned by pybtc?

could anyone break down the meaning behind these other fields? Many of them are not explicitly present in the data but are inventions of pybtc that present you with an interpretation of some aspect ...
RedGrittyBrick's user avatar
3 votes

Was the lifting of the Taproot transaction size limit "accidental"? Why would ordinals want to fill a block with OP_RETURNs?

The previous transaction size limit (pre Taproot) was deliberately relaxed though I can't (yet) find links to historical discussion on whether to relax it or not. This was addressed on Twitter by ...
Michael Folkson's user avatar
2 votes

Understanding how ordinals work with the Bitcoin blockchain. What is exactly stored on the blockchain?

The MIME data type of that inscription is text/html;charset=utf-8. So maybe it is something like Doom in javascript Ordinals inscriptions do embed the data in transaction data that occupies space in ...
RedGrittyBrick's user avatar
2 votes

What are the mean, median, range, limits and trends in the size of coinbase transactions?

A. Is there a limit in the overall size of the coinbase tx? Yes, but its only limited by the size of the block. A miner could choose to have the coinbase transaction fill the entire block! B. Is there ...
Lee's user avatar
  • 458
2 votes

Can someone break down what is returned by pybtc?

Transactions may have many inputs and many outputs. I assume you extracted the output list from some transactions. The “form1” dictionary has two entries with the keys 0 and 1. Entry 0 is a P2PKH ...
Murch's user avatar
  • 73k
2 votes

How can I store a file hash in a Schnorr signature? Or something other than an OP_RETURN?

It is usualy discouraged to embed data directly on the blockchain because it is not supposed to be used like that and by doing so you can congest the network and make the blockchain grow in size for ...
Saxtheowl's user avatar
  • 2,770
1 vote

Is the Bitcoin whitepaper embedded in the Bitcoin blockchain?

This command line extracts the bitcoin.pdf from the blockchain: bitcoin-cli getblock 00000000000000ecbbff6bafb7efa2f7df05b227d5c73dca8f2635af32a2e949 0 | tail -c+92167 | for ((o=0;o<946;++o)) ; do ...
bordalix's user avatar
  • 477
1 vote
Accepted

How do I use python-bitcoin-utils to add an OP_RETURN message into a bitcoin transaction?

I fixed the script. The below code was used to make this transaction https://blockstream.info/testnet/tx/a86f0187be2eca4590a456e2423a2f5286b269c3b777846092ceb2fc44270aad. from bitcoinutils.utils ...
ChristianOConnor's user avatar
1 vote
Accepted

Can BIP351 notification transactions be discovered via compact client-side block filters?

Compact block filters do not index nulldata outputs. Therefore, a different mechanism would need to be used to retrieve notification outputs. Since BIP351 notification outputs have a distinct label, ...
Murch's user avatar
  • 73k

Only top scored, non community-wiki answers of a minimum length are eligible