#p2p #bitcoin #light-client

bdk_kyoto

BDK blockchain integration using P2P light client Kyoto

7 releases (breaking)

new 0.7.1 Jan 29, 2025
0.7.0 Jan 22, 2025
0.6.0 Dec 18, 2024
0.5.0 Dec 11, 2024
0.1.0 Oct 3, 2024

#486 in Magic Beans

Download history 17/week @ 2024-10-13 8/week @ 2024-10-20 115/week @ 2024-10-27 131/week @ 2024-11-03 271/week @ 2024-11-10 8/week @ 2024-11-17 1/week @ 2024-11-24 412/week @ 2024-12-01 633/week @ 2024-12-08 226/week @ 2024-12-15 4/week @ 2024-12-22 12/week @ 2025-01-05 6/week @ 2025-01-12 275/week @ 2025-01-19 317/week @ 2025-01-26

610 downloads per month

MIT/Apache

26KB
279 lines

BDK Kyoto

BDK-Kyoto is an extension of Kyoto, a client-side implementation of BIP157/BIP158. These proposals define a way for users to fetch transactions privately, using compact block filters. You may want to read the specification here. Kyoto runs as a psuedo-node, sending messages over the Bitcoin peer-to-peer layer, finding new peers to connect to, and managing a light-weight database of Bitcoin block headers. As such, developing a wallet application using this crate is distinct from a typical client/server relationship. Esplora and Electrum offer proactive APIs, in that the servers will respond to events as they are requested.

In the case of running a node as a background process, the developer experience is far more reactive, in that the node may emit any number of events, and the application may respond to them. BDK-Kyoto curates these events into structures that are easily handled by BDK APIs, making integration of compact block filters easily understood.

License

Licensed under either of

at your option.

Dependencies

~48MB
~736K SLoC