The Blockchain trilemma. How important is engineering?
Blockchain is, in simple terms, a database or a digital registry of signatures and timestamps. The blockchain trilemma states that physical constraints determine the properties of the blockchain, these three properties are decentralization, scalability and security, so the blockchain can satisfy only two of these properties.
● Decentralization
In order for the blockchain to be as decentralized and secure as possible, the block operation time must be slow, and it must accommodate a limited number of transactions per block. These properties are exactly related to Bitcoin, the base layer should be secure and decentralized, scalability is achieved through the technologies of the “second layer”, or also called the “transaction layer”, on the second layer, such as sidechain and Lightning Network.
● Decentralization and security
If the blockchain is to be as decentralized and secure as possible, it can process not so fast and many transactions per second. These characteristics are exactly related to Bitcoin, and scalability is achieved due to the second levels, such as sidechain and Lightning Network. These include, first of all, public blockchains
● Security and scalability
If the blockchain has high scalability and security, it cannot be as decentralized.
● Scalability and decentralization
If the blockchain is scaled and decentralized, it is very difficult to guarantee security equally.
Solving the problem
Thus, the design of the blockchain determines the characteristics of the trilemma. The crucial parameters are block time, block size, signature algorithms (e.g. ECDSA, Schnorr & Taproot) and the consensus algorithm.
If the block time is short, transactions are verified quickly. Now it comes to block size and block time, which determine how scalable the blockchain should be. The larger the block, the more transactions are placed in it. If the block time is small, the block size should not be too large, otherwise the data transfer will be too large for the bandwidth of the nodes.
If a new node wants to synchronize in a few years, it will take much longer and will cost more. Increasing the block size may even lead to the fact that new nodes will not be able to synchronize at all, which will lead to centralization. Once the block size has been increased in the protocol, it cannot be undone.
It is for this reason that the Bitcoin network, and hence the community, decided to abandon the measure to increase the block size, and instead chose SegWit during the hard fork in July 2017.
In Bitcoin, the first layer serves for security and decentralization, and we can use the second for scalability.