Allows SPV nodes to construct bloom filters that match pushdata in the scriptWitness.
Bloom: Consider witness script pushes in bloom filter check. #9981
pull maaku wants to merge 1 commits into bitcoin:master from maaku:segwit-bloom-filter changing 1 files +7 −0-
maaku commented at 12:47 AM on March 13, 2017: contributor
-
Bloom: Consider witness script pushes in bloom filter check. 7305e73fe7
-
sipa commented at 1:03 AM on March 13, 2017: member
Is there any use case for this? In general, lightweight clients shouldn't care about witnesses. If they do, we should at least have a way of proving witnesses to them, i.e., give them a partial witness merkle tree and the full coinbase so it can be verified.
-
maaku commented at 1:31 AM on March 13, 2017: contributor
For something like channel closure watching, you can give a filter that only matches certain pathways of the spend script (by matching against a pubkey that's only used on that path, for example).
-
sipa commented at 1:44 AM on March 13, 2017: member
Ok, but this is not sufficient. A full solution would need:
- A way for lightweight client to request witnesses.
- A way for full nodes to prove that the provided witnesses are part of the block (by giving the branches of the witness tree and the coinbase).
- A way to match against witnesses like your PR does, but optionally.
Without having all 3 pieces, you're just going to degrade the Bloom filter (even) faster than before, without any way the client can use the result.
- maaku closed this on Mar 13, 2017
- maaku deleted the branch on Sep 4, 2019
- DrahtBot locked this on Dec 16, 2021