RetoSwap (previously Haveno-reto), a P2P Monero DEX

From Whonix
Jump to navigation Jump to search

How to set up RetoSwap (previously Haveno-reto) - a P2P decentralized exchange (DEX) based on Monero - in Whonix

Info COMMUNITY SUPPORT ONLY : THIS WHOLE WIKI PAGE is only supported by the community. Whonix developers are very unlikely to provide free support for this content. See Community Support for further information, including implications and possible alternatives.

Introduction[edit]

Name[edit]

The name of the app was changed from Haveno-reto to RetoSwap on 22 November 2024[1], but the old name can still be seen when launching the app, and people online may variously refer to it as either name or even as plain "Haveno" (technically, Haveno or Haveno DEX is the name of the upstream project).

Background[edit]

RetoSwap is a fork of Haveno (Haveno DEX), which is itself a fork of Bisq.

RetoSwap is a peer-to-peer (P2P) decentralized exchange (DEX), meaning that each user that runs the RetoSwap software is running their own server (built into the software) for trades; there is no central server where trades are coordinated.

RetoSwap has a built-in Monero (currency code: XMR) wallet and uses Monero as the base pair for all trades on its platform.

Haveno (Haveno DEX) is the upstream (parent) project of RetoSwap and doesn't feature any actual live trading with real cryptocurrencies (it only has testnet/stagenet trading).

Bisq[2] is the project that Haveno was forked from. It is a P2P DEX with a built-in Bitcoin (BTC) wallet and uses Bitcoin as the base pair for all trades on its platform.

Links[edit]

RetoSwap Links[edit]

RetoSwap official website: https://retoswap.com/archive.org

RetoSwap official X/Twitter account: https://x.com/RetoSwap/archive.org

RetoSwap GitHub project homepage: https://github.com/retoaccess1/haveno-retoarchive.org

RetoSwap GitHub project releases page (downloads available here): https://github.com/retoaccess1/haveno-reto/releases/archive.org

RetoSwap old homepage (redirects to retoswap.com): https://haveno-reto.comarchive.org

Haveno (Haveno DEX) Links[edit]

Haveno official website: https://haveno.exchange/archive.org

Haveno official FAQ: https://haveno.exchange/faq/archive.org

Haveno GitHub project homepage: https://github.com/haveno-dex/havenoarchive.org

Haveno GitHub project issues page (issues with RetoSwap can generally be reported there): https://github.com/haveno-dex/haveno/issuesarchive.org

Other Guides[edit]

boldsucks's Haveno Documentation: https://boldsuck.codeberg.page/haveno-docs/archive.org

boldsucks's guide to setting up RetoSwap on Whonix: https://boldsuck.codeberg.page/haveno-docs/haveno-ui/tor_advanced/#whonixarchive.org

Installation[edit]

  • This guide was created in February 2025 and is based on Whonix 17.2.8.5 and RetoSwap 10.0.18. As the app's name was recently changed from Haveno-reto, some file paths referenced below use the name haveno or haveno-reto. This may change in the future.

System Requirements[edit]

Generally, RetoSwap doesn't use a lot of system resources, as it connects to remote Monero nodes by default and doesn't download any full blockchains to the user's computer. It can also be set up to use a local Monero node, but that is beyond the scope of this guide.

Generally, the storage space used by RetoSwap will be under 100 MB.

Downloading & Installing RetoSwap[edit]

  • All of the steps for downloading & installing the RetoSwap .deb file take place on Whonix-Workstation

1. Download RetoSwap: Download the latest .deb version of RetoSwap from:

https://github.com/retoaccess1/haveno-reto/releases/archive.org

