Bitcoin Forum
May 05, 2024, 01:56:46 PM *
News: Latest Bitcoin Core release: 27.0 [Torrent]
 
   Home   Help Search Login Register More  
Pages: 1 2 3 [All]
  Print  
Author Topic: what (technically) enforces bitcoin not to exceed 21 million cap?  (Read 4858 times)
rojuwah (OP)
Member
**
Offline Offline

Activity: 98
Merit: 10


View Profile
February 16, 2014, 03:22:24 PM
Last edit: February 16, 2014, 03:39:36 PM by rojuwah
 #1

Though I believe I have read quite a lot about Currency Supply, I realized I do not know sufficiently and do not feel satisfied. Some Scenarios;

1) client side: Say more than 51% total hash power of bitcoin client runners agreed to run a client that gives say 50 block reward instead of 25. Would this cause a fork in the chain? (I do not ask if clients would choose this or not, actually two largest pools can choose to agree on any kind of client if they want to). What incentives would keep majority of clients doing this apart from good will?

2) dev team side: Maybe more importantly, does anything prevent the bitcoin dev team to change the block reward halving to something else than they previously announced? What prevents them from NOT going towards the 21million cap. Are they technically able to reconfigure the next version of bitcoin clients for exceeding 21mil if they want so? In other words, can the dev team enforce say something like 1% yearly inflation if they want to?

edit: I stress that the question is not `would dev team...`, it is `can dev team...`.

thx for answers, cheers.
If you want to be a moderator, report many posts with accuracy. You will be noticed.
Advertised sites are not endorsed by the Bitcoin Forum. They may be unsafe, untrustworthy, or illegal in your jurisdiction.
itogo
Full Member
***
Offline Offline

Activity: 141
Merit: 100


View Profile
February 16, 2014, 03:27:21 PM
 #2

this is not technics, but mathematics

21 million - is so-called "asymptote". You know what is asymptote from school (the simples example is function y=1/x)

The quantity will never EVEN REACH the asymptote.
rojuwah (OP)
Member
**
Offline Offline

Activity: 98
Merit: 10


View Profile
February 16, 2014, 03:35:56 PM
 #3

not the type of answer I was hoping to get. I think the question is clear. The thing that quantity never reaches 21mil is because of diminishing block rewards. And the diminishing block rewards is written in client. And the new version of client is redistributed each time by bitcoin developers. See the point?
Exbuhe27
Newbie
*
Offline Offline

Activity: 27
Merit: 0


View Profile
February 16, 2014, 03:41:57 PM
 #4

Sure, the idea is pulled from asymtotes, but it's still implemented discretely/technically.

I don't think the people running just clients could do much about it - it's the miners who have to verify and record transactions including genesis transactions.

It is just coded in though - every time the block award adjusts all the software of miners/full nodes just "agrees" that the new block reward is halved. Eventually it just drops to zero - which is also coded in (distant future, beyond our lifetimes, and probably much much beyond the lifetime of this version of bitcoin).

As for just "deciding" to run another version of the code, what would happen is two separate networks would form - the Bitcoin-Old-Reward network and the Bitcoin-New-Reward network. Everyone would have to decide which network they wanted their coins to be on - and if the reward was increased every block, a lot of end users would choose to be on the old network where their coins would be perceived as more valuable. Miners are another story.

I think if some miners decided to make a change like that though, it would create an inconsistent separate network. The new coins generated on each network wouldn't be transferable = little incentive and no danger to rest of network.

Edit to your edit:

So yes, the dev team *can* create a different version of the client - then what we would have is just another alt-coin that some people decide to switch over to.
DannyHamilton
Legendary
*
Offline Offline

Activity: 3388
Merit: 4616



View Profile
February 16, 2014, 04:20:09 PM
 #5

what (technically) enforces bitcoin not to exceed 21 million cap?

Consensus.

1) client side: Say more than 51% total hash power of bitcoin client runners agreed to run a client that gives say 50 block reward instead of 25. Would this cause a fork in the chain?

Yes. The miners with 49% of the hashing power would continue mining bitcoin and would therefore have 100% of the bitcoin hashing power. The miners with 51% of the hashing power would be mining some new crypto-currency that is a hard fork of the bitcoin blockchain.  They might try to call their new crypto-currency "bitcoin", but unless they can convince a significant majority of ALL USERS to switch to their inflate-a-coin currency, they will simply be mining an alt-coin that might have some niche appeal to a small subset of users.

What incentives would keep majority of clients doing this apart from good will?

The fact that most users and businesses are likely to continue to use the widely used and widely accepted bitcoin instead of yet another alt-coin.  If a market ever does develop for inflate-a-coin, since it is a fork, many people will sell all their inflate-a-coin balances from the forked chain to increase their bitcoin holdings.  This is likely to crash any inflate-a-coin value that starts to develop.

2) dev team side: Maybe more importantly, does anything prevent the bitcoin dev team to change the block reward halving to something else than they previously announced? What prevents them from NOT going towards the 21million cap.

They can write any code they want.  The tricky part will be convincing everybody to use their new inflate-a-coin software wallet.  At that point, it's just yet another alt-coin.  People who believe in bitcoin will continue to use the old software, and new developers will come along to maintain it.  Meanwhile all the developers that decided to create the inflate-a-coin software will be left maintaining software for an alt-coin that forks from bitcoins.

Are they technically able to reconfigure the next version of bitcoin clients for exceeding 21mil if they want so? In other words, can the dev team enforce say something like 1% yearly inflation if they want to?

Technically? Absolutely.  There are already hundreds of alt-coins that do exactly that.  Of course, I wouldn't call it "Bitcoin", but I suppose they might if they wanted to try to cause confusion between their alt coin and the original bitcoin.
cr1776
Legendary
*
Offline Offline

Activity: 4032
Merit: 1299


View Profile
February 16, 2014, 04:38:39 PM
 #6

Everyone would have to decide which network they wanted their coins to be on...

Just to be clear, in a fork of the blockchain and the client like this, the coins would be on both sides of the fork - the value of one side would probably be different that the other, but you'd have coins in both forks, however many coins you had at the point of the fork. 

Then you could decide what to do with each - I think many would sell the inflation-coin fork, but who knows.
Exbuhe27
Newbie
*
Offline Offline

Activity: 27
Merit: 0


View Profile
February 16, 2014, 05:25:21 PM
 #7

Good clarification.

Coins you minted/spent going into the fork would be available on both sides - spending them on one side would not mean spending them on the other.

But coins minted/spent after the fork would not suddenly become available on the other side at the new address. Anything that happens after the fork becomes harder and harder (as more blocks are found) to reconcile with the other side - eventually you would (for all intents and purposes) end up with Bitcoin and an Altcoin.
bitbouillion
Sr. Member
****
Offline Offline

Activity: 868
Merit: 250



View Profile
February 16, 2014, 06:50:00 PM
 #8

spending them on one side would not mean spending them on the other.
How is it determined on which chain of the fork a transmit applies? Such a fork does not change the transmit protocol.

DannyHamilton
Legendary
*
Offline Offline

Activity: 3388
Merit: 4616



View Profile
February 16, 2014, 06:53:31 PM
 #9

But coins minted/spent after the fork would not suddenly become available on the other side at the new address.

Actually, if you send a transaction on one fork that spends an unspent output from the pre-fork chain, then the recipient of the transaction (or anyone else if they want to) can re-transmit the exact same transaction on the other fork as well.  So if you make a payment to someone with inflate-a-coin using pre-fork coins, then those same coins can be forced to be sent to that same address in the bitcoin network as well.
Exbuhe27
Newbie
*
Offline Offline

Activity: 27
Merit: 0


View Profile
February 16, 2014, 08:34:03 PM
 #10

Yeah, assuming someone is sitting there cross broadcasting the transactions between the networks from the start, which isn't too unlikely I suppose (given that there are people posting mutated transactions pretty easily).

Over time though as they miss transactions here and there, or if they start too late, it will become harder and harder to do that (because it could register as a double spend on the network they are broadcasting to).

One other complication that may arise will be that miners will find blocks at different times on each chain - and since it's up to the miners which transactions they include, you'll see blocks with much different contents generated on each side over time. And you may see a transaction go through both chains, which is then confirmed on one chain but the tx-fee wasn't high enough for the other chain for quite some time and it remains unconfirmed over there for a while.

I dunno, overall it would be pretty interesting. But I think incentive to do this for monetary gain or for maliciousness towards bitcoin is pretty low. I would like to see what happens in a system where the chain is forked and two different rulesets/incentives are being applied, but every or some transaction(s) are cross-broadcast. I think one of the coins would drop to zero value and quickly die off, but I'm not sure.
maaku
Legendary
*
expert
Offline Offline

Activity: 905
Merit: 1011


View Profile
February 16, 2014, 09:29:43 PM
 #11

Clients do not vote on protocol rules... They rigidly enforce them.

I'm an independent developer working on bitcoin-core, making my living off community donations.
If you like my work, please consider donating yourself: 13snZ4ZyCzaL7358SmgvHGC9AxskqumNxP
DeathAndTaxes
Donator
Legendary
*
Offline Offline

Activity: 1218
Merit: 1079


Gerald Davis


View Profile
February 16, 2014, 09:32:21 PM
Last edit: February 16, 2014, 09:54:15 PM by DeathAndTaxes
 #12

Consensus.

This.  Sure anyone can make a new client which changes the Bitcoin protocol.  One way of looking at it is that altcoins are an example of this.   However nothing can force existing users to adopt the new "changed" client.   As long as they don't, their existing clients will reject blocks and transactions which violate their rules.

Anyone can fork Bitcoin, nobody can fork force you to use that fork.
DeathAndTaxes
Donator
Legendary
*
Offline Offline

Activity: 1218
Merit: 1079


Gerald Davis


View Profile
February 16, 2014, 09:35:48 PM
 #13

spending them on one side would not mean spending them on the other.
How is it determined on which chain of the fork a transmit applies? Such a fork does not change the transmit protocol.

It doesn't matter a given transaction over time will only be valid on one fork or another.

For example the coins from the first block after the fork would only be valid on the fixed reward fork.  Nodes on the the original fork would see it as invalid.

This also means any spend which uses those coins would also only be seen as valid on one fork.   Since the input of any tx is the output of prior tx it also invalidated all subsequent tx which use the change from that transaction.

While at day 0 most tx will be valid on both halves of the fork, like a metaphorical fork in the road, the two chains will diverage over time and eventually the vast majority of transactions will only be valid on a single fork.



DannyHamilton
Legendary
*
Offline Offline

Activity: 3388
Merit: 4616



View Profile
February 16, 2014, 09:51:40 PM
 #14

Anyone can fork Bitcoin, nobody can fork you to use that fork.

nobody can fork you

fork you

Every once in a while I find my self entertained by something like this.  Then I think "What am I? 12 years old?".
maaku
Legendary
*
expert
Offline Offline

Activity: 905
Merit: 1011


View Profile
February 16, 2014, 10:33:42 PM
 #15

DT, it is possible for a txn to be valid on two forks simultaneously...

I'm an independent developer working on bitcoin-core, making my living off community donations.
If you like my work, please consider donating yourself: 13snZ4ZyCzaL7358SmgvHGC9AxskqumNxP
DeathAndTaxes
Donator
Legendary
*
Offline Offline

Activity: 1218
Merit: 1079


Gerald Davis


View Profile
February 16, 2014, 10:45:23 PM
 #16

DT, it is possible for a txn to be valid on two forks simultaneously...

I never said it isn't.  Please read what I wrote.  Eventually the pool of unspent outputs which are valid on both forks will aproach zero.
dewdeded
Legendary
*
Offline Offline

Activity: 1232
Merit: 1011


Monero Evangelist


View Profile
February 17, 2014, 12:49:44 AM
 #17

I think the core devs could expand the 21 mio coin limit, if they want. They basically control the Bitcoin Foundation, this forum, alot of mining power, if they update the client >95% would update to this client with new limit.

But it's very unlikely that they would want or do it. Alot of their wealth is based on the 21 mio limit and they are motivated by greed.
DannyHamilton
Legendary
*
Offline Offline

Activity: 3388
Merit: 4616



View Profile
February 17, 2014, 12:55:49 AM
 #18

I think the core devs could expand the 21 mio coin limit, if they want. They basically control the Bitcoin Foundation, this forum, alot of mining power, if they update the client >95% would update to this client with new limit.

I think you are wrong about that.  I'd be surprised if 40% update to a client with a new limit.  I know I wouldn't, would you?

un_ordinateur
Full Member
***
Offline Offline

Activity: 157
Merit: 100


View Profile
February 17, 2014, 07:16:06 AM
 #19

I really think it is about concensus. Changing the 21 million cap would be -huge- change, so it would have to be agreed by almost everybody. I do think 95%+ would be reasonable. Once accepted, the 5% left would not have very much of a choice to change because their economy would be very small and unuseful, their "oldcoins" would be worth noting.

THAT BEING SAID.

1. 95% of users does not mean 95% of miners. But it is the miners that enforce the rules. If 95% of the miners agreed, there is not much we could do, because we rely on them for network security.

Even if all the users chose to stay with the "old" bitcoin, any big miner of the "new" bitcoin could easily perform a 51% attack on the "old" chain, rendering it useless. So users are forced to go with the "new" coin.

2. I do believe that at some point on the future, the 21 million cap will be removed; for many reasons:
  a) Economic: Many economists believe that a low (and predictable) inflation is better that deflation. inflation incites investment, deflation incites hoarding. (I do no trust wall street/bankers, but I do trust economics sciences textbooks) But to be honest, I don't really think that anybody really know how an deflationnary economy by design might work. So we'll see.
  b) Miners greed: Why not have transaction fees AND generation!
  c) Miners are a security service, they need money: Miners need to be paid. HUGE amout of electricity need to be spent in order to run all these devices. If block reward dissapeared RIGHT NOW, miners would only rely on transaction fees to run. Most of them would stop mining, because it is no longer profitable. But all those unused hashing hardware might fall in the wrong hand, may be used toward a 51% attach.
Holliday
Legendary
*
Offline Offline

Activity: 1120
Merit: 1009



View Profile
February 17, 2014, 07:41:36 AM
 #20

If 95% of the miners agreed, there is not much we could do, because we rely on them for network security.

https://en.bitcoin.it/wiki/Economic_majority

If you aren't the sole controller of your private keys, you don't have any bitcoins.
un_ordinateur
Full Member
***
Offline Offline

Activity: 157
Merit: 100


View Profile
February 17, 2014, 02:13:29 PM
 #21

If 95% of the miners agreed, there is not much we could do, because we rely on them for network security.

https://en.bitcoin.it/wiki/Economic_majority

Yes, but in turn, if no miner wants to mine the transactions with the "old" rules, then there is no value in those coins either. There's a sort of equilibirum to be found: The rules cannot be determined by miners alone, nor can it be determined by users alone; because then the other party won't be there to do it's job. There must be a consensus in which most of the users AND most of the miners agree.

rojuwah (OP)
Member
**
Offline Offline

Activity: 98
Merit: 10


View Profile
February 17, 2014, 02:36:32 PM
 #22

thx for all the replies. I guess in case of a 1% inflation rate change kind of a thing on bitcoin, bitcoin foundation should better ask people and get consensus first to prevent any confusion on the imposing. I do not see any advantage at least befare 5 years.

I think it is slightly misleading to say that bitcoin is 100% decentralized since nothing can be 100% decentralized. There must be people developing, improving and maybe even regulating/altering it over time (what we call core dev team). So the protocol runs decentralized but the development is not and probably can not or maybe even should not (arguable). Some more questions;

