public inbox for bitcoindev@googlegroups.com
 help / color / mirror / Atom feed
* [Bitcoin-development] Long-term mining incentives
@ 2015-05-11 16:28 Thomas Voegtlin
  2015-05-11 16:52 ` insecurity
                   ` (2 more replies)
  0 siblings, 3 replies; 37+ messages in thread
From: Thomas Voegtlin @ 2015-05-11 16:28 UTC (permalink / raw)
  To: Bitcoin Development

The discussion on block size increase has brought some attention to the
other elephant in the room: Long-term mining incentives.

Bitcoin derives its current market value from the assumption that a
stable, steady-state regime will be reached in the future, where miners
have an incentive to keep mining to protect the network. Such a steady
state regime does not exist today, because miners get most of their
reward from the block subsidy, which will progressively be removed.

Thus, today's 3 billion USD question is the following: Will a steady
state regime be reached in the future? Can such a regime exist? What are
the necessary conditions for its existence?

Satoshi's paper suggests that this may be achieved through miner fees.
Quite a few people seem to take this for granted, and are working to
make it happen (developing cpfp and replace-by-fee). This explains part
of the opposition to raising the block size limit; some people would
like to see some fee pressure building up first, in order to get closer
to a regime where miners are incentivised by transaction fees instead of
block subsidy. Indeed, the emergence of a working fee market would be
extremely reassuring for the long-term viability of bitcoin. So, the
thinking goes, by raising the block size limit, we would be postponing a
crucial reality check. We would be buying time, at the expenses of
Bitcoin's decentralization.

OTOH, proponents of a block size increase have a very good point: if the
block size is not raised soon, Bitcoin is going to enter a new, unknown
and potentially harmful regime. In the current regime, almost all
transaction get confirmed quickly, and fee pressure does not exist. Mike
Hearn suggested that, when blocks reach full capacity and users start to
experience confirmation delays and confirmation uncertainty, users will
simply go away and stop using Bitcoin. To me, that outcome sounds very
plausible indeed. Thus, proponents of the block size increase are
conservative; they are trying to preserve the current regime, which is
known to work, instead of letting the network enter uncharted territory.

My problem is that this seems to lacks a vision. If the maximal block
size is increased only to buy time, or because some people think that 7
tps is not enough to compete with VISA, then I guess it would be
healthier to try and develop off-chain infrastructure first, such as the
Lightning network.

OTOH, I also fail to see evidence that a limited block capacity will
lead to a functional fee market, able to sustain a steady state. A
functional market requires well-informed participants who make rational
choices and accept the outcomes of their choices. That is not the case
today, and to believe that it will magically happen because blocks start
to reach full capacity sounds a lot like like wishful thinking.

So here is my question, to both proponents and opponents of a block size
increase: What steady-state regime do you envision for Bitcoin, and what
is is your plan to get there? More specifically, how will the
steady-state regime look like? Will users experience fee pressure and
delays, or will it look more like a scaled up version of what we enjoy
today? Should fee pressure be increased jointly with subsidy decrease,
or as soon as possible, or never? What incentives will exist for miners
once the subsidy is gone? Will miners have an incentive to permanently
fork off the last block and capture its fees? Do you expect Bitcoin to
work because miners are altruistic/selfish/honest/caring?

A clear vision would be welcome.



^ permalink raw reply	[flat|nested] 37+ messages in thread
* Re: [Bitcoin-development] Long-term mining incentives
@ 2015-05-13 17:49 Damian Gomez
  0 siblings, 0 replies; 37+ messages in thread
From: Damian Gomez @ 2015-05-13 17:49 UTC (permalink / raw)
  To: bitcoin-development

