From the beginning, Ethereum (ETH) has been defined as much by its differences as by its similarities to Bitcoin. In line with Vitalik Buterin’s vision, Ethereum had upgradability in mind from the outset. In contrast, convincing Bitcoin node operators to support even small changes to the way the platform functions has proven almost impossible.
Although the process hasn’t always run smoothly, over the years, Ethereum developers, node operators and token holders have generally achieved the consensus needed to implement upgrades. Currently expected to occur in mid-2024, the next major Ethereum upgrade, Dencun, promises to significantly scale the platform’s transaction processing capacity.
Ethereum’s Dencun upgrade aims to enhance scalability through two key innovations: Proto-Danksharding and stateless clients.
Proto-Danksharding introduces “data blobs”. These store compressed transaction data off-chain, freeing up valuable block space so Ethereum can support a higher volume of transactions. Blob transaction data is also self-deleting, reducing the blockchain’s long-term storage requirements.
The Dencun upgrade will also lay the groundwork for the introduction of full Danksharding in later upgrades. This promises to further boost throughput by distributing data processing across validators.
Like Proto-Danksharding, the idea behind stateless clients is to streamline the way Ethereum handles data.
Under the current model, full nodes store Ethereum’s entire state history, from Genesis right up to the present day. Post-Dencun, however, stateless clients won’t need to process the full state history and will be able to verify transactions using cryptographic proofs.
Unlike Ethereum, which has a history of sometimes-radical forks and upgrades, Bitcoin has been remarkably resistant to change, even for proposed upgrades that would scale its capacity.
While Bitcoin Core is hardly monolithic, the open-source software remains true to the basic design principles laid out in Satoshi Nakamoto’s original white paper and implemented by the first generation of Bitcoin (BTC) clients.
Over the years, Core developers have adhered to a singleminded and ultimately rigid vision for Bitcoin, an approach that appears to have the support of the majority of node operators, who have mostly rejected attempts to unseat Bitcoin Core as the blockchain’s preeminent software client.
Observers can see Bitcoin Core’s general resistance to significant change in the debate over Bitcoin’s block size, which the software has capped at 1 MB since 2010. In contrast with Ethereum’s determined march toward ever greater scalability, the block size limit imposed by Bitcoin Core constrains Bitcoin’s transaction processing capacity to a maximum of around five transactions per second.
Before 2017, a number of alternative Bitcoin implementations broke with Bitcoin Core to increase the maximum block size. The divergence, which aimed to increase capcity, ultimately led to a hard fork. Software clients that supported higher block sizes branched off to form Bitcoin Cash, an alternative blockchain that is more focused on everyday payments than the core network from which it split.
As for Bitcoin Core, developers ultimately settled on a compromise. Rather than increasing the maximum block size, the software has introduced a concept known as Segregated Witness (SegWit). Under the previous model, each block consisted of roughly 35% transaction data and 65% signature data. Post-SegWit, however, signature data is stored off-chain. In turn, this has effectively tripled the amount of transaction data that can be inscribed on each block.