LearnBitcoin

Bitcoin Dev Archive 2015

Proposed alternatives to the 20MB step

9 messages, 1 to 13 Jun 2015. Started by Jérôme Legoupil.

Mike Hearn (2), Eric Voskuil (2), Jérôme Legoupil, Adam Back, Gavin Andresen, Jameson Lopp, Odinn Cyberguerrilla

Permalink Original thread on gnusha.org

Jérôme Legoupil permalink original
Quoted text (11 lines)
>What do other people think?
>
>
>If we can't come to an agreement soon, then I'll ask for help
>reviewing/submitting patches to Mike's Bitcoin-Xt project that implement a
>big increase now that grows over time so we may never have to go through
>all this rancor and debate again."
>
>
>I'll then ask for help lobbying the merchant services and exchanges and
>hosted wallet companies and other bitcoind-using-infrastructure companies

It's surprising to see a core dev going to the public to defend a proposal most other core devs disagree on, and then lobbying the Bitcoin ecosystem.

This is an very unhealthy way to go because it incentives the other core devs to stop their technical work and go public and lobby too (cf G.Maxwell trying to raise redditters awareness).

We need core devs to work on technical issues, not waste time doing politics, but Gavin's confrontational approach doesn't give them much of a choice.

I fear that because of this approach, in the next monthes, core devs with be lobbying and doing politics : precious time will be wasted for everyone having stake in Bitcoin.

Regarding the 20MB proposal content:

Decentralization is the core of Bitcoin's security model and thus that's what gives Bitcoin its value.

The danger is that decentralization tends naturally towards centralization, because centralization is more efficient. Going from decentralization to centralization is easy, going the other way is a lot harder : decentralization we lose, may never be gained back.

Regarding "the urgency to do something":

I believe it would be extremely healthy for the network to bump into any limit ASAP ... (let it be 1MB) : to incentive layer 2 and offchain solutions to scale Bitcoin : there are promising designs/solutions out there (LN, ChainDB, OtherCoin protocole, ...), but most don't get much attention, because there is right now no need for them. And, I am sure new solutions will be invented.

If during the "1MB bumpy period" something goes wrong, consensus among the community would be reached easily if necessary.

Pretending there is urgency and that Apocalypse is approaching is a fallacy.

The Gavin 20MB proposal is compromising Bitcoin's long-term security in an irreversible way, for gaining short-term better user experience.

I oppose the Gavin proposal in both content and form.

Cheers, Jerome

Adam Back in reply to Jérôme Legoupil permalink original

Agree with everything you said. Spot on observations on all counts. Thank you for speaking up.

Adam

On 1 June 2015 at 13:45, Jérôme Legoupil <jjlegoupil@gmail•com> wrote:

Quoted text (68 lines)
>>What do other people think?
>>
>>
>>If we can't come to an agreement soon, then I'll ask for help
>>reviewing/submitting patches to Mike's Bitcoin-Xt project that implement a
>>big increase now that grows over time so we may never have to go through
>>all this rancor and debate again."
>>
>>
>>I'll then ask for help lobbying the merchant services and exchanges and
>>hosted wallet companies and other bitcoind-using-infrastructure companies
>
>
> It's surprising to see a core dev going to the public to defend a proposal
> most other core devs disagree on, and then lobbying the Bitcoin ecosystem.
>
> This is an very unhealthy way to go because it incentives the other core
> devs to stop their technical work and go public and lobby too (cf G.Maxwell
> trying to raise redditters awareness).
>
> We need core devs to work on technical issues, not waste time doing
> politics, but Gavin's confrontational approach doesn't give them much of a
> choice.
>
> I fear that because of this approach, in the next monthes, core devs with be
> lobbying and doing politics : precious time will be wasted for everyone
> having stake in Bitcoin.
>
>
> Regarding the 20MB proposal content:
>
> Decentralization is the core of Bitcoin's security model and thus that's
> what gives Bitcoin its value.
>
> The danger is that decentralization tends naturally towards centralization,
> because centralization is more efficient. Going from decentralization to
> centralization is easy, going the other way is a lot harder :
> decentralization we lose, may never be gained back.
>
> Regarding "the urgency to do something":
>
> I believe it would be extremely healthy for the network to bump into any
> limit ASAP ... (let it be 1MB) : to incentive layer 2 and offchain solutions
> to scale Bitcoin : there are promising designs/solutions out there (LN,
> ChainDB, OtherCoin protocole, ...), but most don't get much attention,
> because there is right now no need for them. And, I am sure new solutions
> will be invented.
>
> If during the "1MB bumpy period" something goes wrong, consensus among the
> community would be reached easily if necessary.
>
> Pretending there is urgency and that Apocalypse is approaching is a fallacy.
>
> The Gavin 20MB proposal is compromising Bitcoin's long-term security in an
> irreversible way, for gaining short-term better user experience.
>
> I oppose the Gavin proposal in both content and form.
>
> Cheers,
> Jerome
>
> ------------------------------------------------------------------------------
>
> _______________________________________________
> Bitcoin-development mailing list
> Bitcoin-development@lists•sourceforge•net
> https://lists.sourceforge.net/lists/listinfo/bitcoin-development
>
Gavin Andresen in reply to Jérôme Legoupil permalink original

