#p2p #bitcoin #light-client

bdk_kyoto

BDK blockchain integration using P2P light client Kyoto

1 unstable release

0.1.0 Oct 3, 2024

#936 in Magic Beans

Download history 138/week @ 2024-09-30 122/week @ 2024-10-07

260 downloads per month

MIT/Apache

35KB
441 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.

Developers are free to use bdk_wallet, or only primitives found in bdk_core and bdk_chain.

License

Licensed under either of

at your option.

Dependencies

~16–29MB
~352K SLoC