Author [EN] [ZH] [ES] [PT] [IT] [DE] [FR] [NL] [TR] [SR] [AR] [RU] [EN] [ZH] [ES] [PT] [IT] [DE] [FR] [NL] [TR] [SR] [AR] [RU] [EN] [ZH] [ES] [PT] [IT] [DE] [FR] [NL] [TR] [SR] [AR] [RU] Topic: Board of Directors vs Mining Pool Operators  (Read 1628 times)

0 Members and 1 Guest are viewing this topic.

Offline bytemaster

Board of Directors vs Mining Pool Operators
« on: April 02, 2014, 06:29:25 AM »

Some other threads were getting rather long so I thought I would summarize where they went and the latest insights:

My real challenge with securing the network is that I know several things for certain:

1) Proof of Work is not just unprofitable, it results in the worst kind of centralization and control.
2) Proof of Stake systems are more experimental and only Nxt has a pure proof-of-stake system.
3) Ripple is a form of consensus where you trust a set of nodes not to collude, but where growing this set of nodes from 5 nodes all controlled by Ripple to 1000's of nodes in a manner that doesn't fork the network is an unresolved issue.   Effectively Ripple is a club that gradually adds members and these members collectively agree to reach consensus.   Ripple uses a complex algorithm for this club and if the core members of the club go one way then the shareholders (XRP) have no say. 

So I am sitting here trying to innovate solutions that are better than everything that has gone before and this involves deep thought about the nature of the problem, the risks involved, etc.   Fortunately the DAC metaphor gives us the answers we need.

1) We want to give shareholders a way to delegate their vote to a key that doesn't control their coins 'so they can mine'.
2) We want to maximize the dividends shareholders earn
3) We want to minimize the amount we must pay people to secure the network.
4) We want to maximize the performance of the network
5) We want to minimize the cost of running the network (bandwidth / CPU / etc)

So the key is that the shareholders remain in control.  If they remain in control then it is decentralized and as much as I hate voting on anything, when it comes to shared ownership of something like a company it is the only viable way.  Fortunately if you do not like who is running the company you can sell and this market feedback causes shareholders to vote more rationally than citizens.   

So every shareholder gets to vote for someone to sign blocks in their stead (a representative if you will).  Anyone who can gain 1% or more of the votes can join the board.   The representatives become a "board of directors" which take turns in a round-robin manner signing blocks.  If one of the directors misses their turn clients will automatically switch their vote away from them and eventually they will be voted off the board and someone else will join the board.  Board members are paid a small token to make it worth their while to campaign, put their neck on the line, and ensure uptime.  They also post a small bond equal to 100x the average pay they receive for producing a single block.   To make a profit a director must have greater than 99% uptime. 

So how is this different than Bitcoin?   In bitcoin the users must pick a mining pool and each pool generally has 10% or more of the hash power.  The operator of these pools is like a representative of the clients pointed at the pool.   Bitcoin expects the users to switch pools to keep power from becoming too centralized, but collectively 5 major pools control the network and manual user intervention is expected if one of the pools is compromised.   If a pool goes down then the block production rate slows proportionally until it comes back up.   Which pool one mines in becomes a matter of politics.

Therefore, I am expecting the same kind of behavior from users of BTS X except instead of having to point their hashing power at a pool, they merely change a setting in their wallet.  This setting can even be setup with a chain of command so that users do not have to think much about it.  Instead of only miners voting, everyone can vote.  Like bitcoin, if a representative goes down, block production will slow by a proportional amount until the representative comes back on line or users vote them out of office automatically.

The reason to avoid randomly selecting the representative from all users is the following:

1) high probability they are not online
2) attackers would gain control proportional to their stake without any peer review...
3) without any mining at all, the generation of a random number in a decentralized manner is impossible and thus an attacker could control the random number generation.

The benefits of the representative approach is that:
1) After fewer than 20 blocks ( 10 minutes or less ) almost everyone has indirectly ratified the block-chain through their representative in an immutable way.
2) block production can be much faster
3) no one can prevent transactions from getting included in the chain for more than 10 minutes... compared to bitcoin this is HUGE.

So from the perspective of decentralization I believe I have a design which achieves more than Bitcoin, Nxt, or Peercoin can hope to achieve with a much higher level of security in a much more rapid manner than previously possible. 

Here is the critical point that separates this approach from everyone else:  we do not separate control from the shareholders.   Any Nxt node that is not on line loses their influence.  Any peercoin node that doesn't have some mining power has their vote diluted.  Any Ripple user has no say over who controls unique node list.