RE: going to the public:

I started pushing privately for SOMETHING, ANYTHING to be done, or at the very least for there to be some coherent plan besides "wait and see" back in February.

As for it being unhealthy for me to write the code that I think should be written and asking people to run it:

Ok. What would you suggest I do? I believe scaling up is the number one priority right now. I think core devs SHOULD be taking time to solve it, because I think the uncertainty of how it will be solved (or if it will be solved) is bad for Bitcoin.

I think working on things like fixing transaction malleability is great... but the reason to work on that is to enable smart contracts and all sorts of other interesting new uses of the blockchain. But if we're stuck with 1MB blocks then there won't be room for all of those interesting new uses on the blockchain.

Others disagree, and have the advantage of status-quo : if nothing is done, they get what they want.

Based on some comments I've seen, I think there is also concern that "my own personal network/computer connection might not be able to handle more transaction volume." That is NOT a good reason to limit scalability, but I think it is clouding the judgement of many of the core contributors who started contributing as a spare-time hobby from their homes (where maybe they have crappy DSL connections).

RE: decentralization:

I think this is a red-herring. I'll quote something I said on reddit yesterday:

"I don't believe a 20MB max size will increase centralization to any significant degree.

See http://gavinandresen.ninja/does-more-transactions-necessarily-mean-more-centralized

and http://gavinandresen.ninja/are-bigger-blocks-better-for-bigger-miners

And I think we will have a lot LESS centralization of payments via services like Coinbase (or hubs in some future StrawPay/Lightning network) if the bitcoin network can directly handle more payment volume.

The centralization trade-offs seems very clear to me, and I think the "big blocks mean more centralized" arguments are either just wrong or are exaggerated or ignore the tradeoff with payment centralization (I think that is a lot more important for privacy and censorship resistance)."

RE: incentives for off-chain solutions:

I'll quote myself again from http://gavinandresen.ninja/it-must-be-done-but-is-not-a-panacea :

"The “layer 2” services that are being built on top of the blockchain are absolutely necessary to get nearly instant real-time payments, micropayments and high volume machine-to-machine payments, to pick just three examples. The ten-minute settlement time of blocks on the network is not fast enough for those problems, and it will be the ten minute block interval that drives development of those off-chain innovations more than the total number of transactions supported."

On Mon, Jun 1, 2015 at 8:45 AM, Jérôme Legoupil <jjlegoupil@gmail•com> wrote:

Quoted text (3 lines)
> If during the "1MB bumpy period" something goes wrong, consensus among the
> community would be reached easily if necessary.
>

That is the problem: this will be a "frog in boiling water" problem. I believe there will be no sudden crisis-- instead, transactions will just get increasingly unreliable and expensive, driving more and more people away from Bitcoin towards... I don't know what. Some less expensive, more reliable, probably more-centralized solution.

The Gavin 20MB proposal is compromising Bitcoin's long-term security in an

Quoted text (2 lines)
> irreversible way, for gaining short-term better user experience.
>

If by long-term security you mean "will transaction fees be high enough to pay for enough hashing power to secure the network if there are bigger blocks" I've written about that: http://gavinandresen.ninja/block-size-and-miner-fees-again

