Bitcoin Forum
November 11, 2024, 02:13:45 AM *
News: Latest Bitcoin Core release: 28.0 [Torrent]
 
   Home   Help Search Login Register More  
Poll
Question: If there is really a need for a change in BTC protocal, what do you prefer?
Every BTC user should vote
Every miner should vote
Mining pools vote
Core developers vote
BTC foundation decide
Do not change
Satoshi decide

Pages: [1]
  Print  
Author Topic: How do you make decisions for a change in BTC protocal  (Read 1348 times)
johnyj (OP)
Legendary
*
Offline Offline

Activity: 1988
Merit: 1012


Beyond Imagination


View Profile
February 01, 2013, 03:34:46 PM
 #1

I had a feeling that this will become a question sooner or later, either we stick to the original protocal, or we have a mechanism to solve the conflict in opinion

I personally hate politics, during my working years at super multinational corporation, it is always political change that made people feel unsafe and uncertain, and that always changed the product consistency

But the world will always change in an unexpected way, so the ability to be able to change might be needed for survival. Every change could also lead to ruin, so who have the right to decide this change? And who can be responsible for the result of the change if it turns out to be a disaster?

If we really need to do the change, it should be very well understood, tested by the mass and it never change the consistency of BTC itself

DeathAndTaxes
Donator
Legendary
*
Offline Offline

Activity: 1218
Merit: 1079


Gerald Davis


View Profile
February 01, 2013, 03:39:04 PM
 #2

You can't force a change.  All you can do is fork the network.  If enough people join your fork then it may become dominant.  If only a few people remain on the original fork it may eventually become unknown to the masses (as other obsolete protocols have become).  As long as a single copy of the current software and blockchain exist the current fork (Bitcoin as it is today) will always exist.  As long a single node is actively mining the network will remain.

So all of your possible choices are incorrect and impossible.  None of them can force a change.  The only thing which would prevent a fork is complete unanimous consent and action by all users.  Not 99.999999999999999% but exactly 100% (past, current, and future).  All users agree and update their nodes, then a change will occurs without a fork.  Baring that near impossibility to make a breaking change to the protocol will cause a fork.
twolifeinexile
Full Member
***
Offline Offline

Activity: 154
Merit: 100



View Profile
February 01, 2013, 03:42:49 PM
 #3

You can't force a change.  All you can do is fork the network.  If enough people join your fork then it may become dominant.  If only a few people remain on the original fork it may eventually become unknown to the masses (as other obsolete protocols have become).  As long as a single copy of the current software and blockchain exist the current fork (Bitcoin as it is today) will always exist.  As long a single node is actively mining the network will remain.

So all of your possible choices are incorrect and impossible.  None of them can force a change.  The only thing which would prevent a fork is complete unanimous consent and action by all users.  Not 99.999999999999999% but exactly 100% (past, current, and future).  All users agree and update their nodes, then a change will occurs without a fork.  Baring that near impossibility to make a breaking change to the protocol will cause a fork.

And the two blockchain grow at different rate, the one that become longer wins. Acutally I think it may resolve quickly ( but the resolution will be 99% of time, no change)
DeathAndTaxes
Donator
Legendary
*
Offline Offline

Activity: 1218
Merit: 1079


Gerald Davis


View Profile
February 01, 2013, 04:03:17 PM
 #4

No.  If there is a breaking change then BitcoinA won't see blocks from BitcoinB as valid and vice versa.  They both would exist independently until one chain is completely abandoned (a 100% consensus event). 
johnyj (OP)
Legendary
*
Offline Offline

Activity: 1988
Merit: 1012


Beyond Imagination


View Profile
February 01, 2013, 08:37:01 PM
 #5

I never said I will force a change, I mean if we need to consider a hard fork or not, take block size for example, some people do not like big block, some others think that is a necessary for future success of BTC, how do you solve that conflict?

See the other discussion about block size:
https://bitcointalk.org/index.php?topic=140233.0

You can not always avoid the problem with technology, the decision making is unavoidable for everyone, either follow or not follow a new fork. If that fork is coming from very authoritive guys like core developers, there will be conflicts, maybe half of the people stay with original protocal and the other half go for the new protocal, then...


