Bitcoin Forum
May 27, 2024, 02:18:35 PM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: « 1 [2]  All
  Print  
Author Topic: A Consensus Protocol Based on the Ability of Network Dispersity.  (Read 292 times)
monsterer2
Full Member
***
Offline Offline

Activity: 351
Merit: 134


View Profile
May 12, 2018, 09:04:23 AM
 #21

I have thought seriously about the problem you posted and maybe I have found a way to mitigate it. It's useful to any PoS protocols.

Lets assume for a moment that this solution will work (it wont, but for the sake of argument, lets assume it will). So now instead of one rule for selecting the correct fork you have two rules. Now instead of being a majority stake holder, the attacker can just try to trigger your other rule to discard the canon chain as fake, and have your new selection rule pick his fake chain instead.
yj1190590 (OP)
Member
**
Offline Offline

Activity: 199
Merit: 15


View Profile
May 12, 2018, 11:32:16 AM
Last edit: May 12, 2018, 12:26:22 PM by yj1190590
 #22

...try to trigger your other rule to discard the canon chain as fake...
Have you thought about how? Take notice the proportion is measured by stake. So you have to fake the activities on the fake chain using the active private keys on the main chain.

Quote
it wont, but for the sake of argument, lets assume it will
What is the other reason it wont work?

Quote
So now instead of one rule for selecting the correct fork you have two rules.
There may be more than two rules in Pos system, such as : the first N blocks are not reorganizable.
monsterer2
Full Member
***
Offline Offline

Activity: 351
Merit: 134


View Profile
May 12, 2018, 01:57:01 PM
 #23

...try to trigger your other rule to discard the canon chain as fake...
Have you thought about how? Take notice the proportion is measured by stake. So you have to fake the activities on the fake chain using the active private keys on the main chain.

Either you select the canon chain based on highest stake, or you don't. If your standard rule is to select based on highest stake, then your secondary rule must use some other criteria. If that is the case, then you don't have 33% attack tolerance anymore, you have a lesser tolerance which will be exploitable much more easily.
yj1190590 (OP)
Member
**
Offline Offline

Activity: 199
Merit: 15


View Profile
May 12, 2018, 02:43:47 PM
Last edit: May 12, 2018, 03:08:56 PM by yj1190590
 #24

Either you select the canon chain based on highest stake, or you don't. If your standard rule is to select based on highest stake, then your secondary rule must use some other criteria. If that is the case, then you don't have 33% attack tolerance anymore, you have a lesser tolerance which will be exploitable much more easily.
The first rule is the longest or heaviest branch; the second rule is according to the proportion of the double-active stake: the lower proportion, the higher probobility to be choose to the main branch. There could be some complex judgment basis but they basically follow those rules.

By the way , I still don't get why the fake chain can catch up with the speed of the main chain. Since the growth speed is determined by the online stake, why would a branch with partial stakes grow faster than the one with full stakes?
monsterer2
Full Member
***
Offline Offline

Activity: 351
Merit: 134


View Profile
May 12, 2018, 04:15:31 PM
 #25

Either you select the canon chain based on highest stake, or you don't. If your standard rule is to select based on highest stake, then your secondary rule must use some other criteria. If that is the case, then you don't have 33% attack tolerance anymore, you have a lesser tolerance which will be exploitable much more easily.
The first rule is the longest or heaviest branch; the second rule is according to the proportion of the double-active stake: the lower proportion, the higher probobility to be choose to the main branch. There could be some complex judgment basis but they basically follow those rules.

So, as an attacker creating a fork, I poison the main branch by using my stake in the main branch and in another branch thereby increasing the odds the main branch will be discarded in favour of my competing fork which contains no 'double-active' stake.

Quote
By the way , I still don't get why the fake chain can catch up with the speed of the main chain. Since the growth speed is determined by the online stake, why would a branch with partial stakes grow faster than the one with full stakes?

Because the is no objective way to tell the difference between the main chain and the competing fork with historical keys - both appear to have the same amount of 'online stake'.
yj1190590 (OP)
Member
**
Offline Offline

Activity: 199
Merit: 15


View Profile
May 13, 2018, 04:07:08 AM
Last edit: May 14, 2018, 08:18:53 AM by yj1190590
 #26

So, as an attacker creating a fork, I poison the main branch by using my stake in the main branch and in another branch thereby increasing the odds the main branch will be discarded in favour of my competing fork which contains no 'double-active' stake.
Besides that you have to have enough stake in your branch which is not active in the main branch and that is difficult to achieve.

Quote
Because the is no objective way to tell the difference between the main chain and the competing fork with historical keys - both appear to have the same amount of 'online stake'.
In my protocol the online stake can be precisely counted so that the difficulty can be adjusted by a different way from the PoW protocol. We can calculate the difficulty by using the amount of online stake and that will ensure the fake branch grows slower than the main.

In other protocols, we can build a kind of math model to restrict the blockrate into a certain range according to the current blockrate and difficulty to make sure that the higher mining power generate blocks faster than the lower.

In other words, there are objective methods to tell the difference between different mining power by refering to the current blockrates and the difficulties.
Pages: « 1 [2]  All
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!