(For example, for RetoSwap v1.0.18, download https://github.com/retoaccess1/haveno-reto/releases/download/v1.0.18/haveno-linux-deb.ziparchive.org).

You can also go to the official RetoSwap website's download section:

https://retoswap.com/#downloadarchive.org

and under "RetoSwap for Linux," click the .deb button.

It should download automatically to:

/home/user/.tb/tor-browser/Browser/Downloads/.

2. Verify the signature (out of scope for this guide)

  • Digital signatures are a tool enhancing download security. They are commonly used across the internet and nothing special to worry about.
  • Optional, not required: Digital signatures are optional and not mandatory for using Whonix, but an extra security measure for advanced users. If you've never used them before, it might be overwhelming to look into them at this stage. Just ignore them for now.
  • Learn more: Curious? If you are interested in becoming more familiar with advanced computer security concepts, you can learn more about digital signatures here digital software signatures.

3. Extract the archive: Right-click on the downloaded .zip (e.g., /home/user/.tb/tor-browser/Browser/Downloads/haveno-linux-deb.zip) and click “Extract Here.”

4. Install the .deb: Open the newly extracted folder (e.g., /home/user/.tb/tor-browser/Browser/Downloads/haveno-linux-deb/) and in a terminal window type (with a trailing space):

sudo dpkg -i

Then, drag the .deb installer from the folder into the terminal to complete the file path (e.g., for RetoSwap v1.0.18, it should read sudo dpkg -i '/home/user/.tb/tor-browser/Browser/Downloads/haveno-linux-deb/haveno-v1.0.18-linux-x86_64-installer.deb').

Press enter; RetoSwap should be installed to /opt/haveno/.

If it fails because of missing dependencies, run the command:

sudo apt install -f

to download and install the missing dependencies, and then try the original sudo dpkg -i '[...].deb' command again.

5. Create a desktop shortcut: Copy (or drag) /opt/haveno/lib/haveno-Haveno.desktop to your desktop.

Setting Up the Tor Hidden Service[edit]

  • All of the steps for setting up the Tor hidden service take place on Whonix-Gateway

6. Create the Tor hidden service: Open file /usr/local/etc/torrc.d/50_user.conf in an editor with root rights.

Non-Qubes-Whonix

See Kicksecure logo Open File with Root Rights Onion Version for detailed instructions on why to use sudoedit for better security and how to use it.

Note: Mousepad (or the chosen text editor) must be closed before running the sudoedit command.

sudoedit /usr/local/etc/torrc.d/50_user.conf

Qubes-Whonix

NOTES:

  • When using Qubes-Whonix, this needs to be done inside the Template.

sudoedit /usr/local/etc/torrc.d/50_user.conf

  • After applying this change, shutdown the Template.
  • All App Qubes based on the Template need to be restarted if they were already running.
  • This is a general procedure required for Qubes and unspecific to Qubes-Whonix.

Others and Alternatives

  • This is just an example. Other tools could achieve the same goal.
  • If this example does not work for you or if you are not using Whonix, please refer to this link.

sudoedit /usr/local/etc/torrc.d/50_user.conf

Edit the file to add the following:[3]

# RetoSwap (Haveno-reto) incoming anonymity connections
HiddenServiceDir /var/lib/tor/haveno/
HiddenServicePort 9999 10.152.152.11:9999

Save and close the file.

7. Reload Tor: sudo systemctl reload tor

8. Get your hidden service address: Retrieve your newly generated hidden service .onion address:

sudo cat /var/lib/tor/haveno/hostname

It should look something like:

exampleonionaddress52rck2vv4rvmdlkiu3zzui5du4xyclen53wid.onion

Copy and keep your .onion address handy for the next steps.

Setting Up the Firewall[edit]

  • All of the steps for setting up the firewall take place on Whonix-Workstation

9. Open the firewall port: Open file /etc/whonix_firewall.d/50_user.conf in an editor with root rights.

Non-Qubes-Whonix

See Kicksecure logo Open File with Root Rights Onion Version for detailed instructions on why to use sudoedit for better security and how to use it.

Note: Mousepad (or the chosen text editor) must be closed before running the sudoedit command.

sudoedit /etc/whonix_firewall.d/50_user.conf

Qubes-Whonix

NOTES:

  • When using Qubes-Whonix, this needs to be done inside the Template.

sudoedit /etc/whonix_firewall.d/50_user.conf

  • After applying this change, shutdown the Template.
  • All App Qubes based on the Template need to be restarted if they were already running.
  • This is a general procedure required for Qubes and unspecific to Qubes-Whonix.

Others and Alternatives

  • This is just an example. Other tools could achieve the same goal.
  • If this example does not work for you or if you are not using Whonix, please refer to this link.

sudoedit /etc/whonix_firewall.d/50_user.conf

Edit the file to add the following:[4]

# RetoSwap (Haveno-reto) firewall TCP port 9999
EXTERNAL_OPEN_PORTS+=" 9999 "

Save and close the file.

10. Reload the firewall: sudo whonix_firewall

Setting Up RetoSwap[edit]

  • All of the steps for setting up RetoSwap take place on Whonix-Workstation

11. Set your hidden service address: Open the file /home/user/.local/share/Haveno-reto/haveno.properties in an editor.

  • This filepath uses the old name "Haveno-reto"; this might change in a future update of RetoSwap.

Edit the file to add the following:

hiddenServiceAddress=

followed by your hidden service .onion address from the section "Setting Up the Tor Hidden Service."

It should look something like this:

hiddenServiceAddress=exampleonionaddress52rck2vv4rvmdlkiu3zzui5du4xyclen53wid.onion

Save and close the file.

12. You're done! You can now run RetoSwap, and it should connect. If it fails, see the Troubleshooting section.

Troubleshooting[edit]

If RetoSwap fails to connect or gives errors on startup, try launching the app several times. This could be a network issue.

There is also a forum topic dedicated to setting up RetoSwap on Whonix, where you can get support:

https://forums.whonix.org/t/installing-haveno-in-whonix/20014archive.org

Footnotes[edit]

  1. https://x.com/RetoSwap/status/1859903768164532588archive.org
  2. See the Whonix wiki page on Bisq
  3. 10.152.152.11 refers to the internal IP address of Whonix-Workstation. You can verify this by running the command ifconfig on Whonix-Workstation. TCP port 9999 is the default port for RetoSwap.
  4. TCP port 9999 is the default port for RetoSwap.

We believe security software like Whonix needs to remain open source and independent. Would you help sustain and grow the project? Learn more about our 13 year success story and maybe DONATE!