I want to build a web wallet that uses Compact Block Filters
To do it, I think I need a reliable way to get data from bitcoin nodes in a web context, particularly (1) block headers (2) compact block filters (3) blocks themselves
Has anyone done any research into this? I found at least one electrum server that exposes its p2p interface via websockets, but I don't know if any bitcoin nodes do that. I thought about getting block headers from electrum servers and then downloading blocks from services like mempool_space and blockstream_info, but I suspect their rate limits would stop me from downloading more than ~100 blocks, and that still leaves me with the problem of finding someone that serves compact block filters in a web-friendly way.
What to do? Has anyone thought about running websockify on top of a bitcoin node to expose its p2p interface to the web? Maybe if a few nodes did that, a directory of web-friendly bitcoin nodes could be created, and web-SPV wallets could download blocks and block filters from them. Is that a good idea? Seeking feedback 🙂