Chapter 0 introduction

Author: lightning an HSL BCH community abnormal incentives in recent days to discuss a in Hong Kong on May 19 open about raising BCH development funds topic meeting, want to write this article to understand what happens to the theme of the meeting, especially a few days behind the community of all kinds of misreading, everyone is excited, and I view of the meeting proposal.

Chapter 1 theme meeting on Hong Kong BCH Development Fund Raising Scheme

On May 19th, BCH enthusiasts held a conference in Hong Kong. There were mining pools, node developers, wallet developers, enthusiasts, etc. The scale was not large, I didn’t count the number of people, it was estimated to be about 20.

The most important thing of the conference was that THE BCH node developer Jiang Jiazhi (the head of Copernicus project) gave a keynote speech at the conference, which was about a special fund raising scheme for BCH development. The speech includes the following chunks:

Current development status of 1BCH community, current development status of competitors (ETH, Dash, Wavefield, etc.). 2. Why BCH community should increase investment in development? 3. A special fund fundraising scheme for BCH development.

Let me focus on point 3.

The starting point of fundraising is: some developers put forward their funding needs and reasons. The specific way is to use a transaction with multiple signatures on the chain to publish the requirements and reasons to the whole NETWORK of BCH, and write the requirements and reasons into the OP_Return field in the way of text. All people can check these contents, which is open to the whole network; Multi-signed private key holders are all pools, there are as many pools as there are private keys, we do not care about the specific structure.

The fundraising process is that the pool owner looks at the OP_Return and evaluates whether he or she wants to donate. If you are willing to donate, you can vote by signing up for the donation in proportion to the total network power of the pool owner. Multiple signature transaction broadcast success to enter the power vote.

The pool uses blocks to vote for fundraising, one block at a time. If more than 75% of the network’s computing power votes to approve the donation, the fundraising request passes the audit and enters the funding stage. Block rewards go to the fundraising management address.

For example, if there is a development application of 100BCH, 75% of the calculation power is approved, and the payment begins. A block has a bonus of 12.5Bch. In the fundraising scheme, the donor donates 0.1Bch per block for 1,000 blocks. In the beginning of the payment of the block after the continuation of 1000 blocks, mining to the block of the pool will be paid, not to dig, of course, do not pay.

Payments can also assist with phases, such as what milestones developers reach before moving to the next phase of payments, in order to establish oversight absence.

The above is the general process, the details may be different. The following is to analyze the specific payment implementation process, which is the most controversial place.

What if 75% of the powers vote to donate, but the other 25% do not?

Home tzu chi’s proposal is to use a certain way to “push” does not agree with the minority is subordinate to the donation, please note that home to express the process of repeatedly emphasize that this is a potential alternative solutions, is a topic proposal, this is he can think of at present the most feasible strategy, hope leads to more better solution.

The specific method is that 75% of the computing forces agree to donate, which is the majority computing force. According to the principle of majority obeying, if the minority computing forces do not perform the donation, the donation will continue first, while the majority computing forces will continue to perform the donation, and will continue to transfer the pledged share in the excavated block until the donation is full. But here’s the controversy: most of the computing power will isolate these undonated blocks. Because it is the majority that acts in unitary order, isolation is highly likely to succeed, and the minority loses the chunk. In this kind of game, a few calculators will not sit idly by and be isolated. There will be three situations. The second is to leave BCH to BTC mining power; The third is to pull more power over the donor, which in turn may not be implemented.

Therefore, in the actual execution process, it is highly likely that there will not really be isolated blocks, and the game will be stable. This is a mechanism in the middle ground between mandatory and purely voluntary. In order to achieve the most of the work force to isolated a few not pledged to calculate force behavior, mineral pool using a specific mechanism to reach a consensus, concrete is a proxy mechanism, the term agent is difficult to understand, we can understand the word as a piece of software, the software can identify mine pool found between which a block is not pledged, And the software can direct mining software to automatically execute isolated unpledged blocks.

Chapter 2 two of the biggest misconceptions in the community

There’s been a lot of discussion in the community these days about this fundraising plan, and there are two misconceptions that you’d better clear up.