1) BTW, a lesser known fork has happened in the history of bitcoin while updating clients. https://eprint.iacr.org/2013/829.pdf I really really wonder what happened to transactions issued by the clients on the wrong forked which is abandoned later. Did anybody loose anything (in case anyone has information)? Guesses? Recently a fork caused by a similar client update issue happened to doge as well.

2) an apocalypse scenario: FBI busted dev team and jailed them(well I know, not probable any more especially after kanye west, kaiser and another private company ripples came up with their own currencies but just say so, it might be easy if FBI choses so since the core developers are pretty public, we know them by their names etc.) What I guess is that bitcoin price would crush first(would be the 5th major crush), and it is probable that some consensus is formed on the internet by non-official developers, and bitcoin would go on, and increase in value over time. Your guess about how this would happen? Do you see such a consensus forming probable? Regards..
DannyHamilton
Legendary
*
Offline Offline

Activity: 3388
Merit: 4616



View Profile
February 17, 2014, 03:29:53 PM
 #23

thx for all the replies. I guess in case of a 1% inflation rate change kind of a thing on bitcoin, bitcoin foundation should better ask people and get consensus first to prevent any confusion on the imposing. I do not see any advantage at least befare 5 years.

And I and MANY others do not see an advantage at all.  If people want a coin that can be inflated, then they shouldn't be choosing bitcoin at all.  Those who choose bitcoin, are choosing a coin that is well known to have a very specific inflation schedule.  Therefore, since they are choosing to use it, it MUST be something they are willing to accept.  I just don't see a very large percentage of the userbase (or minerbase) accepting such a change.  The "Bitcoin Foundation" is a self-appointed club that can do whatever they want.  They are not "bitcoin" and they do not control "bitcoin".  You can create a club of your own with your friends and you can call your club "The REAL Bitcoin Foundation".  You will have just as much authority and control as they do.

I think it is slightly misleading to say that bitcoin is 100% decentralized since nothing can be 100% decentralized. There must be people developing, improving and maybe even regulating/altering it over time (what we call core dev team). So the protocol runs decentralized but the development is not and probably can not or maybe even should not (arguable).

Anybody can make changes to the software.  There is no centralization in the matter.  The Bitcoin Foundation has software that their club manages, but you can start your own club and maintain your own version of the software and nobody can stop you.  I can do the same, and nobody can stop me.  Then users can choose which version of the software has the features that they desire.

1) BTW, a lesser known fork has happened in the history of bitcoin while updating clients. https://eprint.iacr.org/2013/829.pdf I really really wonder what happened to transactions issued by the clients on the wrong forked which is abandoned later. Did anybody loose anything (in case anyone has information)? Guesses?

There is a small chance that some of the transactions were double-spent to a different address in the fork that eventually became the consensus fork, but the vast majority of transactions would have eventually confirmed in both forks, just like they do every time there is a fork.  (Note: forks happen ALL the time. It's been a long time since I've looked at the statistics, but I'd expect the blockchain to fork several times per week. Most of the time the forks last for just 1 or 2 blocks before the network settles on a consensus.  This is not unusual.  It is part of the design of Bitcoin.)


2) an apocalypse scenario: FBI busted dev team and jailed them(well I know, not probable any more especially after kanye west, kaiser and another private company ripples came up with their own currencies but just say so,

They don't all sit in an office somewhere.  They are all over the world.  Even so, if EVERYONE that has EVER contributed to the bitcoin software was all eliminated on the same day, there are MANY other qualified computer programmers that are willing and able to continue to maintain the bitcoin software.  They would simply need to be MUCH more careful about hiding their identities.

it might be easy if FBI choses so since the core developers are pretty public, we know them by their names etc.)

I don't think this is true.  Can you prove that you know the full legal name of EVERY person that has ever contributed any code to the bitcoin software?  Even if you had that, you'd need a lot more to find the actual person that made the change.  Do you have any idea how many people in the world are named Daniel Hamilton?

What I guess is that bitcoin price would crush first(would be the 5th major crush), and it is probable that some consensus is formed on the internet by non-official developers, and bitcoin would go on, and increase in value over time.

There is no such thing as an "official developer" in bitcoin.  The idea of a "core developer" is just a developer who contributes often.  That doesn't make him "official".  If he stops contributing, and someone else begins contributing, then the new person becomes a "core developer".

un_ordinateur
Full Member
***
Offline Offline

Activity: 157
Merit: 100


View Profile
February 17, 2014, 05:52:21 PM
 #24

thx for all the replies. I guess in case of a 1% inflation rate change kind of a thing on bitcoin, bitcoin foundation should better ask people and get consensus first to prevent any confusion on the imposing. I do not see any advantage at least befare 5 years.

And I and MANY others do not see an advantage at all.  If people want a coin that can be inflated, then they shouldn't be choosing bitcoin at all.  Those who choose bitcoin, are choosing a coin that is well known to have a very specific inflation schedule.  Therefore, since they are choosing to use it, it MUST be something they are willing to accept.  I just don't see a very large percentage of the userbase (or minerbase) accepting such a change.  The "Bitcoin Foundation" is a self-appointed club that can do whatever they want.  They are not "bitcoin" and they do not control "bitcoin".  You can create a club of your own with your friends and you can call your club "The REAL Bitcoin Foundation".  You will have just as much authority and control as they do.

People who chose bitcoin may have chosen bitcoin because of the decentralised and irreversible nature. For me, I don't care about the 21 million cap. I know that some people did chose the bitcoin for that though, so I don't expect (nor hope) that that change that in the short term.

But I -do- hope that if, maybe in 20 years, it is realised that a non-inflationary coin does't make a workable economy; if it hinders bitcoin, then people would be willig (by concensus) to change that rule. If ratianal and scientific arguments suport a change, people should not dogmatically stick to an idea, for the only reason that it would be changing how the coins was designed 20 yrs ago. Bitcoin is a human creation, for humans. Designers today not cannot know the future, nor can I; so we should be ready to accept change in the future.

Bitcoin is there to serve humans; not the other way around.

1) BTW, a lesser known fork has happened in the history of bitcoin while updating clients. https://eprint.iacr.org/2013/829.pdf I really really wonder what happened to transactions issued by the clients on the wrong forked which is abandoned later. Did anybody loose anything (in case anyone has information)? Guesses?

