14

In 2017 a question about Segwit: Arbitrary data storage in witness? asked whether people wanting to store more data in the blockchain than OP_RETURN allows could instead store data in the witness components.

The answer there stated that such a transaction would not be relayed and so might have to be sent to a miner directly (or via nodes that don't enforce the relevant rules)

In several recent transactions, large amounts of data seem to have been stored in the blockchain this way. For example transaction a6628f32a5b41b359cfe4ab038ff7c4279118ff601b9eca85eca8a64763db40c has one output and one input with three witness components, the second component is of size 73433 bytes.

Am I understanding this correctly? will this transaction have failed the normal rules in Bitcoin Core for relaying transactions and will it affect the size of the UTXO set?

3

2 Answers 2

15

Am I understanding this correctly?

Yes.

will this transaction have failed the normal rules in Bitcoin Core for relaying transactions

It's a P2TR (taproot) spend. Those spends have different policy rules than the witness v0 rules talked about in the answer you link to. I'm not sure whether this spend is currently considered standard by Bitcoin Core, but the rules for P2TR spends are much more relaxed.

will it affect the size of the UTXO set?

No, by definition, the UTXO set only contains unspent outputs. This is input data.

4

Pieter Wuille has answered the technical question of how these transactions are affected by the rules.

Vojtěch Strnad identified the origin as Ordinals Inscriptions - a kind of NFT.


When I asked "will it affect the size of the UTXO set?", I was also interested in the overall effect on Bitcoin ...

In January, I wrote a program to look for witness components larger than 1000 bytes in recent blocks and found 55 of them. The latest "Inscription" on the Ordinals.com Inscriptions page was "Number 81". I was short because some inscriptions are just a short URL or a tiny image and are smaller than 1000 bytes.

Tx 26482871F33F1051F450F2DA9AF275794C0B5F1C61EBF35E4467FB42C2813403 W1 C2  20437 bytes
Tx C17DD02A7F216F4B438AB1A303F518ABFC4D4D01DCFF8F023CF87C4403CB54CA W1 C2   9480 bytes
Tx 22D7FA836A87E0532E9AFF8D29A1B0AA872CE45545E55D9D9C73CB4309FC8BC3 W1 C2   5553 bytes
Tx A4B5580DB345DB7534B74371F40562BA0D6F79FD272E05C62C05DB1B62996D23 W1 C2  34393 bytes
Tx D95C0FB86BC0F0DCE6A732C5AB77D47E33ED24099BDB01133F768CEF75A47724 W1 C2  28650 bytes
Tx 7460A1068F98E1FAC798304ADDCA4B5EED1CC9968CD5526E07C2CEB3EC7CF7B3 W1 C2  49970 bytes
Tx 7641EF7165BC59C40B269D4B2F6741CA3F34334B8C758FBBA155BD0E29B4011B W1 C2 104169 bytes
Tx 16F3C32468E3E52AC20DC8FC633C686F0E31C5F34407413D12AD764BA5AD5F3B W1 C2  71832 bytes
Tx 517EE232143D289D70867F88CBE2B9B161EF56554BC4FA7796E672D41E2E2BF3 W1 C2  37718 bytes
Tx F04DD50561899F650103703526A62BC2510CD1B2F185F02E76936314AF42A145 W1 C2  60034 bytes
Tx A6628F32A5B41B359CFE4AB038FF7C4279118FF601B9ECA85ECA8A64763DB40C W1 C2  73433 bytes
Tx 31833061114C2EE53D63DBA53EF0BC2AF741C87463CF573A4E211196883A5F2D W1 C2 245308 bytes
Tx 9163AF650DCDEEEB9A7E1F47F693B51921DCE3BDF2475E69360EC83D9956F5D7 W1 C2   2692 bytes
Tx CA009BF4CAE18D22444C7A31FB05AB372816CDBFBB3FD741812DCA674ADF0CB5 W1 C2   6821 bytes
Tx FD5B77F56C2B785F7266143E1DCD8B83B82050CEB7D2D7344AA3999F3CC17D4D W1 C2  76022 bytes
Tx 0C107942E4C945B6B44E193C950B0FAE65D854A88B450758A3FCA54017C879BE W1 C2  55261 bytes
Tx 9905C43CABE642666E43BD1C059D9093B96204330A2EEB33AC22B7142B1D57ED W1 C2  24745 bytes
Tx ADC408A32E887777007C145DA9CFAFDA88B88917E15D06E4B0097C31CD38AB11 W1 C2   2628 bytes
Tx 562CD1136399F7A6568F41081F85C88145B87E7E70A3A53748A46902E6B84D60 W1 C2   2682 bytes
Tx B375BCCE16C91F3DEF7871933F1696DD3681199E0F23E90D980A87DBF57E6699 W1 C2   2646 bytes
Tx 1FDBD2BBABFAA9B64BBD529D5A2D5FB1B39FFCBDD6C39601BEAAC5E3260C9FCE W1 C2   2728 bytes
Tx 7B68ACED40476A4CAEDB2A5D014974C522331291B6A78BED06BBC891CBE14C9B W1 C2  96909 bytes
Tx 9D0AD29EF2923DF9D598A1A890EAD36EBBE44F1F1D77D93EFA21325806311F28 W1 C2 360490 bytes
Tx 03A6381C7E224D4FE2425B5F5DA3782E8BD5701E783BD0AF4EE1E2700DBBB347 W1 C2 269502 bytes
Tx B8BF03E34F8FB497941A878793F7138AAB502F4A34604923CC3147EF7F6BA471 W1 C2   2702 bytes
Tx 372284D650D297F53309D790CF173D1FC5C2EE4D90250CEE76C6A574EC69882F W1 C2   5345 bytes
Tx 239882AB23041B1F017E19174F24E6397EF10A295484F395D550CAAA61239B8D W1 C2   1907 bytes
Tx 7ECCD70601A5A65421F560743F2661116BC88B4D73A72F4199850B498CE8E996 W1 C2 245062 bytes
Tx 5166A9EF575565ED67D63044FC442A8EF07B4AD20631442D477F784B4CB1BD29 W1 C2   2677 bytes
Tx 6B76932BB8F2478FE58D27B9F80C1C6D02AC0083BA34F9F46A2A171E9A385851 W1 C2 201956 bytes
Tx 40B3279C70D31B1C53D430A245EC012DABF173A47384F33E54DB34E8E7732570 W1 C2   2715 bytes
Tx 913D65CA95AFD862A71FEA8D48CF95434EFD3581B8D08D3F0402DB526D975EFA W1 C2 101461 bytes
Tx 8D9933F3C5BA17025B69FBCBF136EE237320125448E02C2EB1045286879955D5 W1 C2  45629 bytes
Tx E9B1379E9A30E4E2F08FA0C38394F49AA0B92449423F966C6108BE93533C17B6 W1 C2   6979 bytes
Tx 5E1BA5C92673452E3422A553BF641CD634B46FC28FA27ECABFFC917039DE1869 W1 C2   2741 bytes
Tx 1AA4F606890680A9B381BA4E9130894288DD21336B82CBFD75DC19DB38ECE937 W1 C2   2654 bytes
Tx CFAB194B924F7785C6E453728E1C264B89B74843633278CDA3AD3F57576C1E93 W1 C2  51196 bytes
Tx 69908239157F1E069FA3A0469BAD21B49187823D18E729D1EBE29B9252F5BD98 W1 C2  14753 bytes
Tx E3E29332B269D0AE3FA28AC80427065D31B75F2C92BAA729A3F8DE363A0D66F6 W1 C2  28597 bytes
Tx 54E47C2F0E75142D1D7A0FE585E81ACEB8759B07C6CFE9FA1A0BD6C317EAE8B3 W1 C2  37099 bytes
Tx 8A3E28442DEC1E4C56133F75000778121BFE46ECD9FC1C447F8A8315D01017C9 W1 C2   2699 bytes
Tx 36E0C45C1476F059E0A990B5358DA3C3ED9E15F6BBD12AFF5C955A009B65AA5F W1 C2   1077 bytes
Tx 94C7DF559AF3CE875ED49375D8F199B30735D580AD102B920F70B74BAAD17801 W1 C2   4137 bytes
Tx AB2F4E9DCE0583264078428A91AA9037DA0E75F90DC77FE3CBA7CF5320AD003D W1 C2  29518 bytes
Tx 87295FF96556BC668C44068875AED32FBBBCEBB8D5AF3869FE37B264BA319A00 W1 C2   5023 bytes
Tx 85B10531435304CBE47D268106B58B57A4416C76573D4B50FA544432597AD670 W1 C2 185416 bytes
Tx 5A16C5BF8BBCDF978AF8BF511D9AC71CC6E4457F694F4F7ED499F4C8E18EDF79 W1 C2  60199 bytes
Tx 0BD542EC42B205332C4C00739A83C7342BF4F435CAFD569EB543B00E62A852FD W1 C2 126091 bytes
Tx BD0731B218B77A6F2EDA6FCD64FC00305686A38DD474B4D5341BF57945899559 W1 C2  96318 bytes
Tx 2999656AA17255CB9944AAD1B0853937C0BDBC595120E5A5FA97F622ED302AEC W1 C2 128809 bytes
Tx FDCF0B5725301493F3BBB0564D9A1ECAC9AB5BAA0D3C6523CA77186184F3C3FA W1 C2 160042 bytes
Tx 9FD770D420DE2C82C2CCCD30F41A442C3D7CCB75222631DC866E3EA0F43DFB28 W1 C2 124389 bytes
Tx 43008081DC3723C73759F71DD09094BF962F09B019CBB91623EA095311DD3D5D W1 C2  12892 bytes
Tx CD55A39D881663508A9340BAFB4E860F016F16CB07BF6D34CF40BF5A62ADF57B W1 C2  21850 bytes
Tx B1C5BAA2593B256068635BBC475E0CC439D66C2DCF12E9DE6F3AAEAF96FF818B W1 C2  51497 bytes
Found  55  oversized witness components in  7607  blocks.

In February I graphed the effect on daily amounts of Blockchain data.

Data volume in blockchain


I reviewed this after a few months, in late April:

enter image description here enter image description here

So in February, Ordinal Inscriptions had a large effect on blockchain data size. This effect seems to be diminishing. Initially there was little impact on numbers of transactions, but this has grown in late April. I thjink there has been a transition in Ordinals Inscriptions from "art" NFTs, some of which were large, to BRC-20 tokens - which are mostly small - around 50 bytes of JSON.

There were less than 100 inscriptions when I asked the question. There are now well over 2,500,000 inscriptions.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.