Discover more from Wu Blockchain
Innovation or attack? Sorting out the "NFT Big Block" on the Bitcoin Network
Written By：Liu Changyong
On February 1, 2023, Bitcoin Network mined the largest block in the history of nearly 4M, containing a nearly 4M largest transaction in the history, and the transaction fee is 0.
The big transaction was sent out by indie developer @udiWertheimer’s “Taproot Wizard”, an NFT project on the Bitcoin network. The main data is an NFT, not a hash, but an entire jpg image.
The developer and project have not been named, but the incident has caused a huge shock to the Bitcoin ecosystem, with Blockstream CEO Adam Back (@adam3us), Bitcoin Core developer @LukeDashjr and others calling it an attack on Bitcoin.
However, @udiWertheimer stresses that this is an innovation based on “Ordinals” proposed by former Bitcoin core developer Casey Rodarmor.
@udiWertheimer and Casey Rodarmor claim that the theory can tag every basic unit of bitcoin: satoshi, and can be transferred. NFT is just one of many ways to enable more functionality on the Bitcoin network without the need for a hard and soft fork upgrade.
Rodarmor claims that Ordinals came up because Bitcoin lacks a stable public identity. Bitcoin addresses tend to be single-use, wallet accounts are local, and ownership of public and private keys is not transferable. So, by marking each satoshi in each output, Ordinals creates a transferable account or identity for Bitcoin.
For technical details see：https://github.com/casey/ord/blob/master/bip.mediawiki
Specifically, in the NFT project “Taproot Wizard”, the publisher is supposed to use a specific satoshi to refer to jpg images to implement the identification and circulation of the NFT. I haven’t fully understood how this is done.
It’s an interesting experiment in innovation, but bitcoin core doesn’t like it for a couple of reasons:
1. Blockchain size inflation: This will result in the rapid expansion of bitcoin blockchain size, greatly increased requirements for devices running full-node, resulting in the reduction of full-node of the whole network and the decline of anti-censorship. This was the main reason for rejecting Vitalik’s smart contract in OP_RETURN in 2014, and rejecting hard fork expansion in 2017.
2. Ecological impact: Big transactions and Big blocks exceeding expectations impact wallet, mining pool, browser and other ecological facilities, resulting in some facilities abnormal, such as the transaction of btc.com browser failed to parse properly.
3. Reduce security: In order to reduce the time of synchronization and verification of big transactions and blocks, the mining pool or miners may choose not to download and release blocks without verifying the transactions and blocks, which brings security risks.
In the expansion debate in 2017, Bitcoin core refused to expand by means of hard fork to increase the block limit, and chose to use segwit to bring the verification information outside the block on the premise of avoiding hard fork, so as to bypass the 1M block limit and achieve partial expansion. However, there was no restriction on the length of the verification message. Hard choices now have to be made:
1. Do nothing and allow applications to enter the Bitcoin blockchain in this way, making the debate about limiting OP_RETURN and expanding capacity meaningless;
2. Hard fork upgrade, write the size limit of the data witnessed in isolation into the consensus. This is also difficult. The impact of hard fork is great and all nodes need to be updated, which is also the main reason for rejecting the New York Consensus upgrade to 2M in 2017.
3. Reach a partial consensus on major pools and reject big blocks and big tx. This is very bad. It opens the door to manual block review, loses the sense of decentralization, and is operationally difficult for all pools to comply with.
Overall, option 1 is more likely because option 3 is difficult to achieve, and the Bitcoin ecosystem is already very large, making it difficult to smoothly hard fork.
Block height: 774628
Block size: 3,955,272 bytes
Transaction size: 3,938,383 bytes
Transaction type: segwit
Transaction fee: 0
Block miner: “Luxor Mining”
Sending address of transaction:
Note: I have not yet sorted out all the technical details, such as how Ordinals implemented NFT, the structure of the isolated witness data and related restrictions, etc. Corrections or additions are welcome.