Committed bloom filters for improved wallet performance and SPV security



Summary:

The Bitcoin community is discussing a new method that would enable merchants to accept payments more quickly without waiting for full confirmation. The method involves querying the mempool of each miner to determine the probability of a transaction being successfully mined in a block before it actually gets mined. This approach is useful for those situations where waiting for full confirmation is not an option. However, it is not suggested that all transaction validation should be performed by querying miners' mempools. Once a transaction receives its first confirmation, normal validation methods can be used. It is important to note that even if someone runs a full node, they cannot be certain that any given transaction will be included in a future block. Eric Voskuil, a member of the Bitcoin community, has criticized this approach as a security catastrophe. He emphasized that a world connected to a few web services to determine payment validity is not a secure way to operate Bitcoin. Instead, he offered more reasonable options, such as running a full node or using a wallet service with centralized verification. Merchants could co-use a wallet service with centralized verification or use watch-only mode. If a merchant connects to the mempool of each miner and checks to see if their txid is in their mempool, they can assume with great confidence that the transaction will be in the next block or in a block very soon if each of these services returns "True." If any one of those services returns "False," then it is possible that there is a double spend floating around, and the merchant should wait to see if that tx gets confirmed. The problem is that not every pool runs such a service to check the contents of their mempool. Thus, this is an example of mining centralization increasing the security of zero confirm.


Updated on: 2023-06-11T04:56:31.087919+00:00