Contatract (CNT) Weekly Update (Apr. 12, 2020)

With the stability of the previous code, the engineering design of the economic mechanism is currently underway, and possible attacks are being studied. This week is mainly to refine the economic mechanism, solve the PoW rollback problem, and solve the possible misbehavior of storage subnet space miners.

(1) Basically solved the technical framework that each block can calculate the size of the world disk and the used space

Because the economic mechanism requires each block to quote the space price (megabytes-day, MD), this requires that the block generation node in each block can calculate the size of the world's hard disk and the amount of space already used. At present, after the certification, such calculations can be performed, but the algorithm needs to be optimized.

(2) This week basically solved the problem of PoW rollback

In the design of the consensus mechanism, the proof of work is the main chain (beacon chain), and the sub-chain is the practical Byzantine consensus mechanism (PBFT). Because the main chain may have soft forks, and the sub-chain may be acting according to multiple forks, this may cause the sub-chain to roll back when the block generated by the main chain is finally abandoned. The current design will be based on longer main chain blocks, but the parameters need to be discussed and determined, and currently 10 blocks will be used as the basis. Of course, if 10 blocks still go wrong, we can only roll back.

(3) In-depth discussion and basically solved the problem when the storage node is not responding or doing evil when reading the file

In addition to the sharding mechanism, the main feature of the cross-chain is that it has space-based distributed storage. The main solution of storage is based on three proofs:

A. Proof of space: to prove that the storage node provides the claimed space.
B. Proof of time: to prove that the storage node's space service has reached the claimed time.
C. Proof of retriability: to prove that the data stored by the storage node is correct and obtainable.

The combination of the first two is called proof of time and space. At present, we mainly refine these three major proofs. This week's main research is how to solve the problem if the node does not respond (may be a network problem) or deliberately do evil. A preliminary solution has been formed. The main method is carried out in the following three ways:

A. Deposit system
B. Evaluation mechanism
C. Punishment mechanism
D. Time-space check mechanism

The feasibility of these mechanisms was discussed in depth, and the implementation of the code began to be discussed.

Summary: In fact, from the economic white paper to the technical yellow paper are the process from idea to realization. We have implemented the consensus mechanism, grouping of storage nodes, data uploading, downloading, etc. in the early stage, but the workload of the economic details, proof of time and space and proof of availability in the consensus mechanism, the price setting of time and space and the importance and work of evaluation and punishment of malicious nodes is also very large.