There is a small chance that some of the transactions were double-spent to a different address in the fork that eventually became the consensus fork, but the vast majority of transactions would have eventually confirmed in both forks, just like they do every time there is a fork.  (Note: forks happen ALL the time. It's been a long time since I've looked at the statistics, but I'd expect the blockchain to fork several times per week. Most of the time the forks last for just 1 or 2 blocks before the network settles on a consensus.  This is not unusual.  It is part of the design of Bitcoin.)

In fact, there was a successful double-spend made at that fork: A merchant was successfully fooled by a transaction accepted by new software, but not by the old; but there was also a broadcasted transaction that was valid by the old network, so when miners reverted to the old software to solve the problem the double-spend transaction was the one the network accepted. Other than that there was not other reported case.

Still, there are indeed many small fork everyday, but theses are not problematic, for they are statistically expected. It is longer forks, persisting for more than 3-4 blocks that are the problem.

I think it is slightly misleading to say that bitcoin is 100% decentralized since nothing can be 100% decentralized. There must be people developing, improving and maybe even regulating/altering it over time (what we call core dev team). So the protocol runs decentralized but the development is not and probably can not or maybe even should not (arguable).

Anybody can make changes to the software.  There is no centralization in the matter.  The Bitcoin Foundation has software that their club manages, but you can start your own club and maintain your own version of the software and nobody can stop you.  I can do the same, and nobody can stop me.  Then users can choose which version of the software has the features that they desire.

2) an apocalypse scenario: FBI busted dev team and jailed them(well I know, not probable any more especially after kanye west, kaiser and another private company ripples came up with their own currencies but just say so,

They don't all sit in an office somewhere.  They are all over the world.  Even so, if EVERYONE that has EVER contributed to the bitcoin software was all eliminated on the same day, there are MANY other qualified computer programmers that are willing and able to continue to maintain the bitcoin software.  They would simply need to be MUCH more careful about hiding their identities.

What I guess is that bitcoin price would crush first(would be the 5th major crush), and it is probable that some consensus is formed on the internet by non-official developers, and bitcoin would go on, and increase in value over time.

There is no such thing as an "official developer" in bitcoin.  The idea of a "core developer" is just a developer who contributes often.  That doesn't make him "official".  If he stops contributing, and someone else begins contributing, then the new person becomes a "core developer".

That's not entirely true. The Bitcoin developpemers is an organic movement. There are indeed no "appointed" leader, but still, people contributing often gain trust of the developpers, and become de facto leaders. But it is all based on trust. They -cannot- push changes by themselves, because change is based on concensus. But the opinion of those "leading" weight more in the balance. That's why most changes are coordinated by the Foundation.

But it is similar in many open source movemens. There are hundreds of Linux distros, that have forked from each other over a dissagreamenet on how to do things. Some are much more popular than the others. Still, Linus Torvald's opinion is more "trusted" than the average programmer, because he started it, the same as Satoshi has started Bitcoin.

Sometimes the lead can change entirely. Most of the developpers of OpenOffice dissagred with the "lead" a few years ago, so the all forked the project and started "libreoffice", which is now the de-facto open office suite.
rojuwah (OP)
Member
**
Offline Offline

Activity: 98
Merit: 10


View Profile
February 17, 2014, 11:37:39 PM
 #25

what incentives does a core developer have? it is not an easy job and should be taking a lot of effort that could have been turned into some income if spent otherwise. Any other thing than self-satisfaction and donations? I have heard somewhere core dev's salaries are paid in bitcoin by satoshi from the premined bitcoins, though I don't remember the source, is that true?
maaku
Legendary
*
expert
Offline Offline

Activity: 905
Merit: 1011


View Profile
February 17, 2014, 11:43:17 PM
 #26

That's not entirely true. The Bitcoin developpemers is an organic movement. There are indeed no "appointed" leader, but still, people contributing often gain trust of the developpers, and become de facto leaders. But it is all based on trust. They -cannot- push changes by themselves, because change is based on concensus. But the opinion of those "leading" weight more in the balance. That's why most changes are coordinated by the Foundation.

But it is similar in many open source movemens. There are hundreds of Linux distros, that have forked from each other over a dissagreamenet on how to do things. Some are much more popular than the others. Still, Linus Torvald's opinion is more "trusted" than the average programmer, because he started it, the same as Satoshi has started Bitcoin.

Sometimes the lead can change entirely. Most of the developpers of OpenOffice dissagred with the "lead" a few years ago, so the all forked the project and started "libreoffice", which is now the de-facto open office suite.

No single developer can push a new release version. It takes the actions of at least 3 developers and widespread consensus for this to occur. Bitcoin is not like Linux: it's not lead from the top.

I'm an independent developer working on bitcoin-core, making my living off community donations.
If you like my work, please consider donating yourself: 13snZ4ZyCzaL7358SmgvHGC9AxskqumNxP
DannyHamilton
Legendary
*
Offline Offline

Activity: 3388
Merit: 4616



View Profile
February 17, 2014, 11:44:28 PM
 #27

what incentives does a core developer have? it is not an easy job and should be taking a lot of effort that could have been turned into some income if spent otherwise.

Some do it as a hobby.  Others do it because there is a particular feature they want or bug they want fixed. Some companies or organizations will pay developers to implement specific features they want or to fix specific bugs they want fixed.  As a benefit of employment some companies pay their employees to work on open source projects a certain number of hours per month.

I suspect that "The Bitcoin Foundation" pays some developers to implement the features that the foundation's member's desire.

I have heard somewhere core dev's salaries are paid in bitcoin by satoshi from the premined bitcoins, though I don't remember the source, is that true?

That is absolutely not true.  There are no pre-mined coins in bitcoin.
Qoheleth
Legendary
*
Offline Offline

Activity: 960
Merit: 1028


Spurn wild goose chases. Seek that which endures.


View Profile WWW
February 18, 2014, 04:44:30 AM
 #28

I have heard somewhere core dev's salaries are paid in bitcoin by satoshi from the premined bitcoins, though I don't remember the source, is that true?

That is absolutely not true.  There are no pre-mined coins in bitcoin.
(And "Chancellor on brink of second bailout for banks" in the genesis block is the proof.)

If there is something that will make Bitcoin succeed, it is growth of utility - greater quantity and variety of goods and services offered for BTC. If there is something that will make Bitcoin fail, it is the prevalence of users convinced that BTC is a magic box that will turn them into millionaires, and of the con-artists who have followed them here to devour them.
sniffinpoprocks
Full Member
***
Offline Offline

Activity: 137
Merit: 100


View Profile
February 18, 2014, 12:17:42 PM
 #29


Even if all the users chose to stay with the "old" bitcoin, any big miner of the "new" bitcoin could easily perform a 51% attack on the "old" chain, rendering it useless. So users are forced to go with the "new" coin.

This sounds dumb!

Why not just start my own fork and be the only miner and attack the live fork? There's no way this could work.

“Since we decided a few weeks ago to adopt the leaf as legal tender, we have, of course, all become immensely rich.”
Abdussamad
Legendary
*
Offline Offline

Activity: 3612
Merit: 1564



View Profile
February 18, 2014, 02:42:23 PM
 #30

I think the core devs could expand the 21 mio coin limit, if they want. They basically control the Bitcoin Foundation, this forum, alot of mining power, if they update the client >95% would update to this client with new limit.
I think you are wrong about that.  I'd be surprised if 40% update to a client with a new limit.  I know I wouldn't, would you?

They could sneak in changes. For example make the client self-updating and a few versions later release this change in the upper limit of coins. The change will propagate instantly to users around the world.
un_ordinateur
Full Member
***
Offline Offline

Activity: 157
Merit: 100


View Profile
February 18, 2014, 04:10:52 PM
 #31

I think the core devs could expand the 21 mio coin limit, if they want. They basically control the Bitcoin Foundation, this forum, alot of mining power, if they update the client >95% would update to this client with new limit.
I think you are wrong about that.  I'd be surprised if 40% update to a client with a new limit.  I know I wouldn't, would you?

They could sneak in changes. For example make the client self-updating and a few versions later release this change in the upper limit of coins. The change will propagate instantly to users around the world.

1. The program is open-source. The whole world can check developpement code (and a lot do) and would notice it even before it is deployed.
2. I would be surprised if they ever implement auto-updating because many would feel that it would be a possible attack vector.
3. Even if they ever made auto-update, and some evil developper bypassed the normal procedure to "push" an update in which he would have secretly changed the block generation rules, it would not be long people would notice the change. The most likely thing that would happen then would be that people revert to the old version. The old version considers invalid the new blocks, and starts mining at the last "old" block, thus forking the chain. But after a few hours/days max, the "old" chain gets longer than the "new" one, and the changes are reverted.
un_ordinateur
Full Member
***
Offline Offline

Activity: 157
Merit: 100


View Profile
February 18, 2014, 04:22:50 PM
 #32


Even if all the users chose to stay with the "old" bitcoin, any big miner of the "new" bitcoin could easily perform a 51% attack on the "old" chain, rendering it useless. So users are forced to go with the "new" coin.

This sounds dumb!

Why not just start my own fork and be the only miner and attack the live fork? There's no way this could work.

The point is, if a vast majority (90%+) of the hashpower decide to change the rules of Bitcoin, against the will of most of the users, there is now two chains, that fork at a block X. From that point on, there is two chains:
a) The "original" chain, on which there are a lot of users, and few miners.
b) The "new" chain, on which there are a lot of miners, and few users.

