Every Transaction is a Vote

12 184
Avatar for CapitalFlight
3 years ago

We dream of a form of bitcoin that isn't owned and operated by any particular person or company, but fighting for this dream of decentralized design is starting to feel like a fool's errand. Those of us who believe in the original community-driven direction of bitcoin are being left to squabble amongst ourselves as the market continues to sprout businesses (Blockstream, nChain, ABC) with tight control over their product (BTC, BSV, ABC-coin).

We threw off the chains of Blockstream and put on the chains of ABC

ABC found themselves in the position they're in now because we did not have a better answer to the "who decides" question. This community gave "Mr. Schelling Point" himself the very weapon he is now using against us. It did the one thing it is so vehemently against, granting full authority to a single central entity. We cannot afford to make the same mistake again. If we do not want CorporateCoin™ then we MUST solve governance.

At this point it seems clear to me that ABC are now "pulling an nChain" by forking away and taking a chunk of the community with them. I'm grateful that BCHN has provided a path for bitcoin to escape the dictatorial control of ABC, but it has not solved the root of the original problem. The BCH community is pushing for BCHN to become BCH's lead implementation while simultaneously claiming that we don't want a single entity deciding bitcoin's future (as ABC is attempting to do). And so, without a well defined alternative form of protocol governance, the users of Bitcoin Cash are simply left with no other choice but to accept a new overlord.

Who Decides?

Relying on miners to protect the ideologically pure version of bitcoin is almost certainly foolish. We have ample evidence that miners don't want to be the sole deciders of a coin's future.

While some folks would have you believe that the opinions of the users of the network are nothing more than noise, I believe that if the miners know what the community wants then they will mine what the community wants. Currently, the only way to see the preferences of the users is to go digging through various websites & forum posts or sit back and watch as users leave the network and transaction counts drop. This is terribly inefficient and inevitably results in a protocol that just keeps forking forever.

More Voice, Less Exit

It could be argued that every transaction is a vote in favor of:

  • The protocol as a whole

  • The protocol's current design

  • The team of developers who wrote the current version of the protocol

If this is true then why not simply expand upon this foundation? Just as miners have found their own voice by signaling their preferences in the coinbase message, I'd like to see users voice their preferences in the OP_Return of every transaction they broadcast. Miners will always mine whatever they choose, but if the overwhelming majority of the transactions they mine are screaming "BCHN!" in their OP_Return, the future direction of the protocol should be much clearer to everyone.

BCH wallet software should include a setting allowing users to express their preferences every time they send a transaction. Within the OP_Return a user would be able to express as much or as little of their preferences as they choose (within the OP_Return size limit). A user could, for example, express their support for a particular software, proposal, person, team, or nothing at all. Once a preferred message is set, all of a user's future transactions would include the message.

No wallet would be required to offer this setting, but users who care to have a voice won't use a wallet that gives them no voice.

User preferences would be measured by the sum of transactions containing a particular message and/or they could be weighed by the size of the wallet that sent the transaction.

Not a complete solution, but a foundation for one

The system is only a means of providing more information on user preferences, it is not binding. If someone tries to game the system by spending millions on a campaign in support of siphoning 80% of the coinbase to himself, let him. Miners should rightfully disregard the message and move on.

This would not be a complete solution to the question of governance, rather a foundation to build on. No Fork would be necessary to allow this function, only upgraded wallet software. In the future, the system could potentially be made binding in some way, but that would likely require a fork.

If we want a version of bitcoin that is driven by its community then we have to create it. Unfortunately, it does not yet exist. I believe the first step in solving governance is giving the users of the network a voice.

54
$ 6.94
$ 5.00 from @tula_s
$ 1.08 from @TheRandomRewarder
$ 0.50 from @ErdoganTalk
+ 3
Avatar for CapitalFlight
3 years ago

Comments

When I started reading your article, I thought maybe you hadn't seen the BMP proposal (@AskTheBMP) and were suggesting something similar. However, I agree that this would be manipulable. It would need to be weighted somehow, perhaps same way inputs are weighted with priority along with others.

$ 0.00
3 years ago

That's an interesting thought. Of course we would have to think about how it could be gamed. A determined individual could flood the blockchain with thousands of transactions supporting something the community does not want. I'm sure there are lots of other considerations as well.

$ 0.00
3 years ago

That would cost that individual a lot. Plus that individual is a bch holder therefore his opinion is valid, he is part of the community.

$ 0.00
3 years ago

Transaction fees are minimal and you can send yourself lots of small transactions over and over or one big one over and over, so as long as a different address is used every time, it might not be difficult to make these transactions indistinguishable from others without monitoring of something other than the blockchain itself.

$ 0.00
3 years ago

how is transaction fees being minimal related to this? you are right, in what you say, but it is not relevant to what i said. but i would agree that fee voting might be somewhat redundant to coin voting, if that is what you wanted to imply.

$ 0.00
3 years ago

I'm a bit confused here because it seems "fee voting" just dropped into the conversation. I don't see it mentioned in the article or the comment you replied to before mine. You said that thousands of transactions for vote manipulation would cost a lot. I'm saying that if a vote consists of the script in the transaction and is equally weighted with no consideration for age or size of the inputs, then manipulation isn't expensive because each transaction is a vote and the fees aren't expensive. If I did my math right, a thousand votes might cost less than two dollars.

$ 0.10
3 years ago

if a vote consists of the script in the transaction and is equally weighted with no consideration for age or size of the inputs,

transaction voting implies weighting by fee or BitcoinDaysDestroyed. You are right, the article does not mention it indeed. I automatically assumed it, sorry my bad.

$ 0.00
3 years ago

Weighting by fee would be pay-to-vote, so that seems like a non-starter. Is BDD based on input age/priority, transaction size, or something else? If it's based on transaction size, my point would still stand (more than one output can go to the same address in the same way more than one input can come from the same address). If it's based on age/priority, then voting on one issue would reduce your clout for voting on the next issue. That seems problematic and potentially socially manipulable. Perhaps transaction voting is a non-starter to begin with?

$ 0.00
3 years ago

Weighting by fee would be pay-to-vote, so that seems like a non-starter.

everything is pay to vote, including coin and hash voting (and twitter voting, ..)

Is BDD based on input age/priority,

BDD = amount * age

voting on one issue would reduce your clout for voting on the next issue.

what makes you think so? you dont need to move the coins to vote

$ 0.00
3 years ago

everything is pay to vote, including coin and hash voting (and twitter voting, ..)

Miners pay to hash, but they earn money hashing, the ability to vote with hash doesn't inherently involve spending. Put simply, I think that a vote only being worth whatever you spend on a transaction fee might discourage a pretty important demographic from voting.

what makes you think so? you dont need to move the coins to vote

Unless I'm misunderstanding something else, that implies no transaction. Voting by stake, perhaps, but not voting by transaction.

$ 0.00
3 years ago

Put simply, I think that a vote only being worth whatever you spend on a transaction fee might discourage a pretty important demographic from voting.

ah ok, i thought your concern is that you can buy more voting power. (Which is also true for hash voting etc.)

Unless I'm misunderstanding something else, that implies no transaction. Voting by stake, perhaps, but not voting by transaction

yes, you dont need to make a transaction to vote by coin age. See the CoinDays tab here https://votes.cash/. You are right in case of transaction voting by CoinDays. However every transaction voting scheme assumes that there wont be significant amount of manipulators (because they can vote by their UTXOs more conveniently).

$ 0.00
3 years ago