Sparkswap is a way to trade cryptocurrencies across blockchains at speeds comparable to centralized cryptocurrency exchanges, but without requiring users to deposit their funds with a third party.
To accomplish this, Sparkswap users find counterparties and agree on prices using the Sparkswap Relayer, and execute trades using cross-chain atomic swaps over Payment Channel Networks like the Lightning Network.
Sparkswap is made up of two primary actors:
The Sparkswap Broker, software run by users of Sparkswap. It is responsible for:
- Custodying user assets by managing wallets and private keys
- Interpreting user actions and converting them into network actions
- Interacting with the Sparkswap Relayer, including placing and filling orders
- Executing Payment Channel Network swaps to settle executed orders
The Sparkswap Relayer, software run by the Sparkswap team. It is responsible for:
- Providing orderbook updates to Brokers
- Connecting Brokers who want to execute a swap
- Mitigating fraud and market manipulation
- Maximizing successful swap execution
This diagram below shows how the end user, broker, relayer, engines and counterparty broker all interact.