Received: from sog-mx-1.v43.ch3.sourceforge.com ([172.29.43.191] helo=mx.sourceforge.net) by sfs-ml-4.v29.ch3.sourceforge.com with esmtp (Exim 4.76) (envelope-from ) id 1TR3zT-00045P-4a for bitcoin-development@lists.sourceforge.net; Wed, 24 Oct 2012 16:39:35 +0000 X-ACL-Warn: Received: from vps7135.xlshosting.net ([178.18.90.41]) by sog-mx-1.v43.ch3.sourceforge.com with esmtp (Exim 4.76) id 1TR3zN-0006of-5N for bitcoin-development@lists.sourceforge.net; Wed, 24 Oct 2012 16:39:35 +0000 Received: by vps7135.xlshosting.net (Postfix, from userid 1000) id 48105494008; Wed, 24 Oct 2012 18:22:57 +0200 (CEST) Date: Wed, 24 Oct 2012 18:22:56 +0200 From: Pieter Wuille To: Mike Hearn Message-ID: <20121024162255.GA30290@vps7135.xlshosting.net> References: MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Disposition: inline In-Reply-To: X-PGP-Key: http://sipa.ulyssis.org/pubkey.asc User-Agent: Mutt/1.5.21 (2010-09-15) X-Spam-Score: 0.5 (/) X-Spam-Report: Spam Filtering performed by mx.sourceforge.net. See http://spamassassin.org/tag/ for more details. 0.0 FREEMAIL_FROM Sender email is commonly abused enduser mail provider (pieter.wuille[at]gmail.com) 0.0 DKIM_ADSP_CUSTOM_MED No valid author signature, adsp_override is CUSTOM_MED -0.7 RP_MATCHES_RCVD Envelope sender domain matches handover relay domain 1.2 NML_ADSP_CUSTOM_MED ADSP custom_med hit, and not from a mailing list X-Headers-End: 1TR3zN-0006of-5N Cc: Bitcoin Dev Subject: Re: [Bitcoin-development] Draft BIP for Bloom filtering X-BeenThere: bitcoin-development@lists.sourceforge.net X-Mailman-Version: 2.1.9 Precedence: list List-Id: List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 24 Oct 2012 16:39:35 -0000 On Wed, Oct 24, 2012 at 05:56:07PM +0200, Mike Hearn wrote: > I've written a draft BIP describing the bloom filtering protocol > extension developed by myself and Matt. > > https://en.bitcoin.it/wiki/BIP_0037 > > Please read it and let me know if there are any missing details or > things which sound wrong. Some questions: * why limit the number of matching transactions to 255? * what does "each hash and key in the output script" mean exactly? what about the output script in its entirety? * is sharing parts of the merkle branches not worth it? > Design-wise, it occurred to me as I wrote the BIP that the method of > delaying reception of invs is a bit ad-hoc. It may be better to have a > bloom filter be sent in the version message itself. On the other hand, > having a flag to delay invs means that the filter can be calculated in > parallel to bringing up the network connections. Whilst actually > making a Bloom filter is fast, with deterministic wallets you may need > to do a lot of calculations to find the keys to scan for. I'm not in favor of stuffing too much into the version message, it already seems overloaded. A byte with some bit-flags is fine by me - higher bits can later be added for other boolean flags. -- Pieter