Return-Path: Received: from smtp1.linuxfoundation.org (smtp1.linux-foundation.org [172.17.192.35]) by mail.linuxfoundation.org (Postfix) with ESMTPS id 2C578957 for ; Fri, 5 May 2017 08:49:41 +0000 (UTC) X-Greylist: from auto-whitelisted by SQLgrey-1.7.6 Received: from out4-smtp.messagingengine.com (out4-smtp.messagingengine.com [66.111.4.28]) by smtp1.linuxfoundation.org (Postfix) with ESMTPS id 96512E5 for ; Fri, 5 May 2017 08:49:37 +0000 (UTC) Received: from compute2.internal (compute2.nyi.internal [10.202.2.42]) by mailout.nyi.internal (Postfix) with ESMTP id A1DEE209DF for ; Fri, 5 May 2017 04:49:35 -0400 (EDT) Received: from web3 ([10.202.2.213]) by compute2.internal (MEProxy); Fri, 05 May 2017 04:49:35 -0400 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d= messagingengine.com; h=content-transfer-encoding:content-type :date:from:message-id:mime-version:subject:to:x-me-sender :x-me-sender:x-sasl-enc; s=fm1; bh=cQHGPAkpkmXNhaet0zT0RO0droGNe y3Io+W+mtpOG94=; b=Vc77rnj3BVtwPuHtApAqb0Cho4CtlpFiuoIXMNDt1lluf tXcVQ2OURKKGpCbYB5eOHsQ6COTiT3SWM7CPlLTC9g4UE1mF5N6qTpYmNu94HQ62 6iDnt9WxHWzloZqH4/fF8KSMiJRWHqQR60HlrbeBSSGB896hzprdI0o2LBBzyeHC n2h5KmPnv8rhMc8YA/YyQqYKq9GAcwbb+D+U7YioP8fLaJINxDmOBCoEI29E81k7 u006k6l1Hj9cXKyLPHBDcuTcYcL14OZR7NMKWXwVCOpFk8GA8izAcSat8Htr2LzC LgWQddoNEK5DJqpdvUjRE/zB+CGZI95i8rWBJyLpQ== X-ME-Sender: Received: by mailuser.nyi.internal (Postfix, from userid 99) id 7E8999EC8E; Fri, 5 May 2017 04:49:35 -0400 (EDT) Message-Id: <1493974175.1405717.966643128.63AF4749@webmail.messagingengine.com> From: Tomas To: bitcoin-dev@lists.linuxfoundation.org MIME-Version: 1.0 Content-Transfer-Encoding: 7bit Content-Type: text/plain; charset="utf-8" X-Mailer: MessagingEngine.com Webmail Interface - ajax-6cc55fe1 Date: Fri, 05 May 2017 10:49:35 +0200 X-Spam-Status: No, score=-2.6 required=5.0 tests=BAYES_00,DKIM_SIGNED, DKIM_VALID,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 X-Mailman-Approved-At: Fri, 05 May 2017 10:59:11 +0000 Subject: [bitcoin-dev] Fraud Proofs with semi SPV X-BeenThere: bitcoin-dev@lists.linuxfoundation.org X-Mailman-Version: 2.1.12 Precedence: list List-Id: Bitcoin Protocol Discussion List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Fri, 05 May 2017 08:49:41 -0000 I would like some feedback on the idea to use a node type a bit heavier then SPV (dubbed FSPV) to solve Fraud Proofs. An FSPV node not only downloads block headers, but also the "spend-tree blocks", consisting of all TXIDs and all previous output indices and TXIDs. The latter can be compacted using a scheme similar to Compact Blocks, which will make the spend-tree block ~80kb in size. ThIs way the FSPV can track the full transaction graph at little cost. The advantage is, that Fraud Hint messages for absent/withheld transactions become feasible. A normal SPV is reduced to Full Node by such (cheaply faked) hint, but for an FSPV the cost is almost zero. All it needs to do is add a taint-bit in the tree and propagate the taint to the transaction graph. It then knows it needs to request the Fraud Hinted transaction to consider any descendant transaction valid. This makes it sufficient to punish fraudulent fraud hints or withheld transactions by normal "banscore" procedures. All other fraud can be proven by transaction-sets. More information here: https://bitcrust.org/blog-fraud-proofs Tomas Bitcrust