The first thing that must be clarified is that this fundraising proposal does not propose to establish a long-term collection foundation, or to take a fixed percentage of each block of BCH to a specific address. This fundraising plan is a special fund, some people put forward the demand for funds, miners check and vote, pass the donation, do not pass the donation.

This clarification avoids questions about the corruption of funds, with no specific foundation used to manage funds over the long term. Discussion of the specific use of the funds can be avoided because the use of the funds is determined prior to the donation. Can also avoid discussing the issue of the amount of fundraising and misunderstanding BCH mining is fixed taxes, the amount is a special discussion out.

The second thing to clarify is that the mechanism for “isolating non-pledging” blocks is not a consensus protocol-level change.

Many in the community misinterpreted this as a consensus protocol upgrade to the BCH, deploying it using either a soft or hard fork. There is no such thing. The “agent” software described in the previous chapter is not deployed against node software such as Bitcoin ABC, but is deployed on pool mining software.

This clarification will avoid a debate about whether a mining dictatorship is holding entire communities hostage. In fact, the funding proposal does not give the miners the ability to change the agreement, just a sort of collusion. This “isolation and non-pledge” mechanism is a matter for miners, not non-miners.

Chapter 3 I endorse the location of this fundraising program meeting

I agree that the development of BCH, as stated in this conference, is driven by the need for more large-scale fundraising. The development of blockchain has passed the stage of being dominated by geeks and has entered the professional stage. The difficulty of development is already hard, not something for amateurs and a few people. In this context, to make a great product, it is necessary to invest more money. But the exact amount of money needs to be more professional assessment, I don’t know.

Not only does development require more investment, but community outreach and application layer development also require more investment.

I also agree that it is reasonable for miners, as the biggest beneficiaries of the agreement, to step forward and donate funds to promote development. In the whole economic ecology of BCH, miners are certainly not the most profitable, but the block rewards are indeed only mined by miners, and miners are the biggest beneficiaries of the underlying agreement. To fund development, it is necessary for miners to lead donations.

However, I would like to add that I don’t think the miners should be blamed for this donation except for the development of the agreement, such as promotion and application project development. I believe in capitalism, not stealing from the rich and giving to the poor.

Third, I agree with the initiative of this fundraising plan on the transparency of special funds. The worst enemy of charity is corruption, and the worst enemy of corruption may be transparency. This meeting will raise the demand side, reason, amount, use strategy; The BCH blockchain is completely transparent and untampered, and any third party can open and transparent comments on the donation and fundraising project. This is a great step forward for charity.

Chapter 4 I think the biggest problem with this fundraising scheme

I don’t agree with the idea of deploying a “proxy” between pools to isolate uncommitted small blocks. This leads to the following problems.

BCH network is a P2P network. The nodes can be divided into mining nodes and non-mining nodes. Now both mining nodes and non-mining nodes follow the simple longest chain as a valid chain rule, only blocks in the longest chain are valid blocks, and blocks not in the longest chain are invalid blocks.

At present, the biggest difference between the network mining nodes and non-mining nodes on the longest chain lies in the solitary block. If the whole network is simultaneously dug out by two independent mining pools at the same height in a very short time, one of them will be solitary block and the other will be effective block. In this case, the block that broadcasts to more power nodes first and gets votes of more than 51% of the power becomes an effective block, and the latest height of the chain rises to this block, while the other block becomes an isolated block.

This kind of isolated block system can also be detected in the “second level” time on the non-mining nodes. All the non-mining nodes are the same as the mining pool nodes, and will receive the two competing blocks successively, and can also predict that the whole network will have an isolated block. So the non-mining node can synchronize with the mining node to know which block will be at the next latest height. Under this setting, all nodes of the whole network will not be afraid of the occurrence of solitary block will harm the security. These two sentences are a little difficult to understand, let me illustrate.

Suppose that two blocks are excavated in the whole network at the same height, which we call blocks A and B, and one of them must be A solitary block. If there is A transaction tx1 is packaged into block A, but not into block B. In this case, if non-mining node 1 receives block A first and updates the blockchain height to block A, then TX1 has received 1 acknowledgement from this node 1. However, non-mining node 2 receives block B preferentially and updates the height of the blockchain to block B, so tx1 is still zero confirmation from this node 2. At this point, the blockchain is temporarily split, but the conflict can be resolved in seconds because after a few seconds, node 1 and node 2 both receive another conflicting block, and the security of the latest height and TX1 can be reassessed. And this rivalry is sure to be decided in the next block. For mining nodes, the same is true. The pool company should deploy more nodes around the world to detect the competing blocks A and B, but essentially remain in A similar position to the non-mining nodes, albeit with A slight advantage.

