Konubinix' opinionated web of thoughts

Blockchain Trilemma

Fleeting

trilemma

—

in all blockchain protocols each node stores the entire state (account balances, contract code and storage, etc.) and processes all transactions.

— https://eth.wiki/sharding/Sharding-FAQs

blockchain cannot process more transactions than a single node can. In large part because of this, Bitcoin is limited to ~3–7 transactions per second, Ethereum to 7–15, etc.

— https://eth.wiki/sharding/Sharding-FAQs

are there ways to create a new mechanism, where only a small subset of nodes verifies each transaction?

— https://eth.wiki/sharding/Sharding-FAQs

could we not split up transaction processing between smaller groups of nodes to greatly increase a blockchain’s total throughput?

— https://eth.wiki/sharding/Sharding-FAQs

he impossible triangle of blockchain refers to a blockchain system which cannot satisfy three angles at the same time. It must improve the index of the other two angles at the expense of one certain angle

— https://www.eastshore.xyz/the-impossible-triangle-a-lie-about-blockchain/

The  most popular version of the impossible triangle theory is the one by “Vitalik

— https://www.eastshore.xyz/the-impossible-triangle-a-lie-about-blockchain/

blockchain system cannot simultaneously combine decentralization, scalability and security.

— https://www.eastshore.xyz/the-impossible-triangle-a-lie-about-blockchain/

theory of impossible triangle has not been subject to any logical and systematic argument. The author only enumerated some questions and then initiated the viewpoint.

— https://www.eastshore.xyz/the-impossible-triangle-a-lie-about-blockchain/

Those who have written academic papers must know that in order to prove their researches can solve problems, the first step was usually to raise questions; to prove the effectiveness of their researches, they usually described the problem very important and difficult to be solved. The article On sharding blockchains is exactly written in the same structure.

— https://www.eastshore.xyz/the-impossible-triangle-a-lie-about-blockchain/

if the readers are patient enough to read the whole article on the “Vitalik” impossible triangle, they will find that Ethereum has solved this triangle problem through its sharding technology

— https://www.eastshore.xyz/the-impossible-triangle-a-lie-about-blockchain/

The so-called “impossible” has been demonstrated as “possible” on the first day of its birth.

— https://www.eastshore.xyz/the-impossible-triangle-a-lie-about-blockchain/

impossible triangle theory has been widely recognized, partly because of the popularity of Changjia and Vitalik. But does it really stand up to scrutiny?

— https://www.eastshore.xyz/the-impossible-triangle-a-lie-about-blockchain/

Distributed system CAP theorem is the real impossible triangle

— https://www.eastshore.xyz/the-impossible-triangle-a-lie-about-blockchain/

The CAP theorem is one of the most important principles in the field of distributed systems, which profoundly affects the development of distributed computing and system design

— https://www.eastshore.xyz/the-impossible-triangle-a-lie-about-blockchain/

The specific meanings of CAP theorem consistency, availability and partition tolerance are as follows:

Consistency: If the system returns a successful write operation, then the subsequent read request must read the new data; if the return fails, then all read operations cannot access to the data, so the data is highly consistent to the caller. Availability: All read and write requests can be responded within a certain period without always waiting. Partition tolerance: The network in the system may suffer from partition failure, that is, communication between nodes cannot be guaranteed, but it does not affect the normal service of the system.

— https://www.eastshore.xyz/the-impossible-triangle-a-lie-about-blockchain/

According to the CAP theorem, a distributed system can only implement two of aforesaid three elements at the same time

— https://www.eastshore.xyz/the-impossible-triangle-a-lie-about-blockchain/

  • If the AP is satisfied at a certain moment, that is, the separated node external service without mutual communicate, it will result in inconsistency which cannot meet the condition of C;
  • if the condition of CP is met, then in the case of network partition, the request can only wait to meet the condition of C, so the condition of A cannot be met;
  • if the condition of CA is met, that is, the node status is consistent within a certain period, then the network partition cannot be realized, which will not meet the condition of P.

— https://www.eastshore.xyz/the-impossible-triangle-a-lie-about-blockchain/

are there ways to create a new mechanism, where only a small subset of nodes verifies each transaction? As long as there are sufficiently many nodes verifying each transaction that the system is still highly secure, but a sufficiently small percentage of the total validator set so that the system can process many transactions in parallel,

— https://eth.wiki/sharding/Sharding-FAQs

three main categories of “easy solutions”

— https://eth.wiki/sharding/Sharding-FAQs

first is to give up on scaling individual blockchains, and instead assume that applications will be split among many different chains

— https://eth.wiki/sharding/Sharding-FAQs

second is to simply increase the block size lim

— https://eth.wiki/sharding/Sharding-FAQs

third is “merge mining”, a technique where there are many chains, but all chains share the same mining power (or, in proof of stake systems, stake)

— https://eth.wiki/sharding/Sharding-FAQs

trilemma claims that blockchain systems can only at most have two of the following three properties: Decentralization (defined as the system being able to run in a scenario where each participant only has access to O© resources, i.e. a regular laptop or small VPS) Scalability (defined as being able to process O(n) > O© transactions) Security (defined as being secure against attackers with up to O(n) resources)

— https://eth.wiki/sharding/Sharding-FAQs

Notes linking here