Epic Cash floonet — wallet

How to set up a wallet on the BT Labs Epic Cash floonet.

Before you start

Set up and start a floonet node first — the wallet needs one to connect to. Instructions and config: floo-node.btlabs.uk.

Ports

Foreign API (listener)127.0.0.1:13415
Owner API127.0.0.1:13420 — set this yourself, see below
Node API the wallet talks tohttp://127.0.0.1:13413

Create a wallet

epic-wallet --floonet -p "$PASS" init

Creates ~/.epic/floo/epic-wallet.toml and ~/.epic/floo/wallet_data/, and prints a recovery phrase. Record the phrase before continuing — it is shown once.

-p/--pass is the only way to supply the passphrase, so prefer a shell that does not record history when running this.

Configure

Edit ~/.epic/floo/epic-wallet.toml:

chain_type            = "Floonet"
api_listen_port       = 13415
owner_api_listen_port = 13420
check_node_api_http_addr = "http://127.0.0.1:13413"
Set owner_api_listen_port = 13420 explicitly. The generated value is 3420, which is the mainnet wallet port.
Always pass --floonet, and confirm which config was loaded. The wallet logs Using wallet configuration file at <path> on startup — check it reads ~/.epic/floo/ before running any command that writes. Run wallet commands from a directory that contains no other epic-wallet.toml, since a config in the working directory takes precedence.

Start the listener

epic-wallet --floonet -p "$PASS" listen -m http -n

Serves the foreign API on 127.0.0.1:13415. -n skips the Tor listener. Keep this bound to loopback.

This is also what a node's stratum server calls to build coinbases, so start it before mining. In your node's epic-server.toml:

[server.stratum_mining_config]
enable_stratum_server = true
wallet_listener_url   = "http://127.0.0.1:13415"

Give wallet_listener_url the base URL with no path.

Owner API

epic-wallet --floonet -p "$PASS" owner_api --port 13420
POST /v2/owner HTTP Basic auth, username epic, password is the first line of ~/.epic/floo/.owner_api_secret
POST /v3/owner Basic auth plus the init_secure_api ECDH handshake and a token from open_wallet

Keep the owner API on loopback, or terminate TLS at a reverse proxy and add your own authentication in front of it. Leave api_secret_path set.

Check the wallet

epic-wallet --floonet -p "$PASS" info

Coinbase outputs mature after 30 blocks on this network, so newly mined rewards appear under Immature Coinbase first.

Getting test coins

Mine against your own node — one CPU thread is enough on this network. See the mining section of floo-node.btlabs.uk. Otherwise ask in the dev group.

Notes