BitShares Forum

Main => General Discussion => Topic started by: aaaxn on September 18, 2014, 09:24:01 am

Title: DPOS and competing chains
Post by: aaaxn on September 18, 2014, 09:24:01 am
One thing I don't understand about DPOS is how it handles competing chains. In POW it is prohibitively expensive to create competing blockchain of equal length, but with DPOS it can be done almost without a cost.

I don't know internals, but isn't it possible to create alternative history from genesis block which pretty much includes all transactions made on main chain with few modifications:
- kicking out original delegates in very beginning of chain and replace them with ones under my control
- replace transaction registering some well known account name (exchange?) with my own
Generally create alternative history with as few changes as possible and carry it forward to latest state.

Now if new node joins network and connect to my server I can feed it with fake chain. It has no way of telling that my chain is not original. It is exactly same, even delegate names can be the same. User can also see his balance as it is on main chain.

Now when this user tries to send money to exchange which account I took over he is actually sending money to me?

Does it make any sense?
Title: Re: DPOS and competing chains
Post by: toast on September 18, 2014, 01:52:45 pm
Quote
- kicking out original delegates in very beginning of chain and replace them with ones under my control

This is the hard part. You need to acquire more than half of the delegate keys since the last hard-coded checkpoint. You can't just "replace the original delegates" since they are in the genesis block.
Title: Re: DPOS and competing chains
Post by: aaaxn on September 18, 2014, 02:12:29 pm
Quote
- kicking out original delegates in very beginning of chain and replace them with ones under my control

This is the hard part. You need to acquire more than half of the delegate keys since the last hard-coded checkpoint. You can't just "replace the original delegates" since they are in the genesis block.
I suppose there is mechanism of kicking out delegetes which fail to sign blocks in time. In your chain delegates would miss blocks and be replaced, no?
Title: Re: DPOS and competing chains
Post by: arhag on September 18, 2014, 05:04:56 pm
Please read the arguments laid out here (https://bitsharestalk.org/index.php?topic=6584.msg87779#msg87779), here (https://bitsharestalk.org/index.php?topic=6584.msg87951#msg87951), and here (https://bitsharestalk.org/index.php?topic=6638.msg88187#msg88187), and then let me know if you still see potential attack vectors.
Title: Re: DPOS and competing chains
Post by: aaaxn on September 19, 2014, 06:42:45 am
Please read the arguments laid out here (https://bitsharestalk.org/index.php?topic=6584.msg87779#msg87779), here (https://bitsharestalk.org/index.php?topic=6584.msg87951#msg87951), and here (https://bitsharestalk.org/index.php?topic=6638.msg88187#msg88187), and then let me know if you still see potential attack vectors.
Thanks. That is exactly what I was looking for. I'll dig into it and let you know if I find any weakness.