Now, since it is in the economic interest of the miners that people use their chain instead of the old chain, they may very well collude to render the old chain unusable. For example, mining empty blocks, refusing to confirm transaction, or even revert transactions (since they would be in a 51%+ situation)

The users on the old chain cannot retaliate: They don't mine, or if they do, they don't have enough hashpower to significantly damage the "new" chain; and anyway, any hashpower they divert to attack the "new" chain renders theirs even more broken.

Thus the users are forced to accept the rules of the new chain; or stop using bitcoin. But in an hypothetical future where bitcoin gets a wide adoption, they might not be able to leave bitcoin.

Of course, all this is in an hypothetical scenario where miners collude to change the rules of bitcoin. We are not there now. But all I wanted to say is that if an large enough proportion of miners agree on someting, there is very few we can do against it.
Abdussamad
Legendary
*
Offline Offline

Activity: 3612
Merit: 1564



View Profile
February 18, 2014, 04:27:00 PM
 #33

I think the core devs could expand the 21 mio coin limit, if they want. They basically control the Bitcoin Foundation, this forum, alot of mining power, if they update the client >95% would update to this client with new limit.
I think you are wrong about that.  I'd be surprised if 40% update to a client with a new limit.  I know I wouldn't, would you?

They could sneak in changes. For example make the client self-updating and a few versions later release this change in the upper limit of coins. The change will propagate instantly to users around the world.

1. The program is open-source. The whole world can check developpement code (and a lot do) and would notice it even before it is deployed.
2. I would be surprised if they ever implement auto-updating because many would feel that it would be a possible attack vector.
3. Even if they ever made auto-update, and some evil developper bypassed the normal procedure to "push" an update in which he would have secretly changed the block generation rules, it would not be long people would notice the change. The most likely thing that would happen then would be that people revert to the old version. The old version considers invalid the new blocks, and starts mining at the last "old" block, thus forking the chain. But after a few hours/days max, the "old" chain gets longer than the "new" one, and the changes are reverted.

Open source does not mean that it is accessible to ordinary users. Most people don't know C++ and can't understand the code.

Auto updating would be a welcome feature for most users. Sort of like OTA updates available on android phones. The way I look at it is package managers were once looked at with hostility in the linux world but now people recommend using your distro's repos vs. installing from source.

The point I'm trying to make is that you can always count on user inertia. Ordinary users don't frequent this forum. Just look at how many were caught unawares by the recent Mt. Gox problems even though it's been brewing for months and there's this huge thread about it in the service discussion forum.
un_ordinateur
Full Member
***
Offline Offline

Activity: 157
Merit: 100


View Profile
February 18, 2014, 07:00:14 PM
 #34

Open source does not mean that it is accessible to ordinary users. Most people don't know C++ and can't understand the code.
Of course the average user does not understand C++. But MANY people check the code. I'm sure somebody would ring a bell if he found something suspicious.

Auto updating would be a welcome feature for most users. Sort of like OTA updates available on android phones. The way I look at it is package managers were once looked at with hostility in the linux world but now people recommend using your distro's repos vs. installing from source.
It would be welcome from must users, true, but it developpers don't want to do it because they feel it would be an attack vector, it won't happen.

But we'll see. Anyway, there are multiple wallets, each implementing it's own feature set. It -cannot- be made that they all use new rules together without prior concertation, which would be very unlikely to stay secret.

The point I'm trying to make is that you can always count on user inertia. Ordinary users don't frequent this forum. Just look at how many were caught unawares by the recent Mt. Gox problems even though it's been brewing for months and there's this huge thread about it in the service discussion forum.
Indeed, but users:
a) don't all use Mt.Gox.
b) Dind't care because it was not a breaking problem for ordinary user. It was a breaking problem for Mt.Gox because of poor programming.
c) If there is no auto-update, by the same inertia, they would not update immediately; and the malicious code would very likely been found at that point, and action taken.
d) Even with auto-update, the network is really dependant on miners, who are a lot more aware of Bitcoin news. clients popping transactions invalid by miners's rule will not confirm. It WILL break their wallet and they will then check for answers online where they are going to be made aware of the news.
rojuwah (OP)
Member
**
Offline Offline

Activity: 98
Merit: 10


View Profile
February 18, 2014, 11:13:38 PM
Last edit: February 18, 2014, 11:32:11 PM by rojuwah
 #35

That is absolutely not true.  There are no pre-mined coins in bitcoin.

You mean Satoshi did not premine bitcoin? What was his incentive then working 2 years on the project (probably as a team)? Good will alone? I do not mind him premine as he opened the doors of crypto-currencies literally introducing the concept/technology to the world but it would be wrong to say otherwise according to this, this, this and this.
gmaxwell
Moderator
Legendary
*
expert
Offline Offline

Activity: 4158
Merit: 8382



View Profile WWW
February 18, 2014, 11:17:51 PM
 #36

That is absolutely not true.  There are no pre-mined coins in bitcoin.

You mean Satoshi did not premine bitcoin? What was his incentive then working on 2 years on the project (probably as a team)? Good will alone? I do not mind him premine
There really was no premine and you can _trivially_ verify it for yourself. Please spend a few minutes actively investigating rather than believing charlatans on the forum, before wasting may more of ours.  This is the technical subforum, it's reasonable to expect you to be able to do a bit of your own homework.
DeathAndTaxes
Donator
Legendary
*
Offline Offline

Activity: 1218
Merit: 1079


Gerald Davis


View Profile
February 18, 2014, 11:20:45 PM
Last edit: February 18, 2014, 11:40:47 PM by DeathAndTaxes
 #37

Open source does not mean that it is accessible to ordinary users. Most people don't know C++ and can't understand the code.

Nobody is saying your average non-developer grandmother is going to scrutinize the code.  However even among experienced developers the population is large enough that the probability of nobody noticing a change in the source code is remote.  

In this case the subsidy per block is very transparent and simple.  
Code:
int64_t GetBlockValue(int nHeight, int64_t nFees)
{
    int64_t nSubsidy = 50 * COIN;

    // Subsidy is cut in half every 210,000 blocks which will occur approximately every 4 years.
    nSubsidy >>= (nHeight / Params().SubsidyHalvingInterval());

    return nSubsidy + nFees;
}
https://github.com/bitcoin/bitcoin/blob/047ee427e73a3e993b72f0480a4ab77a65c81941/src/main.cpp#L1094

Tools like git allow you to quickly summarize line by line changes between versions.   I know I at least look over the diffs between versions.   For entities who's financial fortunes depend on Bitcoin there is huge vested interest to ensure the codebase doesn't contain malicious code.  Lets imagine nobody at the second market (operator of Bitcoin Trust) has any knowledge of C++.  They have money, and money can buy the services of an expert.  Do you think it might be in their economic self interest to use a tiny tiny tiny % of their gross revenue to have an expert or two review the git diffs to ensure the network they depend heavily on for the financial prosperity isn't maliciously modified?

The same scenario would apply to exchanges, service providers, and even merchants who someday may be highly dependent on Bitcoin.  Lets say someday Overstock is doing a billion dollars a year in Bitcoin sales.  Do you think it might be prudent for the the board to retain some bitcoin developers on the payroll to ensure the risks associated with the bitcoin network are mitigated?  Shareholders might even say that it was their fiduciary duty to ensure they take steps to protect the company's bottom line against a known risk factor.

Then there are countless hackers, hobbyists, and academic developers.  Finding a hidden poison pill would be massive.  None of them will notice it?  That is the power of open source.   It doesn't take every human on the planet looking at it.  Even 0.1% of the population is many magnitudes more eyeballs than what ends up seeing closed source software.
DannyHamilton
Legendary
*
Offline Offline

Activity: 3388
Merit: 4616



View Profile
February 18, 2014, 11:26:10 PM
 #38

Now imagine overstock.  Lets say someday overstock is doing a billion dollars a year in Bitcoin sales.  Do you think the board retaining bitcoin developers on the payroll to ensure the company's network risks are hedged would be a good idea.  Shareholders might even say that it was their fudiciary duty to ensure they take steps to protect the company's bottom line.