Walter Rothbard
Sr. Member
****
Offline Offline

Activity: 476
Merit: 250


Bytecoin: 8VofSsbQvTd8YwAcxiCcxrqZ9MnGPjaAQm


View Profile WWW
February 01, 2013, 08:42:39 PM
 #6

No.  If there is a breaking change then BitcoinA won't see blocks from BitcoinB as valid and vice versa.  They both would exist independently until one chain is completely abandoned (a 100% consensus event). 

It is possible that one chain might accept blocks from the other.  For example, suppose some people start running an enhanced client that subdivides satoshis into tenths, but still accepts previously well-formed blocks.  Then you might have a situation where the new BitcoinB accepts its own customized chain for awhile, then suddenly rejects itself when the work in BitcoinA is greater than the work in BitcoinB.  It might oscillate for awhile generating blocks, then rejecting them, then building out the chain a little more.

DeathAndTaxes
Donator
Legendary
*
Offline Offline

Activity: 1218
Merit: 1079


Gerald Davis


View Profile
February 01, 2013, 08:49:36 PM
 #7

Blocks have the prior block's hash as part of their header.  One there is a incompatible fork the chains will never rejoin without orphaning the new fork's blocks and what miner is going to miner a new fork's blocks knowing there is a high probability that will result in an orphan when he/she can just mine the old fork's blocks without risk.

Example:
Block A (original)
Block B ( increased precision - "sub satoshi values")

Both chains are the same until block 1,000,001.
In Block 1,000,0001B a miner produces a block with a "sub satoshi".  This Block will be seen as invalid by network A.

Now Network A produces a block 1,000,0001A and eventually 1,000,0002A.    Network B can't use 1,000,002A without 1,000,0001A (which will orphan the miner which produces the "first sub satoshi block".  No miner would risk including sub satoshi's when that increases the risk its block will be oprhaned.   So the fork will never be used.  The only way to prevent that economic cost is to make the chain incompatible.  If the "B" chain introduces incompatible changes to the blockheader then "A" chain could never oprhan the "B" chain.

That would make 1,000,001A and 1,000,001B mutually exclusive and incompatible with the other network forever.
Walter Rothbard
Sr. Member
****
Offline Offline

Activity: 476
Merit: 250


Bytecoin: 8VofSsbQvTd8YwAcxiCcxrqZ9MnGPjaAQm


View Profile WWW
February 01, 2013, 10:28:21 PM
 #8

what miner is going to miner a new fork's blocks knowing there is a high probability that will result in an orphan when he/she can just mine the old fork's blocks without risk.

One that thinks there is more long-term benefit for himself in the new chain and hopes that it gets off the ground.  There are people now mining simply to support bitcoin and not making a profit.  I assume there would be for such new proposals.  They would certainly have a tough obstacle to climb to succeed, which is why I think this would only work for something that turns out to be needed, e.g., subdividing satoshis in a hypothetical future where bitcoin loss is extreme.

DeathAndTaxes
Donator
Legendary
*
Offline Offline

Activity: 1218
Merit: 1079


Gerald Davis


View Profile
February 01, 2013, 10:46:40 PM
 #9

Then you make it incompatible rather than trying to make one way compatibility with the other fork and thus ensure your efforts are continually overwritten.  I think you misunderstand the point.  The point isn't that forks are impossible it is that they are FORKS and they will not rejoin in the future. 
twolifeinexile
Full Member
***
Offline Offline

Activity: 154
Merit: 100



View Profile
February 13, 2013, 04:48:47 AM
 #10

Then you make it incompatible rather than trying to make one way compatibility with the other fork and thus ensure your efforts are continually overwritten.  I think you misunderstand the point.  The point isn't that forks are impossible it is that they are FORKS and they will not rejoin in the future. 

But what if one fork decide to incorporate transactions that is compatible with it from the other fork's blocks? If lets say fork A now has more computation power, and people who mine forkA would like fork A becomes dominant and so it will read forkB's block's orphan transaction and verify if they are compatible with forkA and put that transaction in forkA. As long as A has more block acceptance power, A will outgrow B and most tranactions that are valid is in A, so people will naturally move to forkA, this is self-reinforcing, so should be resolve the fork in the long run?