However, if the strategy of “isolating unpledged blocks” in this fundraising plan allows an alliance between mining pools, the alliance can take the initiative to isolate blocks outside the alliance. Under such background setting, non-mining nodes cannot know the policy of the mining alliance. Non-mining nodes cannot identify whether there is a received block or whether it will be isolated by the alliance. Such setting will make non-mining nodes unable to make the same security assessment as the mining pool after receiving the latest block. Non-mining nodes can only find out if the previous block is isolated until the next block. This paragraph is also difficult to understand, I give the following examples.

There is now a mining pool consortium, which we call the Donor Consortium, which holds 75% of the computing power; The other 25 percent count as a no-donor coalition. The former is the block we call A; The latter mine is called B. Now there is a block B1 in the whole network. All nodes in the whole network, including non-mining nodes, will receive block B. Both non-mining nodes and mining pool nodes of the donor rejection alliance will list this block B1 as the latest height, but the donor alliance mining pool will reject block B. At this time, the whole network is temporarily split. If the next block is A1, the whole network will receive the A1 block. The non-mining node and the rejected donor alliance node find out, oh, shit, I might get A lone block, and now the A block is competing with the B block 10 minutes ago, and one of them has to be the lone block. The winner still needs to appear in the next block. If the donor alliance digs another block A2 after block A1, the non-mining node and the rejection donor alliance node will discard block B1 and identify block A2 as the latest height. However, if block A1 is followed by a block B2 dug by the Refuse Donor alliance, the non-mining nodes and the Refuse Donor Alliance will identify the latest height as block B2, in which case the competition will continue. Until block A bursts more than block B. Because block A has more power, it has A 75% advantage, and it will most likely win in block A2.

This alliance has the right to isolate other people’s blocks, so that the non-mining nodes and the pool nodes are on different heights of the latest block. The non-mining nodes need more confirmation numbers to ensure that their heights are on the same heights as the pool nodes.

I think this is unreasonable and exposes non-mining nodes to potential under-validation risks. Now 1 confirmation is extremely safe, and even zero confirmation is safe. However, if there is such an isolated policy, the security of 1 confirmation is greatly reduced, zero confirmation is basically impossible, and 3 confirmation is needed to reach the security level of 1 confirmation before.

I don’t think there will ever be an answer to the debate about freedom, rights, obligations, and so on. It’s just too empty to talk about.

Chapter 5 I think this plan is worth revising and perfecting

The first should be to limit the use of miners’ donated funds, which should be limited to the development of the agreement layer.

My reason is that the mine is the biggest beneficiary of the agreement layer, and the development of the agreement layer must cooperate with the miners, that is, the miners’ ideas can affect the development of the agreement layer, so the miners should assume more obligations in the evolution of the agreement layer.

But with BCH promotion, Meetup and application layer development, it’s not miners who benefit the most. It’s exchanges and other ecological nodes that benefit the most. Like these campaign funding needs, find another outlet. Miners are no sucker. Let the miners’ donations concentrated in the development of the agreement layer, the overall contribution will not become a bottomless pit, there is no need to think of all kinds of donations. Miners should not deprive other economic nodes of the opportunity to do charity.

The second is to remove the “isolated block” and replace it with a pure automatic donation setting, with transparency, honor and community pressure to promote greater willingness to donate, in line with the first paragraph above. I don’t need a bike.

As far as the status quo is concerned, the top few big mining pools are willing to donate, and the property owners give more points in return for more glory and more say. Those little pools don’t donate, don’t want the glory, let it go. It is also important to maintain the diversity of an ecosystem. There is both generosity and selfishness. Diversity is good to maintain the status quo.

Try to explain to the community what you want to do, try to do something really cool, be a really cool person, why you want to donate, not so cool, not beautiful.

Chapter 6 Concluding Remarks

Don’t get excited. Our goal is stars, oceans, earth and trees.