Hello.
I am going to have English epidemic these days.
The following is a reply to a question in r/ethereum of reddit.
A pool for a very large number of candidate blocks to issue the authentication is operated.
The blocks in the pool are also connected by a hash chain.
Mathematical techniques such as exponential distribution and computational complexity theory are used in consensus to be registered in this pool.
These techniques make it impossible to falsify an already confirmed authentication, and authentication is issued in real time to the extent that network bandwidth is supported.
In addition to consensus to be registered in the pool, blocks also compete in issuing authentication.
Due to this competition, problems such as 'nothing at stake' do not occur.
Due to the use of dual chain, authentication to the ledger is deterministic and problems such as double spending do not occur.
After a block is added to the pool, it takes a very long time to issue the authentication.
The block can issue authentication when it wins all the competition that lasts that long time.
This long time consensus minimizes localization problem.
There is only one reward for the participation of a majority of legitimate users.
This is the basic function provided by this algorithm and there is proprietary information that is separate from this.
You can find out about the proprietary information at the link below.
Depending on what the proprietary information is used as, another characteristic may be given to the algorithm.
The work of PoW may be used or the stake in PoS may be used.
As mentioned at the end of the article above, the proprietary information has not yet been researched and is only about the future directions.
First of all, I am also looking for ways that this algorithm can be applied to Etherium.
But, from the conclusion, I have not found yet.
One of the easiest ways to use stake as proprietary information is as follows.
Below is the current expression.
\displaystyle r = \sum_{n=0}^{c-1} {2^{m_n}} {a^{-\frac{n}{c}}}
Below is a modified formula for stake.
\displaystyle r = \sum_{n=0}^{c-1} {m_n} {a^{-\frac{n}{c}}}
Since self relevance calculation has to change when proprietary information changes, 2^m
is replaced by m
.
m
is the stake of each user who wants to be a candidate block.
This is a simple structure that all users compete to become a candidate block with their own stake.
I posted here to look for ways together to avoid the hardfork.
Etherium already has a lot of great developers.
I do not want developers to be more confused by the new consensus algorithm.
I would like to find out together how to apply this algorithm to further develop Etherium.
Due to the lack of English and insufficient time, this is not the answer to all the questions.
I will answer the lacking parts every time I think about it.