Post
Topic
Board Announcements (Altcoins)
Re: BYTEBALL: Totally new consensus algorithm + private untraceable payments
by
iamnotback
on 14/11/2016, 00:23:04 UTC
Edit: also I can devise an attack to side-step your protocol rule. Build a chain branch that has no double-spends and make it public. Gradually change my list of witnesses one-by-one on the units I sign as the old witness happily sign units on my chain branch to advance the stability point. I can spam with as many Sybil address signed units as necessary to convince the witnesses that my chain branch is "real". Then once I've got the old witness down to a minority, I can take my chain branch private and complete the attack I explained to you before.

Again, seems like you are assuming you can convince somebody with the number of your Sybil units.  And not just somebody -- the acting witnesses.  The acting witnesses, and other users likewise, are not going to change their own witness lists to stay compatible with your Sybil units.  Your Sybil units will be accepted into the DAG, but, being incompatible, they are not going to be selected as best parent, hence they have no chance to appear on the MC, hence none of them can ever become last ball (which necessarily lies on MC).

Okay so you are telling me that the current witnesses on the branch I am trying to create have to agree with 11 of 12 with my list of witnesses when they sign units on my branch? So this means the entire system has to agree on the same 12 witnesses for all main chains for the entire system?

If that is your design, then yes you can prevent my attack but at the cost of having 12 very entrenched witnesses which can never be migrated away from because political action never reaches 92% agreement.

So why not just use 12 federated servers and name this Visa, Mastercard, or Paypal instead? No need for the facade of a DAG nor to claim/insinuate by association to our Satoshi ecosystem that it is decentralized. Distributed is not same as decentralized.

How have you come to "the same 12 witnesses"?
To be eligible for inclusion on the MC, you have to agree about 11 witnesses, not 12 (1 mutation allowed).
For a change of the witness list to reach stability, support of the majority, that is 7 out of 12, or 58% witnesses is required.

To reach any significant mutation seems highly improbable.
.....

The system is designed based on assumption that the prevailing witness list is nearly static and evolves slowly.  Most often, we'll need to replace just one witness at a time, and before we need to replace another witness, the first change has more than enough time to diffuse into the system, so that when we replace the next witness we are doing just one mutation again.  

The need to replace more than one witness simultaneously is extremely rare, but still possible, and when it happens someone will have to coordinate the process so that users replace one of the defunct witnesses first, and soon after that, after the first change reaches stability point, they go on to replace the next witness.  This is not quite convenient, can prove chaotic at times, and requires a degree of short term centralization, but no system works optimally in all sorts of edge cases that one can reasonably believe are quite rare to happen.

Okay so basically as I said, same 12 witnesses globally (over long-term time window) unless some extraordinary global political will and consensus exists to replace 1 witness then again same 12 witnesses over long-term time window.

It seems the main advantage this has over Bitshares' DPoS+TaPoS is the asynchrony of the DAG and that exchanges can't vote for the witnesses. But I think DPoS normally has 100 witnesses, or at least it was 20 or so for Steem. And DPoS is in control of the whales so they can bypass politics to change witnesses quickly.