Return-Path: Received: from smtp1.linuxfoundation.org (smtp1.linux-foundation.org [172.17.192.35]) by mail.linuxfoundation.org (Postfix) with ESMTPS id 31708113B for ; Thu, 17 May 2018 16:59:25 +0000 (UTC) X-Greylist: from auto-whitelisted by SQLgrey-1.7.6 Received: from mail.bluematt.me (mail.bluematt.me [192.241.179.72]) by smtp1.linuxfoundation.org (Postfix) with ESMTPS id 24515D3 for ; Thu, 17 May 2018 16:59:24 +0000 (UTC) Received: from [172.17.0.2] (gw.vpn.bluematt.me [144.217.106.88]) by mail.bluematt.me (Postfix) with ESMTPSA id E44301A5F68; Thu, 17 May 2018 16:59:22 +0000 (UTC) To: Gregory Maxwell , Bitcoin Protocol Discussion References: From: Matt Corallo Message-ID: <22d375c7-a032-8691-98dc-0e6ee87a4b08@mattcorallo.com> Date: Thu, 17 May 2018 12:59:22 -0400 User-Agent: Mozilla/5.0 (X11; Linux x86_64; rv:52.0) Gecko/20100101 Thunderbird/52.7.0 MIME-Version: 1.0 In-Reply-To: Content-Type: text/plain; charset=utf-8 Content-Language: en-US Content-Transfer-Encoding: 7bit X-Spam-Status: No, score=-1.9 required=5.0 tests=BAYES_00 autolearn=ham version=3.3.1 X-Spam-Checker-Version: SpamAssassin 3.3.1 (2010-03-16) on smtp1.linux-foundation.org Subject: Re: [bitcoin-dev] BIP 158 Flexibility and Filter Size 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: Thu, 17 May 2018 16:59:25 -0000 Yea I generally would really prefer something like that but it significantly complicates the download logic - currently clients can easily cross-check a filter in case they differ between providers by downloading the block. If we instead went with the script being spent they would have to be provided all previous transactions (potentially compressed via midstate) as well, making it potentially infeasible to identify the offending node while remaining a lightweight client. Maybe there is some other reasonable download logic to replace it with, however. Matt On 05/17/18 12:36, Gregory Maxwell wrote: > On Thu, May 17, 2018 at 3:25 PM, Matt Corallo via bitcoin-dev > wrote: >> I believe (1) could be skipped entirely - there is almost no reason why >> you'd not be able to filter for, eg, the set of output scripts in a >> transaction you know about > > I think this is convincing for the txids themselves. > > What about also making input prevouts filter based on the scriptpubkey > being _spent_? Layering wise in the processing it's a bit ugly, but > if you validated the block you have the data needed. > > This would eliminate the multiple data type mixing entirely. >