-
Notifications
You must be signed in to change notification settings - Fork 412
Open
Labels
summer-of-bitcoinSummer of Bitcoin Project ProposalSummer of Bitcoin Project Proposal
Description
Summer of Bitcoin Project Proposal
Description
The current bdk_bitcoind_rpc module requires full access to transaction history using a non-pruned node (a node storing the full blockchain, which at the time of writing is over 400GB).
However, even without a wallet's full transaction history it is still possible to compute the wallet balance and be able to spend with only a pruned bitcoind node using the RPC method scantxoutset. This project will update the existing bdk_bitcoind_rpc module to work with a pruned bitcoind node.
Expected Outcomes
- Update
full_scanto use thescantxoutsetif the bitcoind node is pruned. - Create tests to confirm
full_scanworks with a pruned node. - Update rpc examples and test with a pruned bitcoind node.
Resources
- bitcoin core node setup.
- bitcoin rpc commands.
- issue 895.
- https://developer.bitcoin.org/reference/rpc/scantxoutset.html
- Add
bitcoind_rpcchain source module.ย #1041 - Introduce block-by-block API to
bdk::Walletand add RPC wallet exampleย #1172
Skills Required
- Experience with git. Guide
- Experience with rust. First seven chapters of the book
- Able to setup a local core node in regtest and testnet mode.
- Familiarity with bitcoind RPC commands.
Mentor(s)
@notmandatory
Difficulty
Hard
Competency Test
- Install rust, compile and run all bdk examples and tests.
- Setup a local Bitcoin Core pruned node daemon in regtest mode.
- Make a wallet with
example_bitcoind_rpc_pollingexample wallet and receive and send regtest bitcoin.
luisschwab
Metadata
Metadata
Assignees
Labels
summer-of-bitcoinSummer of Bitcoin Project ProposalSummer of Bitcoin Project Proposal
Type
Projects
Status
In Progress
Status
No status