Whirlpool with Sparrow Wallet + electrs

I was trying to use Samourai’s Whirlpool service with my embassy pro but was running into issues. I finally settled on a configuration that works, hopefully this is helpful to someone.

Warning: This is only for advanced users. Only attempt this if you know what you are doing.

What didn’t work

  • Sparrow Wallet connected to ElectRS over Tor
  • “External Tor proxy” setting enabled to use Tor for communication with Samourai’s whirlpool coordinator

In this setup, I would just get a ton of timeouts all over the place, both for connecting to ElectRS and the coordinator, and no mixes for days.

What didn’t work V2

  • Sparrow Wallet connected to ElectRS over LAN using the SSH tunnel hack
  • “External Tor proxy” setting enabled to use Tor for communication with Samourai’s whirlpool coordinator

In this configuration, the number of timeouts in the log file were greatly reduced however the rate of mix transactions was still very low

V3 - the solution

  • Sparrow Wallet connected to ElectRS over LAN using the SSH tunnel hack
  • Using a VPN for connecting to the coordinator

Happily up and running now. I’ve included a screenshot to show the final configuration in Sparrow

p.s. the reason I’m doing this is that passive remixes using JAM are very sporadic, maybe one a week or so whereas whirlpool is much more reliable and regular.

3 Likes

Hey, thanks for sharing this. Do you happen to have a link (tips) for the SSH hack bit of the process you used? I’m wanting to set up to connect from sparrow via ElectRS over my LAN as well.

For sure! Happy to help. How comfortable are you on the command line?

Yep, happy with command line. My previous node build was completely from scratch, via Raspibolt.

Ah then it will be a breeze.

Assuming you can ssh to your embassy all set up, the magic incantation you want to run from your Sparrow machine is:

ssh -fNL 127.0.0.1:50001:electrs.embassy:50001 start9@embassy-your-hostname.local

This will open an ssh tunnel on localhost port 50001 to electrs on your embassy that Sparrow can use, as per the screenshot above.

In case you haven’t already, add your ssh pubkey to authorized_keys on your embassy, will make running this command much simpler.

Remember to make sure you are using a VPN or Tor to connect to Samourai’s whirlpool coordinator!

1 Like

Excellent, thanks! Will try get it sorted Sunday and report back.

1 Like

Not really getting too far, it is trying to establish the tunnel but I’m getting a password prompt for the embassy but not accepting the usual login. I’ve added the pubkey to the authorized_keys so doesn’t seem to be that, will continue mucking about til I figure out what I’ve done.

Hmm yeah, you’ll need to get ssh working without the password prompt. Are you able to just regularly ssh to your embassy? Like using ssh start9@embassy-your-hostname.local

Yeah, unfortunately not. This also triggers the password request.

and just to check, did you add your SSH key using the Embassy Admin UI?

image

Yep, all good on that side. SSH through PuTTY connects without issue. I went via the super user and reassigned a password to the start9 user and managed to get a little further. However, it looks like the issue is with the start9 user not being able to set up the tunnel.

image

Interesting, I’ve not issues with using the Electrs Tor address for the sparrow connection (tested it just now). That said I worry about the stability of the connection the embassy via tor. Seems a long winded way around what should be a local secure connection. Wonder if Tailscale is an alternative solution