The above is just my hypothesis given my understanding, welcome to refute if you see points are invalid.
DannyHamilton
Legendary
*
Offline Offline

Activity: 3486
Merit: 4832



View Profile
February 13, 2013, 05:01:20 AM
 #11

Then you make it incompatible rather than trying to make one way compatibility with the other fork and thus ensure your efforts are continually overwritten.  I think you misunderstand the point.  The point isn't that forks are impossible it is that they are FORKS and they will not rejoin in the future. 

But what if one fork decide to incorporate transactions that is compatible with it from the other fork's blocks? If lets say fork A now has more computation power, and people who mine forkA would like fork A becomes dominant and so it will read forkB's block's orphan transaction and verify if they are compatible with forkA and put that transaction in forkA. As long as A has more block acceptance power, A will outgrow B and most tranactions that are valid is in A, so people will naturally move to forkA, this is self-reinforcing, so should be resolve the fork in the long run?

The above is just my hypothesis given my understanding, welcome to refute if you see points are invalid.
It won't work, because transactions in forkB will be trying to spend outputs that have already been spent in forkA (or the other way around). Other transactions will be trying to spend coinbase outputs that don't even exist in the chain. So each fork won't see these transactions from the other fork as valid.  The length of the forks won't matter because forkB can't even see forkA (just like the length of the litecoin blockchain doesn't matter to bitcoin, because the bitcoin clients don't even see the litecoin blockchain).
johnyj (OP)
Legendary
*
Offline Offline

Activity: 1988
Merit: 1012


Beyond Imagination


View Profile
February 19, 2013, 04:56:43 AM
 #12

bump this up to get some more input Cool

I think the highest priority is to maintain and even promote people's trust for blockchain

netrin
Sr. Member
****
Offline Offline

Activity: 322
Merit: 251


FirstBits: 168Bc


View Profile
February 19, 2013, 05:08:52 AM
 #13

Is this purely hypothetical or are there hints from the core developer kitchen that a fork is on the table?

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

Greenlandic tupilak. Hand carved, traditional cursed bone figures. Sorry, polar bear, walrus and human remains not available for export.
gmaxwell
Moderator
Legendary
*
expert
Offline Offline

Activity: 4270
Merit: 8805



View Profile WWW
February 21, 2013, 06:28:57 AM
 #14

Is this purely hypothetical or are there hints from the core developer kitchen that a fork is on the table?
https://en.bitcoin.it/wiki/Hardfork_Wishlist
It's purely hypothetical— basically just used to track things, and so when someone come up yet again repeating the same idea for the Nth time they can just be pointed to a list where its been suggested before— also a little bit because some people find the almost complete lack of innovation in altcoins depressing, and the page can give them some useful ideas.
misterbigg
Legendary
*
Offline Offline

Activity: 1064
Merit: 1001



View Profile
February 21, 2013, 07:24:59 AM
 #15

The only meaningful way to ensure that a hard fork is accepted is to:

1) Provide overwhelming evidence that a problem exists

2) Provide a well thought out solution that has been extensively peer reviewed, that miners approve of

3) Make sure that the changes are discussed with as wide an audience as possible
johnyj (OP)
Legendary
*
Offline Offline

Activity: 1988
Merit: 1012


Beyond Imagination


View Profile
February 22, 2013, 03:06:04 PM
Last edit: February 23, 2013, 01:46:10 AM by johnyj
 #16

I think vote is good, due to the complexity of technical details, even technical experts have different value, vote is the only way to keep the network from spliting. Even some people do not agree with the majority, if there is a vote result, they have the incentive to follow that result thus keep the integrity of bitcoin community

So far, there is no clear political structure in bitcoin community, and this will be needed sooner or later. We can establish a decision making mechanism by a process of maybe "poll - debate - vote", no senators, no house, no president  Smiley

Of course such kind of vote could develope into a situation of "mass's stupidity take majority", that is the weakness of today's political system. I think there should be a test of each person's knowledge about block-chain and then decide what kind of weighting his vote could have

Pages: [1]
  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!