Menu

Early days

Dassie is early. The sun is coming up; it isn't noon. This page says plainly what works today, what doesn't yet, and what has to hold before Dassie carries real money.

On this page
  1. Test money only
  2. What works today
  3. The test network today
  4. What isn't there yet
  5. What must hold before real money
  6. Trying it anyway

Test money only

Every Dassie node belongs to a realm: test, with test money, or live, with real money. Your recovery phrase names its realm, and a node keeps the realm it was set up in for good.

Today a node refuses the live realm. It refuses to be set up in it, refuses to start on a database that names it, and refuses to start a ledger of real money. A release build has no way around that. So everything you do with Dassie today happens on the XRP Ledger's test network, where money costs nothing, and a bug, a lying peer or a lying server costs nobody anything real.

Why it works this way

What works today

  • Installing and updating. One command installs a node on a Linux server. Releases are signed, and the node updates itself every day, going back by itself if a new version does not start. On NixOS a flake runs the same signed binary.
  • The wallet. Your node serves you a wallet in the browser. Your 20-word recovery phrase is made there, fixes a word or two you misread, and never leaves the browser.
  • Ledgers. Your node holds test XRP, and DSUSD, Dassie's test dollar, on the XRP Ledger testnet. It checks what its XRP Ledger server tells it against proofs from ledgers the network's validators signed.
  • Settlement hubs. Peers settle through hubs that a few validators keep together. A node can be a member of a hub, a validator of one, or found a new one. The testnet's XRP hub and DSUSD hub are built in.
  • Payments. Nodes route payments across the network and convert between currencies on the way. Other wallets and apps pay your node with Open Payments, and ILP clients connect over BTP.
  • Nodes without a public address. A node without a domain name finds core nodes on its own, connects out to them and pays through them. Apps and other wallets reach it through a relay: by default the project's front door at dassiepay.net, at <node ID>.dassiepay.net. The desktop app runs such a node on Linux.
  • Names. A node can register a name that people can say, on the test network only. A name reaches a node without a domain name through its front door, at <name>.dassiepay.net by default.
  • Swaps and market makers. A core node signs a snapshot of the quotes it swaps at, and peers swap assets with each other to keep their holdings in balance. dassie market-maker runs on one node, in the hubs of both assets it trades, and trades by swapping with its peers.

The test network today

The project runs the test network's shared pieces. Every node has these built in:

  • five bootstrap nodes, boot1 to boot5.dassie.xyz, which a new node asks who is on the network;
  • the testnet's XRP hub and DSUSD hub, which four of the bootstrap nodes, boot1 to boot4, keep as their validators;
  • a proof server for each XRP Ledger network.

The project also runs the front door at dassiepay.net. A node without a domain name keeps it as its relay by default, and is reached through it at <node ID>.dassiepay.net. Its owner can name another relay, or none.

The test network was reset for Dassie 0.3.0. Its bootstrap nodes have new IDs, which commit to two keys, one of them post-quantum. Nodes speak version 2 of the peer protocol, dassie/2, so a node on 0.3.0 doesn't peer with a node on a 0.2 release. Phrases and databases from 0.2 don't work: set a node up again with a new phrase, from a fresh database. A node from the 0.2 releases shows how, and the notes for 0.3.0 say what else changed.

The front door is a machine the project runs. It learns when your node is online and from which address, and reads the Open Payments requests it passes on. How others reach you shows how to name another relay, or keep none.

Testnet names and addresses are still under dassiepay.net, which is to be left for the live realm once they move to test.dassiepay.net. What's next

Some things on the test network can change under you:

  • The XRP Ledger testnet is reset from time to time. Your node notices, writes off what it held there, and asks the faucet again.
  • Names on the test network may be reset at any time.
  • The test network may start again, as it did for 0.3.0. Between resets, your recovery phrase brings back the same node and the same XRP Ledger accounts.

What isn't there yet

Some of what Dassie is meant to be is designed but not built. Among it:

  • real money, on the XRP Ledger's mainnet, with its own hubs;
  • the desktop app on macOS and Windows, packages for other Linux distributions, and apps that reach your node from your phone;
  • your own domain name at a front door, and a guided setup in the wallet that explains each choice, your relay among them;
  • names that cost a small fee to register;
  • nodes that start in the periphery and become core once they earn it.

What's next has the whole list, in plain words.

What must hold before real money

The live realm stays refused until every one of these holds. Here is where each stands.

Condition Where it stands
Every peer message is authenticated Done
The node's books are durable and reconcile with the ledger under them Done
The XRP Ledger schemes handle reserves, fees and transaction results Done
Releases are signed Done
The node checks the XRP Ledger's validators itself, on both networks, so it books nothing on a server's word Mostly done; a few pieces are left
A public proof server runs for each network, named in the node's defaults Done
Mainnet schemes for XRP and RLUSD, and each ledger runs only in its own realm Built; a live node that takes none of the test network's defaults is left
Settlement hubs run on mainnet, for XRP and for RLUSD Their schemes and the validator's side are built; no mainnet hub is founded or built in yet
An external review Not yet
A list of mainnet bootstrap nodes Not yet

The spec keeps this list, with links to each piece of work, in the roadmap.

Why these, and not fewer

Trying it anyway

If you are still interested, we're glad. Running a node now, on test money, is the most useful thing you can do for Dassie: it shows what breaks while breaking costs nothing. Start with Pick your setup, and tell us what you find on Get help.

A kopje of granite blocks against the sun, in veld grass; one dassie climbs its slab, one keeps lookout on top inside the sun, and one sleeps on the next rock; on a wide screen, a pair sits on a kopje to the left