EnglishEnglish中文中文اَلْعَرَبِيَّةُاَلْعَرَبِيَّةُDeutschDeutschEspañolEspañolΕλληνικάΕλληνικάFrançaisFrançaisעִבְרִיתעִבְרִיתहिन्दीहिन्दीHrvatskiHrvatskiItalianoItaliano日本語日本語한국어한국어MalayMalayNederlandsNederlandsPortuguêsPortuguêsрусскийрусскийภาษาไทยภาษาไทยTürkTürkTiếng ViệtTiếng Việt粵語粵語
Learn
FAQs
Frequently asked questions by various stakeholders
Why Classic?
Start here to get the lowdown on Ethereum Classic's reason for being and unique value proposition
Knowledge
Further reading on the foundations that underpin ETC
Videos
A collection of videos and podcasts to keep you informed on ETC concepts and happenings
Support ETC by helping to translate this website!
Ethereum Classic Blog

Ethereum Classic Ossification and Social Scalability

Donald McIntyre
Education, Philosophy

You can listen to or watch this video here:


The whole purpose of blockchains is decentralization.

Decentralization means to reduce the dependency on any particular trusted third party to act as intermediary in economic transactions between individuals and businesses.

Trust minimization is important in order to reduce the possible restrictions that trusted third parties can and usually do impose on users of their system.

Restrictions that trusted third parties usually impose may range from transactional costs, lock-in costs, to even blocking access to services altogether.

The more centralized a system is, the greater risk it has for a trusted third party to restrict it. Therefore, being careful in how a blockchain is designed, where the risks of centralization are reduced as much as possible, is a crucial task of the industry.

Striking a balance between trust minimization, change, complexity, and protocol politics is the topic of this post.

What Is Social Scalability?

Computational scalability must go down for social scalability to go up.
Computational scalability must go down for social scalability to go up.

The term “social scalability” was coined by Nick Szabo in his seminal post “Money, blockchains, and social scalability”.

Social scalability, as defined by Szabo, is the ability of a system to be used by increasing numbers of users without encountering restrictions that reduces or blocks new entrants from using it.

A good example of a system that is not socially scalable is the banking system. In an advanced economy such as the United States, there are nearly six million households that are unbanked. Outside of the US, the great majority of countries have unbanked population shares that range from 7% to upwards of 50%.

The reason for these exclusion levels is twofold. The first is that governments, in their ambition to control people while touting “security reasons”, impose strict regulations on financial institutions to filter out potential customers who may not be able to prove that they are not criminals. The second is that due to these regulations, it becomes very costly for financial institutions to acquire and service customers, therefore they concentrate their marketing and distribution efforts only on the middle and higher-income segments of their markets.

In the proof of work based Nakamoto Consensus sector of the blockchain industry, networks such as Ethereum Classic (ETC), Bitcoin (BTC), and Litecoin (LTC) focus on high social scalability at the expense of computational scalability.

This means that the process of full replication of the data, hashing it, and then fully replicating the blocks again, producing an exact replica of exactly the same ledger with the same accounts, balances, and smart contracts, in the case of ETC, is extremely computationally inefficient, but it is the only way of producing a level of decentralization that enables everyone in the world to access the systems with no restrictions.

This is the tradeoff of computational scalability for social scalability.

Because of the physics of peer-to-peer networks, whichever system focuses on computational scalability must sacrifice decentralization, thus social scalability.

This is more or less the reason why governments seeking total and pure security sacrifice considerable numbers of their populations to remain excluded from basic services such as banking.

What Is ETC Ossification?

As we said before, being careful in how a blockchain is designed, where the risks of centralization are reduced as much as possible, is a crucial task of the industry.

On the other hand, these systems need to be updated with new features every now and then, and, whenever they appear, bugs must be fixed.

However, the more frequently a blockchain is upgraded, the more risk there is for bad or faulty modifications to be introduced into the system.