If you mean something else, then please be specific.

Mike Hearn in reply to Jérôme Legoupil permalink original
Quoted text (4 lines)
>
> It's surprising to see a core dev going to the public to defend a proposal
> most other core devs disagree on, and then lobbying the Bitcoin ecosystem.
>

I agree that it is a waste of time. Many agree. The Bitcoin ecosystem doesn't really need lobbying - my experience from talking to businesses and wallet developers months ago is they virtually all see raising capacity as a no brainer ... and some of them see this "debate" as despair-inducing insanity.

What's happened here is that a small number of people have come to believe they have veto power over changes to Bitcoin, and they have also become *wildly* out of step with what the wider community wants. That cannot last. So, short of some sudden change of heart that lets us kick the can down the road a bit longer, a fork is inevitable.

Just be glad it's Gavin driving this and not me ... or a faceless coalition of startups.

Quoted text (3 lines)
> Decentralization is the core of Bitcoin's security model and thus that's
> what gives Bitcoin its value.
>

No. Usage is what gives Bitcoin value.

It's kind of maddening that I have to point this out. Decentralisation is a means to an end. I first used Bitcoin in April 2009 and it was perfectly decentralised back then: every wallet was a full node and every computer was capable of mining.

So if you believe what you just wrote, I guess Bitcoin's value has gone down every day since.

On the other hand, if you believe the markets, Bitcoin's value has gone up.

Apparently the question of what gives Bitcoin its value is a bit more complicated than that.

Quoted text (5 lines)
> : to incentive layer 2 and offchain solutions to scale Bitcoin : there are
> promising designs/solutions out there (LN, ChainDB, OtherCoin protocole,
> ...), but most don't get much attention, because there is right now no need
> for them. And, I am sure new solutions will be invented.
>

I have seen this notion a few times. I would like to dispose of it right now.

I am one of the wallet developers you would be trying to "incentivise" by letting Bitcoin break, and I say: get real. Developers are not some bottomless fountain of work that will spit out whatever you like for free if you twist their arms badly enough.