[-- Attachment #1: Type: text/plain, Size: 18004 bytes --]

I hope to keep continuing this conversations. Pardon my absence, but I
don't alway feel like I have much to contribute especially if it's not
techincal.

On my part I have been a proponent, of an alterrnativ consensus, that
begins shifting away from teh current cooinbase reward system in order to
reduce mining on the whole and thus limit those who do mine to do so on a
level of integrity.


I took a look at the ethereum blog on weak subjectivity, it does seem to be
a good transtition to use a gravity schema to be implemented in a Log
Structured Merge tree  in order to find doscrepancy in forks.


Using this sama data structure could still be used in a consensus model. In
terms of how nodes communicate on teh network their speed and latency
communication are at least halfway solved based off their intereactions
(kernel software changes) with how nodes write and read memory { smp_wrb()
 || smp_rmb() } This would allow for a connection on the


Let me provide a use case:  Say that we wanted to begin a new model for
integrity, then the current value for integrity would utilize a OTS from
the previous hash in order to establish the previous owner address of the
block it was previously part of.  THE MAIN ISSUE here is being able to
verify, which value of integrity is useful for being able to establish a
genesis block. A paper by Lee & Ewe (2001) called *The Byzantine General's
Problem* gives insight as to how a  O(n^c) model is suitable to send a
message w/ value through out the system, each node is then sent a
read-invalidate request in order to change their cache logs for old system
memory in a new fixed address. Upon consensus of this value the rest of the
"brainer" {1st recipeients} nodes would be able to send a forward
propagation of  the learnt value and, after acceptance the value would then
be backpropagated to the genesis block upoon every round in orderr to set a
deterministic standard for the dynamic increase of integrity of the system.


In POW systems the nonce generated would be the accumulation of the
integrity within a system and what their computatiuonal exertion in terms
of the overall rate of integrity increase in the system as the new coinbase
-> this value then is assigned and signed to the hash and teh Merkel Root
 as two layers encoded to its base and then reencrypted using EDCSA from
the 256 to 512 bit transformation so that the new address given has a
validity that cannot be easily fingerprinted and the malleability of teh
transaction becomes much more difficult due to the overall  2 ^ 28
verification stamp provided to the new hash.   The parameters  T T r P

(Trust value)  -> foud in the new coinbase or the scriptSig
( Hidden) -> found in the Hash, and the merkel root hash
(TRust overall)  R = within the target range for  new nonces and address
locations
Paradigm (integrity) = held within the genesis block as a backpropogated
solution



Using this signature then the  nodes would then be able to communicate and
transition the memory resevres for previous transaction on the block based
on the byzantine consensus. What noone has yet mentioned which I have
forgotten too, is how these datacenters of pool woul be supported w/out
fees. I will thrw that one out to all of you.  The current consensus system
leaves room for orp[haned transactions if there were miltiple signature
requests the queue would be lined up based off integrity values in order to
have the most effective changes occcur first.

I have some more thoughts and will continue working on the techinical
vernacular and how a noob developer and decent computer science student
could make such an mplementation a reality.  Thanks in advance for
listengin to this.



<Thank you to Greg Maxwell for allowing us to liosten to his talk online,
was hearing while writing this.>  And to Krzysztof Okupsi and Paul
McKenny(Memory Barriers Hardware View for Software hackers) for their help
in nudging my brain and the relentles people behind the scenes who make all
our minds possible.







On Wed, May 13, 2015 at 4:26 AM, <
bitcoin-development-request@lists.sourceforge.net> wrote:

> Send Bitcoin-development mailing list submissions to
>         bitcoin-development@lists.sourceforge.net
>
> To subscribe or unsubscribe via the World Wide Web, visit
>         https://lists.sourceforge.net/lists/listinfo/bitcoin-development
> or, via email, send a message with subject or body 'help' to
>         bitcoin-development-request@lists.sourceforge.net
>
> You can reach the person managing the list at
>         bitcoin-development-owner@lists.sourceforge.net
>
> When replying, please edit your Subject line so it is more specific
> than "Re: Contents of Bitcoin-development digest..."
>
> Today's Topics:
>
>    1. Re: Long-term mining incentives (Thomas Voegtlin)
>    2. Re: Long-term mining incentives (Tier Nolan)
>    3. Re: Long-term mining incentives (Alex Mizrahi)
>    4. Re: Proposed alternatives to the 20MB step        function (Tier
> Nolan)
>    5. Re: Block Size Increase (Oliver Egginger)
>    6. Re: Block Size Increase (Angel Leon)
>
>
> ---------- Forwarded message ----------
> From: Thomas Voegtlin <thomasv@electrum.org>
> To: Gavin Andresen <gavinandresen@gmail.com>, Bitcoin Dev <
> bitcoin-development@lists.sourceforge.net>
> Cc:
> Date: Wed, 13 May 2015 11:49:13 +0200
> Subject: Re: [Bitcoin-development] Long-term mining incentives
>
> Le 12/05/2015 18:10, Gavin Andresen a écrit :
> > Added back the list, I didn't mean to reply privately:
> >
> > Fair enough, I'll try to find time in the next month or three to write up
> > four plausible future scenarios for how mining incentives might work:
> >
> > 1) Fee-supported with very large blocks containing lots of tiny-fee
> > transactions
> > 2) Proof-of-idle supported (I wish Tadge Dryja would publish his
> > proof-of-idle idea....)
> > 3) Fees purely as transaction-spam-prevention measure, chain security via
> > alternative consensus algorithm (in this scenario there is very little
> > mining).
> > 4) Fee supported with small blocks containing high-fee transactions
> moving
> > coins to/from sidechains.
> >
> > Would that be helpful, or do you have some reason for thinking that we
> > should pick just one and focus all of our efforts on making that one
> > scenario happen?
> >
> > I always think it is better, when possible, not to "bet on one horse."
> >
>
> Sorry if I did not make myself clear. It is not about betting on one
> single horse, or about making one particular scenario happen. It is not
> about predicting whether something else will replace PoW in the future,
> and I am in no way asking you to focus your efforts in one particular
> direction at the expenses of others. Various directions will be explored
> by various people, and that's great.
>
> I am talking about what we know today. I would like an answer to the
> following question: Do we have a reason to believe that Bitcoin can work
> in the long run, without involving technologies that have not been
> invented yet? Is there a single scenario that we know could work?
>
> Exotic and unproven technologies are not an answer to that question. The
> reference scenario should be as boring as possible, and as verifiable as
> possible. I am not asking what you think is the most likely to happen,
> but what is the most likely to work, given the knowledge we have today.
>
> If I was asking: "Can we send humans to the moon by 2100?", I guess your
> answer would be: "Yes we can, because it has been done in the past with
> chemical rockets, and we know how to build them". You would probably not
> use a space elevator in your answer.
>
> The reason I am asking that is, there seems to be no consensus among
> core developers on how Bitcoin can work without miner subsidy. How it
> *will* work is another question.
>
>
>
>
> ---------- Forwarded message ----------
> From: Tier Nolan <tier.nolan@gmail.com>
> To:
> Cc: Bitcoin Dev <bitcoin-development@lists.sourceforge.net>
> Date: Wed, 13 May 2015 11:14:06 +0100
> Subject: Re: [Bitcoin-development] Long-term mining incentives
> On Wed, May 13, 2015 at 10:49 AM, Thomas Voegtlin <thomasv@electrum.org>
> wrote:
>
>>
>> The reason I am asking that is, there seems to be no consensus among
>> core developers on how Bitcoin can work without miner subsidy. How it
>> *will* work is another question.
>>
>
> The position seems to be that it will continue to work for the time being,
> so there is still time for more research.
>
> Proof of stake has problems with handling long term reversals.  The main
> proposal is to slightly weaken the security requirements.
>
> With POW, a new node only needs to know the genesis block (and network
> rules) to fully determine which of two chains is the strongest.
>
> Penalties for abusing POS inherently create a time horizon.  A suggested
> POS security model would assume that a full node is a node that resyncs
> with the network regularly (every N blocks).    N would be depend on the
> network rules of the coin.
>
> The alternative is that 51% of the holders of coins at the genesis block
> can rewrite the entire chain.  The genesis block might not be the first
> block, a POS coin might still use POW for minting.
>
>
> https://blog.ethereum.org/2014/11/25/proof-stake-learned-love-weak-subjectivity/
>
>
> ---------- Forwarded message ----------
> From: Alex Mizrahi <alex.mizrahi@gmail.com>
> To: Bitcoin Dev <bitcoin-development@lists.sourceforge.net>
> Cc:
> Date: Wed, 13 May 2015 13:31:47 +0300
> Subject: Re: [Bitcoin-development] Long-term mining incentives
>
>
>> With POW, a new node only needs to know the genesis block (and network
>> rules) to fully determine which of two chains is the strongest.
>>
>
> But this matters if a new node has access to the globally strongest chain.
> If attacker is able to block connections to legitimate nodes, a new node
> will happily accept attacker's chain.
>
> So PoW, by itself, doesn't give strong security guarantees. This problem
> is so fundamental people avoid talking about it.
>
> In practice, Bitcoin already embraces "weak subjectivity" e.g. in form of
> checkpoints embedded into the source code. So it's hard to take PoW purists
> seriously.
>
>
> ---------- Forwarded message ----------
> From: Tier Nolan <tier.nolan@gmail.com>
> To:
> Cc: Bitcoin Development <bitcoin-development@lists.sourceforge.net>
> Date: Wed, 13 May 2015 11:43:08 +0100
> Subject: Re: [Bitcoin-development] Proposed alternatives to the 20MB step
> function
> On Sat, May 9, 2015 at 4:36 AM, Gregory Maxwell <gmaxwell@gmail.com>
> wrote:
>
>> An example would
>> be tx_size = MAX( real_size >> 1,  real_size + 4*utxo_created_size -
>> 3*utxo_consumed_size).
>
>
> This could be implemented as a soft fork too.
>
> * 1MB hard size limit
> * 900kB soft limit
>
> S = block size
> U = UTXO_adjusted_size = S + 4 * outputs - 3 * inputs
>
> A block is valid if S < 1MB and U < 1MB
>
> A 250 byte transaction with 2 inputs and 2 outputs would have an adjusted
> size of 252 bytes.
>
> The memory pool could be sorted by fee per adjusted_size.
>
>  Coin selection could be adjusted so it tries to have at least 2 inputs
> when creating transactions, unless the input is worth more than a threshold
> (say 0.001 BTC).
>
> This is a pretty weak incentive, especially if the block size is
> increased.  Maybe it will cause a "nudge"
>
>
> ---------- Forwarded message ----------
> From: Oliver Egginger <bitcoin@olivere.de>
> To: bitcoin-development@lists.sourceforge.net
> Cc:
> Date: Wed, 13 May 2015 12:37:17 +0200
> Subject: Re: [Bitcoin-development] Block Size Increase
> 08.05.2015 at 5:49 Jeff Garzik wrote:
> > To repeat, the very first point in my email reply was: "Agree that 7 tps
> > is too low"
>
> For interbank trading that would maybe enough but I don't know.
>
> I'm not a developer but as a (former) user and computer scientist I'm
> also asking myself what is the core of the problem? Personally, for
> privacy reasons I do not want to leave a footprint in the blockchain for
> each pizza. And why should this expense be good for trivial things of
> everyday life?
>
> If one encounters the block boundary, he or she will do more effort or
> give up. I'm thinking most people will give up because their
> transactions are not really economical. It is much better for them to
> use third-partys (or another payment system).
>
> And that's where we are at the heart of the problem. The Bitcoin
> third-party economy. With few exceptions this is pure horror. More worse
> than any used car dealer. And the community just waits that things get
> better. But that will never happen of its own accord. We are living in a
> Wild West Town. So we need a Sheriff and many other things.
>
> We need a small but good functioning economy around the blockchain. To
> create one, we have to accept a few unpleasant truths. I do not know if
> the community is ready for it.
>
> Nevertheless, I know that some companies do a good job. But they have to
> prevail against their dishonest competitors.
>
> People take advantage of the blockchain, because they no longer trust
> anyone. But this will not scale in the long run.
>
> - oliver
>
>
>
>
>
>
>
>
>
>
>
> ---------- Forwarded message ----------
> From: Angel Leon <gubatron@gmail.com>
> To: Oliver Egginger <bitcoin@olivere.de>
> Cc: Bitcoin Dev <bitcoin-development@lists.sourceforge.net>
> Date: Wed, 13 May 2015 07:25:47 -0400
> Subject: Re: [Bitcoin-development] Block Size Increase
> > Personally, for privacy reasons I do not want to leave a footprint in
> the blockchain for each pizza. And  why should this expense be good for
> trivial things of everyday life?
>
> Then what's the point?
> Isn't this supposed to be an Open transactional network, it doesn't matter
> if you don't want that, what matters is what people want to do with it, and
> there's nothing you can do to stop someone from opening a wallet and buying
> a pizza with it, except the core of the problem you ask yourself about,
> which is, the minute this goes mainstream and people get their wallets out
> the whole thing will collapse, regardless of what you want the blockchain
> for.
>
> Why talk about the billions of unbanked and all the romantic vision if you
> can't let them use their money however they want in a decentralized
> fashion. Otherwise let's just go back to centralized banking because the
> minute you want to put things off chain, you need an organization that will
> need to respond to government regulation and that's the end for the
> billions of unbanked to be part of the network.
>
>
> http://twitter.com/gubatron
>
> On Wed, May 13, 2015 at 6:37 AM, Oliver Egginger <bitcoin@olivere.de>
> wrote:
>
>> 08.05.2015 at 5:49 Jeff Garzik wrote:
>> > To repeat, the very first point in my email reply was: "Agree that 7 tps
>> > is too low"
>>
>> For interbank trading that would maybe enough but I don't know.
>>
>> I'm not a developer but as a (former) user and computer scientist I'm
>> also asking myself what is the core of the problem? Personally, for
>> privacy reasons I do not want to leave a footprint in the blockchain for
>> each pizza. And why should this expense be good for trivial things of
>> everyday life?
>>
>> If one encounters the block boundary, he or she will do more effort or
>> give up. I'm thinking most people will give up because their
>> transactions are not really economical. It is much better for them to
>> use third-partys (or another payment system).
>>
>> And that's where we are at the heart of the problem. The Bitcoin
>> third-party economy. With few exceptions this is pure horror. More worse
>> than any used car dealer. And the community just waits that things get
>> better. But that will never happen of its own accord. We are living in a
>> Wild West Town. So we need a Sheriff and many other things.
>>
>> We need a small but good functioning economy around the blockchain. To
>> create one, we have to accept a few unpleasant truths. I do not know if
>> the community is ready for it.
>>
>> Nevertheless, I know that some companies do a good job. But they have to
>> prevail against their dishonest competitors.
>>
>> People take advantage of the blockchain, because they no longer trust
>> anyone. But this will not scale in the long run.
>>
>> - oliver
>>
>>
>>
>>
>>
>>
>>
>>
>>
>> ------------------------------------------------------------------------------
>> One dashboard for servers and applications across Physical-Virtual-Cloud
>> Widest out-of-the-box monitoring support with 50+ applications
>> Performance metrics, stats and reports that give you Actionable Insights
>> Deep dive visibility with transaction tracing using APM Insight.
>> http://ad.doubleclick.net/ddm/clk/290420510;117567292;y
>> _______________________________________________
>> Bitcoin-development mailing list
>> Bitcoin-development@lists.sourceforge.net
>> https://lists.sourceforge.net/lists/listinfo/bitcoin-development
>>
>
>
>
> ------------------------------------------------------------------------------
> One dashboard for servers and applications across Physical-Virtual-Cloud
> Widest out-of-the-box monitoring support with 50+ applications
> Performance metrics, stats and reports that give you Actionable Insights
> Deep dive visibility with transaction tracing using APM Insight.
> http://ad.doubleclick.net/ddm/clk/290420510;117567292;y
> _______________________________________________
> Bitcoin-development mailing list
> Bitcoin-development@lists.sourceforge.net
> https://lists.sourceforge.net/lists/listinfo/bitcoin-development
>
>

[-- Attachment #2: Type: text/html, Size: 23120 bytes --]

^ permalink raw reply	[flat|nested] 37+ messages in thread
* Re: [Bitcoin-development] Long-term mining incentives
@ 2015-05-18  2:29 Michael Jensen
  0 siblings, 0 replies; 37+ messages in thread
From: Michael Jensen @ 2015-05-18  2:29 UTC (permalink / raw)
  To: bitcoin-development

I think the basic reality is that a) an arbitrarily elevated level of
hashing is fundamental to a truly decentralised, autonomous network,
and is an essential cost to maintaining Bitcoin, b) there are no signs
that this fact will change, c) there must be some replacement to the
current system of incentivisation through debasement (inflation).

Arguments about limiting block size versus setting minimum fees are
confused because ultimately both mechanisms should ideally achieve the
same outcome: a market price for transactions which means that a) not
everyone who would make a TX if TXs were unpriced does so (reduced
number of TXs) and b) the market price is used to fund hashing. This
is just the nature of prices, it always reduces effective demand, but
without prices supply must collapse and the market must fail.

Regardless, if every time the network gets close to reaching the block
size limit the development community gets scared and raises the limit,
then such a limit will never be an effective tool for setting a market
price. Personally I think trying to artificially limit supply to
create a price for transactions is a needlessly complicated way of
trying to achieve this goal. I think minimum fees for transactions is
a better, simpler option.