That reminds me.  I should send Overstock a copy of my resume so they have it on file.  Never know if they might need the services of someone familliar with the bitcoin protocol.

DeathAndTaxes
Donator
Legendary
*
Offline Offline

Activity: 1218
Merit: 1079


Gerald Davis


View Profile
February 18, 2014, 11:36:49 PM
 #39

Now imagine overstock.  Lets say someday overstock is doing a billion dollars a year in Bitcoin sales.  Do you think the board retaining bitcoin developers on the payroll to ensure the company's network risks are hedged would be a good idea.  Shareholders might even say that it was their fudiciary duty to ensure they take steps to protect the company's bottom line.

That reminds me.  I should send Overstock a copy of my resume so they have it on file.  Never know if they might need the services of someone familliar with the bitcoin protocol.

Never know.  We recently saw a hedge fund hiring for a junior bitcoin currency trader.  Maybe next year Overstock will be looking for a blockchain analyst.
rojuwah (OP)
Member
**
Offline Offline

Activity: 98
Merit: 10


View Profile
February 18, 2014, 11:38:12 PM
 #40

That is absolutely not true.  There are no pre-mined coins in bitcoin.

You mean Satoshi did not premine bitcoin? What was his incentive then working on 2 years on the project (probably as a team)? Good will alone? I do not mind him premine

There really was no premine and you can _trivially_ verify it for yourself. Please spend a few minutes actively investigating rather than believing charlatans on the forum, before wasting may more of ours.  This is the technical subforum, it's reasonable to expect you to be able to do a bit of your own homework.


oh well, it is for sure possible that I have been misled by all the sites I have visited. But I will kindly ask not to be blamed because lots of sites claim the premining of bitcoin as I have linked some of many. I really would like to learn about it. Is there a way I can check it on blockchain or something? I really dunno how to check first blocks and how should I interpret them, a little explanation would be appreciated and also help whoever reads the topic and have been misled about the issue like myself.
DeathAndTaxes
Donator
Legendary
*
Offline Offline

Activity: 1218
Merit: 1079


Gerald Davis


View Profile
February 18, 2014, 11:42:11 PM
 #41

That is absolutely not true.  There are no pre-mined coins in bitcoin.

You mean Satoshi did not premine bitcoin? What was his incentive then working on 2 years on the project (probably as a team)? Good will alone? I do not mind him premine

There really was no premine and you can _trivially_ verify it for yourself. Please spend a few minutes actively investigating rather than believing charlatans on the forum, before wasting may more of ours.  This is the technical subforum, it's reasonable to expect you to be able to do a bit of your own homework.


oh well, it is for sure possible that I have been misled by all the sites I have visited. But I will kindly ask not to be blamed because lots of sites claim the premining of bitcoin as I have linked some of many. I really would like to learn about it. Is there a way I can check it on blockchain or something? I really dunno how to check first blocks and how should I interpret them, a little explanation would be appreciated and also help whoever reads the topic and have been misled about the issue like myself.

All your links didn't indicate Satoshi premined Bitcoin, they speculated on how many coins he may have mined in the first year, after it had been published publicly but was not yet popular beyond a handful of people.  Did Satoshi mine a lot of coins?  Probably.  Did he premine Bitcoin? No.  Did he manipulate the network, set difficulty so low he could "insta-mine" thousands of blocks within days? No.
DannyHamilton
Legendary
*
Offline Offline

Activity: 3388
Merit: 4616



View Profile
February 19, 2014, 12:01:06 AM
 #42

That reminds me.  I should send Overstock a copy of my resume so they have it on file.  Never know if they might need the services of someone familliar with the bitcoin protocol.
Never know.  We recently saw a hedge fund hiring for a junior bitcoin currency trader.  Maybe next year Overstock will be looking for a blockchain analyst.

I'm looking forward to the day when I have a job where I can get a portion of my salary paid in bitcoin.  Can't be that far off.
rupy
Hero Member
*****
Offline Offline

Activity: 725
Merit: 500



View Profile
February 19, 2014, 03:42:38 PM
 #43

spending them on one side would not mean spending them on the other.
How is it determined on which chain of the fork a transmit applies? Such a fork does not change the transmit protocol.

It doesn't matter a given transaction over time will only be valid on one fork or another.

For example the coins from the first block after the fork would only be valid on the fixed reward fork.  Nodes on the the original fork would see it as invalid.

This also means any spend which uses those coins would also only be seen as valid on one fork.   Since the input of any tx is the output of prior tx it also invalidated all subsequent tx which use the change from that transaction.

While at day 0 most tx will be valid on both halves of the fork, like a metaphorical fork in the road, the two chains will diverage over time and eventually the vast majority of transactions will only be valid on a single fork.

I don't get this, say I have one private key holding 1000 BTC, there is a fork day 0, I then send 1 BTC each day, which day would the transactions be valid on which fork and why?

BANKBOOK GWT Wallet & no-FIAT Billing API
soullyG
Hero Member
*****
Offline Offline

Activity: 1011
Merit: 721


Decentralize everything


View Profile
February 19, 2014, 05:23:27 PM
 #44

Interesting read, thanks for posting OP.
dewdeded
Legendary
*
Offline Offline

Activity: 1232
Merit: 1011


Monero Evangelist


View Profile
February 19, 2014, 05:29:26 PM
 #45

But all your "open source code" bla bla and "everybody can check" non sense doesn't matter.

If devs would want to change the cap, they would release some statements reasoning the cap limit change, besides changing the code.

If the statement would go "We really think the new cap is better because of ... and ... and ..." signed by "laanwj", "Gavin Andresen" and "sipa" (the 3 guys with the commits) then people would accept it and update.

And b0000m, it's gone.

The question was, if it's possible and some people have the power to do it. And they have.
gmaxwell
Moderator
Legendary
*
expert
Offline Offline

Activity: 4158
Merit: 8382



View Profile WWW
February 19, 2014, 05:39:07 PM
 #46

Thats nonsense, no one would run it regardless of what trumped up excuses were given.  And if you did— it would moot bitcoin, anyone who did run that would be stupid enough to deserve what they get.
DannyHamilton
Legendary
*
Offline Offline

Activity: 3388
Merit: 4616



View Profile
February 19, 2014, 05:39:16 PM
 #47

But all your "open source code" bla bla and "everybody can check" non sense doesn't matter.

If devs would want to change the cap, they would release some statements reasoning the cap limit change, besides changing the code.

If the statement would go "We really think the new cap is better because of ... and ... and ..." signed by "laanwj", "Gavin Andresen" and "sipa" (the 3 guys with the commits) then people would accept it and update.

No, I wouldn't, and neither would MANY other people.

un_ordinateur
Full Member
***
Offline Offline

Activity: 157
Merit: 100


View Profile
February 19, 2014, 07:26:35 PM
 #48

But all your "open source code" bla bla and "everybody can check" non sense doesn't matter.

If devs would want to change the cap, they would release some statements reasoning the cap limit change, besides changing the code.

If the statement would go "We really think the new cap is better because of ... and ... and ..." signed by "laanwj", "Gavin Andresen" and "sipa" (the 3 guys with the commits) then people would accept it and update.

No, I wouldn't, and neither would MANY other people.


That was my point initially: -Forcing- it on people won't work. Changing it, and people would'nt accept, unless there was a DAMN good reason to. People would only accept it if there was a concensus that such a change was necessary. I can't forsee such thing happening now, but in 50 years, if Bitcoin gets mainstream, it could very well happen. Economists have no damn idea of how a deflationnary economy works. I may very well be that it can't work. And if it turns out to be the case, then bitcoin will have to change, or die.

Now maybe many would not change, but the side with economic majority would win, because those who refuse the change would see their coin become useless if most merchants prefer the "newcoins". And I suspect that beyond any ideological ideal that early adopter had about bitcoin, if it ever gets mainstream, merchants will make the simple selfish choice of "which coin gives me more money?". And if we ever get in an economic crisis in which people would start believing that changing the supply would be necessary, I suspect that most would to the switch because it is a desperate mesure.

