Limiting each account to a specific multiple of their stake is not an adequate solution. What I mean by multiple of their stake is illustrated forthwith:
User A has 1M Steem. User A casts witness votes for the maximum number of witnesses, now 8. Each of User A's votes are worth 1M Steem. User B has 100 Steem. User B also casts 8 witness votes, each of which is worth 100 Steem. The difference in stake between User A and User B is 999,900 Steem. The difference in their vote weights - their influence on governance - is 7,999,200 Steem.
Why? Because User A casts 8 votes worth 1M Steem, or exerts 8M Steem influence on the witnesses. User B casts 8 votes worth 100 Steem, exerting 800 Steem influence on governance. The system we have to day is far worse than this in multiplying the influence of large stakeholders on governance, but any multiple of stake is a strongly centralizing force on Steem governance.
We need to make witness votes 1 Steem = 1 vote, so that each account exerts as much influence as it has stake, and no more. Presently @justinsunsteemit is estimated to have ~100M Steem at his disposal. He could theoretically exert 3B Steem influence on witness elections. This is a lot of why he is able to simply seize control of the governance at will.
Thanks!
Edit: I also know at least one user that credibly claims to have over 10k accounts. Limiting each account to 8 votes for witness does not limit this user's ability to vote for all witnesses in consensus positions. @justinsunsteemit has access to at least 5 accounts presently - and probably a lot more. Splitting his stake allows him to spread it to all consensus positions, although at a reduced weight.
What you say is all true but is a topic to be brought up when discussing Long-Term DPOS solution.
I really think your system would take a lot of recoding.
There are also many consequences, in that STEEM holdings change every minute, so how are votes balanced? Once could allocate on a % basis and let the system calculate actual values. Again, a lot of new coding.
My short-term proposal has the benefit of being fairly easy to implement without major re-coding. I hope such detailled DPOS discussions will continue and will not be "forgotten" by the community.
Thanks
I dunno about coding. I note we already have VP for ordinary votes, and all this would require is setting VP decay to 100% with no recharge for witness votes.
Seems pretty easy, mayhap.
I appreciate your forwarding this idea to the community. We do need to do something, and even 1 Steem = 1 vote probably isn't nominal to secure governance from the Sybil attack that has captured it. It would make it harder, and that's good. So would limiting the number of witnesses each account could vote for, since it reduces the stake multiple account holders could throw at a vote.
Maybe together both mechanisms could combine their improved security impact beneficially.