Silent Payments

Nice new forum! Do you plan to add support for Silent Payments?
Thanks, OS

1 Like

Hey @orangesurf thank you for the question and welcome to our community forum!

As much as we’d like to see Silent Payments implemented, Envoy uses BDK and as you can see here Silent Payments still have a long way to go. Even if we decided to get out of our way and develop Silent Payments outside of BDK, it looks like PSBT support is still not fully defined as evidenced here, so we would have to be making things up and implementing code that hasn’t been battle tested to communicate with Passport.

All in all it feels like it is still a bit too early for Silent Payments, but as soon as we see progress in the PSBT and/or BDK camps we’ll be sure to start implementing it - it’s a feature we’d love to see in our products!

2 Likes

All seems very sensible! I guess you could implement without PSBT for hot wallets only in Envoy but I guess that would still require BDK & support for tweak scanning.

Just checking the BDK status it looks like they are waiting on integration into secp256k1, and josibake announced just 4 days ago that he is “in the process of rebasing and incorporating review feedback, should have the PR updated shortly.” so hopefully we start to see some upstream progress in the coming months

2 Likes

till then ig cake wallet is the only viable option?

what does “scanning” means?

Silent Payments require you to scan the blockchain to find transactions that were meant for you. This is one of the most noticeable improvements over BIP47 payment codes (PayNyms), where an initial notification transaction is needed before actually starting to transact. In Silent Payments this notification transaction is not required, and the way to acheieve this is by actively looking for transactions with a specific public key, and for this you have to “scan” all the UTXO set. You can read more about how Silent Payments work here.

Based on the screenshot you share, I presume the node the wallet connects to has to have some specific parameters active to allow for this “scan” to happen, and if it doesn’t then they just switch to another one for the scanning part.

does silent payments require a btc soft fork? or its just a client thing, because it feels like that, when inspecting BDK.

No soft fork required.

BDK needs to implement this, basically?

https://en.bitcoin.it/wiki/Client-side_block_filtering

No, the ‘scanning’ part referenced above by Cake is unique to the way Silent Payments work. Block filters have been around for many years already.

BDK already supports this?

Looks like that project uses the wallet part of BDK. It is not related to Silent Payments.

@securitybrahh I think you are mixing concepts and platforms here.

  • BDK is a tool that helps build mobile wallets
  • Bloom filters are a concept that as @qna mentioned has been around for a while, and can already be activated in your node by typing peerbloomfilters=1 in you node’s bitcoin.conf file. Tools like Bisq make use of this concept. This however is something you activate on your node, not on your mobile wallet. I don’t think bloom filters is something BDK “can implement”.
  • Utreexod seems to be a bitcoin full node implementation, so BDK can’t really “support” it. You should already be able to connect your BDK mobile wallet to any bitcoin node implementation, including this one.

You can find links in this comment to what BDK needs to implement in order to support Silent Payment.

As for your screenshot, I don’t know what requirements a node should have for Cake Wallet to be able to “scan” from it. You will probably find more knowledgeable people in this regard in Cake Wallet’s Telegram community though, maybe ask there and see if they can help troubleshoot your connection issue. However, as usual, be wary of scammers and impersonators in Telegram, stick to their community chat and ignore DMs.

1 Like

they say the node has to be “electrs”, but I beleive otherwise

https://github.com/romanz/electrs/pull/1075#issuecomment-2511926155