Almost 12 years ago, this forum post asked if Bitcoin creator Satoshi Nakamoto opposed integrating data into the blockchain. Today, this is still a very controversial issue, as there are still three SHA-256 forks with divergent views on the subject. Furthermore, the Ordinary Innovation on BTC has fueled these debates because it relies entirely on the integration of arbitrary data into the blockchain.
Let’s look at the evidence for support and opposition to on-chain data.
First, Satoshi’s Bitcoin script, specifically the Opcode OP_PUSHDATA4, allowing up to 4.3 GB of data to be pushed onto the stack. Ordinal creator Casey Rodarmor even highlighted it to further justify the existence of the protocol.
You could have created 4 OP_RETURN registrations in the original Satoshi client.
– Casey (@rodarmor) May 29, 2023
Satoshi wrote that he “I wanted to design it (Bitcoin) to support every possible transaction type I could think of.” Despite this, at the end of 2010, Satoshi implemented IsStandard() verification, which only allowed a few transaction types, based on the premise that commonly used and adopted new transaction types could easily be whitelisted in the future. At this time, a relevant discussion around BitDNS was underway in parallel, where Satoshi stated that he supported “a third transaction type for arbitrary timestamp hash size data.”
Perhaps the strongest opposition expressed by Satoshi against on-chain data was in this same discussion on BitDNS which “Gathering all the proof-of-work quorum systems in the world into a single dataset is not scalable. » Additionally, he said that while BitDNS users may want “big data features” that Bitcoin users “could become increasingly tyrannical about limiting channel size, making it easy for many users and small devices.” Naturally, that last statement is gas for the small block, decentralized narrative who caused the first division in August 2017. Interestingly, Satoshi thought the BitDNS network should be a separate blockchain (i.e. sidechain) which was still derived and linked to the base Bitcoin chain in terms of proof of work.
However, the quote above, isolated from the context of BitDNS and proof of work, contradicts one of Satoshi’s most famous quotes about the fate of the network having only “a few nodes” that are “large gold farms”. servers”.
In another related thread the same day, he states that Bitcoin’s design “indicates that a light client does not need the full blockchain.” The “client can send and receive transactions, it just cannot generate blocks.”
Satoshi clearly wanted Bitcoin to be used for all types of transactions, but didn’t necessarily think large data payloads should be included. He programmed a script to allow such large data, but seemed to believe that hashing the data was more conservative, as he agreed with Hal Finney.
Oddly enough, the solution above is similar to the OP_RETURN method of embedding on-chain data into non-consumable 0-Satoshi outputs, so that the UTXO set is not overloaded with data. Note that the above solution cannot be pruned, while 0-satoshi OP_RETURN outputs can be.
His quote about BitDNS should be seen in context, not as a blanket, overt criticism of on-chain data, as he clearly sees client users to implement. SPVor thin clients, and only manage their own transactions, without being burdened by independent protocols such as BitDNS.
Satoshi seemed to prefer embedded data hashes as a more cost-effective solution than embedding entire files on the blockchain. Even though his protocol technically supported the latter, he likely viewed the former as a more robust and technically efficient means.
What do readers think? Would Satoshi have favored one method over another, given how Bitcoin has been adopted today?
Watch: How Bitcoin Will Change the Future of Data and Empower Everyone
New to blockchain? Discover CoinGeek Blockchain for beginners section, the ultimate resource guide to learning more about blockchain technology.