13

I've been asking this in the comments, but I'll be more direct.

If a third-party Bitcoin client, say "iBitcoin" (for example), becomes the dominant client by acquiring most of the market share, what would keep the vendor from unilaterally changing the Bitcoin protocol to their own advantage?

The question

Consider the following:

  1. iBitcoin gains 75% market share because, well, it's so awesome

  2. At some point the vendor decides to change the rules so that it starts mining its own branch on the blockchain, but with a block creation fee that's significantly higher and can be adjusted at will. (See rules below)

  3. iBitcoin users don't care because they are still able to exchange bitcoins back and forth with users of other clients, nor do users of other clients care. It's all hunky-dory in Bitcoin land. (See rules below)

Here are the rules that iBitcoin follows:

  1. The iBitcoin branch is a copy of the main branch, block for block, with the exception that a second coinbase transaction is included paying out to the iBitcoin vendor's address. All coins in the iBitcoin branch can now trace their origin back to either the main coinbase or the secondary coinbase. Let's call these extra coins "new bitcoins" (BTC2). The main branch won't accept transactions from these coins, but that's OK.

  2. Proof-of-work is eliminated in favor of the vendor's digital signature. Block signing happens on a central server.

  3. To keep things simple, a transaction can include as its inputs either bitcoins (BTC) or "new bitcoins" (BTC2) but not both

Now the UI shows new bitcoins separately so that the user knows that these new bitcoins can't be paid to someone who uses a different client (like the Satoshi client), but they can be paid to another iBitcoin user. In other words, iBitcoin users accept payments in BTC or BTC2, others accept only BTC. The two currencies trade separately on the exchanges.

Thanks to the network effect, almost everyone eventually switches over to iBitcoin (or a compatible client). Gresham's law says BTC eventually becomes an item to be hoarded, just like gold, whereas BTC2 is used for day-to-day commerce, just like the dollar.

Please explain flaws in my design of iBitcoin and why it won't work.

Are we in trouble?

What keeps this from happening? As it see it: nothing. It's going to happen eventually. I call it the "embrace and extend" attack.

If this indeed works (and that's my question), then the vendor doesn't even need 75% market share to begin with. It could start with 5% market share and a scheme for giving out 100 BTC2 for every new sign-up, along with a referral scheme so that users have an incentive to bring in more users. Since BTC2 is pretty much created out of thin air, the rewards could be increased until a significant adoption rate has been achieved. Rewards could also be in BTC instead of BTC2, or even in US dollars for that matter. Achieving adoption is no big deal.

Also note that "BTC2" is the red herring here. It's not about creating an alternate currency, it's about creating an alternate blockchain that is controlled by the vendor. Hash power is overrated; if you control the clients, you own the game.

Back to the question: What keeps this from happening?

If the answer is that the Bitcoin community would never accept such a thing, well, sure, I'm sure the "World Wide Web" community said the same back when Microsoft was still working on Internet Explorer 1.0. I wonder how things would have turned out had the US Department of Justice not stepped in.

If the answer is that a Bitcoin client that deviates from the rules of the Bitcoin protocol is not really a Bitcoin client, again, that's like saying a web browser that does not render HTML as per the rules set out by the W3C is not really a web browser. It's technically correct, but it doesn't mean anything. For all practical purposes the version of Bitcoin that has the majority of the market share is the "real Bitcoin."

So I hope that I'm wrong and that there is in fact a defense built into the protocol.

8

What you are describing there is a client that is a hybrid of Bitcoin and something else.

For instance there is nothing to stop you starting ManishCoin and writing a ManishBitcoinSuperClient. If you can get enough people to believe in ManishCoin then it becomes a useful currency.

2

So I hope that I'm wrong and that there is in fact a defense built into the protocol.

Why do you need a defense against people having what they want? If people prefer such a system to Bitcoin, then they should leave Bitcoin for this system. People should have what they want.

"People want it but shouldn't have it for their own good" is not an argument people should accept.

  • Fair enough! I guess the best defense is education. – Manish Apr 2 '13 at 0:06
1

Where Bitcoin happens is not in the iBitcoin client, but in the mining process. If you take this into account, this is exactly what all the talk about the 51% attack means. If not, then @jim618's answer applies: you'd be using something else than Bitcoin.

And Bitcoin is not only the client, it's the whole infrastructure of exchanges, payment processors, vendors etc. Microsoft didn't turn the internet into Micronet either.

  • Google is doing a good job of turing it into Googlenet though. – user253751 Aug 21 '16 at 21:08
0

Okay, supposing Pear inc do create iBitcoins using the protocol you suggest. I would expect that BTC2 would plummet on the currency exchange relative to BTC.

Here's why:

  • BTC2 can be printed by Pear inc and nobody trusts them.
  • 1BTC2 must be worth < 1BTC since the spender could just spend the BTC directly in the BTC2 blockchain
  • 1BTC2 must be worth < 0.5 BTC since the spender could swap the BTC in the BTC blockchain for another BTC after spending it in the BTC2 blockchain
  • 1BTC2 must be worth < 0.25 BTC for similar reason
  • and so on

Of course, this only shows that the particular "embrace, extend, extinguish" attack you describe will not work. They may be others that will. What I think is needed is a Bitcoin vulnerability database....

0

Any attempt to change the rules so that previously invalid transactions are now valid results in a fork. Having 75% of the world hashing power but being on a fork that 75% of the people won't accept is not very useful.

-1

This would amount to a Trojan. The only difference between the "attack" you're describing and a legitimate version upgrade is whether people are aware of the changes they've agreed to, and that depends on how closely the behaviour and code are being scrutinized by the community and whether the distribution chain is trustworthy. This probably has a lot to do with why nontechnical people tend to distrust cryptocurrency and what's built on it.

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.