Author Topic: Board of Directors vs Mining Pool Operators  (Read 8183 times)

0 Members and 1 Guest are viewing this topic.

Offline Empirical1

  • Hero Member
  • *****
  • Posts: 884
    • View Profile
Well remember that with TAPOS the chain with the most votes piled on is the winner no matter what. Automatic "exception" mechanism for if forks happen due to bad directors.

Edit: Ok cool, yeah just read up on it, the 51% attack isn't really a problem with TAPOS.
« Last Edit: April 02, 2014, 09:02:27 pm by Empirical1 »

Offline toast

  • Hero Member
  • *****
  • Posts: 4001
    • View Profile
  • BitShares: nikolai
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.)

Um, I'm not very technical, but something like that.

Well remember that with TAPOS the chain with the most votes piled on is the winner no matter what. Automatic "exception" mechanism for if forks happen due to bad directors.
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 Empirical1

  • Hero Member
  • *****
  • Posts: 884
    • View Profile
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 »

Offline bytemaster

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 muse-umum

  • Hero Member
  • *****
  • Posts: 717
  • BitShares everything
    • View Profile
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

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 toast

  • Hero Member
  • *****
  • Posts: 4001
    • View Profile
  • BitShares: nikolai

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 biophil

  • Hero Member
  • *****
  • Posts: 880
  • Professor of Computer Science
    • View Profile
    • My Academic Website
  • BitShares: biophil

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.
Support our research efforts to improve BitAsset price-pegging! Vote for worker 1.14.204 "201907-uccs-research-project."

Offline amencon

  • Sr. Member
  • ****
  • Posts: 227
    • View Profile
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 bytemaster

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 stuartcharles

  • Sr. Member
  • ****
  • Posts: 281
    • View Profile
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 davidpbrown

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 bytemaster

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

What would the default vote be - random to those who've signed up to signing blocks or null?
฿://1CBxm54Ah5hiYxiUtD7JGYRXykT5Z6ZuMc

Offline bytemaster

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.