DannyHamilton
Legendary
*
Offline Offline

Activity: 3388
Merit: 4616



View Profile
February 19, 2014, 07:53:23 PM
 #49

That was my point initially: -Forcing- it on people won't work. Changing it, and people would'nt accept, unless there was a DAMN good reason to. People would only accept it if there was a concensus that such a change was necessary. I can't forsee such thing happening now, but in 50 years, if Bitcoin gets mainstream, it could very well happen. Economists have no damn idea of how a deflationnary economy works. I may very well be that it can't work. And if it turns out to be the case, then bitcoin will have to change, or die.

Now maybe many would not change, but the side with economic majority would win, because those who refuse the change would see their coin become useless if most merchants prefer the "newcoins". And I suspect that beyond any ideological ideal that early adopter had about bitcoin, if it ever gets mainstream, merchants will make the simple selfish choice of "which coin gives me more money?". And if we ever get in an economic crisis in which people would start believing that changing the supply would be necessary, I suspect that most would to the switch because it is a desperate mesure.

You have far more faith in the ability of the human race as a whole to come to a consensus about changing anything.

Far more likely is that some alternative crypto-currency (or alternative currency in general) is adopted among some groups.  If a deflationary currency can't survive, bitcoin will slowly die as the other currency grows.  Eventually the "newcoin" currency will replace bitcoin.
DeathAndTaxes
Donator
Legendary
*
Offline Offline

Activity: 1218
Merit: 1079


Gerald Davis


View Profile
February 19, 2014, 09:21:17 PM
 #50

I don't get this, say I have one private key holding 1000 BTC, there is a fork day 0, I then send 1 BTC each day, which day would the transactions be valid on which fork and why?

In that very limited example the 100 BTC and any direct subsequent tx would remain valid on both forks for an unlimited period of time.

However a more realistic scenario is going to involve "contamination" with outputs which are valid on only one fork or another.

Let say I am a miner and I mine a block on fork "B".  My reward is only valid on fork "B".  Now lets say I owe you some coins so send coins to your wallet using coins that are valid only on fork B.

If your wallet creates a tx which uses "pre fork" coins (valid on both A & B) and fork B coins then any output of that transaction (including the change back to you) would only be valid on fork B. The same dynamic is happening with with "fork A" coins.   

If it helps you visualize imagine all the coins can be put into one of three buckets "valid on A & B", "A only", and "B only"  So on a hypothetical day 0 all existing "coins" (technically unspent outputs) are in the "valid on A & B" bucket.  Any coins mined on A or B forks are in their respective buckets.

Any tx which has inputs from both "valid on A & B" AND "A only" will put the output of the tx in the "A only" bucket and the input in the "B only" bucket.
Any tx which has inputs from both "valid on A & B" AND "B only" will put the output of the tx in the "A only" bucket and the input in the "B only" bucket.
Any tx which has inputs only from "valid on A & B" but is only valid on one chain (due to differing chain rules) will result in the output going to that chains buck and the input going to the other chains bucket.
There is no method to move coins from "A only" or "B only" back to "valid on A & B".
There is no method to create a valid tx using inputs from "A only & B only".

So like a fork in the road where the roads diverge slowly into the distance, the two forks of the blockchain will also diverge.  At day 0 they are almost identical but with time they will become more and more dissimilar.  The "valid on A & B" buckets will be depleted over time.
DeathAndTaxes
Donator
Legendary
*
Offline Offline

Activity: 1218
Merit: 1079


Gerald Davis


View Profile
February 19, 2014, 09:35:04 PM
 #51

That was my point initially: -Forcing- it on people won't work. Changing it, and people would'nt accept, unless there was a DAMN good reason to. People would only accept it if there was a concensus that such a change was necessary. I can't forsee such thing happening now, but in 50 years, if Bitcoin gets mainstream, it could very well happen. Economists have no damn idea of how a deflationnary economy works. I may very well be that it can't work. And if it turns out to be the case, then bitcoin will have to change, or die.

Getting a consensus on any non controversial issue in a large group is nearly impossible.  This is why there are no governments (beyond maybe tribe level) which work on consensus.

All you can do is fork the blockchain, you can't prevent 100% of the people on the planet from using the original.   So it is more probable that there is a hard fork and people choose sides than the entire human race reaches a consensus on an issue.

Some outcomes that may occur:

The blockchain is forked and the new fork is supported by only a tiny minority.  A super majority continue to use the existing fork.  The new fork fails to generate the critical mass necessary and eventually dies off, is abandoned, or is attacked.  The same thing can happen to the old fork is the roles are reversed.

The blockchain is forked and the new fork is supported a small but self sufficient minority.  The new co-exists along side the old fork but never becomes as large or as widely accepted as the original.  Due to the confusion of both forks calling themselves "Bitcoin" it is very likely the minority fork will be forced to adopt a different name.  Once again the same thing can happen to the old fork is the roles are reversed.


The blockchain is forked and the new fork is supported by roughly half of users.   Neither fork is willing to give ground and both continue to call themselves "Bitcoin".  This creates mass confusion as there are now two mutually incompatible "Bitcoins".  Human nature being what it is, members of each fork attempt to attack the other fork, exploit flaws, spread FUD to discredit it.  The fragmentation of user support combined with the attacks and confusion of having two incompatible networks both claiming to be "Bitcoin" eventually kills the project.  Bitcoin (both "Bitcoins") eventually die off and the best we can hope for is another crypto-currency becomes the new defacto standard.

The inertia will always be with the original fork.  To remain on the original fork you don't need to do anything.  To join the new fork requires change.   Obviously the third scenario would be a worst case scenario.  It is for this reason many Bitcoin users are pragmatic and will not support hard forks that are controversial because there never will be a consensus.  It is better to work with what we got then let perfect be the enemy of good.

Quote
Now maybe many would not change, but the side with economic majority would win, because those who refuse the change would see their coin become useless if most merchants prefer the "newcoins".

That is a misconception by default at the point of the fork all users would have "coins" on both networks.  If newcoin is adopted and oldcoin becomes worthless then the user hasn't lost any coins.  However what if the disruption undermines confidence in the network and you see the value of both coins falls, merchant support wane, and exchange rates plummet.  While you may still have the same number of "coins" it is entirely possible that the value (in terms of purchasing power) of your oldcoins + newcoins is less than the value of your current coins.
wuckfit
Newbie
*
Offline Offline

Activity: 1
Merit: 0


View Profile
February 20, 2014, 02:12:27 AM
 #52

OK, scenario 1). >50% of miners readjust the reward scheme. This is clearly in their interest, particularly as the block rewards dwindle.

The standard answer, repeated in this thread, is that they'd also need to convince the majority of users to go with their fork, and that nobody would do, because on that fork their coins would be less valuable, and so the altered fork would wither and die. I have never really been convinced by the validity of this argument.

1) Would you really need to convince everyone? Surely all you'd need to do is convince the few people running in major businesses dealing in bitcoin. If enough exchanges switched entirely to the altered fork, then that would quickly become the most valued/used chain. If BTC-e announce they are upgrading to bitcoin v1.3 or whatever and will only pay out in that, then everyone with coin in there instantly is not only going to be using it, but also incentivised to promote the use of v1.3 over the older fork (because otherwise their holdings will be worthless).

2) If you have >50% hashing power, you could e.g. alternate between messing with the old chain (not including transactions in blocks etc.) for a day and then focusing on mining your altered fork for a day. Not only does this incentivize clients to switch (so they can get their transactions working smoothly), but also motivate miners to switch over and try the new chain (as there will be less competition).

3) It's easier to convince people about the benefits of inflation than most bitcoiners think. A few bucks spent on good PR could do it in a weekend. Most people are happy with the current state of $ inflation, and there are good economic arguments as to why it should be the case. Nobody cares about the government printing dollars as long as no dollars come out of their wallets.

