Blockchain, Cryptocurrency, and Web3 - Part 2
This is the second part of a 3-part read that aims to uncover some of the mystery and confusion about technologies that are quickly becoming necessary elements of our daily lives. The first part is available here. The final part is here.
Ethereum’s biggest improvement over bitcoin was that it supports any rule set that builders can use (and custom assets) to provide sophisticated activities ON the blockchain (where bitcoin supports only one activity, transfers of bitcoin between different user accounts), so it is possible for builders to build any kind of project (theoretically) they want within the city wall and own and sell assets to carry out activities, and pursue cultural activities of any level of sophistication.
Ethereum achieved this by providing a Turing Complete scripting language, solidity, and an environment (Ethereum virtual machine) where they can be run within the blockchain. The smart contracts made possible by this power web3. Most of the web3 areas we know today (decentralised finance, non-fungible tokens and decentralised autonomous organisations) started on Ethereum.
Ethereum started out with proof-of-work for the consensus layer, the same as bitcoin, with the crypto currency called ETH. However, they have worked for years to switch to a different consensus layer, called ‘proof-of-stake’, which will finally go live in September this year, after many years of waiting. Ethereum claims the new security layer will be more secure, with lower issuance of ETH, the token (lower cost of security than proof-of-work). Importantly, it will also reduce power consumption by 99.9% compared to proof-of-work, a huge reduction.
Over time, however, as builders and users on blockchains grew, the city walls became too small for all that wanted to use Ethereum, therefore it became extremely small for many activities. Costs on Ethereum have gone up to $30-$60 per transaction on average (and at peak $300-$400!). This discouraged many builders and users.
The Ethereum blockchain has refused to extend the city walls (block space) due to legitimate concerns that it will reduce security of the Ethereum blockchain (and decentralisation). Hence, Ethereum continues to become more extensive (executes only 15 transactions per second!).
However, the blockchain has come up with new technological solutions to provide more space for businesses within city walls (think vertical cities!), without compromising on blockchain security. We will visit this topic later. In the meantime, other blockchains have been created with the promise that they will solve the problem of exorbitant costs and small space (think block space), something that is a big problem on Ethereum today.
Solana is a more recent creation that offeredthe promise of a huge area within its city walls. That any activity can be carried out cheaply, because the space availability is huge in comparison, is a huge improvement over Ethereum.
Solana supports Rust Programming Language and a Turing Complete execution environment. Solana supports up to 50,000 transactions per second (TPS), compared to 15 TPS by Ethereum.
Solana uses proof-of-stake as the consensus algorithm (with a flavour they call ‘proof-of-history’) and high-end staking machines. They knowingly make the trade-off of increasing the transactions per second by compromising decentralisation (which affects ease of finding wrongdoings in ensuring security, i.e., if the state gets corrupted, fewer specialised observers can catch it).
Polygon also emerged recently (2021), successfully taking advantage of exorbitant costs for users and builders on Ethereum. They created a copy of Ethereum (city) and offered much, much lower costs, which they achieved by compromised security of the blockchain.
Basically, Polygon ‘forked', or duplicated, Ethereum (Bitcoin, Ethereum are fully open source) and replaced mining with a small proof-of-stake layer, with funds secured by a multi-sig (basically a small number of humans control keys to all the funds on Polygon).
The fact that they provided the same builder experience as Ethereum (same Ethereum virtual machine, so builders can redeploy the same code from Ethereum to Polygon and get up and running instantly) meant that builders and users of web3 flocked to Polygon as a result.
Polygon has been investing in the latest cutting-edge technologies (exploring the option of creating a vertical sub-city on Ethereum called Roll Up, more on that later) to correct the shortcoming in security that they knowingly started with.
Tezos is a proof-of-stake blockchain that offers significantly lower costs.
Tezos is a small blockchain (city state), but notable for the flavour of web3 on the blockchain. There are a lot of brilliant artists creating art on Tezos, and it has kind of become the art capital among blockchains (apart from Ethereum, where there is a lot of art too).
Dogecoin started as a fork of bitcoin (a fork is like a copy paste city state). Over time they have focussed on their development. Dogecoin has nothing to make it stand apart technically. However there are two aspects that make it stand out. The cryptocurrency is called $Dogecoin.
The cryptocurrency issuance rules (how many Dogecoin will get created at any time) are completely different from most blockchains (the number of Dogecoin in existence will keep increasing continuously).
Secondly, Dogecoin has a very large recall among both blockchain and non-blockchain people. Dogecoin is highly ‘memeable’, with the picture of a likeable dog. It matters to blockchains that people like to be associated with the blockchain, like to use it, and that it is fun.
There is a long list of blockchains old and new that currently exist, which can be accessed here. Newer blockchains try to improve on different aspects of already existing blockchains.
Shortcomings of blockchains
In just the way earlier city states were not complete, and had many shortcomings, at this early stage, blockchains too have many obvious faults. A sample below:
1. Privacy - almost all blockchains today have zero privacy. The ledgers are public (except for a couple of blockchains like zcash, monero). This restricts the number of activities that can be done on blockchains, and obviously if privacy is critical for an application it cannot go on blockchains.
2. No proof of personhood - blockchains recognise user addresses but not human identity. A person can create any number of blockchain addresses, but the lack of person identification on blockchain leads to something called sybil attacks, i.e., the same person mimicking many. Again, this limits the kinds of mechanism design that can be made in blockchain applications.
3. Scale (the amount of processing or transactions they support) is minuscule compared to the scale of the internet.
4. Hyper-financialisation - every asset on the blockchain is available for sale in a 24/7 market. However, in the real world, many important assets are NOT for sale, such as identity, reputation, role in a community, citizenship, voting rights, etc.
5. User experience - it is very difficult to use blockchain applications today!
It is clear at this point that many of the shortcomings will be addressed in due course, but some open questions remain.
Emerging ideas in blockchain design
An influential approach to developing a better city state that has gained widespread agreement is that it is better to specialise different key activities that a blockchain does, namely security, state (know what is current reality of blockchain), and execution (activity at current point in time), and have different entities take care of each of them.
This approach is called a ‘modular blockchain’.
Essentially, there are three key areas of focus for a blockchain:
1. Consensus: provides security to the blockchain via a consensus protocol and a cryptocurrency.
2. Data availability: makes the state available for any activity (for any application/smart contract) on the blockchain.
3. Execution: executes a set of instructions at each block, basically a set of computations from the smart contract calls in that block.
A modular blockchain is where the blockchain specs out each of the key areas, handles one of the areas (or two) as a strong suit, and lets any other interested parties build out the part they are good at.
The three layers of the modular blockchain stack are:
1. **Consensus Layer** (security of the blockchain)
2. **Aata Availability Layer** (state of the blockchain)
3. **Execution Layer** (instructions that change the state)
Blockchains that do all there are called ‘monolithic blockchains' (Bitcoin, Solana, etc.).
The three most prominent examples that have focussed on modular development are Ethereum (which now lets anybody provide an execution layer on top of Ethereum), Tezos and Celestia, which let anyone build a data availability layer, and also an execution layer while handling the consensus layer (double check on this last part).
Users and builders are flocking to blockchains with exponential speed. Popular blockchains are getting either extremely expensive to use or choke from the load (based on design). It is very clear that blockchains must grow much bigger (100x-10,000x) quickly. This problem area (’’How do you grow a blockchain capacity significantly, so that it can support much larger transactions per second?’’) is called ‘scaling’.
This is similar to providing a lot of space within the walls of a city state. When blockchain/ web3 users multiply in number, one needs to find space for all the new users and the activities they want to carry out. If not, the city state will become choked by all the activity, citizens and builders! A blockchain has to make some tradeoffs to create space. They either need to expand the city walls very fast (with the same security algorithm), which weakens security, or else make some other compromise to accommodate citizens and projects.
An interesting approach, the most well known and sound one, is the one taken by Ethereum (and a few others like Tezos and Celestia). Ethereum basically said it will not compromise on security. Instead, it will deploy this newly available technology to erect vertical sub-cities, basically a layer on top of Ethereum called ‘Layer Two’, where huge amount of space can be provided, but are still secured at Layer One by the same city walls (somewhat like flyovers can provide much more space by vertical stacking). Layer twos use a technology called ‘roll ups'. So, roll ups create vertically layered sub-cities within the city walls!
Roll ups essentially use the Ethereum state, they read and write to the Ethereum data layer, but they cannot, however, carry out execution (instruction sets to change the state of blockchain) at their level. They are able to carry out computations across smart contracts and write to Ethereum in aggregate. They post data and proof (that computations are done correctly) to Ethereum. Because of the proofs that they post to Ethereum, they cannot take user funds - which are still fully guaranteed by Ethereum. They are secured by Ethereum’s consensus layer as before.
So, a roll up is a different team (not Ethereum) that builds on top of Ethereum. There are two technologies available for roll ups, and every roll up uses one of the two.
1. Optimistic roll up - uses optimistic proofs
2. zk- roll up - uses zero knowledge proofs
Optimistic roll ups are relatively lower complexity in tech and will reach their full potential for scaling sooner. Zero knowledge, however, is harder tech (only came into production in ‘18 or ‘19) and will reach full potential much later. Zero knowledge tech has very high potential for all blockchains, and it is predicted that almost all parts of blockchains will eventually use zero knowledge. Zero knowledge tech has the added advantage of bringing privacy to blockchains.
Some optimistic roll ups on Ethereum:
Some zero knowledge roll ups on Ethereum:
Other blockchains like Tezos and Celestia are heavily focussed on roll up-centric blockchain development too. Roll ups are expected to bring 10-1000x the scale on blockchains (for example if Etheruem runs 15 TPS, a 1000x increase would be 15,000 TPS)
Considering there are multiple Layer 2 in a city state now, and there are many different city states, a business may like to set up shop in different city states or Layer 2. So, a business may want to pass communication across different city states and also move assets across city states. Users may want to do the same. This necessitates bridges - safe pathways through which assets and communication can pass across city states, but that are also safe cannot be attacked by bandits.
Bridges (https://ethereum.org/en/developers/docs/bridges/?utm_source=ethereum) are required, since a blockchain exists in a siloed environment - a blockchain does not understand or recognise anything outside itself. However, some web3 businesses/projects want to be present on multiple blockchains, and they want to move assets and communication from one blockchain to another. That way, an asset created on one blockchain (say ETH) can be moved to a different blockchain (first wrapped to WETH, then moved to say, Solana) and used there.
A bridge is also required to move assets back and forth between a rollup and the Layer 1 (say between Arbitrum and Ethereum).
The quality of a bridge is evaluated based on certain parameters:
1. Security - who secures the bridges, those native to the respective blockchains or a separate set of validators (stakers)?
2. Connectivity - how many blockchains and Layer 2s do they connect?
3. Generalisable - can they support arbitrary assets and message passing?
4. Cost-effective - is it cheap to use?
Some of the more prominent bridges today are:
1. Connext Network
2. Hop Protocol
3. Celer Network
4. Synapse Protocol
5. Bungee Exchange
Today in the digital world of blockchains, we are at a point in time where there are many city states. One of the city states has two levels (layer two) of inhabitation. The city states are connected by bridges which are used by users and builders to pass assets and messages back and forth between city states. The city states and bridges are occasionally attacked and drained of wealth, but they repair and improve and get better at security. Some others have fundamental flaws and are doomed to die. There are innovations brewing within existing city states and by builders of new city states that experiment with newer concepts in security, infrastructure, and business activities.
Within city walls, various different activities are started and sustained, and these activities constitute web3. We will discover more about this in the final part of this article.