UnstoppableSwap / core

Bitcoin–Monero Cross-chain Atomic Swap (+ GUI)
GNU General Public License v3.0
25 stars 7 forks source link

RFC: Interface for managing asb instance #202

Open binarybaron opened 5 days ago

binarybaron commented 5 days ago

We want to make running an asb as accessible as possible.

Currently this is cumbersome. In practice managing an asb instance involves:

  1. Reading log files by hand
  2. Managing wallets (repleneshing Monero funds, transfering the received Bitcoin to other wallets)
  3. Managing infrastructure (keeping daemon in sync, often using docker-compose)

Common issues are:

Proposed solution

  1. We use arti to listen on an /onion3/**** multi address. This allows users to run the asb behind a firewall, without exposing their IP and without needing DNS entries. We'll slowly migrate towards this being the default for all sellers.
  2. We introduce a control API (similiar to the tor control). This should allow users to modify settings (like the spread) and execute commands (meaning things like withdraw-btc) programatically. The API needs to be secured using a security token. We should listen locally on a port and listen on an onion service for connections (a different one from the one we use for libp2p)
  3. We add a new tab to the GUI (Market Maker) to allow 3.1 Running and managing an asb instance on the same device 3.2 Running an asb on an external server and allow users to manage the asb by connecting to the onion address of the control API and authenticating using the security token
darkness-su commented 8 hours ago

https://github.com/UnstoppableSwap/core/issues/211