Addendum to the "Public Subnets" thread: Helpful info on subnet workings

I agree with the saying that what can be done with math, don’t leave it to people.
However, the mathematical community is subject to a rule that results are openly verifiable.

Let us explore some of the most fundamental questions of blockchain.

  1. Who has the ability to judge right and wrong?
  2. What is the state of trustless?
  3. What power do market users need?

From an objective point of view, my opinions are.

  1. Who has the ability to judge right and wrong?
    When a system has an impartial authority, it is easy to leave the decision of right and wrong to it. But such an authority does not exist in the world. And the question of right and wrong is sometimes easy to judge and sometimes hard to judge, even if what most people judge to be right at the time may not really be right later.
    The POW system remains completely neutral, leaving the question of right and wrong up to the miners to decide. But to prevent the majority of miners from making the wrong decision, a fork mechanism is retained (this is to preserve more possibilities and ensure that the few deciders can continue to struggle to survive until the market finds out they are right), a bit like “biological evolution”. The POW system does this at the cost of data non-finality.
    The POS system, and IC, avoids the chaos of forking and achieves data finality, but also loses the opportunity to “preserve more possibilities” by assuming that the “smart majority” can make the right choice at the time.
    I’m not saying which is better, I’m just saying that it’s a trade-off that each blockchain system makes for its own goals. Judging right and wrong is inherently difficult, and blockchain maintainers need to be as neutral as possible and not choose for users when they don’t have to (giving the choice back to them).
  2. What is the state of trustless?
    Blockchain systems require a trustless environment, which is the most essential difference from AWS.
    IC has Chain-Key technology and SEV hardware, but can these technologies alone solve the trustless problem? No! I’m not doubting the cryptography and hardware, but I’m not endorsing the implicit trust assumption that “we need to trust that the nodes are running the same open source programs and have not made any hack changes to the hardware”. No matter how you prove it, we need to trust an organization, either the Dfinity Foundation or a company like AMD. This is not the trustless environment we want. You know, when a contract is worth tens of billions of dollars, 13 nodes would still love to get together and conspire to do something.
    One proven solution for a trustless environment is: open source code + openly verifiable blockchain data.
  3. What power do market users need?
    The maintainers of blockchain project have more power over the system from the beginning, which is inevitable in the early stages of ecological development. But one power that the market needs to retain is the power to a publicly verifiable power and the power to choose. (power to choose can be achieved through NNS voting). The verifiable power may not be used by the market in the early days of the ecology, but it is important to reserve this power for the market, and as the ecology matures, it is about who makes the ultimate decisions on the ecology’s development.

Based on the unique properties of IC, open nodes cause data sync difficulties and cost, I also express my views.

  1. What the market wants first is a verifiable power and the power to choose, and only then is the question of cost considered. This power cannot be given up because of the high cost.
  2. Data synchronization difficulties and cost issues can be solved by technical solutions. For example (some possible ideas. I am not an expert in this area)
    a) The signed block hash tree is stored permanently and is fully public. The amount of data here is small and there is no privacy issue. Then the data of the nearest N blocks of the “public subnet” will be made public and an API will be provided, and the market players will decide whether to download it or not.
    b) A disguised approach is to turn the public subnet into a low-storage subnet to reduce the data volume, and a possible solution is to significantly increase the Cycles cost of storage in the public subnet.
    c) Create a layer-2 network between edge nodes to do light nodes to quickly verify the data and request the corresponding packets only when the original data is really needed.
  3. I’m not against it: some subnets keep the status quo without disclosing data to meet some of the demand.

If the Dfinity team is not sure if they need an “public subnet”, could they open a few “public subnets” to the market and see how the market grows?
Years of experience in economics have taught me that the more freedom and opportunity you give the market, the more possibilities the market will create.

@dominicwilliams


Regarding the assumption of “trust majority honest” in blockchain, I would like to add a few points to my view.
(1) The POW system does not assume “trust majority honest”, it does not need such an assumption. It just assumes that every human node is selfish, just like the basic assumption of economics. The security of blockchain comes from probability and benefit-cost ratio.
(2) The POW system achieves this through features such as forking, non-finality, and open nodes. Thousands of non-consensus nodes, although not involved in consensus, have the ability to verify data and the power to choose. When most of the consensus nodes are found to be dishonest, some of the non-consensus nodes will join the consensus nodes, some may not accept the longest attacked chain, but accept and support the shorter unattacked chain, and finally the market will reach a new consensus according to its “selfish” interest drive. Most of the dishonest nodes have to continuously maintain their computing power, which is a cost they cannot afford, and “sensible” cheaters will not choose to attack in this way.
(3) POS systems require the assumption of “trust majority honest”, but “open and verifiable block data” can minimize the damage caused when this assumption is broken. Because users know what is happening in time, they can take action as soon as possible. The worst case scenario is that everyone can leave the failed system as soon as possible. This in turn will exponentially increase the cost of their attacks, deterring most nodes from trying to attack from the cost factor.
(4) None of the new generation blockchain systems use the POW system, which in principle reduces security but increases efficiency, scalability and creativity, which is well worth it based on the goals pursued. However, many important security measures, such as publicly verifiable block data, cannot be easily discarded along with them.

A trustless system is one that assumes that anything can happen and is designed to make each path of attack sufficiently costly.

5 Likes