I would go a step further and say that the development community will
struggle forever if it tries to play the role of the centralised
economic planner in setting prices for network services. The community
should look at more dynamic ways to let network users express their
preferences for security and their willingness to pay for it. I've
written on the issue -
https://medium.com/@mike0/securing-bitcoin-5-determing-an-optimal-funding-level-9873fa1322a7

As far as the argument that fees will drive people away from Bitcoin,
I can't believe that. Everything we desire has to be paid for somehow.
People will accept a fee for making Bitcoin transactions if Bitcoin as
a result is a stable, useful service. Bitcoin as both a currency and
as a transaction network has strong network effects, so, ignoring
sidechains, it's highly unrealistic that a mandatory fee will drive
people away from Bitcoin when the alternatives are dubious knock-offs
with no network effect, and fiat, which is even worse in regards to
the hidden and malignant costs it exacts.



^ permalink raw reply	[flat|nested] 37+ messages in thread

end of thread, other threads:[~2015-05-28 10:31 UTC | newest]

Thread overview: 37+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-05-11 16:28 [Bitcoin-development] Long-term mining incentives Thomas Voegtlin
2015-05-11 16:52 ` insecurity
2015-05-11 17:29   ` Gavin Andresen
2015-05-12 12:35     ` Thomas Voegtlin
     [not found]       ` <CABsx9T1h7p3hDr7ty43uxsYs-oNRpndzg=dowST2tXtogxRm2g@mail.gmail.com>
     [not found]         ` <555210AF.3090705@electrum.org>
2015-05-12 16:10           ` Gavin Andresen
2015-05-12 16:21             ` Dave Hudson
2015-05-12 21:24             ` Pedro Worcel
2015-05-12 23:48               ` Adam Back
2015-05-13 15:41                 ` Gavin Andresen
2015-05-13 20:05                   ` Pedro Worcel
2015-05-13  9:49             ` Thomas Voegtlin
2015-05-13 10:14               ` Tier Nolan
2015-05-13 10:31                 ` Alex Mizrahi
2015-05-13 11:29                   ` Tier Nolan
2015-05-13 12:26                     ` Alex Mizrahi
2015-05-13 13:24                       ` Gavin
2015-05-13 13:28                       ` Tier Nolan
2015-05-13 14:26                         ` Alex Mizrahi
2015-05-13 23:46                   ` Jorge Timón
2015-05-14  0:11     ` Jorge Timón
2015-05-14  0:48       ` Aaron Voisine
2015-05-14  0:58         ` Pieter Wuille
2015-05-14  1:13           ` Aaron Voisine
2015-05-14  1:19             ` Pieter Wuille
2015-05-14  1:31               ` Aaron Voisine
2015-05-14  2:34                 ` Aaron Voisine
2015-05-16 20:35                 ` Owen Gunden
2015-05-16 22:18                   ` Tom Harding
2015-05-17  1:08                   ` Aaron Voisine
2015-05-14  0:44 ` Melvin Carvalho
2015-05-25 18:31 ` Mike Hearn
2015-05-26 18:47   ` Thomas Voegtlin
2015-05-27 21:59   ` Mike Hearn
2015-05-27 22:22     ` Gregory Maxwell
2015-05-28 10:30       ` Mike Hearn
2015-05-13 17:49 Damian Gomez
2015-05-18  2:29 Michael Jensen

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox