Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Bounty] Implement sending to Silent Payment addresses - 0.01 BTC #1434

Open
sethforprivacy opened this issue Jun 5, 2024 · 4 comments
Open

Comments

@sethforprivacy
Copy link

sethforprivacy commented Jun 5, 2024

A bounty has been opened on silentpayments.xyz from a trusted, anonymous source to implement sending support in Sparrow Wallet to Silent Payment addresses.

I wanted to open an issue here to raise awareness and ensure that prospective contributors are aware of open bounties for Sparrow from outside sources.

You can learn more about the bounty at https://silentpayments.xyz/docs/bounties/#wallet-implementation-bounties, find more development resources focused on Silent Payments at https://silentpayments.xyz/docs/developers/.

@sethforprivacy sethforprivacy changed the title [Bounty] Implement sending to Silent Payment addresses - 0.1 BTC [Bounty] Implement sending to Silent Payment addresses - 0.01 BTC Jun 5, 2024
@craigraw
Copy link
Collaborator

craigraw commented Jun 10, 2024

Without wishing to make comment on Silent Payments, I do want to note that it is incompatible with the Electrum server protocol (or any general address index). This will necessitate a different network/server model for light clients using this protocol. One alternative is using compact block filters, but this has implications for privacy and performance. BIP47 does not have this limitation, for the tradeoff of requiring the notification transaction.

@sethforprivacy
Copy link
Author

Without wishing to make comment on Silent Payments, I do want to note that it is incompatible with the Electrum server protocol (or any general address index). This will necessitate a different network/server model for light clients using this protocol. One alternative is using compact block filters, but this has implications for privacy and performance. BIP47 does not have this limitation, for the tradeoff of requiring the notification transaction.

I understand the hesitancy, but there are multiple projects underway to build this directly into Electrum server tools, with Cake Wallet even using Electrs today with Silent Payments support on mainnet. The goal long-term will be to properly support this from all major Electrum servers as they already have the data necessary from bitcoind to make this possible and serve it efficiently.

You can read more about the overall light-client approach here:

https://delvingbitcoin.org/t/silent-payments-light-client-protocol/891

@craigraw
Copy link
Collaborator

as they already have the data necessary from bitcoind to make this possible and serve it efficiently.

I'm not sure this true, and having spoken to both the ElectrumX and Electrs teams recently I'm not aware of any current plans to integrate this support. From what I understand, the nature of this protocol means a simple address lookup is not possible, and the need to use private information to complete the scan makes the public server use case difficult. But I look forward to learning more.

@sethforprivacy
Copy link
Author

One more note I want to add -- this issue and bounty are for sending only, and as such don't require any changes to the server architecture or back-end.

Want to keep it simple to start out and get broad sending support before asking for wallets to implement receiving (and thus scanning) which is of course more involved.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

2 participants