{"type":"rich","version":"1.0","author_name":"npub1ncnj8arudstdxzfhxk7k4nwgkrw3hyw8sgt0wqqmm5hh2c4knmgs2lqt2n","author_url":"https://nostr.ae/npub1ncnj8arudstdxzfhxk7k4nwgkrw3hyw8sgt0wqqmm5hh2c4knmgs2lqt2n","provider_name":"njump","provider_url":"https://nostr.ae","html":"📅 Original date posted:2018-05-22\n📝 Original message:\u003e\n\u003e My suggestion was to advertise a bitfield for each filter type the node\n\u003e serves,\n\u003e where the bitfield indicates what elements are part of the filters. This\n\u003e essentially\n\u003e removes the notion of decided filter types and instead leaves the decision\n\u003e to\n\u003e full-nodes.\n\u003e\n\nI think it makes more sense to construct entirely separate filters for the\ndifferent types of elements and allow clients to download only the ones\nthey care about. If there are enough elements per filter, the compression\nratio shouldn't be much worse by splitting them up. This prevents the\nexponential blowup in the number of filters that you mention, Johan, and it\nworks nicely with service bits for advertising different filter types\nindependently.\n\nSo if we created three separate filter types, one for output scripts, one\nfor input outpoints, and one for TXIDs, each signaled with a separate\nservice bit, are people good with that? Or do you think there shouldn't be\na TXID filter at all, Matt? I didn't include the option of a prev output\nscript filter or rolling that into the block output script filter because\nit changes the security model (cannot be proven to be correct/incorrect\nsuccinctly).\n\nThen there's the question of whether to separate or combine the headers.\nI'd lean towards keeping them separate because it's simpler that way.\n-------------- next part --------------\nAn HTML attachment was scrubbed...\nURL: \u003chttp://lists.linuxfoundation.org/pipermail/bitcoin-dev/attachments/20180522/328a953f/attachment-0001.html\u003e"}