Decentralization with bonded representatives subject to immediate and continuous recall.   Efficiency of Ripple and more decentralized than any POS coin.   

For the latest updates checkout my blog: http://bytemaster.bitshares.org
Anything said on these forums does not constitute an intent to create a legal obligation or contract between myself and anyone else.   These are merely my opinions and I reserve the right to change them at any time.

Offline etherbroker

  • Full Member
  • ***
  • Posts: 69
    • View Profile
Re: Board of Directors vs Mining Pool Operators
« Reply #1 on: April 02, 2014, 08:01:19 AM »
What is the motivation for signing the blocks?

Is it just like a civic duty? 

If there is a pay, is it profitable, like a business, or just something to do and maybe pay your electricity bill.

Just curious.  Always wondering about how to appeal to more people.

Offline bytemaster

Re: Board of Directors vs Mining Pool Operators
« Reply #2 on: April 02, 2014, 08:16:15 AM »
The board of directors earns a fraction of the transaction fees... everyone else votes/ratifies automatically as part of their normal transaction processing.
For the latest updates checkout my blog: http://bytemaster.bitshares.org
Anything said on these forums does not constitute an intent to create a legal obligation or contract between myself and anyone else.   These are merely my opinions and I reserve the right to change them at any time.

Offline davidpbrown

Re: Board of Directors vs Mining Pool Operators
« Reply #3 on: April 02, 2014, 08:40:44 AM »
What would the default vote be - random to those who've signed up to signing blocks or null?
฿://1CBxm54Ah5hiYxiUtD7JGYRXykT5Z6ZuMc

Offline bytemaster

Re: Board of Directors vs Mining Pool Operators
« Reply #4 on: April 02, 2014, 08:53:16 AM »
What would the default vote be - random to those who've signed up to signing blocks or null?

Default vote would probably be what ever the wallet developer selected which is likely better than null, especially if the DAC launcher worked with people from many jurisdictions to establish a solid initial board.    Also, any wallet with sufficient funds would likely give its owner an opportunity to appoint itself.
For the latest updates checkout my blog: http://bytemaster.bitshares.org
Anything said on these forums does not constitute an intent to create a legal obligation or contract between myself and anyone else.   These are merely my opinions and I reserve the right to change them at any time.

Offline davidpbrown

Re: Board of Directors vs Mining Pool Operators
« Reply #5 on: April 02, 2014, 09:50:10 AM »
It's a good idea and I like the way that votes might collapse, in the event that a director doesn't deliver.

Less obvious, is how to make the reality transparent, so that shareholders are making a useful and informed vote. Without being aware of either the current state of play or some suggestion of the ambitions and commitment of others, the vote would be blind and would not provide any intelligent spread of support. Why would I place my vote for random other client to sign blocks - what do I know of them?.. I'd want a motivation for that - either a push or a pull, relative to current state.
฿://1CBxm54Ah5hiYxiUtD7JGYRXykT5Z6ZuMc

Offline stuartcharles

  • Sr. Member
  • ****
  • Posts: 281
    • View Profile
Re: Board of Directors vs Mining Pool Operators
« Reply #6 on: April 02, 2014, 10:23:35 AM »
I like it a lot, do we need to vote? why don't we just randomly pick a 1% or grater share holder that is online. If the intensive is reasonable then most of them will be online anyway.

Or if you feel a vote is necessary to give everyone a chance not just the initial supporters of the project then. Should it be that you need 1% of the vote period. Any extra votes are excluded or passed to a chosen second or third candidate. That way you are always ensured to have close to or 100 operational computers/servers available to sign the blocks.
« Last Edit: April 02, 2014, 10:36:12 AM by stuartcharles »

Offline bytemaster

Re: Board of Directors vs Mining Pool Operators
« Reply #7 on: April 02, 2014, 06:04:15 PM »
I like it a lot, do we need to vote? why don't we just randomly pick a 1% or grater share holder that is online. If the intensive is reasonable then most of them will be online anyway.

Or if you feel a vote is necessary to give everyone a chance not just the initial supporters of the project then. Should it be that you need 1% of the vote period. Any extra votes are excluded or passed to a chosen second or third candidate. That way you are always ensured to have close to or 100 operational computers/servers available to sign the blocks.

Someone with 1% could vote for themselves,  but the real goal is to allow the masses with less than 1% to combine their votes so they can be represented.  Fortunately having someone vote for themselves isn't a problem, after all (if this were bitcoin) they would have $600 million or more on the line.   If they did anything to block transactions and make the network less efficient they would likely lose several million dollars as a result. 
For the latest updates checkout my blog: http://bytemaster.bitshares.org
Anything said on these forums does not constitute an intent to create a legal obligation or contract between myself and anyone else.   These are merely my opinions and I reserve the right to change them at any time.

