Skip to main content

4.7 Data Storage

In the context of BTC, each PUSH DATA operation is subject to a length constraint, with a MAX_SCRIPT_ELEMENT_SIZE of 520 or a MAX_STANDARD_STACK_ITEM_SIZE of 80 for nodes with stringent script marking requirements. For blockchains that support large blocks, the limitation on PUSH DATA length is lifted, permitting data sizes up to 4M bytes.

The protocol establishes five designated data sections data0, data1, data2, data3, data4, where, on BTC, a total of either 400 bytes or 2600 bytes can be utilized.

The N20 Payload, once compressed using msgpack, undergoes fragmentation.

BTC nodes will reject any transactions that surpass the 400 or 2600 byte thresholds. Moreover, certain data service providers may only accommodate transactions of a smaller size.