This problem is usually called “attack surface”, which means that the larger the surface of the system is, the easier it will be to poke holes in it. In other words, the more code and rules it has, the easier it will be to find ways to attack it.

This is why the term “ossification” is usually used and is a goal in the industry. Ossification means to reach a point where the network is sufficiently functional to warrant a complete halt in its upgrades and bug fixes. Then, all new features and functionality may continue to be built on top in higher layers.

In the case of networks as Ethereum Classic, the attack surface problem has three angles: Complexity, politics, and change.

Complexity

The complexity attack surface: The more complex rules and code needed to build the system, the more hidden ways hackers will find to attack it.

Complexity also raises the risk of hidden bugs or unforeseen failures.

The way of reducing this surface is by reducing complexity or reaching a point of ossification where the system is functional enough to support all new features and innovation in external complementary protocols.

Examples of this may be rollups, channels, and other scaling systems built on top of ETC, instead of sharding it internally or integrating them into the network.

Protocol Politics

The argument attack surface: The more decisions to argue over, the more the opportunity to convince the ecosystem to accept bad upgrades that reduce decentralization.

In blockchain networks there are several constituents that participate in the debates when there are new proposals for change. These debates may become very passionate and even toxic at times. Sometimes, parties with enough budgets, charisma, or influence may actually convince participants to make horrible changes. The most famous of these examples is the migration of Ethereum from proof-of-work to proof-of-stake, a system prone to total centralization.

These processes turn developers, economic node operators, and miners into political animals fighting for their self interest.

Ossification would avoid this problem entirely as there would be no possibility of tricking the ecosystem with fancy arguments and gimmicks anymore.

Change

The change attack surface: The more changes and upgrades there are, the more opportunities to introduce faulty rules or bugs.

Similar to protocol politics, the frequency of changes made, even if necessary and benevolent, is a risk to the system.

As an example, Bitcoin once had a critical bug introduced as part of an update. When it was discovered, deployment of an urgent hot-fix was required to patch the error.

Except for those hidden and already present in the code, ossification eliminates the introduction of new bugs or errors because there would be no new code or rules deployed to the protocol.

Striking a Balance

The best way to strike a balance between trust minimization, change, complexity, and protocol politics is to reduce change by reaching protocol ossification and letting all new features and design goals to be built on higher layers.

In this way, the highest level of social scalability is achieved.


Thank you for reading this article!

To learn more about ETC please go to: https://ethereumclassic.org

This page exists thanks in part to the following contributors:


DonaldMcIntyre
DonaldMcIntyre
  • EnglishEnglish
  • 中文中文
  • اَلْعَرَبِيَّةُاَلْعَرَبِيَّةُ
  • DeutschDeutsch
  • EspañolEspañol
  • ΕλληνικάΕλληνικά
  • FrançaisFrançais
  • עִבְרִיתעִבְרִית
  • हिन्दीहिन्दी
  • HrvatskiHrvatski
  • ItalianoItaliano
  • 日本語日本語
  • 한국어한국어
  • MalayMalay
  • NederlandsNederlands
  • PortuguêsPortuguês
  • русскийрусский
  • ภาษาไทยภาษาไทย
  • TürkTürk
  • Tiếng ViệtTiếng Việt
  • 粵語粵語
Add ETC to MetaMask
The ETC community is active on Discord
Discord
Discord
eth_classic Twitter
eth_classic Twitter
ETC_Network Twitter
ETC_Network Twitter
Github
Github
ETC Labs Github
ETC Labs Github
Reddit
Reddit
This site is powered by Netlify

Learn

  • FAQs
  • Why Classic?
  • Knowledge
  • Videos

Made with <3 for the Original Ethereum Vision

The content on this website is user-generated and solely for informational purposes. Do not interpret any content as an endorsement of any product or service. There's "no official anything" in Ethereum Classic. Always do your own research, and remember: don't trust, verify!