Offline amencon

  • Sr. Member
  • ****
  • Posts: 231
    • View Profile
Re: Board of Directors vs Mining Pool Operators
« Reply #8 on: April 02, 2014, 06:24:35 PM »
Thanks for the summary.  Communicates the issue and proposal well and does it concisely.

The biggest question left in my mind is how readily apparent the voting mechanism will be for the end user.  I assume it will be represented in the GUI of the wallet software?  Also sorry if this has been covered in other threads on this, but to vote will your balance need to be kept in a hot wallet?

I think in designing this system you have to assume that the vast majority of users will not consciously vote.  It was mentioned those users' votes would be determined by the default wallet behavior.  With the assumption that most don't actively vote, is there any vulnerability in giving wallet creators the power to affect voting in a similarly centralized manner as mining pools do in Bitcoin?

Overall the system sounds great and look forward to being able to test in out in the coming months.

Thanks.

Offline biophil

  • Hero Member
  • *****
  • Posts: 814
  • Incentives run the world
    • View Profile
    • Sign up for a Bitshares account!
  • BTS: zebulon
Re: Board of Directors vs Mining Pool Operators
« Reply #9 on: April 02, 2014, 06:53:50 PM »

So every shareholder gets to vote for someone to sign blocks in their stead (a representative if you will).  Anyone who can gain 1% or more of the votes can join the board.   The representatives become a "board of directors" which take turns in a round-robin manner signing blocks.  If one of the directors misses their turn clients will automatically switch their vote away from them and eventually they will be voted off the board and someone else will join the board.  Board members are paid a small token to make it worth their while to campaign, put their neck on the line, and ensure uptime.  They also post a small bond equal to 100x the average pay they receive for producing a single block.   To make a profit a director must have greater than 99% uptime. 


I think this proposal is probably worth a try, but I'm still skeptical that there will be much active participation. Voting is scary for users; most will never understand what it means to be a director, so they'll have no idea what would make a good candidate.

See what I bolded above: Can you talk a little more about this? If clients automatically un-vote the delinquent director, wouldn't the director lose his position immediately? But if that's the case, what does "un-vote" mean? I suspect it would mean that the director would be out permanently, because I still believe that most users aren't going to vote very actively. There seems to be a tradeoff here between immediate penalties for delinquency versus leniency for people who only offend occasionally.

Also, what kind of theory do you have behind this? Have you worked out anything about how much voting participation you'd need for this system to be secure? If there's no theory, that's fine - I just like to know when an algorithm is from the back of a napkin.

Offline toast

Re: Board of Directors vs Mining Pool Operators
« Reply #10 on: April 02, 2014, 06:57:13 PM »

So every shareholder gets to vote for someone to sign blocks in their stead (a representative if you will).  Anyone who can gain 1% or more of the votes can join the board.   The representatives become a "board of directors" which take turns in a round-robin manner signing blocks.  If one of the directors misses their turn clients will automatically switch their vote away from them and eventually they will be voted off the board and someone else will join the board.  Board members are paid a small token to make it worth their while to campaign, put their neck on the line, and ensure uptime.  They also post a small bond equal to 100x the average pay they receive for producing a single block.   To make a profit a director must have greater than 99% uptime. 


I think this proposal is probably worth a try, but I'm still skeptical that there will be much active participation. Voting is scary for users; most will never understand what it means to be a director, so they'll have no idea what would make a good candidate.

See what I bolded above: Can you talk a little more about this? If clients automatically un-vote the delinquent director, wouldn't the director lose his position immediately? But if that's the case, what does "un-vote" mean? I suspect it would mean that the director would be out permanently, because I still believe that most users aren't going to vote very actively. There seems to be a tradeoff here between immediate penalties for delinquency versus leniency for people who only offend occasionally.

Also, what kind of theory do you have behind this? Have you worked out anything about how much voting participation you'd need for this system to be secure? If there's no theory, that's fine - I just like to know when an algorithm is from the back of a napkin.

That's why you honor AGS!
Do not use this post as information for making any important decisions. The only agreements I ever make are informal and non-binding. Take the same precautions as when dealing with a compromised account, scammer, sockpuppet, etc.

Offline bytemaster

Re: Board of Directors vs Mining Pool Operators
« Reply #11 on: April 02, 2014, 07:43:54 PM »
Thanks for the summary.  Communicates the issue and proposal well and does it concisely.