4) There is very little consequence for miners if they try this 'attack' and fail. They can switch back to the old chain and resume mining, losing only their income during the course of the forking.
TooDumbForBitcoin
Legendary
*
Offline Offline

Activity: 1638
Merit: 1001



View Profile
February 20, 2014, 02:48:42 AM
 #53

Quote
The same scenario would apply to exchanges,

I can think of one exchange that did not spend enough of their gross margin checking on changes in different versions.




▄▄                                  ▄▄
 ███▄                            ▄███
  ██████                      ██████
   ███████                  ███████
    ███████                ███████
     ███████              ███████
      ███████            ███████
       ███████▄▄      ▄▄███████
        ██████████████████████
         ████████████████████
          ██████████████████
           ████████████████
            ██████████████
             ███████████
              █████████
               ███████
                █████
                 ██
                  █
veil|     PRIVACY    
     WITHOUT COMPROMISE.      
▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂
|   NO ICO. NO PREMINE. 
   X16RT GPU Mining. Fair distribution.  
|      The first Zerocoin-based Cryptocurrency      
   WITH ALWAYS-ON PRIVACY.  
|



                   ▄▄████
              ▄▄████████▌
         ▄▄█████████▀███
    ▄▄██████████▀▀ ▄███▌
▄████████████▀▀  ▄█████
▀▀▀███████▀   ▄███████▌
      ██    ▄█████████
       █  ▄██████████▌
       █  ███████████
       █ ██▀ ▀██████▌
       ██▀     ▀████
                 ▀█▌




   ▄███████
   ████████
   ███▀
   ███
██████████
██████████
   ███
   ███
   ███
   ███
   ███
   ███




     ▄▄█▀▀ ▄▄▄▄▄▄▄▄ ▀▀█▄▄
   ▐██▄▄██████████████▄▄██▌
   ████████████████████████
  ▐████████████████████████▌
  ███████▀▀▀██████▀▀▀███████
 ▐██████     ████     ██████▌
 ███████     ████     ███████
▐████████▄▄▄██████▄▄▄████████▌
▐████████████████████████████▌
 █████▄▄▀▀▀▀██████▀▀▀▀▄▄█████
  ▀▀██████          ██████▀▀
      ▀▀▀            ▀▀▀
TooDumbForBitcoin
Legendary
*
Offline Offline

Activity: 1638
Merit: 1001



View Profile
February 20, 2014, 02:57:40 AM
 #54

Quote
No, I wouldn't, and neither would MANY other people.

Here is a question from someone obviously too dumb for bitcoin:

In the bitcoin "who would run it" universe, there are about 8 people who matter - the guys who run the 8 biggest pools (ignoring P2P for now).  If the right (wrong) two of those guys "ran it" (for whatever reason), then all the other 10,000 hashers would be impotent.

See, that's not even a question.  How dumb is that?






▄▄                                  ▄▄
 ███▄                            ▄███
  ██████                      ██████
   ███████                  ███████
    ███████                ███████
     ███████              ███████
      ███████            ███████
       ███████▄▄      ▄▄███████
        ██████████████████████
         ████████████████████
          ██████████████████
           ████████████████
            ██████████████
             ███████████
              █████████
               ███████
                █████
                 ██
                  █
veil|     PRIVACY    
     WITHOUT COMPROMISE.      
▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂▂
|   NO ICO. NO PREMINE. 
   X16RT GPU Mining. Fair distribution.  
|      The first Zerocoin-based Cryptocurrency      
   WITH ALWAYS-ON PRIVACY.  
|



                   ▄▄████
              ▄▄████████▌
         ▄▄█████████▀███
    ▄▄██████████▀▀ ▄███▌
▄████████████▀▀  ▄█████
▀▀▀███████▀   ▄███████▌
      ██    ▄█████████
       █  ▄██████████▌
       █  ███████████
       █ ██▀ ▀██████▌
       ██▀     ▀████
                 ▀█▌




   ▄███████
   ████████
   ███▀
   ███
██████████
██████████
   ███
   ███
   ███
   ███
   ███
   ███




     ▄▄█▀▀ ▄▄▄▄▄▄▄▄ ▀▀█▄▄
   ▐██▄▄██████████████▄▄██▌
   ████████████████████████
  ▐████████████████████████▌
  ███████▀▀▀██████▀▀▀███████
 ▐██████     ████     ██████▌
 ███████     ████     ███████
▐████████▄▄▄██████▄▄▄████████▌
▐████████████████████████████▌
 █████▄▄▀▀▀▀██████▀▀▀▀▄▄█████
  ▀▀██████          ██████▀▀
      ▀▀▀            ▀▀▀
DeathAndTaxes
Donator
Legendary
*
Offline Offline

Activity: 1218
Merit: 1079


Gerald Davis


View Profile
February 20, 2014, 03:34:40 AM
 #55

Quote
No, I wouldn't, and neither would MANY other people.

Here is a question from someone obviously too dumb for bitcoin:

In the bitcoin "who would run it" universe, there are about 8 people who matter - the guys who run the 8 biggest pools (ignoring P2P for now).  If the right (wrong) two of those guys "ran it" (for whatever reason), then all the other 10,000 hashers would be impotent.

See, that's not even a question.  How dumb is that?

That is incorrect.  Tomorrow the top three pools could start producing blocks which pay them 10,000 BTC.  Nothing stops them other than the fact that every other node, user, merchant, and exchange would simply see those coins as invalid and drop the blocks they produce.  Those miners would simply no longer be on the Bitcoin network anymore.  In time difficulty would fall and the miners who remain would be far more profitable.

Miners can't force a consensus change to the rules of Bitcoin.  The security model of Bitcoin is that every single node implicitly does not trust ANYTHING another node broadcasts.  When your node receives a block or transaction from a peer the first thing it does is independently verify that block or transactions.  It doesn't matter if hundred thousands nodes have already done so it implicitly distrusts every other node and so it verifies it for itself.  If it doesn't verify then it is dropped, your node won't even relay it to other nodes.  The block or transaction is just discarded.  Your node knows all the rules for the network and doesn't need a miner to validate them.

It is a myth that miners are the primary security mechanism for Bitcoin.  Independent nodes using independent verification are the security mechanism for Bitcoin.  There is one thing that nodes can't do among themselves and that is deal with a problem of multiple valid but otherwise mutually incompatible transactions or blocks.  They don't trust other nodes so they can't just ask another node, they don't vote because that could be easily circumvented with a Sybil attack, they don't have a super node or hierarchy for solving problems because that would be a "center" to the network.  So if you have part of the network thinking I sent a coin to address "A" and part of the network thinking I sent it to address "B" they have no way to resolve that deadlock.  Both transactions are valid, both follow the rules, however they both can't exist.  Money can't work without an absolute agreement on where the money is.

Miners force a resolution to that deadlock by placing either "A" or "B" into the next block.  Nodes favor confirmed transactions over unconfirmed ones and that creates a way to break the deadlock.  That is the sole purpose of miners, they are actually a very small portion of the security system in Bitcoin and for a good thing.  If nodes were "dumb" and implicitly trusted miners for the complete security of the network, it would make miners a "super peer" and the system would have been destroyed a long time ago.
DeathAndTaxes
Donator
Legendary
*
Offline Offline

Activity: 1218
Merit: 1079


Gerald Davis


View Profile
February 20, 2014, 03:44:47 AM
 #56

Quote
The same scenario would apply to exchanges,

I can think of one exchange that did not spend enough of their gross margin checking on changes in different versions.

Agreed and even if they survive it will have cost them many magnitudes more in future profits than employing someone competent to keep them compliant would have ever cost. 
Pages: 1 2 3 [All]
  Print  
 
Jump to:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.19 | SMF © 2006-2009, Simple Machines Valid XHTML 1.0! Valid CSS!