Return-Path: Received: from smtp1.linuxfoundation.org (smtp1.linux-foundation.org [172.17.192.35]) by mail.linuxfoundation.org (Postfix) with ESMTPS id 2AF8B949 for ; Wed, 19 Aug 2015 12:51:36 +0000 (UTC) X-Greylist: whitelisted by SQLgrey-1.7.6 Received: from mail-lb0-f171.google.com (mail-lb0-f171.google.com [209.85.217.171]) by smtp1.linuxfoundation.org (Postfix) with ESMTPS id 7661C1F5 for ; Wed, 19 Aug 2015 12:51:35 +0000 (UTC) Received: by lbbtg9 with SMTP id tg9so2489739lbb.1 for ; Wed, 19 Aug 2015 05:51:34 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20120113; h=mime-version:in-reply-to:references:from:date:message-id:subject:to :cc:content-type; bh=7XJZzQSRpdAEC2539OWFY1NjBg3oN9wVOaJluSgcjYU=; b=WizZGGhP4xFLBlwPm8/Hy9NWjDzgNsQ2EnIdeQDMliG07GJjZoRHmwqVb/947IGISl QELpERM35OeWJ8t9zJg7YMPS33PlZ8NrxBov94YDd2m5y8dR3I42ffGc2fJvm332ksp/ 6dom5GL1wYMwWj3tGK1UAzXQObu0UwxFNePRWXsu/8lIb4UR0zDcBNN9t8zenFqNqNVL WsZdgCTNypC9u7TEGwXUK8GHCyFshMTQJk9EEHl2h71Lnpg+iTEY7kYhTETsgQ2RHEEE j2gXwMa+8OaqNhWEKbaX6Xk6+MHCsvdxQPGbRF8bEpJMvXMmOfi59zZALOAgXMrlAFYx ky0Q== X-Received: by 10.152.30.100 with SMTP id r4mr10919746lah.92.1439988693919; Wed, 19 Aug 2015 05:51:33 -0700 (PDT) MIME-Version: 1.0 Received: by 10.25.22.25 with HTTP; Wed, 19 Aug 2015 05:51:14 -0700 (PDT) In-Reply-To: References: From: Hector Chu Date: Wed, 19 Aug 2015 13:51:14 +0100 Message-ID: To: Jameson Lopp Content-Type: text/plain; charset=UTF-8 X-Spam-Status: No, score=-2.7 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, FREEMAIL_FROM, RCVD_IN_DNSWL_LOW autolearn=ham version=3.3.1 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on smtp1.linux-foundation.org Cc: Bitcoin Dev Subject: Re: [bitcoin-dev] A solution to increase the incentive of running a node X-BeenThere: bitcoin-dev@lists.linuxfoundation.org X-Mailman-Version: 2.1.12 Precedence: list List-Id: Bitcoin Development Discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 19 Aug 2015 12:51:36 -0000 On 19 August 2015 at 13:44, Jameson Lopp wrote: > It's possible to check that a transaction is cryptographically valid without > having any blockchain data available; are you referring to a different type > of validation? It seems laborious to enumerate all the validations that are performed on a transaction before it can be mined into a block, but for starters we need to check it isn't a double-spend, and that its signatures satisfy the outputs' pubkeys. > If you're running an SPV node that is listening to full nodes on the > network, you can request an unconfirmed transaction from connected peers > after receiving the inventory message they send - that's how unconfirmed > transactions propagate through the node network. This is not 100% proof that > the transaction is valid for inclusion in the blockchain, but it's a very > good indicator. If you as an SPV node are waiting for unconfirmed transactions to be relayed to you, you are going to have a slow start in mining those transactions, decreasing the likelihood of receiving the mining reward. Nodes should accept the first POW for a transaction and discard any subsequent ones received.