<oembed><type>rich</type><version>1.0</version><author_name>npub19helcfnqgk2jrwzjex2aflq6jwfc8zd9uzzkwlgwhve7lykv23mq5zkvn4</author_name><author_url>https://nostr.ae/npub19helcfnqgk2jrwzjex2aflq6jwfc8zd9uzzkwlgwhve7lykv23mq5zkvn4</author_url><provider_name>njump</provider_name><provider_url>https://nostr.ae</provider_url><html>📅 Original date posted:2018-05-29&#xA;📝 Original message:&gt; The additional benefit of the input script/outpoint filter is to watch for&#xA;&gt; unexpected spends (coins getting stolen or spent from another wallet) or&#xA;&gt; transactions without a unique change or output address. I think this is a&#xA;&gt; reasonable implementation, and it would be nice to be able to download&#xA;that&#xA;&gt; filter without any input elements.&#xA;&#xA;As someone who&#39;s implemented a complete integration of the filtering&#xA;technique into an existing wallet, and a higher application I disagree.&#xA;There&#39;s not much gain to be had in splitting up the filters: it&#39;ll result in&#xA;additional round trips (to fetch these distinct filter) during normal&#xA;operation, complicate routine seed rescanning logic, and also is detrimental&#xA;to privacy if one is fetching blocks from the same peer as they&#39;ve&#xA;downloaded the filters from.&#xA;&#xA;However, I&#39;m now convinced that the savings had by including the prev output&#xA;script (addr re-use and outputs spent in the same block as they&#39;re created)&#xA;outweigh the additional booking keeping required in an implementation (when&#xA;extracting the precise tx that matched) compared to using regular outpoint&#xA;as we do currently. Combined with the recently proposed re-parametrization&#xA;of the gcs parameters[1], the filter size should shrink by quite a bit!&#xA;&#xA;I&#39;m very happy with the review the BIPs has been receiving as of late. It&#xA;would&#39;ve been nice to have this 1+ year ago when the draft was initially&#xA;proposed, but better late that never!&#xA;&#xA;Based on this thread, [1], and discussions on various IRC channels, I plan&#xA;to make the following modifications to the BIP:&#xA;&#xA;  1. use P=2^19 and M=784931 as gcs parameters, and also bind these to the&#xA;     filter instance, so future filter types may use distinct parameters&#xA;  2. use the prev output script rather than the prev input script in the&#xA;     regular filter&#xA;  3. remove the txid from the regular filter(as with some extra book-keeping&#xA;     the output script is enough)&#xA;  4. do away with the extended filter all together, as our original use case&#xA;     for it has been nerfed as the filter size grew too large when doing&#xA;     recursive parsing. instead we watch for the outpoint being spent and&#xA;     extract the pre-image from it if it matches now&#xA;&#xA;The resulting changes should slash the size of the filters, yet still ensure&#xA;that they&#39;re useful enough for our target use case.&#xA;&#xA;[1]:&#xA;https://lists.linuxfoundation.org/pipermail/bitcoin-dev/2018-May/016029.html&#xA;&#xA;-- Laolu&#xA;-------------- next part --------------&#xA;An HTML attachment was scrubbed...&#xA;URL: &lt;http://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20180528/8326d73b/attachment-0001.html&gt;</html></oembed>