The biggest question left in my mind is how readily apparent the voting mechanism will be for the end user.  I assume it will be represented in the GUI of the wallet software?  Also sorry if this has been covered in other threads on this, but to vote will your balance need to be kept in a hot wallet?

I think in designing this system you have to assume that the vast majority of users will not consciously vote.  It was mentioned those users' votes would be determined by the default wallet behavior.  With the assumption that most don't actively vote, is there any vulnerability in giving wallet creators the power to affect voting in a similarly centralized manner as mining pools do in Bitcoin?

Overall the system sounds great and look forward to being able to test in out in the coming months.

Thanks.

Well I suspect what will happen is that those who initially create the DAC will do a solid job with solid defaults.  Voting will only ever become an issue in the event that there is some disturbance and is mostly in there to deal with problems in the unlikely event that they do occur.   Everyone trusts the core developers (they run their binaries after all)...  so trusting them to set solid defaults is probably pretty good.   I think it is mostly just important for everyone to know that should anything happen there is a contingency plan and that they have a voice should they feel the need to exercise it.

For the latest updates checkout my blog: http://bytemaster.bitshares.org
Anything said on these forums does not constitute an intent to create a legal obligation or contract between myself and anyone else.   These are merely my opinions and I reserve the right to change them at any time.

Offline muse-umum

  • Hero Member
  • *****
  • Posts: 717
  • BitShares everything
    • View Profile
Re: Board of Directors vs Mining Pool Operators
« Reply #12 on: April 02, 2014, 07:57:46 PM »
I am still worried about the failover. 

If one of the board members generates a block A containing double-spend transactions, certainly he'll be voted out. But can we make sure the next member can handle the legal transactions in A well so that they won't get lost  if he abandons A ?

More over, the board members can go short before they do something bad in order to make profits.
« Last Edit: April 02, 2014, 08:00:38 PM by heyD »

Offline bytemaster

Re: Board of Directors vs Mining Pool Operators
« Reply #13 on: April 02, 2014, 08:07:54 PM »
You cannot generate a block containing double spends.   It would be as if you created no blocks at all. 




Sent from my iPhone using Tapatalk
For the latest updates checkout my blog: http://bytemaster.bitshares.org
Anything said on these forums does not constitute an intent to create a legal obligation or contract between myself and anyone else.   These are merely my opinions and I reserve the right to change them at any time.

Offline Empirical1

  • Hero Member
  • *****
  • Posts: 884
    • View Profile
Re: Board of Directors vs Mining Pool Operators
« Reply #14 on: April 02, 2014, 08:17:58 PM »
What is the worst thing a director could do before his power is removed?
What if one director was really controlling X% of total block generation?

If the worst thing they could do is not so bad, cool, I like it. 
If though directors or a group of colluding directors could do something really bad then what about having a decentralised fail-safe dispute resolution system?

As you know Truthcoin Prediction market is apparently able to reach decentralised consensus on truth using SVD.
TBH I don't understand enough about it yet, but I feel it may be inefficient (speed-wise) to apply to many betting markets and certainly impossible/ridiculous to consider using with regards to block signing, however it looks like it can be a great tool to resolve a dispute or make a truly decentralised decision.

So provided the cost/difficulty associated with lodging a dispute is incredibly high and the cost for lodging a false dispute is incredibly high then we could perhaps have a fairly centralised but super-fast system knowing that if something did go wrong it would be possible to reverse/fix it using a truly decentralised consensus of the entire network?

Example:

So imagine 2 Big bitcoin mining pools colluded and performed a huge double spend at block X. What if even a small 1% hashing pool could risk it's funds and lodge a dispute. Then block generation would be paused, to vote on -  'Remove Mining Pool A&D, rewind to Block X-1'. Then the entire Bitcoin network (holders of Bitcoin) could vote. The Truthcoin SVD thingy would say consensus is yes. Then the network would have been able to resolve that dispute and the 2 Big Mining pools would have failed. (If the 1% hashing pool had lodged a false dispute, in the process holding up the network for a few hours,  then they would lose a fortune in funds that they would have had to commit to lodge the dispute in the first place, thereby ensuring nobody would ever hold up the network unnecessarily.)

Edit: (As in we delegate our vote to a director,  except during a dispute, in which case we make votes as individual shareholders again - if we are available to vote in the time window allowed for a dispute - and then SVD determines consensus.)

Um, I'm not very technical, but something like that.
« Last Edit: April 02, 2014, 08:41:21 PM by Empirical1 »

 

Google+