Author

Topic: "Proof of Stake" to vote for soft forks? (Read 739 times)

legendary
Activity: 3906
Merit: 6249
Decentralization Maximalist
March 18, 2017, 02:56:50 PM
#5
You could design a system (website?) where people can vote with signed messages. The signatures and balances could easily be verified.

A web site would be too centralized and unsecure to record a vote for an important development update.

What would be maybe possible is a sidechain that records only PoS votes. It could be merged mined with the Bitcoin blockchain and only "live" as long as the vote lasts.

A challenge is to ensure the miners secure the sidechain, to prevent manipulation by "double-spent votes". So an agreement must be reached with them or an incentive system established. But I think security requirement for this sidechain should also not be too high, as manipulation can be easily detected afterwards, and then the vote could be repeated or the double-spent votes would have to be deleted.

Another challenge is to find a time interval for the balances being "recorded". One could solve it determining a fix block for this, and everyone wanting to vote must prove that he owned the UTXOs at that point of time.

Quote
The biggest problem I have with something like this is that it gives exchanges (or centralized wallet services, do any still exist?) an extremely heavy vote, while users with deposits at such places get no vote.

That's also a problem, that's why I think PoS should never be the only form to vote. In the case of soft forks, I would split it 50% PoS and 50% miner agreement (both over 75%, better over 90%).


Quote
I think there was something like this at one point. Perhaps it still exists?

Don't remember. Anyone knows?

(Perhaps the "withdrawal" of the proposal was premature. The sidechain idea is intriguing me, would love more input to it.)
legendary
Activity: 1120
Merit: 1012
March 17, 2017, 08:14:54 PM
#4
You could design a system (website?) where people can vote with signed messages. The signatures and balances could easily be verified.

The biggest problem I have with something like this is that it gives exchanges (or centralized wallet services, do any still exist?) an extremely heavy vote, while users with deposits at such places get no vote.

I'm kind of making myself look like a hypocrite with the above statement since I truly believe the statement in my sig. Grin

I think there was something like this at one point. Perhaps it still exists?
legendary
Activity: 3906
Merit: 6249
Decentralization Maximalist
March 17, 2017, 06:30:08 PM
#3
I've read a bit in the 2013 discussion and I think now that it would not be a good idea, so I'm already withdrawing the proposal (and won't bump it, with one exception: if there exists an alternative implementation not using on-chain transactions).

The reason is that the only practical way to implement it would be using a new transaction type (using OP_RETURN) and these transactions would have to be recorded in the blockchain. That means, every user who is in power of an UTXO would have to conduct a transaction to vote. With millions of users, that would result in a high degree of blockchain bloat (~1000 blocks full of votes). So it would make actual problems even worse.

You could attach the vote to an existing transaction, but the result would be the same: Everyone who wants to vote must transact.

member
Activity: 117
Merit: 10
March 17, 2017, 05:56:36 PM
#2
Ok, well that's sounds promising and i don't think it's hard to implement
legendary
Activity: 3906
Merit: 6249
Decentralization Maximalist
March 17, 2017, 05:03:30 PM
#1
Just a quick thought, it may be complete bullshit:

Would it be possible to implement a Proof of Stake voting system in Bitcoin for soft forks?

The users would then be enabled to vote with their unspent balances (UTXOs) for or against a soft fork. An example: If 95% of the voting balance votes for a soft fork, then it can be enabled.

It could also combined with the current soft fork mechanism, letting the "holders" and the miners "vote" for it (I know, technically spoken the "Ready" signalling is not voting, but de facto it is).

The technicals could be complex, but I'm writing this as an alternative to the current system where miners are de facto given too much power to decide on critical protocol updates. It could also encourage developers to seek approval before they realize soft fork changes.

Edit: Have found this discussion from 2013 in the developer mailing list. Will read it first.
Jump to: