public inbox for bitcoindev@googlegroups.com
 help / color / mirror / Atom feed
From: "Jorge Timón" <jtimon@monetize•io>
To: Tier Nolan <tier.nolan@gmail•com>
Cc: Bitcoin Dev <bitcoin-development@lists•sourceforge.net>
Subject: Re: [Bitcoin-development] Economics of information propagation
Date: Mon, 21 Apr 2014 15:04:35 +0200	[thread overview]
Message-ID: <CAC1+kJMpb87zccRmGQ0KABim=08KnmU2fmiSVa2=2+JkB8_v1Q@mail.gmail.com> (raw)
In-Reply-To: <CAE-z3OX8PGs7B_e32BGPx2BRkKeUwEO+GY-=i-VCxmKsZG6EZw@mail.gmail.com>

I'm not convinced that headers first will result in miners hashing on
top of the block with more work without knowing if it's valid yet
instead of just keep hashing on top of the longest known-to-be-valid
chain.
Both options are risky for the miner in some way, and I guess the
probability of someone hashing an invalid block above difficulty is
too low to be the main concern, but there's intermediate solutions,
like say, waiting to validate at least 5% of the block.

But I don't see how miners mining headers first would result in empty
blocks either.
Why wouldn't them validate and include transactions after they have
received the full block?
They will likely know most of the transaction before receiving the block anyway.
In a future where they ONLY live on transaction fees, why would they
refuse to validate and include transactions? What are they hashing for
then?
If anything, looks like a threat to the current situation with huge
mining subsidies coming from the seigniorage, not a problem that you
would have when the the seigniorage is gone.

In any case, it is true that this is mining policy and therefore out
of the realm of what the protocol can regulate, so we should assume
miners will do whatever it's best for them.

The trade-off between tps and centralization remains: if you want
higher tx volume, less full nodes will be able to process it.

On 4/21/14, Tier Nolan <tier.nolan@gmail•com> wrote:
> On Mon, Apr 21, 2014 at 5:06 AM, Peter Todd <pete@petertodd•org> wrote:
>
>> Of course, in reality smaller miners can just mine on top of block
>> headers
>> and include no transactions and do no validation, but that is extremely
>> harmful to the security of Bitcoin.
>>
>
> I don't think it reduces security much.  It is extremely unlikely that
> someone would publish an invalid block, since they would waste their POW.
>
> Presuming that new headers are correct is reasonable, as long as you check
> the full block within a few minutes of receiving the header.
>
> If anything, it increases security, since less hashing power is wasted
> while the full block is broadcast.
>
> Block propagation could take the form
>
> - broadcast new header
> - all miners switch to mining empty blocks
> - broadcast new block
> - miners update to a block with transactions
>
> If the block doesn't arrive within a timeout, then the miner could switch
> back to the old block.
>
> This would mean that a few percent of empty blocks end up in the
> blockchain, but that doesn't do any harm.
>
> It is only harmful, if it is used as a DOS attack on the network.
>
> The empty blocks will only occur when 2 blocks are found in quick
> succession, so it doesn't have much affect on average time until 1
> confirm.  Empty blocks are just as good for providing 1 of the 6 confirms
> needed too.
>


-- 
Jorge Timón

http://freico.in/



  reply	other threads:[~2014-04-21 13:04 UTC|newest]

Thread overview: 21+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
     [not found] <mailman.122233.1398039406.2207.bitcoin-development@lists.sourceforge.net>
2014-04-21  1:30 ` Jonathan Levin
2014-04-21  3:58   ` Mark Friedenbach
2014-04-21  4:06     ` Peter Todd
2014-04-21  4:44       ` Daniel Lidstrom
2014-04-21  5:46         ` Daniel Lidstrom
2014-04-21 11:34       ` Tier Nolan
2014-04-21 13:04         ` Jorge Timón [this message]
2014-04-21 15:40       ` Ashley Holman
2014-04-21 15:58         ` Alan Reiner
2014-04-21 16:00       ` Mark Friedenbach
2014-04-21 16:22         ` Paul Lyon
2014-04-21 16:38           ` Mark Friedenbach
2014-04-21 16:39             ` Mike Hearn
2014-04-21 16:45         ` Jonathan Levin
2014-04-23  2:54   ` Tom Harding
2014-04-23 15:05   ` Peter Todd
     [not found]     ` <CAOe4Ui=OaVLvh0vUnNv-1j41YB4B2x896DQ5b6xt4oUJ5oLPFg@mail.gmail.com>
2014-05-02 11:48       ` [Bitcoin-development] Block collision resolution using the DECOR protocol and Bonneau's Kickbacks problem Sergio Lerner
2014-05-02 12:00         ` Sergio Lerner
     [not found]           ` <CAOe4UimBEe4t1Z41du3r8pQUOmzd_1V_aESizuiH2U6uvN9nFA@mail.gmail.com>
2014-05-05 19:45             ` Sergio Lerner
2014-05-05 20:27               ` Ittay
2014-05-07  4:31             ` [Bitcoin-development] DECOR+ Better block selection rule Sergio Lerner

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

  Avoid top-posting and favor interleaved quoting:
  https://en.wikipedia.org/wiki/Posting_style#Interleaved_style

* Reply using the --to, --cc, and --in-reply-to
  switches of git-send-email(1):

  git send-email \
    --in-reply-to='CAC1+kJMpb87zccRmGQ0KABim=08KnmU2fmiSVa2=2+JkB8_v1Q@mail.gmail.com' \
    --to=jtimon@monetize$(echo .)io \
    --cc=bitcoin-development@lists$(echo .)sourceforge.net \
    --cc=tier.nolan@gmail$(echo .)com \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html
Be sure your reply has a Subject: header at the top and a blank line before the message body.
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox