public inbox for bitcoindev@googlegroups.com
 help / color / mirror / Atom feed
From: slush <slush@centrum.cz>
To: Mark Friedenbach <mark@monetize.io>
Cc: Bitcoin Dev <bitcoin-development@lists.sourceforge.net>
Subject: Re: [Bitcoin-development] BlockPow: A Practical Proposal to prevent mining pools AND reduce payoff variance:
Date: Thu, 19 Jun 2014 22:55:48 +0200	[thread overview]
Message-ID: <CAJna-HgP=RvbFpkdwqkoNP0fmMg6r80zDKrA-Cb2mcbmyjOTEA@mail.gmail.com> (raw)
In-Reply-To: <53A34A71.2090106@monetize.io>

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

Miner issues are just one thing what came to my mind. What about validating
transactions? How the pool can be sure that miner is running up to date
bitcoind which do full validation of transactions? Not talking that if
every miner takes his own set of transaction, pool need to calculate merkle
root for every submit, to check its correctness.

I don't think it *cannot* be done, it is just extremely hard and there's no
economic motivation for such complication on pool side. Just see current
pools, they are full of security and stability bugs even while using such
trivial protocol like Stratum...

slush

On Thu, Jun 19, 2014 at 10:39 PM, Mark Friedenbach <mark@monetize.io> wrote:

> Do you need to do full validation? There's an economic cost to mining
> invalid blocks, and even if that were acceptable there's really no
> reason to perform such an attack. The result would be similar to a block
> withholding attack, but unlike block withholding it would be trivially
> detectable if/when full validation was performed.
>
> To protect yourself and to detect incorrect mining software you could
> stochastically validate a randomly selected sample of shares, as your
> hardware requirements allow.
>
> On 06/19/2014 01:26 PM, slush wrote:
> > With GBT, simply hashing the block header is not enough, because pool
> > cannot rely on anything provided by the client. Its not only about
> > things like withdrawal attacks, but more about hidden bugs in various
> > miners. It is extremely hard to do full validation for *every* of
> > submitted shares.
>

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

  reply	other threads:[~2014-06-19 20:56 UTC|newest]

Thread overview: 9+ messages / expand[flat|nested]  mbox.gz  Atom feed  top
2014-06-19 16:58 [Bitcoin-development] BlockPow: A Practical Proposal to prevent mining pools AND reduce payoff variance: Sergio Lerner
2014-06-19 17:11 ` Kevin
2014-06-19 17:37   ` Justus Ranvier
2014-06-19 17:17 ` Mark Friedenbach
2014-06-19 17:35   ` Mike Hearn
2014-06-19 20:26     ` slush
2014-06-19 20:39       ` Mark Friedenbach
2014-06-19 20:55         ` slush [this message]
2014-06-19 21:07           ` Mark Friedenbach

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='CAJna-HgP=RvbFpkdwqkoNP0fmMg6r80zDKrA-Cb2mcbmyjOTEA@mail.gmail.com' \
    --to=slush@centrum.cz \
    --cc=bitcoin-development@lists.sourceforge.net \
    --cc=mark@monetize.io \
    /path/to/YOUR_REPLY

  https://kernel.org/pub/software/scm/git/docs/git-send-email.html

* If your mail client supports setting the In-Reply-To header
  via mailto: links, try the mailto: link
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