The problems that incentivised the creation of Bitcoin existed for decades before Bitcoin was actually invented. Incentives are not enough. Someone has to actually do the work, too. All proposals on the table would:

   - Involve enormous amounts of effort from many different people
   - Be technically risky (read: we don't know if they would even work)
   - Not be Bitcoin

The last point is important: people who got interested in Bitcoin and decided to devote their time to it might not feel the same way about some network of payment hubs or whatever today's fashion is. Faced with their work being broken by armchair developers on some mailing list, they might just say screw it and walk away completely.

After all, as the arguments for these systems are not particularly logical, they might slave over hot keyboards for a year to support the Lightning Network or whatever and then discover that it's no longer the fashionable thing ... and that suddenly an even more convoluted design is being "incentivised".

Jameson Lopp in reply to Mike Hearn permalink original

The overlapping consensus mechanisms between the Core Developers, the miners, the block chain based businesses, and the end users make it such that the very definition of Bitcoin is not just what any single one of those groups comes to a consensus about. We must ALL be in consensus about just what Bitcoin actually is and what its goals should be. As such, the onus is on the Core Developers to convince the other groups to either accept or reject major changes to the protocol.

Greg made a great point regarding the difficulty in determining the definition of Bitcoin: https://twitter.com/lopp/status/596135982539395073/photo/1

My point being that Bitcoin is inherently a political phenomenon; we're just trying to describe the human politics behind Bitcoin with computer code that is reasonably secure against attack.

- Jameson

On Mon, Jun 1, 2015 at 8:55 AM, Mike Hearn <mike@plan99•net> wrote:

Quoted text (87 lines)
> It's surprising to see a core dev going to the public to defend a proposal
>> most other core devs disagree on, and then lobbying the Bitcoin ecosystem.
>>
>
> I agree that it is a waste of time. Many agree. The Bitcoin ecosystem
> doesn't really need lobbying - my experience from talking to businesses and
> wallet developers months ago is they virtually all see raising capacity as
> a no brainer ... and some of them see this "debate" as despair-inducing
> insanity.
>
> What's happened here is that a small number of people have come to believe
> they have veto power over changes to Bitcoin, and they have also become
> *wildly* out of step with what the wider community wants. That cannot
> last. So, short of some sudden change of heart that lets us kick the can
> down the road a bit longer, a fork is inevitable.
>
> Just be glad it's Gavin driving this and not me ... or a faceless
> coalition of startups.
>
>
>> Decentralization is the core of Bitcoin's security model and thus that's
>> what gives Bitcoin its value.
>>
>
> No. Usage is what gives Bitcoin value.
>
> It's kind of maddening that I have to point this out. Decentralisation is
> a means to an end. I first used Bitcoin in April 2009 and it was perfectly
> decentralised back then: every wallet was a full node and every computer
> was capable of mining.
>
> So if you believe what you just wrote, I guess Bitcoin's value has gone
> down every day since.
>
> On the other hand, if you believe the markets, Bitcoin's value has gone up.
>
> Apparently the question of what gives Bitcoin its value is a bit more
> complicated than that.
>
>
>
>
>> : to incentive layer 2 and offchain solutions to scale Bitcoin : there
>> are promising designs/solutions out there (LN, ChainDB, OtherCoin
>> protocole, ...), but most don't get much attention, because there is right
>> now no need for them. And, I am sure new solutions will be invented.
>>
>
> I have seen this notion a few times. I would like to dispose of it right
> now.
>
> I am one of the wallet developers you would be trying to "incentivise" by
> letting Bitcoin break, and I say: get real. Developers are not some
> bottomless fountain of work that will spit out whatever you like for free
> if you twist their arms badly enough.
>
> The problems that incentivised the creation of Bitcoin existed for decades
> before Bitcoin was actually invented. Incentives are not enough. Someone
> has to actually do the work, too. All proposals on the table would:
>
>    - Involve enormous amounts of effort from many different people
>    - Be technically risky (read: we don't know if they would even work)
>    - Not be Bitcoin
>
> The last point is important: people who got interested in Bitcoin and
> decided to devote their time to it might not feel the same way about some
> network of payment hubs or whatever today's fashion is. Faced with their
> work being broken by armchair developers on some mailing list, they might
> just say screw it and walk away completely.
>
> After all, as the arguments for these systems are not particularly
> logical, they might slave over hot keyboards for a year to support the
> Lightning Network or whatever and then discover that it's no longer the
> fashionable thing ... and that suddenly an even more convoluted design is
> being "incentivised".
>
>
>
>
> ------------------------------------------------------------------------------
>
> _______________________________________________
> Bitcoin-development mailing list
> Bitcoin-development@lists•sourceforge•net
> https://lists.sourceforge.net/lists/listinfo/bitcoin-development
>
>
Eric Voskuil in reply to Mike Hearn permalink original

On 06/01/2015 08:55 AM, Mike Hearn wrote:

Quoted text (1 line)
>> Decentralization is the core of Bitcoin's security model and thus

that's what gives Bitcoin its value.

Quoted text (1 line)
> No. Usage is what gives Bitcoin value.

Nonsense.

Visa, Dollar, Euro, Yuan, Peso have usage.

The value in Bitcoin is *despite* it's far lesser usage.

Yes, the price is a function of demand, but demand is a function of utility. Despite orders of magnitude less usage than state currencies, Bitcoin has utility. This premium *only* exists due to its lack of centralized control. I would not work full time, or at all, on Bitcoin if it was not for decentralization; nor would I hold any of it. I doubt anyone would show an interest in Bitcoin if it was not decentralized. If it centralized even you would be forced to find something else to do, because Bitcoin "usage" would drop to zero.

Quoted text (1 line)
> It's kind of maddening that I have to point this out. Decentralisation

is a means to an end.

No, it was/is the primary objective. Paypal had already been done. If anything is maddening it's that you of all people can't see this. When people talk about the core innovation of Bitcoin, it's a conversation about Byzantine Generals, not wicked growth hacking.

Quoted text (1 line)
> in April 2009 and it was perfectly decentralised [...] every wallet

was a full node and every computer was capable of mining. So if you believe what you just wrote [...] Bitcoin's value has gone down every day since

An obvious non sequitur. By way of example, if 10 of 10 participants are capable of mining it is not more decentralized than if 1,000 in 100,000 are doing so. 1,000 *people* in control vs. 10 is two orders of magnitude more decentralized. The *percentage* of the community that mines is totally irrelevant, it's the absolute number of (independent) people that matters.

I'm not making a statement on block size, just trying to help ensure that ill-considered ideas, like this inversion of the core value proposition, stay on the margins.

e

Mike Hearn in reply to Eric Voskuil permalink original
Quoted text (2 lines)
>
>  1,000 *people* in control vs. 10 is two orders of

magnitude more decentralized.

Yet Bitcoin has got worse by all these metrics: there was a time before mining pools when there were ~thousands of people mining with their local CPUs and GPUs. Now the number of full nodes that matter for block selection number in the dozens, and all the other miners just follow their blocks blindly.

If you really believe that decentralisation is, itself, the end, then why not go use an "ASIC resistant" alt coin with no SPV or web wallets which resembles Bitcoin at the end of 2009? That'd be a whole lot more decentralised than what you have now.

The *percentage* of the community that mines is totally irrelevant, it's

Quoted text (2 lines)
> the absolute number of (independent) people that matters.
>

So usage does matter, then? You'd rather have a coin that has power concentrated in a far smaller elite, proportionally, but has overall more usage? If there are say, 5000 full nodes today, and in ten years there are 6000, and they all run in vast datacenters and are owned by large companies, you'll feel like Bitcoin is more decentralised than ever? (n.b. I do not think this situation will ever happen, it's just an example).

That's not the vibe I'm getting from most people on this list. What I'm seeing is complaints about how in the good old days back when Core was the only wallet and ASICs hadn't been made, there were lots of nodes and lots of people mining solo and since then it's all been downhill and woe is us ... and let's throw on the brakes in case it gets worse.

Not for the first time, these discussions remind me very strongly of the old desktop Linux/free software debates.

Eric Voskuil in reply to Mike Hearn permalink original

On 06/02/2015 04:03 AM, Mike Hearn wrote:

Quoted text (11 lines)
>
>      1,000 *people* in control vs. 10 is two orders of
>
>     magnitude more decentralized.
>
>
> Yet Bitcoin has got worse by all these metrics: there was a time
> before mining pools when there were ~thousands of people mining with
> their local CPUs and GPUs. Now the number of full nodes that matter
> for block selection number in the dozens, and all the other miners
> just follow their blocks blindly.

A mining pool is not a person, a full node is not a miner, and cooperation is not control.

http://bravenewcoin.com/news/number-of-bitcoin-miners-far-higher-than-popular-estimates/

The entire Bitcoin ecosystem cooperates, that is what consensus means. Establishing proof of that cooperation is the purpose of Bitcoin.

Decentralization is about keeping control out of the hands of the state (any entity that would substitute violence for consensus). Nobody has the power to compel the cooperation of individual miners in a pool. When state power is applied to a pool operator the miners (people) retain their vote.

e

Odinn Cyberguerrilla in reply to Mike Hearn permalink original

On 06/02/2015 04:03 AM, Mike Hearn wrote: (...)

Quoted text (19 lines)
>
> If you really believe that decentralisation is, itself, the end,
> then why not go use an "ASIC resistant" alt coin with no SPV or web
> wallets which resembles Bitcoin at the end of 2009? That'd be a
> whole lot more decentralised than what you have now.
>
> The *percentage* of the community that mines is totally
> irrelevant, it's the absolute number of (independent) people that
> matters.
>
>
> So usage does matter, then? You'd rather have a coin that has
> power concentrated in a far smaller elite, proportionally, but has
> overall more usage? If there are say, 5000 full nodes today, and in
> ten years there are 6000, and they all run in vast datacenters and
> are owned by large companies, you'll feel like Bitcoin is more
> decentralised than ever?   (n.b. I do not think this situation will
> ever happen, it's just an example).
>

Something you said about "power concentrated," made me think I should post this here:

https://twitter.com/adam3us/status/608920099609817088

- -- http://abis.io ~ "a protocol concept to enable decentralization and expansion of a giving economy, and a new social good" https://keybase.io/odinn